模型
Let’s talk about AI model.
Model Structure
Neuron -> Perceptron
Nervous system -> Neural Network
人體 -> AI 模型
Perceptron
- Inputs (\(x_i\))
即 feature。 - Weights (\(w_i\))
每個 feature 對預測的幫助程度 - Bias (b)
即 判斷標準。 - Activation
依照分數和標準判斷結果的函數。 - Output
經過 Activation 出來的預測結果。
Formula
$$ \sum _{i=1}^m w_i \times x_i + b >= 0 $$
Layer
每個 Layer 包含多個 Perceptron
Neural Network
一個基礎的 Neural Network 包含 :
- Input Layer
- Hidden Layer
- Output Layer
Hidden layer 的層數,單層叫做 Shallow Neural Network。
多層叫做 Deep Neural Network ,即可稱之為 Deep Learning。
由於一個 Perceptron 是 Binary Classifier,只能做二元線性分類。
要想要分類更多種,以達到非線性分類就是添加更多的 Layer。
達到 Multiclass Classification。 即構成 Neural Network。
Model Task
以電腦視覺(Computer Vision)領域來說,模型主要會有以下任務類型:
- Classification
模型會分類貓或是狗 - Object Detection
模型會框出貓 - Segmentation
模型會框出貓輪廓
Model Categories
- 神經網絡模型
- 深度神經網絡(Deep Neural Networks,DNN)
- 卷積神經網絡(Convolutional Neural Networks,CNN)
- 循環神經網絡(Recurrent Neural Networks,RNN)
- 生成對抗網絡(Generative Adversarial Networks,GAN)
- 傳統機器學習模型
- 支持向量機(Support Vector Machines,SVM)
- 決策樹(Decision Trees)
- 隨機森林(Random Forests)
- 貝葉斯分類器(Naive Bayes)
- K最近鄰算法(K-Nearest Neighbors,KNN)
- 強化學習模型
- Q學習(Q-Learning)
- 深度強化學習(Deep Reinforcement Learning)
- 自然語言處理模型
- 循環神經網絡(RNN)
- 長短期記憶網絡(Long Short-Term Memory,LSTM)
- 注意力機制模型(Attention Mechanism)
- 語言模型(Language Models)
- BERT(Bidirectional Encoder Representations from Transformers)
- 圖像處理模型
- 卷積神經網絡(CNN)
- 卷積自編碼器(Convolutional Autoencoders)
- 生成對抗網絡(GAN)
- 推薦系統模型:
- 協同過濾(Collaborative Filtering)
- 基於內容的過濾(Content-Based Filtering)
- 混合推薦系統(Hybrid Recommender Systems)
- 混合模型:
- 同時結合多種類型的模型以解決複雜問題。
Model Learning Categories
以下以電腦視覺領域說明:
- Supervised learning
圖片資料集會需要做 label,提供 Neural Network 在輸出時判斷誤差使用。
通常 accuracy 較高。 - Un-supervised learning
圖片資料集不需要做 label,Neural Network 會自行尋找 feature 並且分類。
通常 accuracy 較低。 - Semi-supervised learning
僅需少部分圖片資料集做 label。算是 Supervised learning 與 Un-supervised learning 的折衷。 accuracy 應介於前述之間。 - Reinforcement learning
圖片資料集不需要做 label,根據反饋的好壞,Neural Network 自行逐步修正、最終得到正確的結果。 舉例: 把貓的照片預測成狗,人給出結果是錯的。Neural Network 會再次辨認 feature 及分類。透過逐次正確與錯誤的學習反饋,提升 accuracy。 - Transfer Learning
Neural Network 保留 feature 部分,分類部分則是減掉。接著重新訓練分類部分。