神經網路學習報告

2022-11-16 11:39:04 字數 3008 閱讀 8987

1、什麼是神經網路?

神經網路是一種應用類似於大腦神經突觸聯接的結構進行資訊處理的數學模型。它是由大量功能單一的神經元構成,具有很好的學習能力和泛化能力。神經元作為神經網路的基本構成單元,其主要由突觸、加法器以及啟用函式組成。

突觸用於訊號的輸入,加法器用於將輸入訊號進行相應的計算,啟用函式用來限制神經元的輸出振幅。啟用函式主要有以下三種形式:

1、閾值函式即階梯函式:當函式自變數小於0時,函式輸出為0,當函式的自變數大於等於0時,函式的輸出為1。數學表示為:

1, v>0

f(v)=

0 , v<0

2、分段線性函式:該函式的自變數v在負無窮到-1之間時,函式輸出為-1;自變數v在-1到1時,函式輸出為v;自變數v大於等於1時,函式輸出為1。其數學表示為:

1, x≥1

f(v)= v , -11 , v≤-1

3、非線性轉移函式:該函式是當自變數在實域上變化是,其輸出始終在0到1之間。最常用的非線性轉移函式是單極性sigmoid函式,簡稱s型函式單極性s型函式的數學表示為:

f(v)=1/(1+e-v)

雙極性s型函式的數學表示為:

f(v)=(1-e-v)/(1+e-v)

神經網路的型別從網路結構可分為前向神經網路和反饋神經網路。前向神經網路分為單層前向神經網路和多層前向神經網路。區分前向神經網路和反饋神經網路主要是看輸出層是否有反饋回到了輸入層,有則為反饋神經網路,否則為前向神經網路。

區分單層前向神經網路和多層前向神經網路主要是看是否有隱藏層,有則為多層前向神經網路,否則為單層前向神經網路。單層前向神經網路、多層前向神經網路以及反饋神經網路網路模型分別如圖1-1、1-2、1-3所示。

圖1-1 單層前向神經網路圖1-2 多層前向神經網路

圖1-3 反饋神經網路

二、神經網路工具箱通用函式

sim函式,用於神經網路的**。其呼叫格式如下。

[y,pf,af,e,perf ]=sim(net,p,pi,ai,t)

[y,pf,af ]=sim(net,,pi,ai)

其中,y:網路輸出;pf:最終輸出延遲;af:

最終的層延遲;e:網路誤差;perf :網路效能;net:

待**的神經網路;p:網路輸入;pi:初始輸入延遲,預設為0;ai:

初始層延遲,預設為0;t:網路目標。

神經網路**示例程式如下:

clear all;

p = [0 1 2 3 4 5 6 7 8 9輸入向量

t = [0 0.34 0.56 0.55 -0.33 -0.78 -0.58 0.97 0.48 0.87]; %目標向量

net = feedforwardnet(10);

net = configure(net,p,t);

y1 = sim(net,p對所建立網路進行**

plot(p,t,'o',p,y1,'x')

legend('原始資料','**後資料');

程式輸出:

y1 =

3.6881 4.1582 3.

7542 2.5204 1.8117 1.

5808 0.7953 -0.4858 -1.

7422 -2.7742

網路**效果圖如圖2-1所示。

圖2-1 網路**效果圖

train函式,用於實現神經網路的訓練,其呼叫格式如下:

[net,tr,y,e,pf,af]=train(net,p,t,pi,ai)

其中,net:待訓練的神經網路;p:網路的輸入訊號;t:

網路的目標,預設為0;pi:初始的輸入延遲,預設為0;ai:初始的層延遲,預設為0;net:

訓練後的神經網路;tr:訓練記錄;y:神經網路的輸出訊號;e:

神經網路的誤差;pf:最終輸入延遲;af:最終層延遲。

神經網路訓練網路示例程式如下:

clear all;

p = [0 1 2 3 4 5 6 7 8 9輸入向量

t = [0 0.34 0.56 0.55 -0.33 -0.78 -0.58 0.97 0.48 0.87]; %目標向量

net = feedforwardnet(10);

net = configure(net,p,t);

net=train(net,p,t);

y1=sim(net,p)

plot(p,t,'o',p,y1,'x');

legend('訓練前資料','訓練後資料');

網路訓練過程如圖2-2所示。

圖2-2 網路訓練過程

網路訓練效果圖如圖2-3所示。

圖2-3 網路訓練效果圖

將上面兩個例子整合對比,可得如下程式:

clear all;

p = [0 1 2 3 4 5 6 7 8 9輸入向量

t = [0 0.34 0.56 0.55 -0.33 -0.78 -0.58 0.97 0.48 0.87]; %目標向量

net = feedforwardnet(10);

net = configure(net,p,t);

net=train(net,p,t);

y1=sim(net,p)

net = feedforwardnet(10);

net = configure(net,p,t);

net=train(net,p,t);

y2=sim(net,p)

plot(p,t,'o',p,y1,'x',p,y2,'*');

legend('原始資料','**後資料','訓練後資料');

效果圖如圖2-5所示。

圖2-5 效果圖

3、實驗總結

通過對神經網路和matlab的學習,我深刻地意識到了自身的渺小。matlab中就神經網路這塊就有那麼多的函式,先不說寫這些函式,光自己用這些人家已經給你寫好了的函式都不會用,想起來真的很慚愧,不過這也成為了我學習神經網路的動力,萬事開頭難,我相信,只要努力了,總有一天會成功的。

welcome to

download !!!

神經網路實驗報告

院系 電氣工程學院 班級 電氣工程dsfasd 姓名 dsfa 學號 dfad7 時間 2009 11 28 實驗二基於bp網路的多層感知器 一 實驗原理 bp的基本思想 訊號的正向傳播誤差的反向傳播 訊號的正向傳播 輸入樣本從輸入層傳入,經各隱層逐層處理後,傳向輸出層。誤差的反向傳播 將輸入誤差以...

bp神經網路

實驗四計算智慧型 1 1 實驗目的 理解反向傳播網路的結構和原理,掌握反向傳播演算法對神經元的訓練過程,了解反向傳播公式。通過構建bp網路例項,熟悉前饋網路的原理及結構。2 實驗內容 編寫乙個bp神經網路程式,實現簡單的分類。3 實驗報告要求 1 簡述實驗原理及方法,並請給出程式設計流程圖。bp演算...

BP神經網路

目標函式 y sin 2x sin x x 5,5 其影象為 程式 clc clear all x 5 0.01 5 y sin pi x sin 2 x net newff minmax x 10,1 traingd net train net,x,y y1 sim net,x plot x,y ...