計(jì)算機(jī)視覺(jué)與人工智能 北京郵電大學(xué) 魯鵬
p1 前言

圖像處理與計(jì)算機(jī)視覺(jué)區(qū)別:
圖像處理的輸入和輸出都是圖像,輸入和輸出之間的最大的區(qū)別是改善了圖像之間人們需要改善的一部分,例如圖像增亮,去噪,去模糊等。
計(jì)算機(jī)視覺(jué)的輸入是圖像,輸出不僅限與圖像,比如輸入的圖像可以輸出語(yǔ)義標(biāo)簽,或者是圖像三維場(chǎng)景的結(jié)構(gòu)信息,強(qiáng)調(diào)的輸出更多的是內(nèi)容的輸出,不僅限于感官的輸出。
計(jì)算機(jī)視覺(jué)的目標(biāo)
跨越“語(yǔ)義鴻溝”建立像素到語(yǔ)義的映射
圖像中包含何種信息
1.三維場(chǎng)景的結(jié)構(gòu)信息
2.語(yǔ)義信息
深度學(xué)習(xí)三要素
算法,算力,數(shù)據(jù)
p2 線(xiàn)性分類(lèi)器
分類(lèi)模型
基于規(guī)則的方法是否可行
通過(guò)硬編碼的方式識(shí)別貓或其他類(lèi)

通過(guò)硬編碼的方法識(shí)別貓或者其他類(lèi),是一件很困難的事。
數(shù)據(jù)驅(qū)動(dòng)的圖像分類(lèi)方法
1.數(shù)據(jù)集構(gòu)建
2.分類(lèi)器設(shè)計(jì)與學(xué)習(xí)
3.分類(lèi)器決策
分類(lèi)器的設(shè)計(jì)與學(xué)習(xí)

圖像表示
1.像素表示
2.全局特征表示(如GIST):在圖像上面抽出一些頻率特征,適合全局特征,適合風(fēng)景類(lèi),城市建筑等分類(lèi),不適合小事物的分類(lèi)。
3.局部特征表示(如SIFT特征+詞袋模型):可以更好的處理有遮擋的情況,將圖片分成區(qū)塊,然后進(jìn)行分類(lèi)。
分類(lèi)模型
近鄰分類(lèi)器
貝葉斯分類(lèi)器
線(xiàn)性分類(lèi)器(主要講)
支持向量機(jī)分類(lèi)器
神經(jīng)網(wǎng)絡(luò)分類(lèi)器(主要講)
隨機(jī)森林
Adaboost
損失函數(shù)
0-1損失
多類(lèi)支持向量機(jī)損失
交叉熵?fù)p失
L1損失
L2損失
優(yōu)化算法
1.一階方法(主要講)
? ? 梯度下降
? ? 隨機(jī)梯度下降
? ? 小批量隨機(jī)梯度下降
2.二階方法
? ? 牛頓法(主要講)
? ? BFGS
? ? L-BFGS
訓(xùn)練過(guò)程
數(shù)據(jù)集劃分
數(shù)據(jù)預(yù)處理
數(shù)據(jù)增強(qiáng)
欠擬合和過(guò)擬合
? ? 減小算法復(fù)雜度
? ? 使用權(quán)重正則項(xiàng)
? ? 使用droput正則化
超參數(shù)調(diào)整
模型集成
圖像分類(lèi)任務(wù)的評(píng)價(jià)指標(biāo)
正確率=分對(duì)的樣本數(shù)/全部樣本數(shù)
錯(cuò)誤率=1-正確率
TOP1指標(biāo)與TOP5指標(biāo)
TOP1指標(biāo):假設(shè)對(duì)一個(gè)圖像有5個(gè)預(yù)測(cè)標(biāo)簽,其中在分析對(duì)錯(cuò)的時(shí)候只看第一個(gè)預(yù)測(cè)的標(biāo)簽,第一個(gè)預(yù)測(cè)的標(biāo)簽的正確與否就決定了整個(gè)算法是否正確。
TOP5指標(biāo):同樣,TOP5的意思就是指標(biāo)為前5個(gè)預(yù)測(cè)標(biāo)簽,只要這5個(gè)預(yù)測(cè)標(biāo)簽里面有對(duì)的就算整個(gè)算法的預(yù)測(cè)是正確的。

