圖像識別分類基礎(chǔ)版

首先是最最簡易笨拙的knn算法(k-Nearest Neighbor):
它的缺點

  • 分類器必須記住所有訓(xùn)練數(shù)據(jù)并將其存儲起來,以便于未來測試數(shù)據(jù)用于比較。這在存儲空間上是低效的,數(shù)據(jù)集的大小很容易就以GB計
  • 對一個測試圖像進行分類需要和所有訓(xùn)練圖像作比較,算法計算資源耗費高。

其次,介紹一下線性分類器

該方法的第一部分就是定義一個評分函數(shù),這個函數(shù)將圖像的像素值映射為各個分類類別的得分,得分高低代表圖像屬于該類別的可能性高低。

其函數(shù)模型為:


equation.PNG

有幾點需要注意:

  • 一個單獨的矩陣乘法W*Xi就高效地并行評估10個不同的分類器(每個分類器針對一個分類),其中每個類的分類器就是W的一個行向量。
  • 輸入數(shù)據(jù)(Xi,Yi)是不可變的,但Wb是可控改變的,我們的目標就是通過設(shè)置這些參數(shù),使得計算出來的分類分值情況和訓(xùn)練集中圖像數(shù)據(jù)的真實類別標簽相符。
  • 該方法的一個優(yōu)勢是訓(xùn)練數(shù)據(jù)是用來學(xué)習(xí)到參數(shù)W和b的,一旦訓(xùn)練完成,訓(xùn)練數(shù)據(jù)就可以丟棄,留下學(xué)習(xí)到的參數(shù)即可。這是因為一個測試圖像可以簡單地輸入函數(shù),并基于計算出的分類分值來進行分類。
  • 最后,注意只需要做一個矩陣乘法和一個矩陣加法就能對一個測試數(shù)據(jù)分類,這比k-NN中將測試圖像和所有訓(xùn)練數(shù)據(jù)做比較的方法快多了。

線性分類器的一些理解:


cat.jpg

將線性分類器看做模板匹配


偏差和權(quán)重的合并技巧:

combine.jpg

圖像數(shù)據(jù)預(yù)處理:在之前的例子中,所有圖像都是使用的原始像素值(從0到255)。在機器學(xué)習(xí)中,對于輸入的特征做歸一化(normalization)處理是常見的套路。而在圖像分類的例子中,圖像上的每個像素可以看做一個特征。在實踐中,對每個特征減去平均值來中心化數(shù)據(jù)是非常重要的。在這些圖片的例子中,該步驟意味著根據(jù)訓(xùn)練集中所有的圖像計算出一個平均圖像值,然后每個圖像都減去這個平均值,這樣圖像的像素值就大約分布在[-127, 127]之間了。下一個常見步驟是,讓所有數(shù)值分布的區(qū)間變?yōu)閇-1, 1]。零均值的中心化是很重要的。


損失函數(shù)
多類支持向量機損失 Multiclass Support Vector Machine Loss

損失函數(shù).PNG

因為:
線性評分函數(shù).PNG

因此損失函數(shù)可改寫為:
改寫損失函數(shù).PNG

其中,max(0,-)稱作折葉損失(hinge loss)

我們對于預(yù)測訓(xùn)練集數(shù)據(jù)分類標簽的情況總有一些不滿意的,而損失函數(shù)就能將這些不滿意的程度量化

loss.jpg
  • 多類SVM“想要”正確類別的分類分數(shù)比其他不正確分類類別的分數(shù)要高,而且至少高出delta的邊界值。
  • 如果其他分類分數(shù)進入了紅色的區(qū)域,甚至更高,那么就開始計算損失。

正則化損失:

為什么需要:問題在于這個W并不唯一:可能有很多相似的W都能正確地分類所有的數(shù)據(jù)
我們希望能向某些特定的權(quán)重W添加一些偏好,對其他權(quán)重則不添加,以此來消除模糊性。
正則化懲罰:

equation1.PNG

完整的多類SVM損失函數(shù):
equation2.PNG


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容