導航:首頁 > 網路共享 > 基於bp神經網路的軟體缺陷預測

基於bp神經網路的軟體缺陷預測

發布時間:2022-10-05 18:00:37

⑴ 基於時間序列matlab的BP神經網路預測

樓上的程序是對的,但是你只有輸出數據,輸入數據是什麼呢?
難道是時間,年限和輸出數據之間沒關系吧。所以你的原始數據條件不夠
net=newff(minmax(P)【7,1],{'tansig','logsig'},'traingdx');
newff為建立一個BP神經網路,minmax(P為輸入數據的范圍,),[7,1]表示BP網路有三層,中間隱藏層有7個神經元,輸出一個神經元。tansig表示正切傳遞函數,將數據轉化到-1到+1之間,logsig表示傳遞函數,將數據轉化到0到+1之間,traingdx表示訓練方法。
樓主還是好好看書學習一下,不然僅僅死記硬背matlab工具箱,只會知其然不知其所以然啊!!神經網路不難的,通了很簡單!!

⑵ bp神經網路的缺點

1)局部極小化問題:從數學角度看,傳統的BP神經網路為一種局部搜索的優化方法,它要解決的是一個復雜非線性化問題,網路的權值是通過沿局部改善的方向逐漸進行調整的,這樣會使演算法陷入局部極值,權值收斂到局部極小點,從而導致網路訓練失敗。加上BP神經網路對初始網路權重非常敏感,以不同的權重初始化網路,其往往會收斂於不同的局部極小,這也是很多學者每次訓練得到不同結果的根本原因。
2)BP神經網路演算法的收斂速度慢:由於BP神經網路演算法本質上為梯度下降法,它所要優化的目標函數是非常復雜的,因此,必然會出現「鋸齒形現象」,這使得BP演算法低效;又由於優化的目標函數很復雜,它必然會在神經元輸出接近0或1的情況下,出現一些平坦區,在這些區域內,權值誤差改變很小,使訓練過程幾乎停頓。
3)BP神經網路結構選擇不一:BP神經網路結構的選擇至今尚無一種統一而完整的理論指導,一般只能由經驗選定。網路結構選擇過大,訓練中效率不高,可能出現過擬合現象,造成網路性能低,容錯性下降,若選擇過小,則又會造成網路可能不收斂。而網路的結構直接影響網路的逼近能力及推廣性質。因此,應用中如何選擇合適的網路結構是一個重要的問題。
4)應用實例與網路規模的矛盾問題:BP神經網路難以解決應用問題的實例規模和網路規模間的矛盾問題,其涉及到網路容量的可能性與可行性的關系問題,即學習復雜性問題。
5)BP神經網路預測能力和訓練能力的矛盾問題:預測能力也稱泛化能力或者推廣能力,而訓練能力也稱逼近能力或者學習能力。一般情況下,訓練能力差時,預測能力也差。

⑶ bp神經網路

BP(Back Propagation)網路是1986年由Rumelhart和McCelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。BP網路能學習和存貯大量的輸入-輸出模式映射關系,而無需事前揭示描述這種映射關系的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。BP神經網路模型拓撲結構包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。
人工神經網路就是模擬人思維的第二種方式。這是一個非線性動力學系統,其特色在於信息的分布式存儲和並行協同處理。雖然單個神經元的結構極其簡單,功能有限,但大量神經元構成的網路系統所能實現的行為卻是極其豐富多彩的。

人工神經網路首先要以一定的學習准則進行學習,然後才能工作。現以人工神經網路對手寫「A」、「B」兩個字母的識別為例進行說明,規定當「A」輸入網路時,應該輸出「1」,而當輸入為「B」時,輸出為「0」。

所以網路學習的准則應該是:如果網路作出錯誤的的判決,則通過網路的學習,應使得網路減少下次犯同樣錯誤的可能性。首先,給網路的各連接權值賦予(0,1)區間內的隨機值,將「A」所對應的圖象模式輸入給網路,網路將輸入模式加權求和、與門限比較、再進行非線性運算,得到網路的輸出。在此情況下,網路輸出為「1」和「0」的概率各為50%,也就是說是完全隨機的。這時如果輸出為「1」(結果正確),則使連接權值增大,以便使網路再次遇到「A」模式輸入時,仍然能作出正確的判斷。

