神經網路是什麼:應用和案例說明
神經網路是人工智慧學習的一種方法,透過模仿人腦的運作,結合電腦科學和統計學來解決人工智慧領域的常見問題。本文將介紹神經網路的運作原理、相關應用,並探討其在人工智慧學習領域中所扮演的角色。
內容
神經網路是什麼?
神經網路(Neural Network)又被稱為人工神經網路(ANN)或類神經網路(SNN),是機器學習的一個子集,也是深度學習演算法的核心。神經網路的名稱和結構受到人腦的啟發,模擬了生物神經元的互動方式。
人工神經網路由多層節點所組成,包含一個輸入層、一個或多個隱藏層和一個輸出層。每個節點或人工神經元都連接至另一個節點,在訊號連接時有相關權重和閥值。如果任何單一節點的輸出高於指定閥值時,節點會被激發,進而將資料傳送到網路的下一層。反之,若低於指定閥值,則沒有資料會傳遞到網路的下一層。
神經網路依靠訓練資料來學習,並且會隨著時間的推移提高其準確性。然而,一旦這類學習演算法被微調至準確,就會成為電腦科學和人工智慧應用的強大工具,使我們能夠高速對資料進行分類和聚合。與人類專家的人工識別需要耗費幾小時相比,神經網路進行語音識別或圖像識別的任務,可能只需幾分鐘就能完成。最著名的神經網路使用實例之一就是 Google 的搜尋演算法。
神經網路如何運作
人類的大腦是神經網路架構的靈感來源。人類的腦細胞被稱作神經元,會形成一個複雜且高度互聯的網路,並相互傳送電訊號來協助人類處理資訊。同樣,人工神經網路是由人工神經元所組成,這些人工神經元會共同協作以解決問題。人工神經元係軟體模組,稱為節點,而人工神經網路是軟體程式或演算法,其核心為透過運算系統來解決數學運算。一個神經網路有很多層,每一層都執行不同的特定功能,網路越複雜,層數就越多,這也是為什麼神經網路又被稱作多層感知器。簡單的神經網路架構如下:
輸入層(Input Layer)
來自外部的資料會從輸入層進入神經網路,輸入節點會拾取資料並對資料進行處理,進行分析或分類後,傳遞至下一層,也就是隱藏層。
隱藏層(Hidden Layers)
隱藏層執行所有的後端運算任務,會由輸入層或其他隱藏層取得輸入資料。一個神經網路可以有一層或是數層隱藏層,每一個隱藏層都會分析並處理前一層的資料,再傳遞至下一層。
輸出層(Output Layer)
輸出層傳輸隱藏層運算和處理所有資料的最終結果。輸出層與輸入層一樣都只有一層,但其可以有一個或多個節點,取決於分類問題為二元還是多類別。二元分類問題的輸出層只會有一個輸出節點,結果為 0 或 1;而多類別分類問題則可能會含有多個輸出節點。
就如同其他機器學習應用一樣,在向神經網路提供一個特定問題之前,也必須要透過學習資料來進行訓練。
神經網路的類型
神經網路可區分為幾種不同的類型,用於不同的目的。以下將介紹最為常見的神經網路類型。
感知器(Perceptron)
感知器為最古老的神經網路,由美國心理學家法蘭克・羅森布拉特(Frank Rosenblatt)於 1958 年所發明。
前饋神經網路(FNN)
前饋神經網路,或是多層感知器(MLP),是最簡單的神經網路模型,由一個輸入層、一個或多個隱藏層和一個輸出層所組成。從輸入層到輸出層,資料為單向傳送。此種神經網路是電腦視覺、自然語言處理和其他神經網路的基礎。
卷積神經網路(CNN)
卷積神經網路的運作類似前饋神經網路,但它通常會用於圖像識別、模式識別和電腦視覺。此種神經網路利用線性代數的原理,特別是矩陣乘法,來識別圖像中的模式。
循環神經網路(RNN)
循環神經網路與前饋神經網路的單向傳遞不同,是透過反饋循環來識別的。此類學習演算法主要應用在,使用時間序列資料對未來結果進行預測,如股市預測或銷售預測方面。
神經網路的應用
神經網路正在某些關鍵領域發揮管理作用,包含金融、醫療照護和汽車工業等。由於人工神經元的運作方式與人腦類似,因此可用於圖像和影像的視覺識別、文字語音識別、自然語言處理方面。以下是神經網路在不同領域的應用案例:
臉部識別
臉部識別系統正逐漸成為強大的監控系統。識別系統會將人臉與其數位圖像進行比較配對,也就是對人臉進行認證,並將其與系統資料庫的圖像列表做比對。在辦公室的門禁管理中就可見到此種應用。其中用於臉部識別和圖像處理的為卷積神經網路(CNN)。大量的圖片會送入資料庫,用於訓練神經網路,收集到的圖像會被進一步處理以進行訓練。
股市預測
投資有市場風險,要預測波動性大的股票市場會有什麼變化幾乎不可能。在神經網路出現以前,隨時都在變動的股市漲跌是不可預知的。但神經網路改變了這一切,透過多層感知器(MLP),就可藉由 MLP 模型,透過股票的過去表現、年化報酬率和非盈利比率等,進行即時股票預測。
人工神經網路也可被用來研究社群媒體用戶的行為,用戶每天透過虛擬對話分享的資料被整合分析,進一步用來檢視競爭力分析。神經網路可複製社群媒體的行為,而透過對個人行為進行分析後,還能連結到用戶的消費習慣等資料。多層感知器則可使用不同的訓練方法,參考用戶喜愛和瀏覽過的頁面等資訊,預測社群媒體的趨勢。在不斷變化的社群媒體應用方式中,人工神經網路是用戶資料分析方面最合適的模型。
航太
航太工程包含了航空與太空兩個領域的發展,其中故障診斷、高興能自動駕駛、確保飛行器控制系統安全和關鍵動態模擬的建模,是神經網路已經成熟運用的關鍵領域。且由於飛航安全是首要重點,使用神經網路系統建立的演算法可以確保自動駕駛系統的準確性。
國防
神經網路也塑造了先進技術國家的國防行動,許多國家都開始使用人工神經網路來制定積極防禦戰略,如美國,英國和日本等。神經網路可用於後勤、武裝攻擊分析和物體定位,在空中和海上巡邏,以及控制自動無人機方面也都有發揮作用。各國的國防部門都在推動人工智慧的使用,以擴大其技術規模。
醫療照護
神經網路中用於圖像處理的卷積神經網路,可用於醫療行為的 X 光檢測、CT 和超音波掃描,將這些檢測到的醫學影像資料,進一步用神經網路模型進行分析和評估。而另外用於開發語音識別系統的循環神經網路,則可用來進行病人資料的追蹤。神經網路的運用可有效提升醫療效率。
簽名驗證和筆跡分析
由於偽造的情形極為常見,此種應用在金融領域發揮了極大的效益,可讓有關機關密切檢核簽署檔案的真實性。人工神經網路採用圖像處理來提取簽名的特徵,透過模型進行分析,可用來驗證簽名的真偽。另外,卷積神經網路可針對手寫文字變化進行分析,因而可用於筆跡的分析和驗證方面。
天氣預報
多層感知器(MLP)、卷積神經網路(CNN)和循環神經網路(RNN)被用於天氣預報。傳統的人工神經網路多層模型,也可用於預測 15 天後的氣候條件。各種輸入如空氣溫度、相對濕度、風速和太陽輻射可用於訓練神經網路的模型。不同類型的神經網路架構組合可用於預測不同的天氣條件,組合模型(MLP + CNN)、(CNN + RNN)用在天氣預報中通常效果較佳。
神經網路和深度學習
深度學習和神經網路通常會被互換使用,但這兩者其實不盡相同,因此往往會使人困惑。其中值得注意的是,深度學習中的「深度」,指的是神經網路中「層」的深度,只有三層的神經網路(通常包含一個輸入層、一個隱藏層和一個輸出層),只是一個基本的神經網路,而一個三層以上的神經網路(除一個輸入層和一個輸出層外,有多個隱藏層,亦稱為深度神經網路),就可被視為一種深度學習演算法。
深度學習推動了許多人工智慧的應用和服務,提高了自動化程度。透過深度學習,就能讓電腦訓練自己不斷處理資料,從中學習並且建構更多功能。藉由多個隱藏層來處理分析資料,只要輸入原始資料,深度學習網路就可自行推導出資料特徵,並獨立學習,進而可以解決更複雜的問題。由上述可知,更複雜的多層人工神經網路使深度學習成為可能。
神經網路的局限性
儘管神經網路具有許多技術上的優勢,但無法否認,其還是有某些問題或限制需要注意。
無法解釋過程
神經網路最著名的缺點是如同黑盒子一般的性質。簡單來說,使用者在提供輸入之後,不會知道神經網路是如何或為什麼會得出此輸出結果的。持續訓練下,網路本身就會自主學習,最終的輸出結果就是訓練完成的網路,中間的運算或是過程相較於其他機器學習模型來說,相對不透明難以解釋。
訓練耗時
神經網路非常靈活,可以學習識別輸入資料的模式,但這種靈活性是有代價的。神經網路需要大量的資料來訓練,加上每個節點和連線的運算分析處理,因此訓練上較其他機器學習模型來的緩慢且耗時。
安全漏洞
像任何其他軟體一樣,神經網路也會遭到駭客攻擊。資料中毒、後門程式攻擊和私人資料外洩等都是常見的安全漏洞。
總的來說,神經網路針對某些問題的應用是很好的,但還是有其運用上的限制。然而,我們正處於人工智慧和機器學習蓬勃發展的時代,越來越多的技術和產品被開發,用來解決過去無法可解的問題。相信在不久的未來,當深度學習和神經網路的概念與理論變得更普及,就會帶來更爆炸性的成長。
社群媒體