Recognant創始人:神經網路其實很簡單,所以,別假裝你是個天才

經常有人告訴我他們使用人工智慧取得了多麼令人矚目的成就。其實,這裡面有99%的東西都很蠢。

這篇文章可能會被認為夸夸其談,但這並不是它的本意,它只想指出為什麼以前人工智慧專家很少,現在突然湧現出如此多的專家。

大多數專家貌似都很專業,這是因為很少有人知道他們是怎麼操縱AI的。本文就旨在「揭露」他們的內幕。

1.從零開始建立一個神經網路,並讓它在手機上運行

你如果能將這11行Python代碼輕鬆地轉換為Java、C或C++代碼,就已經掌握了交叉編譯器在3秒內可以完成的工作。

大多數人不知道神經網路如此簡單。他們認為神經網路是超級複雜的。就像把複雜圖形分解成無數個簡單圖形一樣,神經網路也可以做一些看起來很複雜的事情,但是這種複雜性來自重複和隨機數發生器。

2.建立一個20層的神經網路

你拿了上面的代碼,然後再次循環。接下來比較難的是,決定把下一個「For」和「:」放在哪兒。

「深度學習」和深度的n層只是一個輸入輸出貫穿於自身的神經網路。因為你在不斷地循環再循環,所以它被稱為循環神經網路(RNN:Recursive neural networks)。

這些不斷重複的動作與你學習駕駛有些類似,假如你只學會了右轉彎,上路後只要遇到路口你就右轉,你就可以去自己想去的地方。雖然這樣做效率不高,但我們知道右轉彎比左轉彎更容易。

3.使用英偉達的GPU訓練一個神經網路,並移至手機

在上述11行代碼中,錯誤(或未實現)的是種子沒有設置。沒有設置種子,就不能保證第二次循環會像第一次循環一樣獲得相同的隨機數,也就不能保證出現明顯不同的結果。由於你的手機和電腦不能給出相同的隨機數,而且不同的手機晶元之間可能都有不同的隨機數,所以將基於GPU的訓練移植到移動端很不現實。

這樣的訓練要花費數以億計的時間,因此為手機建立一個神經網路幾乎是不可能的。設備之間也始終存在差異,對於語音識別來說,識別率增加或者減少5%不是什麼大問題,而對癌症檢測或診斷等事情來說,這就是一件大事了。

4.訓練神經網路去做人類無法做到的事

神經網路其實就是個愚蠢的黑匣子。如果你有足夠的時間和精力運行它,就會得到比較合適的測試數據,但你不會從隨機源測試中得到很好的結果。人工智慧非常擅長偽關聯,比如,把肯塔基州的結婚率和溺水率相關聯。

人們總希望人工智慧可以創造奇蹟,但大部分AI並不能做人類也做不到的事情。雖然有一些例外,但僅限於透明的AI,而神經網路是個黑匣子。

5. 使用TensorFlow

還記得上面的那十一行代碼嗎?TensorFlow只是這11行代碼的包裝品。它幫你可視化了這11行代碼中發生的事情。很多時候,它就像谷歌分析一樣。谷歌分析需要的數據都可以在伺服器日誌中找到,但是大多數人看不懂這些日誌,他們只能看明白谷歌分析。與此同時,谷歌分析會告訴你,你的伺服器速度很慢,但它不會告訴你原因。

我們這些了解神經網路的人不需要TensorFlow,因為我們不需要花哨的圖表和動畫來可視化數據,我們需要看原始數據和代碼,才能找出伺服器變慢等問題的原因。

6.把神經網路用於NLP/ NLU

關於人類一些常識性的東西,神經網路的模擬能力並不比鼻涕蟲的高多少。

為英語中的每個單詞構建一個具有單一特徵的神經網路, 它需要的計算能力和谷歌擁有的計算能力一樣多。在英語中,若把每一個詞的每個意義都賦予一個特徵,就需要地球上所有的雲服務都來計算,這顯然是不可能的。人工智慧可以做偉大的事情,但神經網路是有局限性的。

7.有一個自定義的神經網路

恭喜你, 你已經知道如何將11行的神經網路代碼包裝在9行代碼中, 用於遺傳演算法,或包裝在44行代碼中,用於分散式進化演算法。你可以用55行代碼寫一篇新聞稿,等等。

8.訓練一個神經網路做事

你現在成了一個數據駕馭者,就如同一個訓狗師一樣。只要你的狗長著一個鼻涕蟲腦袋,你就可以多次重複訓練它。

同理,擁有一個數據訓練集也沒有捷徑,只能靠這種單調笨拙的方法。雖然外界很難了解你的所作所為,但你不要欺騙自己(或者其他人),你只不過是一個鼻涕蟲訓練師而已。

9.把神經網路和區塊鏈結合

恭喜你,你終於知道炒作堆棧了。不幸的是,哈希挖掘和神經網路沒有任何共同之處,並且,用區塊鏈節點運行所有數據集是行不通的。

當你用正常大小的數據集以超過16種方式「切片」負載時,神經網路開始出現問題。如果你有數十億的數據記錄,或者你在做反向傳播,想要測試多種數據表示順序,是可以進行更大擴展的,但這些不能擴展到數百萬個節點中。

10.我不怎麼用神經網路

在我使用的工具中,也有神經網路代碼。但它只是一種選擇,而不是整個產品的基礎。我所做的大部分工作,運用了一種自定義的啟發式方法。我把使用的各種技術的組合叫做心智模擬。

神經網路模擬的是大腦中的硬體,而心智模擬對大腦中的軟體進行模擬。心智模擬只有大約10年的歷史,而神經網路已經有50多年歷史了。

心智模擬的另一個不同之處在於,它屬於透明的AI,需要數百萬行代碼才能發揮作用。

作者簡介:

Brandon Wirtz 是NLP引擎公司Recognant的CEO 和創始人。

原文鏈接:

kdnuggets.com/2018/02/n

來源:kdnuggets

作者:Brandon Wirtz

智能觀 編譯

—完—

親愛的朋友:

我們每周五推出的「洞見」欄目,會分享一些業內的前沿思想及獨特視角。希望這些內容能予你啟思,並幫你開拓視野。

祝安!

智能觀 一米

2018-3-9 於北京中關村

想知道AI加教育領域有哪些最新研究成果?

想要AI領域更多的乾貨?

想了解更多專家的「智能觀」?

請在對話界面點擊「找找看」,去獲取你想要的內容吧。

聲明:

編譯文章旨在幫助讀者了解行業新思想、新觀點及新動態,為原作者觀點,不代表智能觀觀點。

轉載智能觀原創文章,請聯繫

智能觀小艾(微信號:zng2017618)!


推薦閱讀:

膠囊網路結構Capsule初探
受限玻爾茲曼機(RBM)學習筆記
Batch Normalization閱讀筆記
當Node.js遇上OpenCV深度神經網路
【Neural Networks and Deep Learning】3.改進神經網路的學習方法(過擬合)

TAG:神經網路 | 人工智慧 | 演算法 |