什麼是人工神經網絡(ANN)?

2020-12-05 CDA數據分析師

作者 | Ben Dickson編譯 | CDA數據分析師

過去十年中最具影響力的技術之一是人工神經網絡,它是深度學習算法的基本組成部分,是人工智慧的前沿。

每天使用神經網絡的應用程式有很多,例如Google的翻譯服務,Apple的Face ID iPhone鎖和Amazon的Alexa AI驅動的助手。神經網絡也在其他領域的一些重要人工智慧突破背後,例如診斷皮膚和乳腺癌,讓目光投向自動駕駛汽車。

人工神經網絡背後的概念和科學已經存在了數十年。但是直到最近幾年,神經網絡的承諾才變為現實,並幫助AI行業擺脫了漫長的冬季。

儘管神經網絡幫助AI取得了飛躍,但它們也常常被誤解。這時您需要了解的有關神經網絡的所有信息。

人工和生物神經網絡之間的相似性

人工智慧先驅的最初願景是複製人類大腦的功能,這是自然界最聰明,最複雜的已知創造。這就是為什麼該領域從人類心靈的形體和功能派生出其大部分術語(包括「人工智慧」一詞)的原因。

人工神經網絡的靈感來自其生物學對應物。大腦的許多功能仍然是個謎,但是我們知道的是,生物神經網絡使大腦能夠以複雜的方式處理大量信息。

大腦的生物神經網絡由大約1000億個神經元組成,這是大腦的基本處理單元。神經元通過彼此之間巨大的連接(稱為突觸)來執行其功能。人腦大約有100萬億個突觸,每個神經元約有1,000個。

大腦的每個功能都涉及在大量此類神經元中運行的電流和化學反應。

人工神經網絡如何運作

人工神經網絡的核心成分是人工神經元。每個神經元接收來自其他幾個神經元的輸入,將它們乘以分配的權重,將它們相加,然後將總和傳遞給一個或多個神經元。一些人工神經元可能在將輸出傳遞給下一個變量之前將激活函數應用於輸出。

人工神經元的結構,人工神經網絡的基本組成部分(來源:維基百科)

從本質上講,這聽起來像是一個非常瑣碎的數學運算。但是,當您將成千上萬的神經元多層放置並堆疊在一起時,您將獲得一個人工神經網絡,可以執行非常複雜的任務,例如對圖像進行分類或識別語音。

人工神經網絡由一個輸入層和一個輸出層組成,其中輸入層從外部源(數據文件,圖像,硬體傳感器,麥克風等)接收數據,一個或多個隱藏層處理數據,輸出層提供一個或多個數據點基於網絡的功能。例如,檢測人,汽車和動物的神經網絡將具有一個包含三個節點的輸出層。對銀行在安全和欺詐之間進行交易進行分類的網絡將只有一個輸出。

神經網絡由多層組成

訓練人工神經網絡

人工神經網絡首先為神經元之間的連接權重分配隨機值。ANN正確而準確地執行其任務的關鍵是將這些權重調整為正確的數字。但是找到合適的權重並不是一件容易的事,特別是當您處理多層和成千上萬的神經元時。

通過對帶有注釋示例的網絡進行「培訓」來完成此校準。例如,如果您要訓練上述圖像分類器,則可以為其提供多張照片,每張照片均標有其相應的類別(人,汽車或動物)。當您為它提供越來越多的訓練示例時,神經網絡會逐漸調整其權重,以將每個輸入映射到正確的輸出。

基本上,訓練期間發生的事情是網絡進行自我調整以從數據中收集特定模式。同樣,對於圖像分類器網絡,當您使用質量示例訓練AI模型時,每一層都會檢測到特定的特徵類別。例如,第一層可能檢測到水平和垂直邊緣,第二層可能檢測到拐角和圓形。在網絡的更深處,更深的層次將開始挑選出更高級的功能,例如面部和物體。

神經網絡的每一層都將從輸入圖像中提取特定特徵。

當您通過訓練有素的神經網絡運行新圖像時,調整後的神經元權重將能夠提取正確的特徵並準確確定圖像屬於哪個輸出類別。

訓練神經網絡的挑戰之一是找到正確數量和質量的訓練示例。而且,訓練大型AI模型需要大量的計算資源。為了克服這一挑戰,許多工程師使用「 轉移學習」(一種培訓技術),您可以採用預先訓練的模型,並使用針對特定領域的新示例對其進行微調。當已經有一個與您的用例接近的AI模型時,轉移學習特別有效。

神經網絡與經典AI

傳統的基於規則的AI程序基於經典軟體的原理。電腦程式旨在對存儲在存儲單元中的數據運行操作,並將結果保存在其他存儲單元中。程序的邏輯是順序的,確定性的,並基於明確定義的規則。操作由一個或多個中央處理器運行。

