matlab RBF神經網路例項

2021-07-31 13:52:16 字數 1207 閱讀 3967

程式:

clc;

clear;

close all;

%產生400個資料的輸入與輸出

ld=400;

x=rand(2,ld); %0-1

x=(x-0.5)*1.5*2; %-1.5, 1.5

x1=x(1,:);

x2=x(2,:);

f=20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);

%建立rbf徑向基網路

net=newrb(x,f);

%產生測試資料

interval=0.1; %步長

[i, j]=meshgrid(-1.5:interval:1.5,-1.5:interval:1.5);%定義i、j的值域

row=size(i); %返回size的尺寸31行31列

%將i,j轉換為行向量作為輸入資料

tx1=i(:);%將i矩陣轉換為列向量

tx1=tx1';

tx2=j(:);%將j矩陣轉換為列向量

tx2=tx2';

tx=[tx1;tx2];

%testing

ty=sim(net,tx); %開始測試 測試資料需要是行向量 得到測試結果ty

v=reshape(ty,row); %將輸出資料轉換為31*31向量 以繪製三維圖形

figure

subplot(1,3,2) %一行3列圖 的第二個位置

mesh(i,j,v);

zlim([0,60]) %限制z軸的範圍

%plot the original function

interval=0.1;

[x1, x2]=meshgrid(-1.5:interval:1.5);

f = 20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);

subplot(1,3,1)

mesh(x1,x2,f);

zlim([0,60])

%plot the error

subplot(1,3,3)

mesh(x1,x2,f-v); %誤差圖

神經網路 卷積神經網路

這篇卷積神經網路是前面介紹的多層神經網路的進一步深入,它將深度學習的思想引入到了神經網路當中,通過卷積運算來由淺入深的提取影象的不同層次的特徵,而利用神經網路的訓練過程讓整個網路自動調節卷積核的引數,從而無監督的產生了最適合的分類特徵。這個概括可能有點抽象,我盡量在下面描述細緻一些,但如果要更深入了...

神經網路 卷積神經網路

1.卷積神經網路概覽 來自吳恩達課上一張,通過對應位置相乘求和,我們從左邊矩陣得到了右邊矩陣,邊緣是白色寬條,當畫素大一些時候,邊緣就會變細。觀察卷積核,左邊一列權重高,右邊一列權重低。輸入,左邊的部分明亮,右邊的部分灰暗。這個學到的邊緣是權重大的寬條 都是30 表示是由亮向暗過渡,下面這個圖左邊暗...

神經網路簡介 多層神經網路

如上圖所示,該神經網路有三層。我們標記第一層 也就是輸入層 為a 1 第一層與第二層連線權重為w 1 然後第一層輸入與第一層權重的線性和為z 1 第一層神經元個數為n 1 並依次標記剩餘網路層。可以看出,存在 z l j i 1 n l a l i w l i,j a l w l j a l 1 f...