Machine Learning - Concept
Conspectus
深度學習 Deep Learning 是機器學習 Machine Learning 的分支
機器學習 Machine Learning 是人工智慧 Artificial Intelligence 的分支
機器學習四大分類:
- Supervised Learning
- Semi-supervised Learning
- Unsupervised Learning
- Reinforcemend Learning
機器學習只要旋轉資料/轉換顏色就截然不同,可用來增加 Training Data
- 降躁
- 提升解析度
- 降雜訊
- 做多分類類別不用分太多,二分類就好,會讓研究目標較明顯也更重點投注
- 論文一定要有真實資料,所以如何獲得獨家的資料集是關鍵之一(例如與醫院合作獲得病例照),不然 Open Data 幾百年前就被做光了 By 許老師
- 先有資料集再設計模型
Machine Learning Conspectus
在訓練之前先 pre-train 過,當模型完全學會 pre-train 的資料集時,就可以藉由 fine-tune 模型去學會其他任務的資料
有別於 Supervised Learning 需要成對的輸入 x 與輸出 y,生成式對抗網路只要有大量的輸入 x 和大量的輸出 y 的資料集,就有辦法自動將兩者之間關聯起來
不知道如何標註資料,就連人類也不確定如何才是最好(例如:下圍棋),但人類可以判斷好壞(例如:下贏就是好,下輸就是不好)
異常檢測,讓機器具備無法判斷時輸出不知道的指令
不僅可以分類正確的輸入,同時會說明為何如此分類的原因
透過在圖片內加入雜訊,即可對模型造成攻擊(其中一種手法)
讓一個模型透過不斷學習,在大量的時間下,未來會成為極為聰明的模型
Few-shot Learning (用非常少量的資料學習)是基於 Meta Learning,要讓模型學會自己研發演算法,因此才能在極少的資料下學習的一樣好
Supervised Learning
所有資料都有 label
希望透過大量標註資料來幫助學習算法找到最好的模型
大致分為兩類:
分類,輸出是類別
例如:利用 MNIST 數據集對手寫數字辨識進行多分類
回歸,輸出是數值
Data: (x, y),x is data, y is label
Goal: learning func to map x → y
Semi-supervised Learning
資料有 label 和 unlabel 的,而 unlabel 比例遠大於 label 的數量
有時候會不算這個,稱其他三類為機器學習三大分類,但因 Hundred-Page Machine learning Book by A. Burkov 將其分為一大類,故以此為準
有時因標記資料不夠多,因此也透過 unlabel 資料去 tune supervised model
Unsupervised Learning
所有資料都 unlabel
目標是創建一個模型,將特徵向量 x 輸入後,將其轉化為另一個向量或轉化為一個可用於解決實際問題的值
Clustering 分群即為一種 Unsupervised Learning,其目標為把相向的集合成一群,但並沒有標準,由機器自己判斷如何分類
模型會傳回 dataset 中每個特徵向量的聚類 id
模型的輸出是一個比輸入 x 特徵更少的特徵向量
高維降至低維度,減少輸注的 x 的特徵 feature
Data: x,x is data, no label
Goal: learning underlying sturcture
Unsupervised Learning 與 Supervised Learning 最大不同,沒有 label
Reinforcemend Learning
模型會根據環境自己學習,透過將環境狀態感知為一個特徵向量
機器可以在每種狀態下執行動作,不同的行動會帶來不同的回報,亦讓機器進入環境的另一種狀態
Reinforcemend Learning 的目標是學習策略,透過將狀態的特徵向量作為輸入,輸出在該狀態下的最佳行動,使預期的平均 reward 最大化
例如:
- 令在移動的物件上的木根保持平衡,需控制物件移動,使木根不倒,如何控制物件速度即為 Reinforcemend Learning
- 控制棒球員根據不同來速,判斷該以何種速動,到達何處,才能接到投手的球
Data: state-action pairs
Goal: maximize future rewards over many time steps
Attribute
屬性,指標的的特徵
在 input 中稱為 label
在 output 中稱為 target
attribute = feature = variable = characteristic = field
有兩種型別:
- categorical 分類
- numeric 數值
Model Type
Linear model
w1x1 + w2x2 + b = 0
Hypothesis: a set of linear func
Learning Algorithm: PLA
Rule-Based model
Hypothesis: a set of rules
Learning Algorithm: Decision Tree
Instance-Based model
基於案例
Hypothesis: an implicit hypothesis set
Learning Algorithm: k-nearest neighbor(kNN),找在特徵向量空間中距離目標最近的 k 個 label
Loss function or Squared error loss
進行錯誤分類的懲罰度量
Model-Based vs. Instance-Based Learning
Model-Based:透過 training data 學習參數而來創造模型
Instance-Based Learning:使用整個 dataset 作為模型,例如 k-Nearest Neighbors (kNN)
Shallow vs. Deep Learning
Shallow Learning:從訓練實例的特徵中學習模型參數
- Examples of the shallow architectures:
- Support vector machines (SVMs)
- Logistic regression
- Kernel regression
- Multilayer perceptrons (MLPs) with a single hidden layer including extreme learning machines (ELMs)
Deep Learning:譬如 neural network 神經網路,尤其是輸入與輸出之間有一層以上的演算法,大多數深度神經網路學習中模型的參數都樹從前幾層的輸出中學習的
Linear vs Non-linear model
Linear model:A straight line (or a plane, or a hyperplane)
很難完美的分類,因為可能會有噪音 noise in the data、錯誤標記 errors of labeling、異常值 outliers
ex:
(f(xi) - yi)2
用在 linear regression
Reference
- Hundred-Page Machine learning Book by A. Burkov
- 黃貞瑛老師的機器學習課程
- 台大電機李宏毅老師 - 【機器學習2022】開學囉~ 又要週更了~