神經網絡——人工智能的未來是什麼樣的?

已發表: 2020-01-14

什麼是神經網絡?

受生物神經網絡的啟發,該計算系統通過考慮某些示例來“學習”執行各種任務,通常無需使用特定於任務的規則進行編程。
神經網絡是深度學習的一個功能單元,其靈感來自於人腦的結構。 然而,最近的人工神經網絡是深度學習的功能單元。

神經網絡
圖 1:神經網絡

例如,在圖像識別中,例如識別貓圖像。
計算系統可能會通過分析手動標記為“貓”或“沒有貓”的示例圖像來學習識別包含貓的圖像。 通過使用結果來識別其他圖像中的貓,他們能夠學習識別實際圖像。 他們在事先不了解貓或它們的特徵的情況下這樣做,例如,它們有皮毛、尾巴、鬍鬚和像貓一樣的臉。

神經網絡 - 貓識別

圖 2:貓識別

深度學習使用模仿人腦行為的人工神經網絡來解決數據驅動的複雜問題。 深度學習本身是機器學習的一部分,屬於人工智能 (AI) 的大保護傘。
機器學習- 人工智能 (AI) 的一種應用,機器學習為系統提供了無需明確編程即可從經驗中自動學習和改進的能力。 機器學習專注於開發可以訪問數據並使用它來為自己學習的計算機程序。
當他們開始觀察數據(例如示例、直接經驗或說明)時,學習過程就開始了,以便尋找有助於他們在未來做出更好決策的模式。 主要目的是讓計算機在沒有人工干預或幫助的情況下自動學習,並相應地調整它們的動作。
深度學習——深度學習(也稱為深度結構化學習或分層學習)是更廣泛的基於人工神經網絡的機器學習方法系列的一部分。 在深度學習下,學習過程可以是有監督的、半監督的或無監督的。 深度學習是一類機器學習算法,它使用多個層從原始輸入中逐步提取更高級別的特徵。
例如,在圖像處理中,較低層可以識別邊緣,而較高層可以識別與人類相關的概念,例如數字或字母或面部。

神經網絡的結構

神經網絡的結構

神經網絡由神經元構成,神經元是網絡的核心處理單元。 神經網絡基本上由 3 個不同的層組成,即輸入層、隱藏層和輸出層。
輸入層是將輸入饋送到網絡的層。 輸出層使用該特定隱藏層的輸出,大部分計算都在那裡進行。 這與一些稱為偏差的數值相關聯,然後將其添加到傳遞給稱為激活函數的閾值函數的輸入總和中。
激活函數決定了某個特定的神經元是否應該被激活。 激活的神經元將數據傳輸到下一層。
通道連接這些神經元。

神經網絡的工作示例

基本步驟:

  1. 我們的輸入神經元代表一個輸入,基於我們試圖分類的信息。
  2. 輸入神經元中的每個數字在每個突觸(通道)上都有一個權重。
  3. 在下一層的每個神經元中,我們將所有突觸的輸出與偏差相加,並將激活函數(通常是 sigmoid 函數)應用於加權和(這使得數字介於 0 和 1 之間)。
    Input sum= (w1*x1) + (w1*x2) + (w1*x3) + b1 為每個神經元輸入計算
  4. 該函數的輸出將被視為下一個突觸層的輸入
  5. 繼續直到到達輸出。

考慮對葉子進行分類的示例,例如正常葉子或缺陷葉子。
在這裡,我們向我們的系統提供葉子圖像,以根據其狀況進行分類。
圖像根據其尺寸被分成塊,例如,如果它的高度和重量為 28 像素,則將其拆分為 784 像素的 28X28 像素並饋送到輸入層。 但在這種情況下,它是 30 像素的寬度和 900 像素的高度,它被饋送到輸入層。

神經元

一層的神經元以隨機權重連接到另一層,用於計算總和。 一層的輸入總和被發送到下一層(隱藏層),每個隱藏層都與一個數值相關聯,該數值被添加到輸入總和中。
激活函數決定激活哪個神經元,激活哪個神經元,神經元值傳遞到下一層。 這稱為前向傳播。

具有較高值的神經元

在輸出層,具有較高值的神經元決定輸出。 值基本上是概率值。 如果較高的概率值預測出錯誤的輸出,則網絡尚待訓練。 在這種情況下,它被確定為有缺陷的葉子,因此需要對其進行訓練,然後才能進行檢測/分類。

神經的

執行反向傳播以預測基於預測值的正確輸出。 這與實際輸出進行比較。 迭代權重被分配,直到它們正確預測葉子。 然後重新初始化權重以最小化誤差。

神經網絡輸出


重新初始化權重後,根據預測值的誤差差異,我們得到了與正常葉子相同的準確結果。

神經網絡的一些應用

  1. 谷歌翻譯
  2. 人臉識別
  3. 自動駕駛汽車
  4. 物體檢測
  5. 音樂創作
  6. 語音識別
  7. 拼寫檢查
  8. 字符識別


好處

  • 當神經網絡的元素出現故障時,借助並行性,它可以毫無問題地繼續下去。
  • 神經網絡學習並且不需要重新編程。
  • 它可以在任何應用程序中實現。
  • 神經網絡執行線性程序無法執行的任務。

缺點

  • 神經網絡需要訓練才能運行。
  • 大型神經網絡需要較長的處理時間。
  • 數據量。