機器學習

(二)監督式學習(Supervised)

監督式學習分成線性迴歸與分類兩種,線性迴歸用於預測連續性的數值,分類用於預測離散性的分類標籤或類別

線性迴歸(Linear Regression)

Ch3線性歸(Linear Regression)

線性回歸用於預測連續的數值,例如:預測血壓數值,使用體重、年齡、身高、睡眠與遺傳進行預測。

範例:使用線性回歸預測汽車排放CO2

進階範例:使用XGBRegressor與GridSearchCV進行線性迴歸分析


分類(Classification)

用於預測離散的分類標籤類別,例如:預測是否有糖尿病,使用體重、年齡、身高、睡眠、遺傳、飲食習慣進行預測。

Ch4邏輯迴歸 (Logistic Regression)

用於預測是否、對錯、成功與否,用於預測二分類問題。

範例:使用Logistic Regression分析鳶尾花


Ch5決策樹(Decision Trees)

 Step1)從資料集選擇一個屬性 

Step2)計算屬性的重要性

Step3)根據屬性值分割資料 

Step4)回到Step1

範例:使用決策樹進行病人用藥分

範例:使用隨機森林進行病人用藥分類


Ch6 KNN(K-Nearest Neighbor)

Step1)選擇K值

Step2)計算所有點到未知點的距離

Step3)選取最靠近未知點的K個點

Step4)使用最接近的K個點預測屬性值

範例:使用KNN進行隨機資料分類

範例:使用KNN進行鳶尾花(iris)分類


 Ch7 Support Vector Machines(支持向量機)

將資料映射到高維度空間造成資料可分割

適用情境:影片辨識、文字分析、語意分析

範例:使用Support Vector Machines分類鳶尾花

範例:使用SVM分類垃圾郵件


(三)非監督式學習 (Unsupervised)

分群(Clustering)

在資料集中相似的資料放在同一群,不相似的資料放到其他群。

分群用於辨識顧客的貢獻度、信用卡會違約與不會違約的顧客、推薦相似的書給顧客、辨識顧客的購買行為、辨識病人行為等

(1)K-means分群

Step1)隨機挑選K個中心點

Step2)每一個資料依據距離這K個中心點的距離,歸屬到最近的中心點,分成K群

Step3)這K群重新計算中心點。

Step4)回到Step2使用新的中心點重新分群,直到K個中心點不再移動

範例:使用K-means與隨機資料進行分群

範例:使用k-means將手寫數字分群

範例:使用K-means對顧客進行分群

範例:使用K-means將鳶尾花iris分群


(2)階層式分群(Hierarchical Clustering)

(四)神經網路(深度學習)

(1)神經網路(Neural Network , NN)

Artificial Neural Networks(ANN,人工神經網路,類神經網路),也可以去除Artificial,簡稱神經網路(Neural Network , NN)



(2)Convolutional Neural Network(卷積神經網路,縮寫為CNN)

使用Cifar-10圖庫訓練卷積神經網路

使用更複雜的卷積神經網路辨識Cifar-10圖庫

預先訓練的模型

範例:使用CNN進行圖片辨識

*影像辨識模組Xception  、VGG16、VGG19、ResNet50、InceptionV3、InceptionResNetV2與MobileNet

範例:使用VGG16模組進行影像辨識

進階範例:使用VGG16模組進行275 Birds影像辨識

進階範例:自訂CNN模組進行275 Birds影像辨識

進階範例:自訂CNN模組且手動匯入圖片進行275 Birds影像辨識