天天看點

機器學習之卷積神經網絡(一)

計算機視覺(Computer vision)

深度學習與計算機視覺可以幫助汽車,查明周圍的行人和汽車,并幫助汽車避開它們。還使得人臉識别技術變得更加效率和精準,我們可以體驗到通過刷臉就能解鎖手機或者門鎖的便捷。當你解鎖了手機,手機上一定有很多分享圖檔的應用。在上面,可以看到美食,酒店或美麗風景的圖檔。有些公司在這些應用上使用了深度學習技術來向大家展示最為生動美麗以及與我們最為相關的圖檔。機器學習甚至還催生了新的藝術類型。

首先,計算機視覺的高速發展标志着新型應用産生的可能,這是幾年前,人們所不敢想象的。通過學習使用這些工具,可以創造出新的産品和應用。

其次,即使到頭來未能在計算機視覺上有所建樹,但人們對于計算機視覺的研究是如此富有想象力和創造力,由此衍生出新的神經網絡結構與算法,這實際上啟發人們去創造出計算機視覺與其他領域的交叉成果。

圖檔分類(圖檔識别)

比如給出這張64×64的圖檔,讓計算機去分辨出這是一隻貓。

機器學習之卷積神經網絡(一)

還有一個例子,在計算機視覺中有個問題叫做目标檢測,比如在一個無人駕駛項目中,你不一定非得識别出圖檔中的物體是車輛,但你需要計算出其他車輛的位置,以確定自己能夠避開它們。是以在目标檢測項目中,首先需要計算出圖中有哪些物體,比如汽車,還有圖檔中的其他東西,再将它們模拟成一個個盒子,或用一些其他的技術識别出它們在圖檔中的位置。注意在這個例子中,在一張圖檔中同時有多個車輛,每輛車相對與你來說都有一個确切的距離。

機器學習之卷積神經網絡(一)
機器學習之卷積神經網絡(一)

還有一個更有趣的例子,就是神經網絡實作的圖檔風格遷移,比如說你有一張圖檔,但你想将這張圖檔轉換為另外一種風格。是以圖檔風格遷移,就是你有一張滿意的圖檔和一張風格圖檔,實際上右邊這幅畫是畢加索的畫作,而你可以利用神經網絡将它們融合到一起,描繪出一張新的圖檔。它的整體輪廓來自于左邊,卻是右邊的風格,最後生成下面這張圖檔。這種神奇的算法創造出了新的藝術風格,是以在這門課程中,你也能通過學習做到這樣的事情。

但在應用計算機視覺時要面臨一個挑戰,就是資料的輸入可能會非常大。舉個例子,在過去的課程中,你們一般操作的都是64×64的小圖檔,實際上,它的資料量是64×64×3,因為每張圖檔都有3個顔色通道。如果計算一下的話,可得知資料量為12288,是以我們的特征向量$x$次元為12288。這其實還好,因為64×64真的是很小的一張圖檔。

機器學習之卷積神經網絡(一)

如果你要操作更大的圖檔,比如一張1000×1000的圖檔,它足有1兆那麼大,但是特征向量的次元達到了1000×1000×3,因為有3個RGB通道,是以數字将會是300萬。如果你在尺寸很小的螢幕上觀察,可能察覺不出上面的圖檔隻有64×64那麼大,而下面一張是1000×1000的大圖。

機器學習之卷積神經網絡(一)

如果你要輸入300萬的資料量,這就意味着,特征向量$x$的次元高達300萬。是以在第一隐藏層中,你也許會有1000個隐藏單元,而所有的權值組成了矩陣 $W^{[1]}$。如果你使用了标準的全連接配接網絡,就像我們在第一門和第二門的課程裡說的,這個矩陣的大小将會是1000×300萬。因為現在$x$的次元為$3m$,$3m$通常用來表示300萬。這意味着矩陣$W^{[1]}$會有30億個參數,這是個非常巨大的數字。在參數如此大量的情況下,難以獲得足夠的資料來防止神經網絡發生過拟合和競争需求,要處理包含30億參數的神經網絡,巨大的記憶體需求讓人不太能接受。

但對于計算機視覺應用來說,你肯定不想它隻處理小圖檔,你希望它同時也要能處理大圖。為此,你需要進行卷積計算,它是卷積神經網絡中非常重要的一塊。

以上内容參考安全牛課堂 機器學習與網絡安全 第4章節 卷積神經網絡

繼續閱讀