距離上次寫博客已經(jīng)好久好久好久了,真是懈怠的生活節(jié)奏,整天混吃等死玩游戲,前些日子做畢業(yè)設(shè)計時總算又學(xué)了點新東西。學(xué)了一點深度學(xué)習(xí)和卷積神經(jīng)網(wǎng)絡(luò)的知識,附帶著詳細(xì)學(xué)習(xí)了一下前段時間我覺得比較有意思的圖像風(fēng)格轉(zhuǎn)換。畢竟是初學(xué),順便把神經(jīng)網(wǎng)絡(luò)方面的知識也寫在前面了,便于理解。若有不對的地方的話,希望指正。
主要參考的文獻有《A Neural Algorithm of Artistic Style》和《Perceptual Losses for Real-Time Style Transfer and Super-Resolution》這兩篇論文,以及深度學(xué)習(xí)實踐:使用Tensorflow實現(xiàn)快速風(fēng)格遷移等文章,代碼參考了OlavHN/fast-neural-style和hzy46/fast-neural-style-tensorflow等大神的。
先說一下卷積神經(jīng)網(wǎng)絡(luò)。卷積神經(jīng)網(wǎng)絡(luò)(CNN)是一種前饋神經(jīng)網(wǎng)絡(luò),了解機器學(xué)習(xí)中人工神經(jīng)網(wǎng)絡(luò)的話應(yīng)該對這個概念不陌生。神經(jīng)網(wǎng)絡(luò)中的感知器模型如下圖所示。
輸入神經(jīng)元與其各自權(quán)重相乘再相加得到z,利用激活函數(shù)g(z)進行變換得到神經(jīng)元y。輸入層神經(jīng)元與其權(quán)重相乘再相加的過程可以用矩陣相乘相乘來表示,這點在下面的卷及神經(jīng)網(wǎng)絡(luò)里可以看到。神經(jīng)網(wǎng)絡(luò)里輸入層和輸出層中間的是隱藏層。