神經元:
神經元是神經網絡的一部分。是神經網絡的最小結構,經過一定的設置後就能構成邏輯迴歸模型
從單個神經元來看:
首先先從真實的神經元的圖片來看:
下圖就是一個最基本的神經元,一個輸出,多個輸入
可以看到和上面的生理上的圖片還蠻像的
可以看到中間的圓圈有兩個步驟,一個步驟是權重和x相乘, 另外一個是做一個非線性,也就是激活函數,激活函數應用到上面去後,神經元就具體化了,成爲一個模型(激活函數和非線性不在本文說明)
假設:
樣本一 (input1: [x1, x2.......],label1)
(label1代表標籤,也就是正確的輸出值,默認都瞭解)
經過激活函數H(x)得到一個預測值 y
Loss = label1 - y
去縮小Loss
多個神經元(神經網絡):
一個神經元可以用來做二分類的任務,多個神經元,可以用來做多分類的任務
從單個神經元到多個神經元的變化:
W ==> 從向量變成矩陣
W*x ===> 從值變爲向量
也就是神經網絡(上圖和經典的神經網絡模型很像):
(畫的不好見諒)
有一個神經元的時候就需要一個w向量,兩個神經元需要兩個w向量,w也就從向量變成了矩陣
原本二分類下是權重向量和輸入向量相乘得到一個值和正確標籤做loss,現在變成了
我們同樣做一個過程假設:
有四個類別 label1, label2, label3, label4
假設樣本1 (input1: [x1, x2.......],label2)
input1向量分別和四個權重向量W[0], W[1], W[2], W[3]相乘得到四個預測值 y : [ 0.1, 0.15, 0.2 , 0.4 ], 概率0.4最大,模型預測的標籤可能是最後一個
做Loss:
將label做one-hot編碼:
[
[1, 0, 0, 0], # label1
[0, 1, 0, 0], # label2
[0, 0, 1, 0], # label3
[0, 0, 0, 1] # label4
]
那麼對例子做一個loss:
Loss = 求和(絕對值(label2 - y)) = 1.55
縮小Loss
本菜鳥學習不好,如有不妥望各位大佬指點
如要轉載請說明原文:https://blog.csdn.net/qq_36652619/article/details/89437256