读Joone源代码有感(2)

本文探讨了Joone神经网络库中的TeachingSynapse与TeacherSynapse组件的工作原理。TeachingSynapse作为代理,通过TeacherSynapse进行权矩阵更新及数值存储。TeacherSynapse继承自AbstractTeacherSynapse,其forward方法计算输出误差并更新GlobalError。
   继续谈我在读Joone源代码过程中的体会
1)网络的终点是一个TeachingSynapse,它和一般Synapse不同在于它内含了一个TeacherSynapse,TeachingSynapse就像个代理,实际更新权矩阵和数值的存储是在TeacherSynapse上完成的。TeacherSynapse和一般Synapse也不同,它是一个只有fwdPut和revGet方法的Synapse(fwdGet和revPut方法为空),其实也不难理解,因为TeacherSynapse是最后一个Synapse,并且没有输出Layer层,所有不需要fwdGet和revPut方法。
2)TeacherSynapse继承AbstractTeacherSynapse,AbstractTeacherSynapse又继承Synapse,AbstractTeacherSynapse主要差别在于forward和revGet方法,Synapse的forward方法只是把InputLayer传来的值储存在outs对象中,而AbstractTeacherSynapse的forward方法把理想值和实际输出值做差,把误差值储存在outs中以供fwdGet用,并且把各个差值做平方和最后除以2的运算得到当前epochs的GlobalError。revGet方法也很不一样,它直接调用fwdGet,把刚才fwdPut储存的值拿出来以供回馈用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值