『壹』 bp神經網路的缺點
1)局部極小化問題:從數學角度看,傳統的BP神經網路為一種局部搜索的優化方法,它要解決的是一個復雜非線性化問題,網路的權值是通過沿局部改善的方向逐漸進行調整的,這樣會使演算法陷入局部極值,權值收斂到局部極小點,從而導致網路訓練失敗。加上BP神經網路對初始網路權重非常敏感,以不同的權重初始化網路,其往往會收斂於不同的局部極小,這也是很多學者每次訓練得到不同結果的根本原因。
2)BP神經網路演算法的收斂速度慢:由於BP神經網路演算法本質上為梯度下降法,它所要優化的目標函數是非常復雜的,因此,必然會出現「鋸齒形現象」,這使得BP演算法低效;又由於優化的目標函數很復雜,它必然會在神經元輸出接近0或1的情況下,出現一些平坦區,在這些區域內,權值誤差改變很小,使訓練過程幾乎停頓。
3)BP神經網路結構選擇不一:BP神經網路結構的選擇至今尚無一種統一而完整的理論指導,一般只能由經驗選定。網路結構選擇過大,訓練中效率不高,可能出現過擬合現象,造成網路性能低,容錯性下降,若選擇過小,則又會造成網路可能不收斂。而網路的結構直接影響銀盯網路的逼近能力及推廣性質。因此,應用中如何選擇合適的網路結構是一個重要的問題。
4)應用實例與網路規模的矛盾問題:BP神經網路難以解決應用問題的實例規模和網路規模間的矛盾問題,其涉及兆搏帆到網路容量的可能性與可行性的關系問題,即學習復雜性問題。
5)BP神經網族雹絡預測能力和訓練能力的矛盾問題:預測能力也稱泛化能力或者推廣能力,而訓練能力也稱逼近能力或者學習能力。一般情況下,訓練能力差時,預測能力也差。
『貳』 深度神經網路(DNN)有哪些的弱點或明顯的問題
簡單來說,卷積神經褲段逗網路和循環神經網路都是深度學習的重要框架。區別在哪裡呢?區別就在循環層上。卷積神經網路沒有時序性的概念,輸入直接和胡賣輸出掛鉤;循環神經網路具有時序性,當前決策跟前一次決策有關。舉個例子燃橋,進行手寫數字識別的時候,我們並不在意前一個決策結果是什麼,需要用卷積神經網路;而自然語言生成時,上一個詞很大程度影響了下一個詞,需要用循環神經網路。
『叄』 網路安全防範措施有哪些
大面積的部署國產信息化網路安全管理設備,如UniAccess終端安全管理、UniNAC網路准入控制、UniBDP數據防泄露這類網路安全管理監控系統,也成了重中之重的一件事。用這類管理系統,對各個終端的安全狀態,對重要級敏感數據的訪問行為、傳播進行有效監控,及時發現違反安全策略的事件並實時告警、記錄、進行安全事件定位分析,准確掌握網路系統的安全狀態,為我們的網路安全起著保駕護航的作用。
『肆』 神經網路優缺點,
優點:
(1)具有自學習功能。例如實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網路,網路就會通過自學習功能,慢慢學會識別類似的圖像。
自學習功能對於預測有特別重要的意義。預期未來的人工神經網路計算機將為人類提供經濟預測、市場預測、效益預測,其應用前途是很遠大的。
(2)具有聯想存儲功能。用人工神經網路的反饋網路就可以實現這種聯想。
(3)具有高速尋找優化解的能力。尋找一個復雜問題的優化解廳山,往往需要很大的計算量,利用一個針對某問題而設計的反饋型人工神經網路,發揮計算機的高速運算能力,可能很快找到優化解。
缺點:
(1)最嚴重的問題是沒能力來解釋自己的推理過程和推理依據。
(2)不能向用戶提出必要的詢問,而且當數據不充分的時候,神經網路就無法進行工作。
(3)把一切問題的特徵都變為數字,把一切推理都變為數值計算,其結升凱果勢必是丟失信息。
(4)理論和學習演算法還有待於進一步完善和提高。
(4)神經網路安全面臨的問題擴展閱讀:
神經網路發展趨勢
人工神經網路特有的非線性適應性信息處理能力,克服了傳統人工智慧方法對於直覺,如模式、語音識別、非結構化信息處理方面的缺陷,使之在神經專家系統、模式識別、智能控制、組合優化、預測等領域得到成功應用。
人工神經網路與其它傳統方法相結合,將推動人工智慧和信息處理技術不斷發展。近年來,人工神經網路正向模擬人類認知的道路上更加深入發展,與模糊系統、遺傳演算法、進化機制等結合,形成計算智能,成為人工智慧的一個重要方向,將在實際應用中得到發展。
將信息幾何應用於人工神經網路的研究,為人工神經網路的理論研究開辟了新的途徑。神經計算機的研究發展很快,已有產品進入市場。光電結合的神經計算機為人工神經網路的發展提供了良好條件。
神經網路在很多領域已得到了很好的應用,但其需要研究的方面還很多。其中,具有分布存儲、並行處理、自學習、自組織以及非線性映射等優點的神經網路與其他技術的結合以及由此而來的混合方法和混合系統,已經成為一大研究熱點。
由吵伏喚於其他方法也有它們各自的優點,所以將神經網路與其他方法相結合,取長補短,繼而可以獲得更好的應用效果。目前這方面工作有神經網路與模糊邏輯、專家系統、遺傳演算法、小波分析、混沌、粗集理論、分形理論、證據理論和灰色系統等的融合。
參考資料:網路-人工神經網路
『伍』 人工智慧時代,神經網路的原理及使用方法 | 微課堂
人工智慧時代已經悄然來臨,在計算機技術高速發展的未來,機器是否能代替人腦?也許有些讀者會說,永遠不可能,因為人腦的思考包含感性邏輯。事實上,神經網路演算法正是在模仿人腦的思考方式。想不想知道神經網路是如何「思考」的呢?下面我向大家簡單介紹一下神經網路的原理及使用方法。
所謂人工智慧,就是讓機器具備人的思維和意識。人工智慧主要有三個學派——行為主義、符號主義和連接主義。
行為主義是基於控制論,是在構建感知動作的控制系統。理解行為主義有個很好的例子,就是讓機器人單腳站立,通過感知要摔倒的方向控制兩只手的動作,保持身體的平衡,這就構建了一個感知動作控制系統。
符號主義是基於算數邏輯和表達式。求解問題時,先把問題描述為表達式,再求解表達式。如果你在求解某個問題時,可以用if case這樣的條件語句,和若干計算公式描述出來,這就使用了符號主義的方法,比如「專家系統」。符號主義可以認為是用公式描述的人工智慧,它讓計算機具備了理性思維。但是人類不僅具備理性思維,還具備無法用公式描述的感性思維。比如,如果你看過這篇推送,下回再見到「符號主義」幾個字,你會覺得眼熟,會想到這是人工智慧相關的知識,這是人的直覺,是感性的。
連接主義就是在模擬人的這種感性思維,是在仿造人腦內的神經元連接關系。這張圖給出了人腦中的一根神經元,左側是神經元的輸入,「軸突」部分是神經元的輸出。人腦就是由860億個這樣的神經元首尾相接組成的網路。
神經網路可以讓計算機具備感性思維。我們首先理解一下基於連接主義的神經網路設計過程。這張圖給出了人類從出生到24個月神經網路的變化:
隨著我們的成長,大量的數據通過視覺、聽覺湧入大腦,使我們的神經網路連接,也就是這些神經元連線上的權重發生了變化,有些線上的權重增強了,有些線上的權重減弱了。
我們要用計算機仿出這些神經網路連接關系,讓計算機具備感性思維。
首先需要准備數據,數據量越大越好,以構成特徵和標簽對。如果想識別貓,就要有大量貓的圖片和這張圖片是貓的標簽構成特徵標簽對,然後搭建神經網路的網路結構,再通過反向傳播優化連接的權重,直到模型的識別准確率達到要求,得到最優的連線權重,把這個模型保存起來。最後用保存的模型輸入從未見過的新數據,它會通過前向傳播輸出概率值,概率值最大的一個就是分類和預測的結果。
我們舉個例子來感受一下神經網路的設計過程。鳶尾花可以分為三類:狗尾鳶尾、雜色鳶尾和佛吉尼亞鳶尾。我們拿出一張圖,需要讓計算機判斷這是哪類鳶尾花。人們通過經驗總結出了規律:通過測量花的花萼長、花萼寬、花瓣長、花瓣寬分辨出鳶尾花的類別,比如花萼長>花萼寬,並且花瓣長/花瓣寬>2,則可以判定為這是第一種,雜色鳶尾。看到這里,也許有些讀者已經想到用if、case這樣的條件語句來實現鳶尾花的分類。沒錯,條件語句根據這些信息可以判斷鳶尾花分類,這是一個非常典型的專家系統,這個過程是理性計算。只要有了這些數據,就可以通過條件判定公式計算出是哪類鳶尾花。但是我們發現鳶尾花的種植者在識別鳶尾花的時候並不需要這么理性的計算,因為他們見識了太多的鳶尾花,一看就知道是哪種,而且隨著經驗的增加,識別的准確率會提高。這就是直覺,是感性思維,也是我們這篇文章想要和大家分享的神經網路方法。
這種神經網路設計過程首先需要採集大量的花萼長、花萼寬、花瓣長、花瓣寬,和它們所對應的是哪種鳶尾花。花萼長、花萼寬、花瓣長、花瓣寬叫做輸入特徵,它們對應的分類叫做標簽。大量的輸入特徵和標簽對構建出數據集,再把這個數據集喂入搭建好的神經網路結構,網路通過反向傳播優化參數,得到模型。當有新的、從未見過的輸入特徵,送入神經網路時,神經網路會輸出識別的結果。
展望21世紀初,在近十年神經網路理論研究趨向的背景下,神經網路理論的主要前沿領域包括:
一、對智能和機器關系問題的認識進一步增長。
研究人類智力一直是科學發展中最有意義,也是空前困難的挑戰性問題。人腦是我們所知道的唯一智能系統,具有感知識別、學習、聯想、記憶、推理等智能。我們通過不斷 探索 人類智能的本質以及聯結機制,並用人工系統復現或部分復現,製造各種智能機器,這樣可使人類有更多的時間和機會從事更為復雜、更富創造性的工作。
神經網路是由大量處理單元組成的非線性、自適應、自組織系統,是在現代神經科學研究成果的基礎上提出的,試圖模擬神經網路加工、記憶信息的方式,設計一種新的機器,使之具有人腦風格的信息處理能力。智能理論所面對的課題來自「環境——問題——目的」,有極大的誘惑力與壓力,它的發展方向將是把基於連接主義的神經網路理論、基於符號主義的人工智慧專家系統理論和基於進化論的人工生命這三大研究領域,在共同追求的總目標下,自發而有機地結合起來。
二、神經計算和進化計算的重大發展。
計算和演算法是人類自古以來十分重視的研究領域,本世紀30年代,符號邏輯方面的研究非常活躍。近年來,神經計算和進化計算領域很活躍,有新的發展動向,在從系統層次向細胞層次轉化里,正在建立數學理論基礎。隨著人們不斷 探索 新的計算和演算法,將推動計算理論向計算智能化方向發展,在21世紀人類將全面進入信息 社會 ,對信息的獲取、處理和傳輸問題,對網路路由優化問題,對數據安全和保密問題等等將有新的要求,這些將成為 社會 運行的首要任務。因此,神經計算和進化計算與高速信息網路理論聯系將更加密切,並在計算機網路領域中發揮巨大的作用,例如大范圍計算機網路的自組織功能實現就要進行進化計算。
人類的思維方式正在轉變,從線性思維轉到非線性思維神經元,神經網路都有非線性、非局域性、非定常性、非凸性和混沌等特性。我們在計算智能的層次上研究非線性動力系統、混沌神經網路以及對神經網路的數理研究,進一步研究自適應性子波、非線性神經場的興奮模式、神經集團的宏觀力學等。因為,非線性問題的研究是神經網路理論發展的一個最大動力,也是它面臨的最大挑戰。
以上就是有關神經網路的相關內容,希望能為讀者帶來幫助。
以上內容由蘇州空天信息研究院謝雨宏提供。
『陸』 神經網路淺談
人工智慧技術是當前炙手可熱的話題,而基於神經網路的深度學習技術更是熱點中的熱點。去年穀歌的Alpha Go 以4:1大比分的優勢戰勝韓國的李世石九段,展現了深度學習的強大威力,後續強化版的Alpha Master和無師自通的Alpha Zero更是在表現上完全碾壓前者。不論你怎麼看,以深度學習為代表的人工智慧技術正在塑造未來。
下圖為英偉達(NVIDIA)公司近年來的股價情況, 該公司的主要產品是「圖形處理器」(GPU),而GPU被證明能大大加快神經網路的訓練速度,是深度學習必不可少的計算組件。英偉達公司近年來股價的飛漲足以證明當前深度學習的井噴之勢。
好,話不多說,下面簡要介紹神經網路的基本原理、發展脈絡和優勢。
神經網路是一種人類由於受到生物神經細胞結構啟發而研究出的一種演算法體系,是機器學習演算法大類中的一種。首先讓我們來看人腦神經元細胞:
一個神經元通常具有多個樹突 ,主要用來接受傳入信息,而軸突只有一條,軸突尾端有許多軸突末梢,可以給其他多個神經元傳遞信息。軸突末梢跟其他神經元的樹突產生連接,從而傳遞信號。
下圖是一個經典的神經網路(Artificial Neural Network,ANN):
乍一看跟傳統互聯網的拓撲圖有點類似,這也是稱其為網路的原因,不同的是節點之間通過有向線段連接,並且節點被分成三層。我們稱圖中的圓圈為神經元,左邊三個神經元組成的一列為輸入層,中間神經元列為隱藏層,右邊神經元列為輸出層,神經元之間的箭頭為權重。
神經元是計算單元,相當於神經元細胞的細胞核,利用輸入的數據進行計算,然後輸出,一般由一個線性計算部分和一個非線性計算部分組成;輸入層和輸出層實現數據的輸入輸出,相當於細胞的樹突和軸突末梢;隱藏層指既不是輸入也不是輸出的神經元層,一個神經網路可以有很多個隱藏層。
神經網路的關鍵不是圓圈代表的神經元,而是每條連接線對應的權重。每條連接線對應一個權重,也就是一個參數。權重具體的值需要通過神經網路的訓練才能獲得。我們實際生活中的學習體現在大腦中就是一系列神經網路迴路的建立與強化,多次重復的學習能讓迴路變得更加粗壯,使得信號的傳遞速度加快,最後對外表現為「深刻」的記憶。人工神經網路的訓練也借鑒於此,如果某種映射關系出現很多次,那麼在訓練過程中就相應調高其權重。
1943年,心理學家McCulloch和數學家Pitts參考了生物神經元的結構,發表了抽象的神經元模型MP:
符號化後的模型如下:
Sum函數計算各權重與輸入乘積的線性組合,是神經元中的線性計算部分,而sgn是取符號函數,當輸入大於0時,輸出1,反之輸出0,是神經元中的非線性部分。向量化後的公式為z=sgn(w^T a)(w^T=(w_1,w_2,w_3),a=〖(a_1,a_2,a_3)〗^T)。
但是,MP模型中,權重的值都是預先設置的,因此不能學習。該模型雖然簡單,並且作用有限,但已經建立了神經網路大廈的地基
1958年,計算科學家Rosenblatt提出了由兩層神經元組成(一個輸入層,一個輸出層)的神經網路。他給它起了一個名字–「感知器」(Perceptron)
感知器是當時首個可以學習的人工神經網路。Rosenblatt現場演示了其學習識別簡單圖像的過程,在當時引起了轟動,掀起了第一波神經網路的研究熱潮。
但感知器只能做簡單的線性分類任務。1969年,人工智慧領域的巨擘Minsky指出這點,並同時指出感知器對XOR(異或,即兩個輸入相同時輸出0,不同時輸出1)這樣的簡單邏輯都無法解決。所以,明斯基認為神經網路是沒有價值的。
隨後,神經網路的研究進入低谷,又稱 AI Winter 。
Minsky說過單層神經網路無法解決異或問題,但是當增加一個計算層以後,兩層神經網路不僅可以解決異或問題,而且具有非常好的非線性分類效果。
下圖為兩層神經網路(輸入層一般不算在內):
上圖中,輸出層的輸入是上一層的輸出。
向量化後的公式為:
注意:
每個神經元節點默認都有偏置變數b,加上偏置變數後的計算公式為:
同時,兩層神經網路不再使用sgn函數作為激勵函數,而採用平滑的sigmoid函數:
σ(z)=1/(1+e^(-z) )
其圖像如下:
理論證明: 兩層及以上的神經網路可以無限逼近真實的對應函數,從而模擬數據之間的真實關系 ,這是神經網路強大預測能力的根本。但兩層神經網路的計算量太大,當時的計算機的計算能力完全跟不上,直到1986年,Rumelhar和Hinton等人提出了反向傳播(Backpropagation,BP)演算法,解決了兩層神經網路所需要的復雜計算量問題,帶動了業界使用兩層神經網路研究的熱潮。
但好景不長,演算法的改進僅使得神經網路風光了幾年,然而計算能力不夠,局部最優解,調參等一系列問題一直困擾研究人員。90年代中期,由Vapnik等人發明的SVM(Support Vector Machines,支持向量機)演算法誕生,很快就在若干個方面體現出了對比神經網路的優勢:無需調參;高效;全局最優解。
由於以上原因,SVM迅速打敗了神經網路演算法成為主流。神經網路的研究再一次進入低谷, AI Winter again 。
多層神經網路一般指兩層或兩層以上的神經網路(不包括輸入層),更多情況下指兩層以上的神經網路。
2006年,Hinton提出使用 預訓練 」(pre-training)和「微調」(fine-tuning)技術能優化神經網路訓練,大幅度減少訓練多層神經網路的時間
並且,他給多層神經網路相關的學習方法賦予了一個新名詞–「 深度學習 」,以此為起點,「深度學習」紀元開始了:)
「深度學習」一方面指神經網路的比較「深」,也就是層數較多;另一方面也可以指神經網路能學到很多深層次的東西。研究發現,在權重參數不變的情況下,增加神經網路的層數,能增強神經網路的表達能力。
但深度學習究竟有多強大呢?沒人知道。2012年,Hinton與他的學生在ImageNet競賽中,用多層的卷積神經網路成功地對包含一千類別的一百萬張圖片進行了訓練,取得了分類錯誤率15%的好成績,這個成績比第二名高了近11個百分點,充分證明了多層神經網路識別效果的優越性。
同時,科研人員發現GPU的大規模並行矩陣運算模式完美地契合神經網路訓練的需要,在同等情況下,GPU的速度要比CPU快50-200倍,這使得神經網路的訓練時間大大減少,最終再一次掀起了神經網路研究的熱潮,並且一直持續到現在。
2016年基於深度學習的Alpha Go在圍棋比賽中以4:1的大比分優勢戰勝了李世石,深度學習的威力再一次震驚了世界。
神經網路的發展歷史曲折盪漾,既有被捧上神壇的高潮,也有無人問津的低谷,中間經歷了數次大起大落,我們姑且稱之為「三起三落」吧,其背後則是演算法的改進和計算能力的持續發展。
下圖展示了神經網路自發明以來的發展情況及一些重大時間節點。
當然,對於神經網路我們也要保持清醒的頭腦。由上圖,每次神經網路研究的興盛期持續10年左右,從最近2012年算起,或許10年後的2022年,神經網路的發展將再次遇到瓶頸。
神經網路作為機器學習的一種,其模型訓練的目的,就是使得參數盡可能的與真實的模型逼近。理論證明,兩層及以上的神經網路可以無限逼近真實的映射函數。因此,給定足夠的訓練數據和訓練時間,總能通過神經網路找到無限逼近真實關系的模型。
具體做法:首先給所有權重參數賦上隨機值,然後使用這些隨機生成的參數值,來預測訓練數據中的樣本。假設樣本的預測目標為yp ,真實目標為y,定義值loss,計算公式如下:
loss = (yp -y) ^2
這個值稱之為 損失 (loss),我們的目標就是使對所有訓練數據的損失和盡可能的小,這就轉化為求loss函數極值的問題。
一個常用方法是高等數學中的求導,但由於參數不止一個,求導後計算導數等於0的運算量很大,所以常用梯度下降演算法來解決這樣的優化問題。梯度是一個向量,由函數的各自變數的偏導數組成。
比如對二元函數 f =(x,y),則梯度∇f=(∂f/∂x,∂f/∂y)。梯度的方向是函數值上升最快的方向。梯度下降演算法每次計算參數在當前的梯度,然後讓參數向著梯度的反方向前進一段距離,不斷重復,直到梯度接近零時截止。一般這個時候,所有的參數恰好達到使損失函數達到一個最低值的狀態。下圖為梯度下降的大致運行過程:
在神經網路模型中,由於結構復雜,每次計算梯度的代價很大。因此還需要使用 反向傳播 (Back Propagation)演算法。反向傳播演算法利用了神經網路的結構進行計算,不一次計算所有參數的梯度,而是從後往前。首先計算輸出層的梯度,然後是第二個參數矩陣的梯度,接著是中間層的梯度,再然後是第一個參數矩陣的梯度,最後是輸入層的梯度。計算結束以後,所要的兩個參數矩陣的梯度就都有了。當然,梯度下降只是其中一個優化演算法,其他的還有牛頓法、RMSprop等。
確定loss函數的最小值後,我們就確定了整個神經網路的權重,完成神經網路的訓練。
在神經網路中一樣的參數數量,可以用更深的層次去表達。
由上圖,不算上偏置參數的話,共有三層神經元,33個權重參數。
由下圖,保持權重參數不變,但增加了兩層神經元。
在多層神經網路中,每一層的輸入是前一層的輸出,相當於在前一層的基礎上學習,更深層次的神經網路意味著更深入的表示特徵,以及更強的函數模擬能力。更深入的表示特徵可以這樣理解,隨著網路的層數增加,每一層對於前一層次的抽象表示更深入。
如上圖,第一個隱藏層學習到「邊緣」的特徵,第二個隱藏層學習到「邊緣」組成的「形狀」的特徵,第三個隱藏層學習到由「形狀」組成的「圖案」的特徵,最後的隱藏層學習到由「圖案」組成的「目標」的特徵。通過抽取更抽象的特徵來對事物進行區分,從而獲得更好的區分與分類能力。
前面提到, 明斯基認為Rosenblatt提出的感知器模型不能處理最簡單的「異或」(XOR)非線性問題,所以神經網路的研究沒有前途,但當增加一層神經元後,異或問題得到了很好地解決,原因何在?原來從輸入層到隱藏層,數據發生了空間變換,坐標系發生了改變,因為矩陣運算本質上就是一種空間變換。
如下圖,紅色和藍色的分界線是最終的分類結果,可以看到,該分界線是一條非常平滑的曲線。
但是,改變坐標系後,分界線卻表現為直線,如下圖:
同時,非線性激勵函數的引入使得神經網路對非線性問題的表達能力大大加強。
對於傳統的樸素貝葉斯、決策樹、支持向量機SVM等分類器,提取特徵是一個非常重要的前置工作。在正式訓練之前,需要花費大量的時間在數據的清洗上,這樣分類器才能清楚地知道數據的維度,要不然基於概率和空間距離的線性分類器是沒辦法進行工作的。然而在神經網路中,由於巨量的線性分類器的堆疊(並行和串列)以及卷積神經網路的使用,它對雜訊的忍耐能力、對多通道數據上投射出來的不同特徵偏向的敏感程度會自動重視或忽略,這樣我們在處理的時候,就不需要使用太多的技巧用於數據的清洗了。有趣的是,業內大佬常感嘆,「你可能知道SVM等機器學習的所有細節,但是效果並不好,而神經網路更像是一個黑盒,很難知道它究竟在做什麼,但工作效果卻很好」。
人類對機器學習的環節干預越少,就意味著距離人工智慧的方向越近。神經網路的這個特性非常有吸引力。
1) 谷歌的TensorFlow開發了一個非常有意思的神經網路 入門教程 ,用戶可以非常方便地在網頁上更改神經網路的參數,並且能看到實時的學習效率和結果,非常適合初學者掌握神經網路的基本概念及神經網路的原理。網頁截圖如下:
2) 深度學習領域大佬吳恩達不久前發布的《 神經網路和深度學習 》MOOC,現在可以在網易雲課堂上免費觀看了,並且還有中文字幕。
3) 《神經網路於深度學習》(Michael Nielsen著)、《白話深度學習與TensorFlow》也是不錯的入門書籍。
『柒』 30分鍾講清楚深度神經網路
這兩年神經網路各種火。但對很多人而言,只是聽著覺得各種高大上,究其本質,還是聽不懂。下面我們花三十分鍾把這個事情講清楚。
神經網路演算法是最早來源於某神經生理學家和某數學家聯合發表的一篇論文,他們對人類神經運行規律的提出了一個猜想,並嘗試給出一個建模來模擬人類神經元的運行規律。
神經網路一開始由於求解問題的不穩定,以及范圍有限被拋棄。後面又在各個大神的努力下,對遇到的問題一個個解決,加上因為游戲帶來的計算能力的提升獲得了一個爆發式的增長。
下面我們講講神經網路是啥以及遇到的問題和探索出來的解決方案,最終我們給出一個深度神經網路的默認的最優配置項。
建立M個隱藏層,按順序建立輸入層跟隱藏層的聯結,最後建立隱藏層跟輸出層的聯結。為每個隱藏層的每個節點選擇激活函數。求解每個聯結的權重和每個節點自帶的bias值。參見下圖。
所謂激活函數就是對各個路徑的輸入求和之後進一步增強的函數 。
典型的有如下幾個:
下雀冊慎面這個圖裡面,是已知的各個聯結線的權值,求y1, y2
這個練習可以測試對神經網路的理解。
所謂神經網路問題的訓練姿碧本質,就是已知 y1,y2....yn, 已知x1, x2....xm,求解每個連接的權值和每個神經元上的偏差值。對單層的激活函數為RELU的神經網路而言就是, y = max(sum(w * x)+b, 0),已知y和x,求解w和b。
對於以上求解w和b的值,科學家們發現可頃敬以通過反向傳播和梯度下降相結合來求解。就是一開始用隨機數初始化我們每個聯結的權值,然後通過神經網路計算出來的y值跟真實的y值做比對。如果這個值相差比較大,則修改當前層的聯結的權重。當發現這個值相差不大時,則修改更低一層的權重。這個步驟一直重復,逐步傳遞到第一層的權值 。
三大問題:
針對這三個問題,大拿們開始了一場探索之旅。
神經網路的求解是通過反向傳播的技術來解決的。通過梯度下降法。問題是,反向傳播從輸出層開始一步一步傳到Layer 1時,越到低層,聯結的權值變化越小,直到沒變化。這種叫梯度消失。還有一些呢?則是越到第一層,變化越來越大。這種叫梯度爆炸。常見於RNN。
解決方案探索如下:
目前來說,通常用1+2 多於 3 多於 4。就是現在一般使用He initialization跟ReLU的演進版本作為作為激活函數來解決梯度消失和爆炸的問題,其次才使用Batch Normalization,最後使用Gradient Clipping。
通常來說,我們很難獲得足夠的標記好的訓練數據。常用解決方案如下:
對於大規模數據的訓練,很多時候速度很慢。除了解決梯度消失或爆炸的問題之外,還有使用AdamOptimizer替代GradientDescentOptimizer會大大加快收斂速度 。
我們後面會教大家用tensorflow構造出一個神經網路並求解。
『捌』 神經網路計算機的面臨新問題
已取得重要的進展,但仍存在許多亟待解決的問題。如處理精確度不高,抗雜訊頌敗干擾能力差,光學互連的雙極性和可編程問題以及系統的集成化和小型化問題等。這些問題直接關繫到神經網路計算機的進一步發展、性能的完善及廣泛的實用化。
神經碼豎網路計算機 神經網路的整體性能與網路中的神經元數有密切關系。雖然光學互連的高度並行性在原則上提供了實現大規模神經網路的可能性,但隨著神經元數目的增加,互連數將會按平方律增加。在系統尺寸一定的條件下,神經元數必然受
到空間帶寬積、衍射和畸變的限制。因此大規模神經網路的實現將對光學設計、離軸光學、衍射野模顫光學、二元光學器件、集成光學器件以及計算機制全息器件提出更高的要求。 光學神經網路中的非線性操作目前仍採用電子學或計算機處理的方法。這就違背了神經網路的並行性要求。並行光學非線性運算的實現,要求有閾值可調、響應函數形式可調的非線性器件,這也是一個亟待解決的復雜問題。另外,隨著光學神經網路研究的不斷深入,對硬體的實用性要求也在不斷提高。系統的集成化與小型化勢在必行。這方面,光電混合集成晶元的研製成功是令人鼓舞的。由此可見,對於神經網路的實現來說,光學與電子學技術都各有其長處。充分發揮二者的優勢,形成一個光電混合處理的硬體系統,將是未來神經網路計算機發展的重要趨勢。
『玖』 神經網路的安全隱患:居然可以隱藏惡意軟體
深度學習模型擁有數啟脊以百萬計甚至數十億計的數值參數,因此可以做很多事情:檢測照片中的物體、識別語音、生成文本,甚至隱藏惡意軟體。惡意軟體隱藏技術 EvilModel 研究人員證明可以將惡意軟體隱藏在神經網路圖像分類器中以繞過防禦措施。這已成為機器學習和網路安全會議討論的熱門話題。
隨著深度學習逐漸與我們的日常生活不可分離,安全社區開始思考如何採用新的手段,保護用戶免受這類新興威脅的困擾。
每個深度學習模型都是由多層人工神經元組成,根據層的類型,每個神經元與其上一層和下一層中的所有或部分神經元有所連接。根據深度學習模型在針對任務訓練時使用的參數數值不同,神經空禪元間連接的強度也會不同,大型的神經網路甚至可以擁有數億乃至數十億的參數。
EvilModel 背後的主要思想是將惡意軟體嵌入到神經網路的參數中,使其對惡意軟體掃描儀不可見。這是隱寫術的一種形式,將一條信息隱藏在另一條信息中的做法。
隱蔽地傳遞惡意軟體和繞過對惡意軟體的檢測是惡意軟體攻擊活動來說是非常關鍵的。現階段,神經網路模型的可解釋性比較差,但具有較好的泛化能力。
通過將惡意軟體嵌入到已經訓練好的神經網路的神經元中,就可以在不影響神經網路的性能的情況下隱蔽地傳輸惡意軟體。如果模型沒有足夠的神經元來嵌入惡意軟體,攻擊者還可以使用未經過訓練的模型,因為未經訓練的神經元網路有更多的神經元。然後,攻擊者可以在用於原來模型相同的數據集來訓練模型,這樣最終模型就可以得到與原模型相同的性能。
為了驗證 EvilModel 的可行性,研究人員在多個卷積神經網路(CNN)中進行了測試斗旁塵。CNN 是個很好的測試環境,首先,CNN 的體積都很大,通常會有幾十層和數百萬的參數;其次,CNN 包含各類架構,有不同類型的層(全連接層、卷積層)、不同的泛化技術(批歸一化、棄權、池化等等),這些多樣化讓評估各類病毒嵌入設定變得可能;第三,CNN 通常用於計算機視覺類的應用,這些都是惡意因素的主要攻擊對象;最後,很多經過預訓練的 CNN 可以在不經任何改動的情況下直接集成到新的應用程序中,而多數在應用中使用預訓練 CNN 的開發人員並不一定知道深度學習的具體應用原理。
研究中實驗用的八個樣本病毒都是可以被病毒掃描網站 識別為惡意軟體的,一旦樣本成功嵌入神經網路,研究人員將模型上傳進行掃描。而病毒掃描結果卻顯示這些模型「安全」,意味著惡意軟體的偽裝並未暴露。
研究人員又在其他幾個架構上進行了相同的測試,實驗結果類似,惡意軟體都未被成功檢測。這些隱匿的惡意軟體將會是所有大型神經網路都需要面對的威脅。
研究人員認為,隨著人工智慧技術的廣泛應用,基於人工智慧和神經網路的惡意軟體等威脅和攻擊將成為未來網路攻擊的一個主流趨勢,也是網路和信息安全威脅防護的新的挑戰,意味著我們需要新的方法來應對安全威脅。
在研究人員找到更可靠的手段來檢測並阻止深度學習網路中的惡意軟體之前,我們必須確立機器學習管道中的信任鏈。既然病毒掃描和其他靜態分析工具無法檢測到受感染模型,開發者們必須確保他們所使用的模型是來自可信任的渠道,並且訓練數據和學習參數未受到損害。
隨著我們在深度學習安全問題方面更深一步的研究,我們也必須對那些用於分析圖片或識別語音的、數量龐雜的數據背後所隱藏的東西保持警惕