cs231線性分類筆記

2021-10-07 16:05:10 字數 2016 閱讀 6589

最簡單的線性分類器

公式每個影象由32×32×3個畫素,上述公式中把影象拉伸為乙個3072×1的向量。w和b是引數,其中w是乙個k×3072的矩陣(k表示類別數),被稱為權重,b是乙個k×1的偏執向量。

1,乙個單獨的矩陣乘法

2,其中的引數是可以控制的,目的就是找到最合適的引數使得準確率做高。

3,資料驅動方式,就是利用訓練集進行訓練,找到做合適的引數,然後訓練集就可以丟棄,只留下訓練得到的引數。

理解線性分類器圖例

圖中是乙個簡單的例子,只有三個類別,並且影象也是簡單的2×2×3的。把拉伸得到4×1的向量。w是3(對應的類別數)×4(對應的一張的畫素),最後加上偏執向量得到這張對應的不同類別得到的分數。根據分數的大小對這個進行分類。上圖分類器就有錯誤,把貓當成了狗。

**將影象看做高維度的點:**既然影象被伸展成為了乙個高維度的列向量,那麼我們可以把影象看做這個高維度空間中的乙個點(即每張影象是3072維空間中的乙個點)。整個資料集就是乙個點的集合,每個點都帶有1個分類標籤。

既然定義每個分類類別的分值是權重和影象的矩陣乘,那麼每個分類類別的分數就是這個空間中的乙個線性函式的函式值。我們沒辦法視覺化3072維空間中的線性函式,但假設把這些維度擠壓到二維,那麼就可以看看這些分類器在做什麼了:

從上面可以看到,w的每一行都是乙個分類類別的分類器。對於這些數字的幾何解釋是:如果改變其中一行的數字,會看見分類器在空間中對應的直線開始向著不同方向旋轉。而偏差b,則允許分類器對應的直線平移。需要注意的是,如果沒有偏差,無論權重如何,在xi = 0時分類分值始終為0。這樣所有分類器的線都不得不穿過原點,顯然是不應該的。

權重和偏執是可以合併的

損失函式 loss function

利用損失函式來衡量結果的好壞,損失函式的結果取指范偉是0~無窮大損失函式得到的結果越大說明結果不夠好,結果為0表示好。

svm的損失函式

公式的具體用法

例子中▲取值是1,這個值也是乙個超引數,可以根據不同的實驗自己取值。取值為1 的含義就是,分類正確的分數要比分類錯誤得到的分數高1,這樣得到的損失值才能最好。

這個函式它常被稱為折葉損失(hinge loss)。有時候會聽到人們使用平方折葉損失svm(即l2-svm),它使用的是

將更強烈(平方地而不是線性地)地懲罰過界的邊界值。

正則化(regularization):

還不太理解

softmax分類器

svm和softmax的比較

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

cs231 線性分類

k nearest neighbor分類器存在以下不足 分類器必須記住所有訓練資料並將其儲存起來,以便於未來測試資料用於比較。這在儲存空間上是低效的,資料集的大小很容易就以gb計。對乙個測試影象進行分類需要和所有訓練影象作比較,演算法計算資源耗費高。引言 我們將要實現一種更強大的方法來解決影象分類問...

CS231 線性分類

評分函式 原始影象資料到類別分值的對映 損失函式 用來量化 分類標籤的得分與真實標籤之間一致性的 現在假設有乙個包含很多影象的訓練集 公式 每個影象都有乙個對應的分類標籤 公式 這裡 公式 並且 公式 這就是說,我們有n個影象樣例,每個影象的維度是d,共有k種不同的分類。如,在cifar 10中,我...

cs231 學習筆記(一)

訓練過程就是記錄所有的資料點,在 階段對每一條記錄 乙個影象 與原有資料集進行比較,得出與之最相近的一條記錄,其label就是最後的 值。通常使用的 distance metric 來比較影象 l1依賴於座標系,當座標軸轉動時l1值隨之改變,而l2不會。knn選擇k個最近的鄰居,隨著k的值越大,你的...