CS231n課程筆記 線性分類

2021-08-09 01:15:46 字數 1811 閱讀 3413

1、該分類器必須記住所有訓練資料並將其儲存起來,方便和未來資料進行比較,但這在儲存空間上是低效的。

2、對乙個測試影象進行分類需要和所有訓練影象作比較,在計算上,資源耗費高。

評分函式是原始影象資料到類別分值的對映。另乙個損失函式是用來量化**分類標籤的得分與真實標籤之間的一致性的。該方法可轉化為乙個最優化問題,在最優化過程中,將通過更新評分函式的引數來最小化損失函式值。

svm是最常用的兩個分類器之一,而另乙個就是softmax分類器,它的損失函式與svm的損失函式不同。對於學習過二元邏輯回歸分類器的讀者來說,softmax分類器就可以理解為邏輯回歸分類器面對多個分類的一般化歸納。svm將輸出f(x_i,w)作為每個分類的評分(因為無定標,所以難以直接解釋)。與svm不同,softmax的輸出(歸一化的分類概率)更加直觀。在softmax分類器中,函式對映f(x_i;w)=wx_i保持不變,但將這些評分值視為每個分類的未歸一化的對數概率,並且將折葉損失(hinge loss)替換為交叉熵損失(cross-entropy loss)。

f = np.array([123, 456, 789]) # 例子中有3個分類,每個評分的數值都很大

p = np.exp(f) / np.sum(np.exp(f)) # 不妙:數值問題,可能導致數值**

# 那麼將f中的值平移到最大值為0:

f -= np.max(f) # f becomes [-666, -333, 0]

p = np.exp(f) / np.sum(np.exp(f)) # 現在ok了,將給出正確結果

針對乙個資料點,svm和softmax分類器的不同處理方式的例子。兩個分類器都計算了同樣的分值向量f(本節中是通過矩陣乘來實現)。不同之處在於對f中分值的解釋:svm分類器將它們看做是分類評分,它的損失函式鼓勵正確的分類(本例中是藍色的類別2)的分值比其他分類的分值高出至少乙個邊界值。softmax分類器將這些數值看做是每個分類沒有歸一化的對數概率,鼓勵正確分類的歸一化的對數概率變高,其餘的變低。svm的最終的損失值是1.58,softmax的最終的損失值是0.452,但要注意這兩個數值沒有可比性。只在給定同樣資料,在同樣的分類器的損失值計算中,它們才有意義。

svm的計算是無標定的,而且難以針對所有分類的評分值給出直觀解釋。softmax分類器則不同,它允許我們計算出對於所有分類標籤的可能性。舉個例子,針對給出的影象,svm分類器可能給你的是乙個[12.5, 0.6, -23.0]對應分類「貓」,「狗」,「船」。而softmax分類器可以計算出這三個標籤的」可能性「是[0.9, 0.09, 0.01],這就讓你能看出對於不同分類準確性的把握。為什麼我們要在」可能性「上面打引號呢?這是因為可能性分布的集中或離散程度是由正則化引數λ直接決定的,λ是你能直接控制的乙個輸入引數。舉個例子,假設3個分類的原始分數是[1, -2, 0],那麼softmax函式就會計算:

現在看起來,概率的分布就更加分散了。還有,隨著正則化引數λ不斷增強,權重數值會越來越小,最後輸出的概率會接近於均勻分布。這就是說,softmax分類器算出來的概率最好是看成一種對於分類正確性的自信。和svm一樣,數字間相互比較得出的大小順序是可以解釋的,但其絕對值則難以直觀解釋。

CS231n 線性分類

在學習cs231n課程,邊看課程講義邊做筆記,記錄在這裡 k nn分類器的缺點 分類器必須記住所有訓練資料並將其儲存起來,以便於未來測試資料用於比較。這在儲存空間上是低效的,資料集的大小很容易就以gb計。對乙個測試影象進行分類需要和所有訓練影象作比較,演算法計算資源耗費高。概述 這種方法主要有兩部分...

CS231n課程筆記翻譯

賀完結!cs231n官方筆記授權翻譯總集篇發布 智慧型單元 知乎專欄 cs231n課程筆記翻譯 影象分類筆記 上 智慧型單元 知乎專欄 cs231n課程筆記翻譯 影象分類筆記 下 智慧型單元 知乎專欄 cs231n課程筆記翻譯 線性分類筆記 上 智慧型單元 知乎專欄 cs231n課程筆記翻譯 線性分...

CS231n課程筆記翻譯

賀完結!cs231n官方筆記授權翻譯總集篇發布 智慧型單元 知乎專欄 cs231n課程筆記翻譯 影象分類筆記 上 智慧型單元 知乎專欄 cs231n課程筆記翻譯 影象分類筆記 下 智慧型單元 知乎專欄 cs231n課程筆記翻譯 線性分類筆記 上 智慧型單元 知乎專欄 cs231n課程筆記翻譯 線性分...