0
雷鋒網(wǎng)AI科技評(píng)論按:近期Yann LeCun的新作《Hierarchical loss for classification》已經(jīng)放在了arXiv上,聯(lián)合作者為Facebook人工智能研究院的Cinna Wu和 Mark Tygert。
在這篇文章中,作者認(rèn)為在分類任務(wù)中,一般的神經(jīng)網(wǎng)絡(luò)模型(例如LeCun, Bengio 和 Hinton等人2015年中的模型,其他研究的模型也大多基于此展開(kāi)的)很少會(huì)考慮到類型之間的親疏關(guān)系,例如這些模型的分類學(xué)習(xí)過(guò)程中并沒(méi)有考慮牧羊犬事實(shí)上比摩天大樓更像哈巴狗。在文章中,作者通過(guò)“超度規(guī)類樹(shù)”構(gòu)造了一種新的損失函數(shù),稱為“層級(jí)損失函數(shù)”。這種損失函數(shù)因?yàn)閮?nèi)含了類型樹(shù)中不同類之間的親疏關(guān)系,預(yù)期中應(yīng)當(dāng)能夠增強(qiáng)分類學(xué)習(xí)的效果。不過(guò)經(jīng)過(guò)六組實(shí)驗(yàn)的對(duì)比,作者發(fā)現(xiàn)結(jié)果并沒(méi)有顯著的改進(jìn)。作者認(rèn)為,不管怎么著吧,至少這表明層級(jí)損失函數(shù)能用。
雷鋒網(wǎng)認(rèn)為,它不僅能用,還極具潛力,因?yàn)長(zhǎng)eCun只是用了最簡(jiǎn)單的“超度規(guī)類樹(shù)”來(lái)闡述這種思想,相信在選用更合適的超度規(guī)樹(shù)后,分類學(xué)習(xí)會(huì)得到一個(gè)更好的結(jié)果。下面我們來(lái)看具體內(nèi)容。
注:由于獲得函數(shù)(Win Function)與損失函數(shù)是同一個(gè)內(nèi)容的相反表示,訓(xùn)練過(guò)程其實(shí)就是在尋找最小的損失函數(shù)或者最大的獲得函數(shù)。所以接下來(lái)只考慮層級(jí)獲得函數(shù)的構(gòu)建。
構(gòu)建層級(jí)獲得函數(shù),首先需要一個(gè)類樹(shù),也即將待分的所有類按照親疏關(guān)系放到一顆關(guān)系樹(shù)中,每一個(gè)類都是類樹(shù)中的“樹(shù)葉”。對(duì)于一個(gè)輸入,分類器會(huì)映射到類樹(shù)每個(gè)樹(shù)葉上一個(gè)概率值,也即一個(gè)概率分布(圖中P1-P7)。類樹(shù)中每個(gè)節(jié)點(diǎn)處,文章中規(guī)定,其對(duì)應(yīng)的概率值為其下所有樹(shù)葉概率值的和,如圖中所示。顯然在不考慮計(jì)算機(jī)的浮點(diǎn)誤差的情況下,“根部”的概率應(yīng)該為1。
另一方面,對(duì)每個(gè)“節(jié)點(diǎn)”和“樹(shù)葉”都賦予一個(gè)權(quán)重。文章中規(guī)定,“根部”的權(quán)重為1/2,隨后每經(jīng)過(guò)一個(gè)“節(jié)點(diǎn)”,權(quán)重乘以1/2,直到樹(shù)葉;樹(shù)葉的權(quán)重由于是“樹(shù)”的末端,所以其權(quán)重要雙倍,如圖所示。
如果我們輸入一張A的圖片,那么我們可以計(jì)算其層級(jí)獲得函數(shù)W:
其中
從上面可以看到,事實(shí)上層級(jí)獲得函數(shù)的構(gòu)造非常簡(jiǎn)單,就是一個(gè)結(jié)構(gòu)權(quán)重向量和概率分布向量的一個(gè)點(diǎn)乘。同樣可以看出,不管分類器給出什么樣的概率分布,層級(jí)獲得函數(shù)的范圍都在[1/2,1]區(qū)間內(nèi);當(dāng)P1=1時(shí),W最大,為1;而當(dāng)P5、P6、P7中的任意一個(gè)等于1時(shí),W最小,為1/2。在類樹(shù)中接近A的類的概率越大,層級(jí)獲得函數(shù)值就越大,所以層級(jí)獲得函數(shù)在某種程度上隱含了類之間親疏的關(guān)系,也構(gòu)建了分類器準(zhǔn)確度的一種度量。
有時(shí)候分類器給出的分布可能不是概率,這時(shí)候?yàn)榱双@得一個(gè)正則的分布,我們可以使用softmax函數(shù)的方法,也即將(x1, x2, x3, ……xn)的分布序列轉(zhuǎn)換成
這樣的概率分布,顯然滿足正則性,且分布在(0,1)區(qū)間內(nèi)。這種方法不僅可以對(duì)向量進(jìn)行歸一化,更重要的是它能夠凸顯出其中最大的值并抑制遠(yuǎn)低于最大值的其他分量。
當(dāng)采用softmax函數(shù)的結(jié)果作為概率分布時(shí),最好是使用層級(jí)獲得函數(shù)W的對(duì)數(shù)進(jìn)行優(yōu)化學(xué)習(xí),而不是W本身。使用logW進(jìn)行優(yōu)化的好處之一就是,當(dāng)輸入樣本為多個(gè)獨(dú)立樣本時(shí),它們的聯(lián)合概率將是它們概率的乘積;這時(shí)候?qū)@些樣本的獲得函數(shù)W進(jìn)行求平均就具有了意義(在特殊情況下logW的平均將等于聯(lián)合概率的對(duì)數(shù))。
文章中對(duì)logW’ 的構(gòu)建為:舍掉W中“根部”的項(xiàng),然后將剩下的部分乘以2,此時(shí)W’=(W-1/2)*2的范圍在[0,1]之間(其中0對(duì)應(yīng)最錯(cuò)誤的分類,1則對(duì)應(yīng)完全正確的分類),相應(yīng)的,logW’將在(-∞,0]之間。
這就會(huì)導(dǎo)致一個(gè)問(wèn)題。當(dāng)多個(gè)獨(dú)立樣本,求log W’的平均值時(shí),只要有一個(gè)出現(xiàn)了最錯(cuò)誤的判斷,那么不管其他樣本的結(jié)果如何,log W’的平均值都會(huì)等于無(wú)窮大。所以這種方法對(duì)樣本及學(xué)習(xí)過(guò)程都有非常嚴(yán)格的要求。
作者隨后用Joulin等人的fastTest文本分類監(jiān)督學(xué)習(xí)模型對(duì)層級(jí)獲得函數(shù)進(jìn)行了六組實(shí)驗(yàn)(六個(gè)數(shù)據(jù)集)。結(jié)果如下:
說(shuō)明:
(1)flat表示沒(méi)有分類的情況(沒(méi)有分類相當(dāng)于類樹(shù)只有一個(gè)層級(jí)),raw表示用層級(jí)獲得函數(shù)進(jìn)行訓(xùn)練,log表示用負(fù)的層級(jí)獲得函數(shù)的對(duì)數(shù)進(jìn)行訓(xùn)練,course表示在層級(jí)中使用通常的交叉熵?fù)p失函數(shù)只分類到最粗糙類(聚合)。(2)one-hot win via hierarchy 表示喂給層級(jí)獲得函數(shù)的概率分布為獨(dú)熱碼(只有一個(gè)為1,其余為0)
(3)softmax win via hierarchy 表示喂給層級(jí)獲得函數(shù)的概率分布為softmax函數(shù)的結(jié)果;
(4)?log of win via hierarchy 表示(3)中層級(jí)獲得函數(shù)的負(fù)自然對(duì)數(shù);
(5)cross entropy表示使用交叉熵?fù)p失函數(shù)計(jì)算的結(jié)果,這種情況相當(dāng)于類樹(shù)只有一個(gè)層級(jí);
(6)coarsest accuracy 表示最粗糙分類正確的比例結(jié)果;
(7)parents’ accuracy 表示父級(jí)分類正確的比例結(jié)果;
(8)finest accuracy 表示分類到最終每一個(gè)類中正確的比例結(jié)果。
(9)最后一行的“higher”和“l(fā)ower”分別表示相應(yīng)的列中“越大”和“越小”的值越好。
通過(guò)以上結(jié)果,我們可以看到很多時(shí)候,通過(guò)層級(jí)獲得函數(shù)優(yōu)化的結(jié)果并沒(méi)有原來(lái)通過(guò)交叉熵?fù)p失函數(shù)優(yōu)化的結(jié)果好。那么,LeCun的這項(xiàng)工作白做了嗎?也并不是,至少它表明在一定程度上層級(jí)獲得函數(shù)能夠用做作為分類準(zhǔn)確度的度量,它暗示了一種可能:當(dāng)有采用更合適的層級(jí)獲得函數(shù)時(shí),效果可能會(huì)超過(guò)當(dāng)前所常用的交叉熵?fù)p失函數(shù)等方法。
那么機(jī)會(huì)來(lái)了,“更合適”有多種可能,就看你如何構(gòu)造了!
雷鋒網(wǎng)注:原文鏈接 https://arxiv.org/pdf/1709.01062.pdf
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。