---
# System prepended metadata

title: ML Lecture 0-1 機器學習簡介
tags: [李弘毅教授, 機器學習]

---

# ML Lecture 0-1 機器學習簡介
###### tags: `機器學習` `李弘毅教授`
深度學習是機器學習的一種
## 機器學習的三個步驟:
1.	給他一個具有趨近無限個函數的函數集(Model)
3.	讓機器找出最正確的函數<font color="orange">f^*^</font>。
4.	測試，使用<font color="orange">f^*^</font>來幫我們找出正確的輸出。
> 「趨近無限個函數的函數集」<font color="blue">其實就是神經網路模型</font>。一個神經網路模型的架構已經訂好了，只是我們不知道其中使用的權重長什麼樣子。因此可以說有趨近無限個函數。

## 常見的<font color="red">Supervised</font>機器學習方法
### Regression:
- 輸出結果是純量。
- 例如預測未來某時間的PM2.5。使用過去PM2.5的資料作為訓練集，讓他預測出未來的PM2.5。
### Classification:
- **Binary classification**:
    - 輸出的結果只有兩種。
    - 例如辨別垃圾郵件，結果只有「是」或「不是」。
- **Multi-class classification**:
    - 選擇題，機器的輸出有好幾個選項。
    - 例如：辨認網路上的新聞文件是甚麼類別，可能是體育、財經或政治。

### 選擇不同類型的Function set:
前面有提到，機器學習的第一步驟就是，選出一個趨近無限個函數的函數集。那要選擇甚麼函數呢？函數及主要又分為以下幾種：
1.	**線性模型**
2.	**非線性模型** 
    - 深度學習
        - 由很深層的網路組成，非常複雜。因此可以解決很複雜的問題。
        - 例如：影像辨識、下棋。 
    - SVM
    - Decision tree
    - K-NN
## Supervised的缺點
使用Supervised的方式來做機器學習，<font color="red">需要消耗大量時間標記資料</font>。以下是透過其他種學習方式來減少Label的方式:
- **Semi-supervised Learning**:
    例如：我們可能想要分辨貓、狗，但有label過的貓狗照片可能有限，同時有一堆沒標記過的貓狗照片，其實這些沒有標記過的資料也可能對學習有幫助。
- **Transfer learning**:
    - 另一種減少已標記資料用量的方式。
    - 有很多其他不先關的資料，不知道有沒有Label過。但這些資料可能也有幫助。
    - 例如：我們要辨別貓、狗，但卻有些資料是不知道有沒有標記過的其他動物，甚至是卡通人物。
- **Unsupervised Learning**:
    我們拿給機器的訓練資料集完全沒有Label過，機器無師自通。
## Structured learning
前面提到的幾種方式，輸出的都是一個數字、是/不是、類型這種比較簡單的東西。但Structured learning輸出的卻是一個比較有結構化的東西，例如輸入一段語音，結果輸出一段句子。

## Reinforcement Learning:
- 跟supervised的方式不同，他不需要人手把手教他怎麼做，不需要有標記資料。
- 機器是從評價做學習，只知道自己做得好不好，不知道是哪裡做不好。
- 例如:訓練聊天機器人，假如在有一次對話中對方很生氣地掛了電話。他就會知道他剛剛做得不好(評價不高)，因此去找尋原因做改善。

## 整理
![](https://i.imgur.com/KN6mQGS.png)
- <font color="blue">藍色</font>：代表不同的學習情境，通常是我們沒辦法自己控制的。例如可能沒有labeled data，所以只能做Reinforcement Learning。
- <font color="red">紅色</font>：會得到不同類型的輸出結果。
- <font color="green">綠色</font>：為了達到結果，使用的方法。
