讓我們先快速複習機器學習密集課程中的關鍵構想。請查看下圖中的分佈情形。
圖 1:房價與緯度的比較。
針對以下問題,按一下想要的箭頭即可查看答案:
請見圖 1。如果您認為緯度是房屋值的預測值,應該將緯度視為浮點值嗎?原因為何?(假設這是線性模式)。
是:如果緯度是資料集中的浮點值,請不要變更。
如果您將這些浮點值提供給您的網路,它會嘗試嘗試特徵與標籤之間的線性關係。但是線性關係不太可能就代表緯度。
非線性行為。
否 - 緯度和房子值之間沒有線性關係。
您懷疑個別經緯度值與相關值有關,但關係並非線性關係。
以緯度範例為例,您必須將緯度分成多個值區,藉此瞭解每個值區的大小寫值不同。使用一組門檻將數值特徵轉換為類別特徵,稱為特徵分塊 (或特徵分塊)。在這個值區示例中,邊界會相等。
圖 2:房價和緯度的比較,現在是分為區塊。
分位數區塊
讓我們來重新檢查加入價格區間的車輛價格資料集。每個值區使用一個特徵,模型會使用 45000 個範圍內單一範例的容量,以供 5000 至 10000 個範圍內的所有範例使用。看起來很浪費。我們可以如何改善這種情況?
圖 3:以不同價格販售的車輛數量。
問題是,空間相同的值區無法妥善擷取這個分佈情形。解決方法是建立值區,這些值區具有相同的點數。這項技術稱為「分位數分區」。例如,下圖將車輛價格分為四分位數值區。為了在各個值區中提供相同數量的樣本,部分值區涵蓋的價格範圍較小,而其他值區則涵蓋非常寬的價格範圍。
圖 4:分位數特徵分塊代表每輛車的車輛數量相同。
特徵分塊摘要
如果您選擇將數值特徵分片,請清楚說明設定邊界的方式,以及要套用的值區類型:
- 邊界相同的值區:邊界是固定的,且包含相同的範圍,例如 0 到 4 度、5 到 9 度和 10 到 14 度,或是 $5,000 - $9,999、$10,000 - $14,909 和 $19,999。部分值區可能包含許多點,而其他值區則可能只有少部分或甚至部分。
- 具有分位數邊界的值區:每個值區的點數量相同。邊界不是固定的,因此包含窄或寬的值值。