## SCAICT 三月課程第二堂 ### 機器學習理論與實作(一)aka數學先修班 <br>深度學習 --- ## 簽到 ![qrcode_docs.google.com](https://hackmd.io/_uploads/HJQRPNPCa.png) --- ## 從上次作業出發 https://colab.research.google.com/github/ChiuDeYuan/linear_regression_example/blob/main/homework/homework_323.ipynb --- ## 認識sigmoid ---- 這是用線性迴歸算出來的擬合曲線 ![下載 (53)](https://hackmd.io/_uploads/rkSrxD5Ap.png) ---- 但是有許多不合理處(預測值>1或<0) ![下載 (53)](https://hackmd.io/_uploads/rkSrxD5Ap.png) ---- 而且這條方程式有點太過生硬 ![下載 (53)](https://hackmd.io/_uploads/rkSrxD5Ap.png) ---- 所以就有了sigmoid ![下載 (57)](https://hackmd.io/_uploads/B1ZrqJS1A.png) ---- $sigmoid(x)=\frac{1}{1+e^{-x}}$ ![下載 (57)](https://hackmd.io/_uploads/B1ZrqJS1A.png) ---- sigmoid將值域縮在0~1 ![下載 (57)](https://hackmd.io/_uploads/B1ZrqJS1A.png) 也就是將輸入值map到0~1區間的值 ---- 所以就可以進行比較準確的二元分類了 ![下載 (59)](https://hackmd.io/_uploads/HJV3AJryC.png) ---- ### 但不是這樣(也是可以啦) ![下載 (59)](https://hackmd.io/_uploads/HJV3AJryC.png) ---- 因為這條直線才是$x$的函數 ![下載 (53)](https://hackmd.io/_uploads/rkSrxD5Ap.png) ---- 所以我們把線性方程式的預測值先畫出來 ![下載 (61)](https://hackmd.io/_uploads/HyrKXzry0.png) 注意這個數據是經過剛剛的線性方程式算出來的 ---- 然後再用sigmoid ![下載 (60)](https://hackmd.io/_uploads/By3FGzrJR.png) 這有點像是屬於類別為1(有糖尿病)的機率 ---- ### 這就是邏輯迴歸 ---- 比較 線性&sigmoid <div style="display:flex;"><img src=https://hackmd.io/_uploads/rkSrxD5Ap.png> <img src=https://hackmd.io/_uploads/By3FGzrJR.png></div> ---- ### 但是sigmoid適用於所有分類問題嗎? ---- # NO ---- ## 因為每種資料的分布都不一樣 例如高斯、白努利、泊松... ---- 所以顯然sigmoid比較適用於二元分類 其他種資料有不同預測曲線 ---- #### 事實上這個預測曲線是由 ### 廣義線性模型<br>Generalized Linear Models #### 推廣而來 ---- ### 但沒有時間 ### 有興趣自己去查 ---- ### 只要知道對於不同任務<br>我們可以選擇一個適合的方式來預測 例如Gaussian分布資料就用線性恆等函數 Bernoulli就用sigmoid --- ### 另一種函數 ## ReLU ### 線性整流單元 #### Rectified Linear Unit ---- 我們前面預測房價的曲線可能會有負值 ![下載 (58)](https://hackmd.io/_uploads/SyvZT1rJ0.png =50%x) ---- 所以我們需要ReLU ![下載 (55)](https://hackmd.io/_uploads/rkiOVgHk0.png) ---- $relu(x)=max(x, 0)$ ![下載 (55)](https://hackmd.io/_uploads/rkiOVgHk0.png) ---- ReLU跟sigmoid都是一種函數 將輸入的$x$映射至另一個值 ---- 也可以說我們的資料先經過**線性方程式** 再透過ReLU或sigmoid輸出最終預測 ![deep_learning_turorials.drawio (3)](https://hackmd.io/_uploads/rycfDGryC.png) ---- ### 其他種轉換函式 ![1688885174323 (1)](https://hackmd.io/_uploads/SkiJOGSkR.jpg =50%x) --- ## 深度學習 ---- ### 單個神經元(感知器) ![deep_learning_turorials.drawio (11)](https://hackmd.io/_uploads/SJIqtVHJR.png) >w : 之前的$\theta_1$~$\theta_d$ >b : 之前的$\theta_0$ ---- 我們把計算結果這樣表示 $a=f(w^Tx+b)$ >$f(x)$ : 活化函數 >w : 之前的$\theta_1$~$\theta_d$ >b : 之前的$\theta_0$ ---- ### 複雜思考 ![CS229 3](https://hackmd.io/_uploads/Sy5xHQrJR.png =80%x) ---- 我們可以這樣表示每個神經元 $a_1=ReLU(w_1x+w_2x+b_1)$ $a_2=ReLU(w_3x+b_2)$ $a_3=ReLU(w_4x+w_5x+b_3)$ >$a$ : 該神經元的輸出值 ---- 最後輸出(最後一個神經元) $\bar h_\theta(x)=w_6a_1+w_7a_2+w_8a_3+b_4$ --- ## 活化函數 ![think-emoji](https://hackmd.io/_uploads/Hk2lJBSkR.gif) ![deep_learning_turorials.drawio (11)](https://hackmd.io/_uploads/SJIqtVHJR.png) ---- ### 引進非線性要素 ---- 如果沒有活化函數則是一個線性模型 $\begin{aligned}h_\theta(x)&=W^{[3]}W^{[2]}W^{[1]}x\\&=\hat Wx\end{aligned}$ ---- 非線性問題 ![螢幕擷取畫面 2024-03-30 154214](https://hackmd.io/_uploads/BJlJuGrrkA.png) ---- ### 神經元閾值 ---- 神經電位 ![slide_55](https://hackmd.io/_uploads/B1GPoVryC.jpg =50%x) ---- 真實神經元的activation function ![下載 (63)](https://hackmd.io/_uploads/HJWua4BJA.png) ---- 各種activation function ![1688885174323 (1)](https://hackmd.io/_uploads/SkiJOGSkR.jpg =50%x) --- ## 訓練的神經網路流程 ---- * 設計神經網路架構 * 初始化權重(w、b) * 優化權重 * 預測 --- ## 神經網路架構 ---- 各層功能 ![image](https://hackmd.io/_uploads/HylQRHSyR.png) * 輸入層(input layer) : 讀取特徵 * 隱藏層(hidden layer) : 學習權重 * 輸出層(output layer) : 讀出預測 ---- 神經元數量 ![image](https://hackmd.io/_uploads/HylQRHSyR.png) * 輸入層(input layer) : 特徵數量 * 隱藏層(hidden layer) : 模型複雜程度 * 輸出層(output layer) : 1 or 類別數量-1 ---- #### 前饋神經網路(FNN) ![image](https://hackmd.io/_uploads/HylQRHSyR.png) 你也可以把它叫做多層感知器(MLP) 是最簡單的神經網路模型 ---- ### 一些神經網路種類 * 前饋神經網路(FNN) * 卷積神經網路(CNN) * 長短記憶(LSTM) * 循環神經網路(RNN) * 圖神經網路(GNN) --- ## 沒了 ![image](https://hackmd.io/_uploads/Hyer-_HJC.png =30%x) --- ### 回饋表單 ![qrcode_docs.google.com (1)](https://hackmd.io/_uploads/Sy98_NwRT.png) 深度學習實作等下次課程,還有一些東西沒講 ---
{"title":"三月主題課程第二堂","description":"type:slide","contributors":"[{\"id\":\"8270ce89-c16d-4965-af18-50cdee721260\",\"add\":6112,\"del\":1711}]"}
    492 views