1. 程式人生 > 實用技巧 >python機器學習 | 入門介紹

python機器學習 | 入門介紹

最近在接觸機器學習這一塊的內容,不知道能學到哪個程度。先簡單地介紹它到底是什麼?

python學習入門介紹

1 機器學習基本介紹

(1)定義:機器學習是從資料中自動分析獲取模型,並利用模型對未知資料進行預測。
在這裡插入圖片描述
(2)工作流程
通常可以分為下面這幾個步驟:
蒐集資料–資料進行基本處理–利用訓練集提取特徵(特徵工程)–利用訓練集機器學習–使用預測資料集模型評估
在這裡插入圖片描述
1)獲取資料:
資料來源:爬蟲、資料庫等等
資料型別:有目標值+連續(如房價、身高等)、有目標值+離散(如次數、頻率等)、無明確目標值(分類)
2)資料處理:滿足完整性(是否存在缺失值)、全面性、合法性(合理性)、唯一性

3)資料集分割:一般將資料劃分為訓練集和測試集(比例有:75%:25%、80%:20%、70%:30%等)
4)特徵工程:基於學習專案的特點提取特徵,使得特徵能夠在機器學習中發揮更強作用,通過需要一定的專業背景知識和技巧處理資料。一般包括如下步驟:
a)特徵提取:將文字資訊轉為計算機可讀懂的數字
b)特徵預處理:通過⼀些轉換函式將特徵資料轉換成更加適合演算法模型的特徵資料過程
c)特徵降維:指在某些限定條件下,降低隨機變數(特徵)個數,得到⼀組“不相關”主變數的過程

舉個例子,區分紅細胞和白細胞
在這裡插入圖片描述
在這裡插入圖片描述

2 機器學習分類

(1)監督學習(Supervised learning)
監督學習簡單理解就是有目標值,主要分為迴歸問題與分類問題。

迴歸問題通常是找到合適的擬合函式
在這裡插入圖片描述
分類問題:通常是找到合適的分類函式,常用演算法有K-近鄰演算法、貝葉斯分類、決策樹與隨機森林、邏輯迴歸、神經網路

在這裡插入圖片描述

(2)無監督學習(Unsupervised learning)
無監督學習意味著輸入資料沒有被標記,也沒有確定的結果(無具體目標值)。樣本資料類別未知,需要根據樣本間的相似性對樣本集進行分類(聚類)試圖使類內差距最小化,類間差距最大化。
聚類演算法:K-means、PCA降維

(3)半監督學習(Semi-Supervised learning)
半監督學習就可以簡單理解為⼀部分資料有目標,而⼀部分資料無目標。主要使用於監督學習效果不能滿足需求時,就使用半監督學習來增強學習效果。

(4)強化學習(Reinforcement learning)
增強學習主要⽤來自動進行決策,並且可以做連續決策。也就是說,整個過程都是⼀個動態的,上⼀步資料的輸出是下⼀步資料的輸入

3 機器學習模型評估

模型評估是模型開發過程不可或缺的⼀部分。它有助於發現表達資料的最佳模型和所選模型將來⼯作的效能如何。按照資料集的目標值不同,可以把模型評估分為分類模型評估和迴歸模型評估

  • 分類模型評估
    注重準確率、精確率、召回率、F1-score、AUC指標
    在這裡插入圖片描述
    在這裡插入圖片描述
  • 迴歸模型評估
    包括均方根誤差(Root Mean Squared Error,RMSE)、相對平方誤差(relative squared error,RSE)、平均絕對誤差(Mean Absolute Error,MAE)、相對絕對誤差(relative absolute error,RAE)。

(1) 均方根誤差(Root Mean Squared Error,RMSE):⼀個衡量回歸模型誤差率的常⽤公式。但是,它僅能比較誤差是相同單位的模型。(p是預測值,a是真實值)
在這裡插入圖片描述

(2)相對平方誤差(relative squared error,RSE):可以比較不同單位的模型
在這裡插入圖片描述
(3)平均絕對誤差(Mean Absolute Error,MAE):與原始資料單位相同,它僅能比較誤差是相同單位的模型。量級近似與RMSE,但是誤差值相對小⼀些。
在這裡插入圖片描述
(4)相對絕對誤差(relative absolute error,RAE):可以比較誤差是不同單位的模型
在這裡插入圖片描述

模型評估呈現的是擬合的結果,最優的擬合是恰好擬合。然而可能會出現過擬合和欠擬合兩種情況。

過擬合:由於特徵過於細化等原因,導致模型單純侷限(適合)於訓練集

相反,欠擬合就是特徵過少,導致模型評估不準確。