您的位置:首頁>科技>正文

獨家|一文讀懂人工神經網路

作者:Sidath Asiri

翻譯:Nicola

校對:盧苗苗

原文標題:MeetArticial Neural Networks

本文約1500字, 建議閱讀5分鐘。

本文通過使用淺顯易懂的語言和介紹youtube上的實驗方式帶讀者認識人工神經網路。

當聽到“神經”這個詞的時候, 首先出現在我腦海中的是大腦中的神經元, 這是我們決策過程的一部分。

這也是人類與機器人(或正常的電腦程式)主要的不同特徵之一。 人類可以看到事物, 分析事物, 並且從中學習, 以期下次做得更好。

另一方面, 常規程式也遵循著同樣的指示, 而不是自行發展。 我們可以對其進行程式設計讓它們完成某些指定任務, 根據指令得到理想的結果。

但是如果我們制定程式對其進行學習, 我們可以做很多事情。 然後它們會隨著時間的推移自行發展, 這就是“機器學習”。 人工神經網路(ANN)是一種用於機器學習的計算模型, 它的工作方式和生物的神經元類似。

當資訊到達神經元, 它們(神經元)通過調整網路去感知和獲取這些資訊得出一個理想的結果。

通過神經元傳輸儘量多的資料會有助於得到更精准的結果。 這就是神經網路中的“訓練”。

在使用神經網路之前, 我們需要訓練和調試, 以得到理想的決策結果。 為此, 我們使用測試資料, 包括輸入進網路和相對應的預期的輸出。 通過適當的訓練, 對網路進行教學, 之後就可以用它對未知的資料做出決策。

從根本上來講, 人工神經網路被用於那些輸入和輸出之間存在複雜關係的非線性統計資料模型。 訓練的主要目的是發現那些資料中的複雜關係和模式。

“人工神經網路(英文:artificial neural network, 縮寫ANNs), 簡稱神經網路(英文:neuralnetwork, 縮寫NN)或類神經網路, 是一種模仿生物神經網路(動物的中樞神經系統,

特別是大腦)的結構和功能的數學模型或計算模型, 通常是通過一個基於數學統計學類型的學習方法(LearningMethod)得以優化。 ——維琪百科”

在需要基於電腦的預測中, 神經網路非常常見。 通常情況下, 他們能夠做出精准的預測。 一部分應用於股市趨勢的預測、手寫辨識、語音辨識、土地滑坡預測等。 另外像Facebook這樣的社交媒體和Google這樣的搜尋引擎也使用神經網路來豐富使用者體驗。

神經網路存在許多種類:

前饋神經網路

迴圈神經網路

常規回饋神經網路

徑向性神經網路

“前饋”網路是最早也是最簡單的一種。 在這種神經網路類型中, 資料從輸入層到隱藏層最後到輸出層, 沒有迴圈或其他環形傳輸路線。

NeuralNetworkwith multiple layers (https://blog.ttro.com/wp-content/uploads/2017/01/TB010-Deep-Neural-Network.jpg)

另一方面, 迴圈神經網路中, 資料前向也後向地傳輸著。 在預測次序的時候, 迴圈神經網路的輸出也被用作輸入。

我在YouTube上找到的一個簡單例子來幫助理解這個概念(https://www.youtube.com/watch?v=ZzWaow1Rvho)。 有紅色和藍色兩種花, 它們的寬度和長度的樣本資料已經給出。 要求使用這些已知的資料預測未知的花朵的顏色。

這裡使用前饋神經網路來預測正確的花朵(顏色)。 我們將使用Python和Numpy庫來實現。 你可以通過安裝“Miniconda”(https://conda.io/miniconda.html)來建立此模型。

這個簡易的神經網路有花瓣的長度和寬度兩個輸入, 輸出是0或1, 表示紅色或藍色。

Oursimple neural network

這個網路的最終輸出是0或1, 我們使用一個特別的函數, 在這裡叫做“Sigmoid”, 它將任何值轉換到0和1的範圍內。 根據它接近0或1的程度進行預測。

“Sigmoid函數是一個擁有“S”形曲線(sigmoid曲線)的數學函數。 通常情況下sigmoid函數指的是邏輯函數的特例。 ”

Sigmoidfunction (https://qph.ec.quoracdn.net/main-qimg-05edc1873d0103e36064862a45566dba)

我們嘗試通過 w1 * 長度 + w2 * 寬度 +b 對給定資料建模, 其中w1, w2是兩個權重, b是一個偏差。 這樣的方法可以用來找出資料中的任何非線性關係。

最初, 我們在訓練過程中隨機分配給w1, w2和b一些數字, 改變這些值, 這樣指定的模型就代表了指定的測試資料。 通過使用期望值和預測值計算成本值,同時嘗試使用基本的微積分理論來降低成本值實現。在訓練的最後,我們將會得到一個精確的模型,同時我們將在未來使用這個模型來預測未知的資料。

在這個例子中,我們將成本方程用鏈式規則分別對w1,w2和b進行分解,並找到了使成本最小化的常數。這個模型很簡單,所以我們手動對它進行分析。然而,有些庫可以自動分析這些任務。最後,它們被用作找出神秘花朵的類型。

下圖顯示了訓練完成後成本是如何被降低的。它在逐步減少的同時做出了更準確的預測。

Costvariation while learning

正如上訴提及的那樣,這個例子來自一個很棒的YouTube視頻系列,想要瞭解更多資訊,建議各位去這裡一探究竟!(https://www.youtube.com/watch?v=ZzWaow1Rvho)

Nicola,北美東部大四在讀,喜歡政治和資料的商科生。空余時候通過翻譯學術文檔擴充知識,假期會去不同的地方旅遊,平時研究香氛研究護膚。同時也在聯繫資料庫分析等,希望能認識更多未來的資料科學家們。

通過使用期望值和預測值計算成本值,同時嘗試使用基本的微積分理論來降低成本值實現。在訓練的最後,我們將會得到一個精確的模型,同時我們將在未來使用這個模型來預測未知的資料。

在這個例子中,我們將成本方程用鏈式規則分別對w1,w2和b進行分解,並找到了使成本最小化的常數。這個模型很簡單,所以我們手動對它進行分析。然而,有些庫可以自動分析這些任務。最後,它們被用作找出神秘花朵的類型。

下圖顯示了訓練完成後成本是如何被降低的。它在逐步減少的同時做出了更準確的預測。

Costvariation while learning

正如上訴提及的那樣,這個例子來自一個很棒的YouTube視頻系列,想要瞭解更多資訊,建議各位去這裡一探究竟!(https://www.youtube.com/watch?v=ZzWaow1Rvho)

Nicola,北美東部大四在讀,喜歡政治和資料的商科生。空余時候通過翻譯學術文檔擴充知識,假期會去不同的地方旅遊,平時研究香氛研究護膚。同時也在聯繫資料庫分析等,希望能認識更多未來的資料科學家們。

Next Article
喜欢就按个赞吧!!!
点击关闭提示