rsomhebbv01.m

来自「a neural network,Recursive SOM and Marge」· M 代码 · 共 63 行

M
63
字号
function Net = RSOMHebbV01(Net , I , RSOMState , WinnerInd)%   RSOMHebbV01     Hebbian learning for RSOM network with learning rates%                   decay.%%   ---------------------------------------------------------%   Amir Reza Saffari Azar Alamdari%   http://www.ymer.org/main.htm , amir@ymer.org%   ---------------------------------------------------------%-----InitializingINNum       = Net.Dim.INNum;RSOMNum     = Net.Dim.RSOMNum;RSOMSize    = Net.Dim.RSOMSize;WINRSOM     = Net.W.WINRSOM;WRSOM       = Net.W.WRSOM;RSOMType    = Net.RSOM.RSOMType;RSOMPosD    = Net.RSOM.RSOMPosD;RSOMNeiFun  = Net.RSOM.RSOMNeiFun;RSOMNeiFunP = Net.RSOM.RSOMNeiFunP;RSOMUnSLStepIN  = Net.Learn.RSOMUnSLStepIN;RSOMUnSLStepC   = Net.Learn.RSOMUnSLStepC;%-----LearningWinnerDist  = RSOMPosD(WinnerInd , :);Epoch       = Net.State.Epoch;MaxEpoch    = Net.State.MaxEpoch;TauP        = MaxEpoch/sqrt(-log(0.1/RSOMNeiFunP));RSOMNeiFunP = RSOMNeiFunP*exp(-Epoch^2/TauP^2);TauIN           = MaxEpoch/sqrt(-log(0.005/RSOMUnSLStepIN));RSOMUnSLStepIN  = RSOMUnSLStepIN*exp(-Epoch^2/TauIN^2);TauC            = MaxEpoch/sqrt(-log(0.005/RSOMUnSLStepC));RSOMUnSLStepC   = RSOMUnSLStepC*exp(-Epoch^2/TauC^2);switch RSOMNeiFun        case 'Guass'                WinnerNei   = exp(-WinnerDist.^2/RSOMNeiFunP^2);            otherwise                error('Unknown RSOMNeiFun !!!')        endDWINRSOM    = RSOMUnSLStepIN*repmat(WinnerNei , INNum , 1).*(repmat(I , 1 , RSOMNum) - WINRSOM);DWRSOM      = RSOMUnSLStepC*repmat(WinnerNei , size(RSOMState , 1) , 1).*(repmat(RSOMState , 1 , RSOMNum) - WRSOM);WINRSOM     = WINRSOM + DWINRSOM;WRSOM       = WRSOM + DWRSOM;%-----StoringNet.W.WINRSOM   = WINRSOM;Net.W.WRSOM     = WRSOM;return

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?