一,多類(Multiclass)
????????多類是指輸出不止有兩個輸出標簽,想要對多個種類進行分類。
-
Softmax回歸算法:
??????????????Softmax回歸算法是Logistic回歸在多類問題上的推廣,和線性回歸一樣,將輸入的特征與權重進行線性疊加,主要不同在于,Softmax回歸的輸出值個數取決于輸入標簽的類別的個數。
????????????????例:
一共輸入有四種特征和三種輸出類別,權重(W)包含12個標量,偏置(b)包含3個標量,對于每個輸入標簽進行線性疊加,得到3個輸出:o1,o2,o3
???????????????進行Softmax回歸:
????????2,Softmax函數:
????????????????對每個類別進行指數函數處理,然后歸一化,使得所有類別的概率之和為1。當有n個類別時,可以通過公式來比較的值并輸出
????????3,Softmax回歸的損失函數:
????????????????損失函數和邏輯回歸相似。
4,在人工神經網絡的Softmax輸出:
? ? ? ??與邏輯回歸不同,Softmax回歸的輸出函數與每個Z都有關系
????????對每一隱藏層的每個單元進行Softmax回歸,產生的激活值傳遞給下一隱藏層,以此類推。
5,利用TensorFlow實現Softmax回歸:
????????①:建立模型
????????②:定義代價函數和損失函數
????????③:訓練數據得到最小代價函數
6,Softmax回歸的改進:
????????原因:由于電腦計算的先后順序不一樣,可能會導致結果的偏差,(精度損失?),因此需要在計算中選擇更合適的方法。
方法:張量流
????????張量流通過重新編排代價函數中的項,并提出一個更為精準的數值方法來計算代價函數,即選擇是否計算a。
????????采用圖中修改的代碼進行計算,最后只會計算出Z。缺點是使得Softmax回歸過程變得不是很清晰,張量流的數據減少。
(整個優化后的代碼如上圖所示)