但是,神經網絡既不是順序的也不是確定性的。另外,無論底層硬體如何,都沒有中央處理器來控制邏輯。相反,邏輯分布在成千上萬個較小的人工神經元上。人工神經網絡不運行指令;相反,他們對輸入執行數學運算。開發模型行為的是他們的集體行動。

神經網絡不是通過手動編碼的邏輯表示知識,而是在權重和激活的總體狀態下對知識進行編碼。特斯拉AI負責人安德烈·卡帕蒂(Andrej Karpathy)在一篇出色的媒體文章「 軟體2.0 」 中雄辯地描述了神經網絡的軟體邏輯:

我們都熟悉Software 1.0的「經典堆棧」, 它是用Python,C ++等語言編寫的。它由程式設計師編寫的對計算機的明確指令組成。通過編寫每一行代碼,程式設計師可以識別程序空間中具有某些所需行為的特定點。

相比之下, Software 2.0可以用更加抽象的,人類不友好的語言(例如神經網絡的權重)來編寫。沒有人參與編寫此代碼,因為權重很多(典型的網絡可能有數百萬個),而直接用權重編碼有點困難(我嘗試過)。

神經網絡與其他機器學習技術

人工神經網絡只是執行機器學習的幾種算法之一,而 機器學習是人工智慧的分支,它根據經驗來發展行為。還有許多其他機器學習技術,它們可以在數據中找到模式並執行諸如分類和預測之類的任務。其中一些技術包括回歸模型,支持向量機(SVM),k最近方法和決策樹。

但是,在處理雜亂且非結構化的數據(例如圖像,音頻和文本)時,神經網絡的性能優於其他機器學習技術。

例如,如果要使用經典的機器學習算法執行圖像分類任務,則必須進行大量複雜的「功能工程」,這是一個複雜而艱巨的過程,需要數名工程師和領域專家的共同努力。神經網絡和深度學習算法不需要特徵工程,只要訓練得當,就可以自動從圖像中提取特徵。

但是,這並不意味著神經網絡可以替代其他機器學習技術。其他類型的算法需要較少的計算資源,並且較不複雜,這使得它們在嘗試解決不需要神經網絡的問題時更可取。

其他機器學習技術也是可以解釋的(在下文中有更多介紹),這意味著更容易研究和更正他們做出的決策。這可能使它們在解釋性比準確性更重要的用例中更可取。

神經網絡的局限性

儘管有人工神經網絡的名稱,但其與人類等效的神經網絡卻有很大不同。儘管神經網絡和深度學習是當今AI的最先進技術,但與人類智能仍然相距甚遠。因此,神經網絡將在您希望從人類的思想中想到的許多事情上失敗:

神經網絡需要大量數據:與人腦可以通過很少的示例學習做事的人腦不同,神經網絡需要成千上萬個示例。神經網絡在概括方面很不好:神經網絡將在經過培訓的任務上準確執行,但在其他任何方面都表現不佳,即使它與原始問題相似。例如,接受過數千張貓圖片訓練的貓分類器將無法檢測到狗。為此,它將需要成千上萬張新圖像。與人類不同,神經網絡不會在符號(耳朵,眼睛,鬍鬚,尾巴)方面發展知識,它們會處理像素值。這就是為什麼他們將無法從高級功能上了解新對象,因此需要從頭開始對其進行重新培訓。神經網絡是不透明的:由於神經網絡通過神經元的權重和激活來表達其行為,因此很難確定其決策背後的邏輯。這就是為什麼它們經常被稱為黑匣子。這使得很難確定他們是否基於錯誤的因素做出決策。人工智慧專家和神經科學家Gary Marcus 在去年的一份深入研究論文中解釋了深度學習和神經網絡的局限性。

而且,在邏輯和推理很明確並且可以編入不同規則的問題中,神經網絡也不能替代老式的基於規則的AI。例如,在求解數學方程式時,神經網絡的性能非常差。

為了克服神經網絡的局限性,人們進行了許多努力,例如由DARPA資助的創建可解釋的AI模型的計劃。其他有趣的發展包括開發 結合了神經網絡和基於規則的AI的混合模型,以創建可解釋且需要較少訓練數據的AI系統。

儘管要實現人類級AI的目標(如果我們能夠實現),還有很長的路要走,但是神經網絡使我們更加接近。看看下一個AI創新將是什麼會很有趣。

更多行業乾貨持續不斷分享給大家,可以一直關注我們喲!