如果輸出為「0」(即結果錯誤),則把網路連接權值朝著減小綜合輸入加權值的方向調整,其目的在於使網路下次再遇到「A」模式輸入時,減小犯同樣錯誤的可能性。如此操作調整,當給網路輪番輸入若干個手寫字母「A」、「B」後,經過網路按以上學習方法進行若干次學習後,網路判斷的正確率將大大提高。這說明網路對這兩個模式的學習已經獲得了成功,它已將這兩個模式分布地記憶在網路的各個連接權值上。當網路再次遇到其中任何一個模式時,能夠作出迅速、准確的判斷和識別。一般說來,網路中所含的神經元個數越多,則它能記憶、識別的模式也就越多。

如圖所示拓撲結構的單隱層前饋網路,一般稱為三層前饋網或三層感知器,即:輸入層、中間層(也稱隱層)和輸出層。它的特點是:各層神經元僅與相鄰層神經元之間相互全連接,同層內神經元之間無連接,各層神經元之間無反饋連接,構成具有層次結構的前饋型神經網路系統。單計算層前饋神經網路只能求解線性可分問題,能夠求解非線性問題的網路必須是具有隱層的多層神經網路。
神經網路的研究內容相當廣泛,反映了多學科交叉技術領域的特點。主要的研究工作集中在以下幾個方面:

(1)生物原型研究。從生理學、心理學、解剖學、腦科學、病理學等生物科學方面研究神經細胞、神經網路、神經系統的生物原型結構及其功能機理。

(2)建立理論模型。根據生物原型的研究,建立神經元、神經網路的理論模型。其中包括概念模型、知識模型、物理化學模型、數學模型等。

(3)網路模型與演算法研究。在理論模型研究的基礎上構作具體的神經網路模型,以實現計算機模擬或准備製作硬體,包括網路學習演算法的研究。這方面的工作也稱為技術模型研究。

(4)人工神經網路應用系統。在網路模型與演算法研究的基礎上,利用人工神經網路組成實際的應用系統,例如,完成某種信號處理或模式識別的功能、構作專家系統、製成機器人等等。

縱觀當代新興科學技術的發展歷史,人類在征服宇宙空間、基本粒子,生命起源等科學技術領域的進程中歷經了崎嶇不平的道路。我們也會看到,探索人腦功能和神經網路的研究將伴隨著重重困難的克服而日新月異。
神經網路可以用作分類、聚類、預測等。神經網路需要有一定量的歷史數據,通過歷史數據的訓練,網路可以學習到數據中隱含的知識。在你的問題中,首先要找到某些問題的一些特徵,以及對應的評價數據,用這些數據來訓練神經網路。

雖然BP網路得到了廣泛的應用,但自身也存在一些缺陷和不足,主要包括以下幾個方面的問題。

首先,由於學習速率是固定的,因此網路的收斂速度慢,需要較長的訓練時間。對於一些復雜問題,BP演算法需要的訓練時間可能非常長,這主要是由於學習速率太小造成的,可採用變化的學習速率或自適應的學習速率加以改進。

其次,BP演算法可以使權值收斂到某個值,但並不保證其為誤差平面的全局最小值,這是因為採用梯度下降法可能產生一個局部最小值。對於這個問題,可以採用附加動量法來解決。

再次,網路隱含層的層數和單元數的選擇尚無理論上的指導,一般是根據經驗或者通過反復實驗確定。因此,網路往往存在很大的冗餘性,在一定程度上也增加了網路學習的負擔。

最後,網路的學習和記憶具有不穩定性。也就是說,如果增加了學習樣本,訓練好的網路就需要從頭開始訓練,對於以前的權值和閾值是沒有記憶的。但是可以將預測、分類或聚類做的比較好的權值保存。

⑷ bp神經網路在多輸入多輸出的情況下,預測的精度為什麼這么差

BP神經網路對於訓練樣本數據的要求是比較高的,樣本數量一定要多,建議處理一下樣本數據,增多數量,加入動量因子並調整其數值。

⑸ BP神經網路做數據預測,預測出來結果感覺不對,求大神指導

