監督式學習

監督式學習的工作定義明確,且可應用於許多情境,例如找出垃圾內容或預測降水情況。

基礎監督學習概念

監督式機器學習是以下列核心概念為基礎:

  • 資料
  • 型號
  • 訓練
  • 評估中
  • 推論

資料

資料是機器學習的推動力。資料的形式為儲存在資料表中的字詞和數字,或儲存為圖片和音訊檔案中擷取的像素和波形值。我們會將相關資料儲存在資料集中。舉例來說,我們可能會提供如下的資料集:

  • 貓的圖片
  • 住宅價格
  • 天氣資訊

資料集由個別範例組成,包含特徵標籤。您可以將這類範例想成是試算表的單一資料列。特徵是監督式模型用來預測標籤的值。標籤是「答案」 也就是我們希望模型預測的值在預測降雨的天氣模型中,特徵可能是「緯度」、「經度」、「溫度」、「濕度」、「雲層涵蓋範圍」、「風向方向」和「大氣壓力」。這個標籤就會是「降雨量」

包含特徵和標籤的範例稱為有標籤的範例

兩個有標籤的範例

預留位置圖片。

相反地,未加上標籤的範例則包含特徵,但沒有標籤。在您建立模型後,模型會從特徵預測標籤。

兩個未加上標籤的範例

預留位置圖片。

資料集特性

資料集的特徵是其大小和多元性,大小代表樣本數量。「多樣化」是指這些範例涵蓋的範圍。優秀的資料集 就是規模龐大且多樣的

有些資料集既龐大又多樣,然而,有些資料集較大但多元性較少,有些資料集雖然小,卻非常多元。換句話說,大型資料集無法保證足夠的多元性,且擁有多樣化的資料集無法保證能夠提供足夠的範例。

例如,資料集可能包含 100 年的資料,但僅限 7 月。使用這個資料集預測 1 月的降雨量會產生較差的預測結果。相反地,資料集可能只涵蓋幾年,但包含每月。這個資料集包含的年數不足以形成變化,因此可能會產生不準確的預測。

隨堂測驗

在機器學習領域最適合使用資料集的哪些屬性?
大型 / 多元性
機器學習系統掌握資料的基礎模式,而包含涵蓋各種用途的大量範例非常重要。以這類資料集訓練的模型,較有可能對新資料做出良好的預測。
大型 / 多元性不足
機器學習模型的品質,取決於用來訓練的機器學習模型。模型會對從未用於訓練的新資料產生較不精確的預測結果。
小型 / 高多樣性
大部分的模型在小型資料集中都找不到可靠的模式。預測結果缺乏較大資料集的可信度。
小型 / 多元性低
如果資料集規模較小且沒有差異甚大,機器學習技術可能就無法帶來助益。

資料集的特徵數量也能做為特徵。舉例來說,某些天氣資料集可能包含數百個地圖項目,從衛星圖像到雲層覆蓋值都有。其他資料集可能只包含三種或四項特徵,例如濕度、大氣壓力和溫度。具有更多特徵的資料集可協助模型探索其他模式,並做出更好的預測。不過,擁有較多特徵的資料集,有時不會產生更理想的預測模型,因為某些特徵可能與標籤沒有因果關係。

型號

在監督式學習中,模型是一組複雜的數字,用於定義從特定輸入特徵模式到特定輸出標籤值的數學關係。這個模型會透過訓練來發掘這些模式。

訓練

監督式模型必須先經過訓練,才能進行預測。如要訓練模型,我們會為模型提供含有標籤的範例資料集。模型的目標是運用特徵預測標籤的最佳解決方案。模型會比較其預測值與標籤的實際值,以找出最佳解決方案。根據預測與實際值之間的差異 (定義為「損失」),模型會逐漸更新解決方案。換句話說,模型會學習特徵與標籤之間的數學關係,以針對未顯示的資料提供最佳預測。

舉例來說,如果模型預測了 1.15 inches 的下雨,但實際值為 .75 inches,則模型會修改解決方案,使其預測結果更接近 .75 inches。模型查看過資料集內的各個範例後 (在某些情況下,多次),模型會為每個樣本產生一個能夠獲得最佳預測值的解決方案。

以下示範如何訓練模型:

  1. 模型採用一個加上標籤的範例,並提供預測。

    進行預測的模型圖片。

    圖 1:透過加上標籤的範例進行預測的機器學習模型。

     

  2. 模型會比較其預測值與實際值,更新其解決方案。

    比較模型預測結果與實際值的模型圖片。

    圖 2:更新預測值的機器學習模型。

     

  3. 模型會為資料集中的每個加上標籤的範例重複這項程序。

    模型重複執行預測程序的圖片,與實際值的差異。

    圖 3:機器學習模型會針對訓練資料集中每個有標籤的範例更新預測結果。

     

透過這種方式,模型會逐漸學習特徵和標籤之間的正確關係。這種逐步瞭解也有助於 大型及多元的資料集產生更優質的模型模型能以更廣泛的值探索更多資料,並縮小對特徵和標籤之間的關係的理解。

在訓練期間,機器學習從業人員可以微調模型用於進行預測的設定和特徵。例如,某些特徵的預測能力高於其他特徵。因此,機器學習從業人員可選取模型在訓練期間使用的功能。舉例來說,假設天氣資料集包含 time_of_day 做為地圖項目。在這種情況下,機器學習從業人員可在訓練期間新增或移除 time_of_day,以判斷模型是否在沒有這個標記的情況下,能夠產生更好的預測。

評估中

我們會評估訓練完成的模型,判斷模型的學習成效。評估模型時,我們會使用已加上標籤的資料集,但只會提供資料集的特徵。接著,我們會比較模型的預測結果與標籤的真實值。

這張圖片顯示已訓練模型,其預測結果與實際值比較。

圖 4 比較機器學習模型的預測結果與實際值,藉此評估機器學習模型。

 

視模型的預測結果而定,在實際應用程式中部署模型之前,我們可能會執行更多訓練和評估。

隨堂測驗

為什麼模型要經過訓練才能進行預測?
模型必須經過訓練,才能學習資料集中特徵與標籤之間的數學關係。
模型不需要經過訓練。大多數的電腦都支援模型。
模型必須經過訓練,因此不需要取得資料即可進行預測。

推論

當我們對於評估模型的結果感到滿意後,就可以運用模型,針對未加上標籤的範例進行預測,稱為「推論」。在天氣應用程式範例中,我們會為模型提供目前的天氣狀況 (例如溫度、大氣壓力和相對濕度),並預測降雨量。