了解機器學習的準則
機器學習是用來建立預測模型的程式設計技術。 不同於一般程式設計,其中程式碼是用來描述產生結果的特定步驟;機器學習依賴使用演算法來反覆探索結果模型應該預測的資料實體特徵與標籤之間的關聯性。 機器學習演算法是以機率理論和統計資料為基礎,並依賴大量資料來定型模型。
在簡單層級,機器學習模型是一種函式,其會採用觀察實體的特徵 (其特性),並對其執行計算以傳回預測標籤。 一般而言,通常會將特徵稱為 x,並將預測標籤稱為y;因此實際上,機器學習模型是運算式 y = f(x)
中的函式 f。
函式在特徵上執行的特定作業,以計算標籤的值,是由用來定型模型的演算法所決定。
機器學習的類型
大致來說,有兩種常見的機器學習類型:
- 監督式機器學習,其中會使用包含已知標籤值的資料來定型模型 (因此演算法會使用現有的資料來建立 x 與 y 之間的關聯性,進而產生可套用至 x 的函式來計算 y)。
- 非監督式機器學習,其中只會使用特徵 (x) 值和具有類似特徵的群組 (或叢集) 觀察來定型模型。
監督式機器學習
本課程模組著重於監督式機器學習,因為這是最常見的案例。 在監督式機器學習的廣泛定義中,有兩種常見的機器學習演算法:
迴歸演算法,其中標籤是數值,例如價格、溫度、數量或其他可測量的值。 迴歸演算法會產生模型,其中函式 (f) 會在特徵 (x) 上運作,以計算標籤 (y) 的數值。
例如,迴歸演算法可用來定型模型,根據一年中的月份、一週中的日期、溫度、濕度等特徵,預測在指定日期時公園資訊亭所銷售霜淇淋的預期數量。
分類演算法,其中標籤是離散類別 (或類別)。 分類演算法會產生模型,其中函式 (f) 會在特徵 (x) 上運作,以計算每個可能類別的可能性值,並且針對具有最高可能性的類別傳回標籤 (y)。
例如,分類演算法可用來定型模型,以根據血液-胰島素等級、體重、身高、年齡等特徵來預測患者是否有糖尿病。 識別兩個可能類別其中之一 (例如 true 或 false) 的分類模型是二元分類的範例。 預測兩個以上類別可能性的演算法 (例如,區分無糖尿病、第 1 型糖尿病、第 2 型糖尿病的患者),是用於多類別分類。
非監督式機器學習
最常見的非監督式學習形式是叢集,其中資料案例的特徵會被視為多維度空間中點的向量。 叢集演算法的目標是定義將點分組的叢集,讓具有類似特徵的案例緊靠在一起,但是叢集會明確地彼此分隔。
當您需要定義不同的資料類別,但是沒有現有資料觀察已指派至其中的預先定義類別時,叢集非常有用。 例如,您可能想要根據客戶設定檔中的相似之處來區隔客戶。 叢集也可用來作為建置分類解決方案的初始步驟,基本上,您可以使用叢集來判斷資料的適當類別。