反向误差传播算法学习笔记


step.1

构建cost function的表达式的函数,其神经网络图如下,其θ1和θ2已经训练好。


输入X为5000*400的矩阵 (5000个元素,400个像素)

Y为5000*1的矩阵 其中有5000个结果,以1,2,3,4,5,6,7,9,10(代表0)为label


a1=[ones(size(X,1),1) X]; %为每个输入样品加入一个偏置单元  size(x,1) is the row number of x
%a1=5000*401
z2=a1*Theta1';
%z2=5000*25
a2=[ones(size(X,1),1) sigmoid(z2)];
%a2=5000*26
z3=a2*Theta2';
%z3=5000*10
h=sigmoid(z3);
%h=5000*10

%y=5000*1
i=0;
for i=1:10
  
J=J+sum(-(y==i).*log(h(:,i))-(1-(y==i)).*log(1-h(:,i)));
%y==i将y变成对应i以0,1构成的向量
%h为5000*10,列数代表不同数字 即不同输出层神经元的预测值
%y==i 对应为5000*1的向量,构建时将h分为10份 y*对应的h 使对应的神经元变成i的神经元.
%yingxiang
end;

J=(1/m)*J;







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值