太牛逼了!一位中國博士把整個CNN都給可視化了,每個細節看的清清楚楚!

(給機器學習算法與Python學習加星標,提升AI技能) 

本文經AI新媒體量子位(公衆號 ID: QbitAI)授權轉載

每一個對AI抱有憧憬的小白,在開始的時候都會遇到CNN(卷積神經網絡)這個詞。

但每次,當小白們想了解CNN到底是怎麼回事,爲什麼就能聰明的識別人臉、聽辨聲音的時候,就懵了,只好理解爲玄學:

好吧,維基百科解決不了的問題,有人給解決了。

這個名叫CNN解釋器在線交互可視化工具,把CNN拆開了揉碎了,告訴小白們CNN究竟是怎麼一回事,爲什麼可以辨識物品。

它用TensorFlow.js加載了一個10層的預訓練模型,相當於在你的瀏覽器上跑一個CNN模型,只需要打開電腦,就能瞭解CNN究竟是怎麼回事。

而且,這個網頁工具還可以實現交互,只要點擊其中任何一個格子——就是CNN中的“神經元”,就能顯示它的輸入是哪些、經過了怎樣細微的變化。

甚至,連每一次卷積運算都能看得清。

看清卷積

這個CNN解釋器的使用方式也非常簡單:鼠標戳戳戳就好了。

單擊神經元,進入彈性解釋視圖,就可以看到卷積核滑動的過程的動畫模擬:

點擊一個正在卷積的過程圖,就可以看到更具體的過程:

可以看到底層的卷積運算過程,3×3的卷積核是如何經過運算被變成1個數字的。

看清ReLU和最大池化層

點擊一個ReLU層的神經元,可以看具體過程,ReLU函數是這樣工作的:

點擊一個池化神經元,也可以看具體最大池化層是怎樣工作的:

看清CNN是怎麼輸出預測的

點擊最右側的輸出神經元,進入彈性解釋視圖:

可以查看Softmax函數的詳情:

識別「狸克」試試?

CNN解釋器默認有10張圖片,你也可以增加自己的自定義圖片。

比如這個:

芝士焗燈籠椒?燈籠椒披薩?還是什麼鬼?

複製圖片鏈接或者上傳圖片之後,它經過了10層處理,得出結論:

是燈籠椒,但也可能是臭蟲。

但是,只能歸類於右側原有的10個品類裏,比如放一隻狸克:

就會被識別成espresso。

佐治亞理工中國博士出品

最後,這個CNN解釋器的作者是一位中國小哥,佐治亞理工的Zijie Wang,去年剛開始讀機器學習博士,本科畢業於威斯康星大學麥迪遜分校,是一位GPA 3.95/4.00的大學霸。

他也曾經做過一些其他有趣的數據可視化項目,比如威斯康星大學麥迪遜分校的中國本科生都來自哪裏:

傳送門

CNN解釋器
https://poloclub.github.io/cnn-explainer/

GitHub
https://github.com/poloclub/cnn-explainer

論文
https://arxiv.org/abs/2004.15004

推薦閱讀
放棄Excel,擁抱Python!神級編輯器統一表格與Python

【效率】一個堪稱神器的命令行工具,GitHub標星7.5K!

15 個邊玩遊戲邊學編程的網站

Python 中 3 個不可思議的返回


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章