原創 文摘菌 大數據文摘
大數據文摘出品
作者:劉俊寰
日漫看多了,連程序猿也被煽動得中二起來。
《火影忍者》可能是很多人的第一部中二動漫,什麼影分身之術、螺旋丸、通靈術等這些手勢被我們玩了又玩,永遠都玩不會膩。畢竟,「沒有什麼敵人是螺旋丸解決不了的,如果一個不行,那就再搓一個」。
但是,手勢太多也容易搞混。這不,一位初學深度學習一年的印度小哥AngryCoder不僅把《火影忍者》裡面的手勢學了個遍,還用機器學習開發了一個系統,專門來識別這些手勢。
畫風大概就是這樣:
視頻連結:
https://youtu.be/mCcla6k3lXA
在YouTube上,這個項目也受到了大家的追捧,網友們都讚不絕口:
兄弟這也太棒了吧,我老是認不出新的手勢,有它就好了!
同樣作為資深阿宅的文摘菌怎麼能錯過這個寶藏項目呢?文摘菌扒了一下這個項目和神秘的AngryCoder小哥,疫情期間,來一起回憶這部神動漫,重新點燃中二之魂吧!
二次元的深度學習,中二患者狂加buff!
其實,AngryCoder大概一年前才開始接觸深度學習,他表示從逐漸接觸到熟練掌握神經網絡的過程中,就被萬能的神經網絡深深地折服了。
不過,這時小哥也遇到了瓶頸,他表示,越往後就越不知道自己能夠利用這項技術為這個世界做點什麼。(這熟悉的日漫男主內心活動)
靈光一閃,小哥決定還是回到自己的二次元世界,順便把自己對《火影忍者》刷了好幾遍的成果用上。
熟悉《火影忍者》的小夥伴都知道,《火影忍者》裡面的每個手勢都有不同的作用,比如文摘菌最喜歡的影分身之術,當按照結印順序做出手勢後,就可以創造出和你一樣的身體。
但是,各種功能和修煉等級配合不同的手勢,很難全部記下來,在艱難抉擇之下,小哥最後選擇了下圖的這些手勢進行識別:
小哥沒有選擇從零搭建神經網絡,而是利用了深度學習庫Keras訓練了一個卷積神經系統,用來進行物體識別。他表示,從頭開始訓練雖然酷,但是真的太!難!了!
小哥接下來也在視頻中向大家解釋了識別系統背後的原理。
首先,你需要觀看《火影忍者》不下五遍,把所有的手勢和咒語,最好連「輸出全靠吼」的技能全都記好筆記,每天認真複習。
然後就到了真正面對敵人的時候了,當你準確做出上述手勢之一,系統會將你的手勢進行識別,將其轉化成1和0的計算機語言,再將其送入訓練好的模型中進行識別,就可以得出最後的結果了。
以下圖為例,系統識別到,該手勢有80%的可能是Ram,10%的可能是Bird,10%的可能是Dragon。
最後,也獲得了這樣的效果:
可以看到,系統準確地識別出了「dog」的手勢,也能在無手勢時顯示「no sign」字樣。
最後,對於那些連第一步都做不到的《火影忍者》假粉,小哥也送上了貼心小禮物(此時需要配上程序猿的笑聲):
菜鳥阿宅程序猿勇闖三次元:現實太殘酷
看了AngryCoder的視頻,文摘菌深感這個小哥肯定也是個深陷二次元的有趣靈魂。
從YouTube主頁上初步判斷,小哥正式「營業」時間不超過一年,除了《火影忍者》手勢識別外,小哥還用Python玩了一把谷歌的Dino,還嘗試用自己的聲音刪除電子郵件???這病得不輕啊。
在這些項目中,文摘菌發現,除了識別火影手勢,小哥在4周前也用機器學習做了家居物體的識別,我們先來看幾個成功的例子,可以看到,不管是單個牙刷的識別,還是杯子、桌子多個物體識別都不在話下。
接下來,我們來看看失敗的例子,比如在電風扇面前,系統給出了「toilet 67%」的結果,這時小哥也忍不住了,在視頻下方直接開罵。
在被小哥寄予厚望的抱枕識別上,系統也只是給出了「tie 68%」的結果。
三次元的世界太殘酷了,還是乖乖躲回自己的二次元好了!
最後,可能也是想集二次元程序猿之力,小哥在YouTube下方留下了Discord群聊邀請連結,感興趣的朋友可一定不要錯過了,就是手機驗證、郵箱驗證、證明你不是機器人這一系列操作令人窒息。
Anyway,一起來造作啊!
原標題:《深度學習入行一年能幹啥?菜鳥程式設計師開發系統識別火影手勢,收穫大把二次元粉絲》
閱讀原文