圖像類(lèi)型
1.二進(jìn)制圖像
計(jì)算機(jī)將圖像讀取為矩陣。矩陣內(nèi)部的值為0或1。
2.灰度圖像
同樣將圖像讀取為矩陣,矩陣內(nèi)部的值的范圍為0到255,即256個(gè)值。其中0代表黑色,255代表白色,中間的值的顏色在黑色和白色之間。
3.彩色圖像
彩色圖像可以分為3個(gè)通道,即RGB,其中三個(gè)字母分別代表紅色,綠色,藍(lán)色。
大多數(shù)的分類(lèi)算法都要求輸入向量。
圖像表示
將圖像轉(zhuǎn)換成向量的方法很多,這里介紹一種簡(jiǎn)單的方法,直接將圖像矩陣轉(zhuǎn)換成向量,表示為

這里面,rgb就是每個(gè)像素點(diǎn)對(duì)應(yīng)的rgb值。
線(xiàn)性分類(lèi)器的定義
線(xiàn)性分類(lèi)器是一種線(xiàn)性映射,將輸入的圖像特征映射為類(lèi)別分?jǐn)?shù)。
線(xiàn)性分類(lèi)器的決策:

其中,圖片左側(cè)的表達(dá)式叫做線(xiàn)性分類(lèi)器的矩陣表示,通過(guò)將權(quán)值矩陣W,圖像向量X值,和偏置b,帶入計(jì)算可以得到最終的表達(dá)式的值,分類(lèi)目標(biāo)中表達(dá)式的最終的值最大的數(shù)所對(duì)應(yīng)的物體就代表最終的預(yù)測(cè)。
例題
問(wèn)題:CIFAR10數(shù)據(jù)集分類(lèi)任務(wù)的分類(lèi)器,W,x,b的維度是多少?
回答:CIFAR10有10個(gè)類(lèi)別且圖像大小為32*32*3,因此:
x是圖像向量,其維度為3072維;
W是權(quán)值矩陣,其維度為10*3072維;
b是偏置矩陣,其維度為10*1的向量;
f是得分向量,其維度為10*1的向量;
線(xiàn)性分類(lèi)器的權(quán)值向量
直觀(guān)的理解權(quán)值矩陣,權(quán)值可以看成是一種模板,輸入圖像與評(píng)估模板的匹配程度越高,分類(lèi)器的輸出的分?jǐn)?shù)就越高。
線(xiàn)性分類(lèi)器的決策邊界
分?jǐn)?shù)等于0的線(xiàn)就是決策面,即線(xiàn)性分類(lèi)器的矩陣表達(dá)式的值為0。
損失函數(shù)
損失函數(shù)的定義
損失函數(shù)搭建了模型性能與模型參數(shù)之間的橋梁,指導(dǎo)模型參數(shù)優(yōu)化。
損失函數(shù)是一個(gè)函數(shù),用于度量給定分類(lèi)器的預(yù)測(cè)值與真實(shí)值的不一致程度,其輸出通常是一個(gè)非負(fù)實(shí)數(shù)。
其輸出的非負(fù)實(shí)數(shù)值可以作為反饋信號(hào)來(lái)對(duì)分類(lèi)器參數(shù)進(jìn)行調(diào)整,以降低當(dāng)前實(shí)例所對(duì)應(yīng)的損失值,提升分類(lèi)器的分類(lèi)效果。

多類(lèi)支持向量機(jī)損失

例子:

正則項(xiàng)與超參數(shù)
接下來(lái)對(duì)正則項(xiàng)損失和超參數(shù)進(jìn)行介紹:
正則項(xiàng)損失:

超參數(shù):