作預測,曲線要擬合。看理論值與實際的相關程度。你的相關系數肯定小,難以有理想結果!

⑹ 用MATLAB做bp神經網路的預測,訓練的挺好。但是預測誤差很大,是什麼原因,怎麼解決啊

1.訓練樣本有可能不夠多。
2.樣本不具有代表性,不具有特徵性
3.網路模型設計有問題,需要Try Error and Try
4.可以使用Trainbr(貝葉斯正則化訓練函數),這個函數對網路的泛化能力比較好

⑺ BP神經網路完成預測

下面是幾個模擬實驗,用了不同的訓練函數:
1.創建BP網路的學習函數,訓練函數和性能函數都採用default值,分別為learngdm,trainlm和mse時的逼近結果:
由此可見,進過200次訓練後,雖然網路的性能還沒有為0,但是輸出均方誤差已經很小了,MSE=6.72804e-0.06,顯示的結果也證明P和T之間非線性映射關系的擬合是非常精確的;
2.建立一個學習函數為learnd,訓練函數為traingd,和性能函數為msereg的BP網路,來完成擬合任務:
可見,經過200次訓練後,網路的輸出誤差比較大,而且網路誤差的收斂速度非常慢。這是由於訓練函數traingd為單純的梯度下降訓練函數,訓練速度比較慢,而且容易陷入局部最小的情況。結果顯示網路精度確實比較差。
3.將訓練函數修改為traingdx,該i函數也是梯度下降法訓練函數,但是在訓練過程中,他的學習速率是可變的
在200次訓練後,以msereg函數評價的網路性能為1.04725,已經不是很大,結果顯示P和T之間非線性關系的擬合情況不錯,網路的性能不錯。

⑻ BP神經網路的核心問題是什麼其優缺點有哪些

人工神經網路,是一種旨在模仿人腦結構及其功能的信息處理系統,就是使用人工神經網路方法實現模式識別.可處理一些環境信息十分復雜,背景知識不清楚,推理規則不明確的問題,神經網路方法允許樣品有較大的缺損和畸變.神經網路的類型很多,建立神經網路模型時,根據研究對象的特點,可以考慮不同的神經網路模型. 前饋型BP網路,即誤差逆傳播神經網路是最常用,最流行的神經網路.BP網路的輸入和輸出關系可以看成是一種映射關系,即每一組輸入對應一組輸出.BP演算法是最著名的多層前向網路訓練演算法,盡管存在收斂速度慢,局部極值等缺點,但可通過各種改進措施來提高它的收斂速度,克服局部極值現象,而且具有簡單,易行,計算量小,並行性強等特點,目前仍是多層前向網路的首選演算法.

⑼ 求助大神,使用BP神經網路預測數據,為什麼誤差很大

預測數據的話BP不是特別好用,最好用Elman反饋神經網路或者RNN循環神經網路,這些有記憶功能的網路比較好用。bp主要和你選擇的隱含層數,和誤差范圍,學習率有關。你可以調節相關參數來改變神經網路,獲得更精確的結果。

閱讀全文

與基於bp神經網路的軟體缺陷預測相關的資料

熱點內容
你的網路密碼設置是否安全 瀏覽:634
如何建設網路生態文明 瀏覽:999
win10怎麼修改家庭網路 瀏覽:358
移動網路如何轉網 瀏覽:256
機頂盒無信號有網路 瀏覽:194
對講機數字與網路連接不上 瀏覽:835
sci是什麼網路意思 瀏覽:570
虛擬機沒網路怎麼修改 瀏覽:222
手機怎麼查看網路連接情況 瀏覽:666
最新版電腦管家網路未連接 瀏覽:434
網路配線架直通打線哪個好 瀏覽:259
檢查校園網路路由器 瀏覽:775
msn無線網路連接 瀏覽:670
如何測試本機網路連接是否正常 瀏覽:221
帶無線網路的vr設備多少錢 瀏覽:52
重慶無線網路對講 瀏覽:13
移動和tv連接網路 瀏覽:954
網路電視不清楚怎麼辦 瀏覽:321
小米企業網路營銷調查 瀏覽:871
台式機如何看無線網路密碼 瀏覽:628

友情鏈接