相關焦點

  • 人工神經網絡初學:是什麼以及為什麼?
    【IT168 技術】談及人工智慧,就會涉及到人工神經網絡。人工神經網絡是現代人工智慧的重要分支,它是一個為人工智慧提供動力,可以模仿動物神經網絡行為特徵,進行分布式並行信息處理的系統。
  • 科技:人工神經網絡的進步
    這些重大新故事中的一些與人工神經網絡有關,人工智慧研究中的一個相對較新的現象正在推動從娛樂到醫學等許多領域的各種進步。人工神經網絡依賴於這樣的思想:技術可以使用對應於個體人類神經元和神經元組的小單元來模擬人類大腦的生物學工作,以基於輸入產生輸出。
  • 對人工神經網絡「開刀」,利用神經科學消融法檢測人工神經網絡
    當談及人工神經網絡,黑箱問題總會引起熱議,人們對黑箱問題的評價褒貶不一。有人認為黑盒是神經網絡的優勢,這代表神經網絡的自主學習性,代表其自動學習以及自動完善的特性。在 Mayes Meisen 和他同事的研究中,研究人員希望以破壞神經網絡的特定區域的方法,觀察該區域如何影響性能。最終,通過這些觀測結果對人工神經網絡和生物神經網絡的組織形式進行比較。「在人工神經網絡上應用消融的方法十分簡單的,」Meyes 和 Meisen 解釋道。
  • 人工神經網絡的定義
    人工神經網絡的定義   人工神經網絡( Artificial Neural Networks, 簡寫為ANNs)也簡稱為神經網絡或稱作連接模型,是對人腦或自然神經網絡若干基本特性的抽象和模擬。
  • AI的人工神經網絡
    人工神經網絡是模擬人和動物的神經網絡的某種結構和功能的模擬,所以要了解神經網絡的工作原理,所以我們首先要了解生物神經元。其結構如下圖所示:   而人工神經網絡的基本原理也就是對生物神經元進行儘可能的模擬,當然,以目前的理論水平,製造水平,和應用水平,還與人腦神經網絡的有著很大的差別,它只是對人腦神經網絡有選擇的,單一的,簡化的構造和性能模擬,從而形成了不同功能的,多種類型的,不同層次的神經網絡模型。
  • 初識人工神經網絡
    這也就是神經網絡的魅力所在。人工神經網絡(artificial neural networks) 是一種模仿生物神經網絡行為特徵,進行信息處理的算法數學模型。在人工神經網絡模型中使用單元節點模擬神經元,通過調整神經網絡內部大量節點(神經元)之間相互連接的權重來達到處理信息的目的。
  • 人工神經網絡發展歷程及特點
    人工神經網絡ANN簡稱為神經網絡或類神經網絡。深度學習實際上是深度神經網絡DNN,即深度學習從人工神經網絡ANN模型發展起來的,因此有必要對人工神經網絡ANN作進一步探討。^_^ 最近十幾年來,人工神經網絡ANN的研究工作不斷深入,已經取得了很大進展,其在模式識別、智慧機器人、自動控制、預測估計、生物、醫學、經濟等領域已成功地解決了許多現代計算機難以解決的實際問題,表現出了良好的智能特性。 那麼究竟什麼是人工神經網絡ANN呢?
  • 人工神經網絡的本質(物理或數學意義)是什麼?
    從數學的角度講,人工神經網絡的本質從機器學習的過程可理解為通過參數求最佳解得過程。同樣也是一個負反饋的過程,以最簡單的負反饋神經網絡bp神經網絡(back propagation)為例,其本質可以形象的理解為這樣一個過程:我們假設這個剛搭建的好的機器人叫
  • 人工神經網絡及其應用
    1 人工神經網絡的發展歷史及其意義1.1 人工神經網絡的發展歷史神經網絡的發展可以追溯到19世紀末,其發展可以分為四個階段。2 人工神經網絡的種類及應用領域2.1人工神經網絡的種類人工神經網絡的模型很多,可以按照不同的方法分類進行分類。其中比較常用的分類方法是,按網絡連接的拓撲結構分類和按網絡內部的信息流向分類。
  • 人工神經網絡在區塊鏈技術中的應用是什麼
    打開APP 人工神經網絡在區塊鏈技術中的應用是什麼 考拉 發表於 2020-01-13 16:17:00 人工神經網絡在解決分類、回歸、函數估計和降維等問題中非常有用。
  • 深度|人工神經網絡深入分析
    文章從神經網絡談到了人工神經網絡,並對此進行詳細的介紹。最近「神經網絡」非常火,特別是AlphaGo與韓國選手李世石的比賽落幕後,各種關於神經網絡的文章滿天飛,但可能對於非專業領域出身的人來說接觸這些文章就會雲裡霧裡了。究其原因主要是缺少適合大部分人理解的神經網絡的科普文章,其實吳軍老師的《數學之美》在科普神經網絡這方面做的就比較通俗易懂,感興趣的朋友可以去讀一下吳老師的書。
  • 人工神經網絡與腦控計算機是什麼?
    人工神經網絡就是對於人類大腦的神經網絡的一個複製,用大量的電子儀器來複製人類大腦的神經元運算,隨著電子儀器的微型化與科技的進步,未來電腦跟大腦的運算速度以及方式會越來越接近,並且帶領人類到達一個未知的領域,這將是一片從未開拓的淨土。
  • 人工神經網絡的特點有哪些
    人工神經網絡的特點和優越性,主要表現在三個方面: 第一,具有自學習功能。例如實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網絡,網絡就會通過自學習功能,慢慢學會識別類似的圖像。自學習功能對於預測有特別重要的意義。
  • 無處不在的人工神經網絡:機器人擁有意識的關鍵
    以此作比,機器人要想有意識,就得先有一個「大腦」,也就是所謂的「人工神經網絡」。什麼是人工神經網絡?人工神經網絡,常常簡稱為神經網絡,是以計算機網絡系統模擬生物神經系統的智能計算系統,是對人腦或自然神經網絡的若干基本特性的抽象和模擬。簡單地講,人工神經網絡就是基於模仿大腦神經網絡結構和功能而建立的一種信息處理系統。人工神經網絡依靠系統的複雜程度,通過調整內部大量節點之間相互連接的關係,從而達到處理信息的目的,其中,這些節點就相當於生物大腦中的「神經元」。
  • 人工神經網絡的驅動者:激活函數是什麼?
    圖源:unsplash激活函數是人工神經網絡的驅動因素,其位於神經元之上,並管理著神經元行為,比如是否需要處理某個輸入數據,若需要,又以何種程度處理等等。從技術上來講,某個節點的激活函數將其在神經網絡中前一個節點的數據輸入,並輸出一個確定值,這個值繼而指導後續節點如何發動來響應特定輸入信號。本文剖析由激活函數組成的神經網絡,以及神經網絡的生物類似物,並簡要介紹幾種常用的激活函數。神經網絡的結構作為一名數據科學愛好者,你一定見過上面的這張圖片或者與之相似的圖片。這張圖片是對雙層神經網絡工作流程的經典描述。
  • 人工神經網絡的五大主要應用場景
    人工神經網絡是一種嘗試,模擬組成人腦的神經元網絡,這樣計算機就能像人一樣學習事物並做出決策。人工神經網絡是通過對普通計算機進行編程而產生的,使它們的行為類似於人類的相互連接的腦細胞。人工神經網絡是受人腦啟發的計算模型。人工神經網絡最近的許多進展都是在人工智慧領域取得的,包括語音識別,圖像識別,以及基於人工神經網絡的機器人。
  • 關於人工神經網絡的哲學思考
    南開大學 自動化系,天津 300071  原發信息:  (京)2000年第02期 第25-28,53頁  內容提要:本文在簡單介紹人工神經網絡的研究成果的基礎上,探討了人工神經網絡的自組織功能,並運用馬克思主義的基本原理和方法,從普遍聯繫、整體與部分的關係及結構和功能的關係三方面論述了人工神經網絡的哲學意義
  • 什麼是人工智慧神經網絡? 神經網絡是怎麼應用到各領域的?|什麼|...
    川北在線核心提示:原標題:什麼是人工智慧神經網絡? 神經網絡是怎麼應用到各領域的?前不久,據華爾街日報報導, Uber在一宗無人車的測試過程中,造成了一名行人死亡的嚴重交通事故,除此之外,環顧我們身邊,蘋果手機的虛擬個人助理Siri有時會無法識別我們在說什麼;某些人臉識別支付   原標題:什麼是人工智慧神經網絡? 神經網絡是怎麼應用到各領域的?
  • 大腦與AI,神經科學與人工神經網絡
    神經科學可以幫助我們理解為什麼AI和神經網絡在預測人類感知方面是有效的嗎?來自德克薩斯大學奧斯汀分校(UT Austin)的Alexander Huth和Shailee Jain的研究表明兩者都有可能。
  • 胖不胖:看人工神經網絡怎麼「稱」
    什麼是人工神經網絡呢?張冰說:「隨著神經生物學、生理學的發展,人們試圖通過模仿人腦的一些基本的信息處理方法建立模型,這種模仿大腦的功能稱為人工神經網絡。」如果從自適應機器的視角對神經網絡進行分析,可以將神經網絡看作是有簡單處理單元構成的大規模並行分布式處理器,其天然地具備存儲經驗知識和使之可用的特性。