資源簡介
利用MATLAB實現循環神經網絡的例子,便于大家更好的理解循環神經網絡RNN的原理。
代碼片段和文件信息
clear
clc
largestNumber=256;?
T=8;?
dic=dec2bin(0:largestNumber-1)-‘0‘;?%?將uint8表示成二進制數組,這是一個查找表?
%%?初始化參數?
eta=0.1;?%?學習步長?
inputDim=2;?%?輸入維度?
hiddenDim=16;?%隱層節點個數?
outputDim=1;?%?輸出層節點個數?
?
W=rand(hiddenDimoutputDim)*2-1;?%?(-11)參數矩陣?
U=rand(hiddenDimhiddenDim)*2-1;?%?(-11)參數矩陣?
V=rand(inputDimhiddenDim)*2-1;??%?(-11)參數矩陣?
?
delta_W=zeros(hiddenDimoutputDim);?%?時刻間中間變量?
delta_U=zeros(hiddenDimhiddenDim);?
delta_V=zeros(inputDimhiddenDim);?
error=0;?
for?p=1:10000?
???aInt=randi(largestNumber/2);?
???bInt=randi(largestNumber/2);?
???a=dic(aInt+1:);?
???b=dic(bInt+1:);?
???cInt=aInt+bInt;?
???c=dic(cInt+1:);?
???y=zeros(1T);?
?
???preh=zeros(1hiddenDim);?
???hDic=zeros(ThiddenDim);?
???%%?前向計算?
???for?t=T:-1:1?%?注意應該從最低位計算,也就是二進制數組最右端開始計算?
?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1961??2018-01-29?13:19??RNN代碼\RNN.m
?????文件?????????49??2018-01-06?17:28??RNN代碼\sigmoid.m
?????文件?????????67??2018-01-06?17:29??RNN代碼\sigmoidOutput2d.m
?????目錄??????????0??2018-01-20?21:53??RNN代碼
-----------?---------??----------?-----??----
?????????????????2077????????????????????4
評論
共有 條評論