首页 > 代码库 > 【机器学习】随机初始化思想神经网络总结
【机器学习】随机初始化思想神经网络总结
之前在进行梯度下降时,通常我们让Θ等参数为0,这样的做法在逻辑回归中还是可行的,但是在神经网络中,如果你让所有的参数都初始化为0,这将意味着第二层的所有的激活单元都会有相同的值,同理,如果我们初始化所有的参数都是一个非0的数,结果也是一样的。
例如在设置初始化参数Θ时,可以用如下方法:
Theta1 = rand(10,11) * (2 *INIT_EPSILON)-INIT_EPSILON
小结一下使用神经网络时的步骤:
网络结构:第一件要做的事是选择网络结构,即决定选择多少层以及决定每层分别有多
少个单元。
第一层的单元数即我们训练集的特征数量。
最后一层的单元数是我们训练集的结果的类的数量。
如果隐藏层数大于 1,确保每个隐藏层的单元个数相同,通常情况下隐藏层单元的个数
越多越好。
我们真正要决定的是隐藏层的层数和每个中间层的单元数。
训练神经网络:
1. 参数的随机初始化
2. 利用正向传播方法计算所有的 h θ (x)
3. 编写计算代价函数 J 的代码
4. 利用反向传播方法计算所有偏导数
5. 利用数值检验方法检验这些偏导数
6. 使用优化算法来最小化代价函数
【机器学习】随机初始化思想神经网络总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。