L2正則項(xiàng):
L2正則項(xiàng)中將分類(lèi)器輸出的值進(jìn)行平方取平均值,L2正則損失對(duì)大數(shù)據(jù)權(quán)值進(jìn)行懲罰,喜歡分散權(quán)值,鼓勵(lì)分類(lèi)器將所有維度的特征都用起來(lái),而不是強(qiáng)烈的依賴(lài)其中少數(shù)幾維特征。
L1正則項(xiàng)是將分類(lèi)器的輸出值取絕對(duì)值然后相加取平均值,然后彈性網(wǎng)絡(luò)正則項(xiàng)類(lèi)似于將兩者混合,其中一部分的分類(lèi)器輸出取絕對(duì)值,一部分的分類(lèi)器輸出取平方。
正則項(xiàng)讓權(quán)值有了偏好。正則損失的目的是防止模型在訓(xùn)練集上面學(xué)習(xí)得太好,即過(guò)擬合。
優(yōu)化算法
什么是優(yōu)化
參數(shù)優(yōu)化是機(jī)器學(xué)習(xí)的核心步驟之一,它利用損失函數(shù)的輸出值作為反饋信號(hào)來(lái)調(diào)整分類(lèi)器參數(shù),以提升分類(lèi)器對(duì)訓(xùn)練樣本的預(yù)測(cè)性能。
損失函數(shù)L是一個(gè)與參數(shù)W有關(guān)的函數(shù),優(yōu)化的目標(biāo)就是找到使損失函數(shù)L達(dá)到最優(yōu)的那組參數(shù)W,最直接的方法就是讓L對(duì)W進(jìn)行求導(dǎo),令其導(dǎo)數(shù)等于0,就可以找到最優(yōu)的那組參數(shù)W。
通常,L形式比較復(fù)雜,很難從這個(gè)等式直接求解出W!
梯度下降算法,隨機(jī)梯度下降算法及小批量梯度下降算法
梯度下降方法是一種簡(jiǎn)單而高效的迭代優(yōu)化方法。
可以理解為向負(fù)梯度方向走,學(xué)習(xí)率是算法中很重要的一部分。
下面是梯度下降算法的整體思路結(jié)構(gòu):

梯度計(jì)算的方法:
1.數(shù)值法
即一維變量,函數(shù)求導(dǎo),也就是數(shù)學(xué)中的求導(dǎo)計(jì)算,整個(gè)計(jì)算過(guò)程計(jì)算量大,不精確。
2.解析法
即求數(shù)學(xué)中的梯度,特點(diǎn)是精確,速度快,導(dǎo)數(shù)函數(shù)推導(dǎo)易錯(cuò)、
數(shù)值梯度有什么作用?
答:求梯度的時(shí)候一般使用解析梯度,而數(shù)值梯度主要用于解析梯度的正確性校驗(yàn)。
接下來(lái)介紹隨機(jī)梯度下降算法和小批量梯度下降算法:


訓(xùn)練過(guò)程
數(shù)據(jù)集劃分
將數(shù)據(jù)集劃分為訓(xùn)練集和數(shù)據(jù)集,訓(xùn)練數(shù)據(jù)用于尋找最優(yōu)分類(lèi)器,評(píng)估模型用于評(píng)測(cè)泛化能力。
需要處理的是超參數(shù)的問(wèn)題,所以就需要將數(shù)據(jù)集分為訓(xùn)練集,驗(yàn)證集,測(cè)試集。
訓(xùn)練集用于給定的超參數(shù)時(shí)分類(lèi)器參數(shù)的學(xué)習(xí)。
驗(yàn)證集用于選擇超參數(shù)。
測(cè)試集評(píng)估泛化能力。
K折交叉驗(yàn)證:
如果數(shù)據(jù)很少的話(huà),驗(yàn)證集包含的樣本就會(huì)過(guò)少,就無(wú)法在統(tǒng)計(jì)上代表數(shù)據(jù)?;蛘哂捎陔S機(jī)性使得模型性能差別很大。幾折就是將數(shù)據(jù)分成幾份的意思。下面是K折驗(yàn)證的主要方法,打亂數(shù)據(jù)要比不打亂數(shù)據(jù)的隨機(jī)性更好一些。

數(shù)據(jù)預(yù)處理
數(shù)據(jù)預(yù)處理包括去均值,歸一化,去相關(guān),白化等操作。