經常有人告訴我他們使用人工智能取得了多么令人矚目的成就。其實,這里面有99%的東西都很蠢。
這篇文章可能會被認為夸夸其談,但這并不是它的本意,它只想指出為什么以前人工智能專家很少,現(xiàn)在突然涌現(xiàn)出如此多的專家。
大多數(shù)專家貌似都很專業(yè),這是因為很少有人知道他們是怎么操縱AI的。本文就旨在“揭露”他們的內幕。
你如果能將這11行Python代碼輕松地轉換為Java、C或C++代碼,就已經掌握了交叉編譯器在3秒內可以完成的工作。
大多數(shù)人不知道神經網絡如此簡單。他們認為神經網絡是超級復雜的。就像把復雜圖形分解成無數(shù)個簡單圖形一樣,神經網絡也可以做一些看起來很復雜的事情,但是這種復雜性來自重復和隨機數(shù)發(fā)生器。
2.建立一個20層的神經網絡
你拿了上面的代碼,然后再次循環(huán)。接下來比較難的是,決定把下一個“For”和“:”放在哪兒。
“深度學習”和深度的n層只是一個輸入輸出貫穿于自身的神經網絡。因為你在不斷地循環(huán)再循環(huán),所以它被稱為循環(huán)神經網絡(RNN:Recursive neural networks)。
這些不斷重復的動作與你學習駕駛有些類似,假如你只學會了右轉彎,上路后只要遇到路口你就右轉,你就可以去自己想去的地方。雖然這樣做效率不高,但我們知道右轉彎比左轉彎更容易。
在上述11行代碼中,錯誤(或未實現(xiàn))的是種子沒有設置。沒有設置種子,就不能保證第二次循環(huán)會像第一次循環(huán)一樣獲得相同的隨機數(shù),也就不能保證出現(xiàn)明顯不同的結果。由于你的手機和電腦不能給出相同的隨機數(shù),而且不同的手機芯片之間可能都有不同的隨機數(shù),所以將基于GPU的訓練移植到移動端很不現(xiàn)實。
這樣的訓練要花費數(shù)以億計的時間,因此為手機建立一個神經網絡幾乎是不可能的。設備之間也始終存在差異,對于語音識別來說,識別率增加或者減少5%不是什么大問題,而對癌癥檢測或診斷等事情來說,這就是一件大事了。
4.訓練神經網絡去做人類無法做到的事
神經網絡其實就是個愚蠢的黑匣子。如果你有足夠的時間和精力運行它,就會得到比較合適的測試數(shù)據(jù),但你不會從隨機源測試中得到很好的結果。人工智能非常擅長偽關聯(lián),比如,把肯塔基州的結婚率和溺水率相關聯(lián)。
人們總希望人工智能可以創(chuàng)造奇跡,但大部分AI并不能做人類也做不到的事情。雖然有一些例外,但僅限于透明的AI,而神經網絡是個黑匣子。
5. 使用TensorFlow
還記得上面的那十一行代碼嗎?TensorFlow只是這11行代碼的包裝品。它幫你可視化了這11行代碼中發(fā)生的事情。很多時候,它就像谷歌分析一樣。谷歌分析需要的數(shù)據(jù)都可以在服務器日志中找到,但是大多數(shù)人看不懂這些日志,他們只能看明白谷歌分析。與此同時,谷歌分析會告訴你,你的服務器速度很慢,但它不會告訴你原因。
我們這些了解神經網絡的人不需要TensorFlow,因為我們不需要花哨的圖表和動畫來可視化數(shù)據(jù),我們需要看原始數(shù)據(jù)和代碼,才能找出服務器變慢等問題的原因。
6.把神經網絡用于NLP/ NLU
關于人類一些常識性的東西,神經網絡的模擬能力并不比鼻涕蟲的高多少。
為英語中的每個單詞構建一個具有單一特征的神經網絡, 它需要的計算能力和谷歌擁有的計算能力一樣多。在英語中,若把每一個詞的每個意義都賦予一個特征,就需要地球上所有的云服務都來計算,這顯然是不可能的。人工智能可以做偉大的事情,但神經網絡是有局限性的。
7.有一個自定義的神經網絡
恭喜你, 你已經知道如何將11行的神經網絡代碼包裝在9行代碼中, 用于遺傳算法,或包裝在44行代碼中,用于分布式進化算法。你可以用55行代碼寫一篇新聞稿,等等。
8.訓練一個神經網絡做事
你現(xiàn)在成了一個數(shù)據(jù)駕馭者,就如同一個訓狗師一樣。只要你的狗長著一個鼻涕蟲腦袋,你就可以多次重復訓練它。
同理,擁有一個數(shù)據(jù)訓練集也沒有捷徑,只能靠這種單調笨拙的方法。雖然外界很難了解你的所作所為,但你不要欺騙自己(或者其他人),你只不過是一個鼻涕蟲訓練師而已。
9.把神經網絡和區(qū)塊鏈結合
恭喜你,你終于知道炒作堆棧了。不幸的是,哈希挖掘和神經網絡沒有任何共同之處,并且,用區(qū)塊鏈節(jié)點運行所有數(shù)據(jù)集是行不通的。
當你用正常大小的數(shù)據(jù)集以超過16種方式“切片”負載時,神經網絡開始出現(xiàn)問題。如果你有數(shù)十億的數(shù)據(jù)記錄,或者你在做反向傳播,想要測試多種數(shù)據(jù)表示順序,是可以進行更大擴展的,但這些不能擴展到數(shù)百萬個節(jié)點中。
10.我不怎么用神經網絡
在我使用的工具中,也有神經網絡代碼。但它只是一種選擇,而不是整個產品的基礎。我所做的大部分工作,運用了一種自定義的啟發(fā)式方法。我把使用的各種技術的組合叫做心智模擬。
神經網絡模擬的是大腦中的硬件,而心智模擬對大腦中的軟件進行模擬。心智模擬只有大約10年的歷史,而神經網絡已經有50多年歷史了。
心智模擬的另一個不同之處在于,它屬于透明的AI,需要數(shù)百萬行代碼才能發(fā)揮作用。
-
神經網絡
+關注
關注
42文章
4821瀏覽量
106451 -
編譯器
+關注
關注
1文章
1666瀏覽量
51005 -
python
+關注
關注
57文章
4851瀏覽量
89341
發(fā)布評論請先 登錄
NMSIS神經網絡庫使用介紹
在Ubuntu20.04系統(tǒng)中訓練神經網絡模型的一些經驗
液態(tài)神經網絡(LNN):時間連續(xù)性與動態(tài)適應性的神經網絡
BP神經網絡與卷積神經網絡的比較
BP神經網絡的優(yōu)缺點分析
什么是BP神經網絡的反向傳播算法
BP神經網絡與深度學習的關系
BP神經網絡的基本原理
深度學習入門:簡單神經網絡的構建與實現(xiàn)
人工神經網絡的原理和多種神經網絡架構方法

大多數(shù)人不知道神經網絡如此簡單
評論