【机器学习】随机初始化思想神经网络总结

 之前在进行梯度下降时,通常我们让Θ等参数为0,这样的做法在逻辑回归中还是可行的,但是在神经网络中,如果你让所有的参数都初始化为0,这将意味着第二层的所有的激活单元都会有相同的值,同理,如果我们初始化所有的参数都是一个非0的数,结果也是一样的。

例如在设置初始化参数Θ时,可以用如下方法:

Theta1 = rand(10,11) * (2 *INIT_EPSILON)-INIT_EPSILON

  

小结一下使用神经网络时的步骤:
网络结构:第一件要做的事是选择网络结构,即决定选择多少层以及决定每层分别有多
少个单元。
第一层的单元数即我们训练集的特征数量。
最后一层的单元数是我们训练集的结果的类的数量。
如果隐藏层数大于 1,确保每个隐藏层的单元个数相同,通常情况下隐藏层单元的个数
越多越好。
我们真正要决定的是隐藏层的层数和每个中间层的单元数。
训练神经网络:
1. 参数的随机初始化
2. 利用正向传播方法计算所有的 h θ (x)
3. 编写计算代价函数 J 的代码
4. 利用反向传播方法计算所有偏导数
5. 利用数值检验方法检验这些偏导数
6. 使用优化算法来最小化代价函数

转载于:https://www.cnblogs.com/KID-XiaoYuan/p/7285463.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值