一文认识神经网络工作原理
发布时间:2021-08-12 17:56:41 所属栏目:大数据 来源:互联网
导读:深度学习是机器学习中重要分支之一。它的目的是教会计算机做那些对于人类来说相当自然的事情。深度学习也是无人驾驶汽车背后的一项关键性技术,可以帮无人车识别停车标志、区分行人与路灯柱。它是手机、平板、电视和免提扬声器等设备实现语音控制的关键。深
蛮力法
适合单层前馈网络。在这里,我们需要考虑许多可能的权重。在这种方法中,我们想要舍弃除U形曲线底部权值以外的所有其他权重。最佳权值可以使用简单的消除技术找到。如果我们只需要优化一个权重,那么这种方法很有效。但如果是具有许多权重的复杂神经网络,该方法将因维数太高而无法实现。
分批梯度下降
它是一阶迭代优化算法,在训练具有不同权重模型的过程中找到最小成本值(损失)。
一文了解神经网络工作原理
梯度下降
在“梯度下降”过程中,我们不会一次都查看每个权重并剔除错误的权重,而是查看函数斜率。
如果斜率→负值,则表示您沿着曲线下降。
如果斜率→正,则不执行任何操作
这样,可以消除大量不正确的权重。
随机梯度下降(SGD)
如上图所示,当我们具有凸曲线时,渐变下降效果很好。但是,如果我们没有凸曲线,则渐变下降将失败。
“ 随机 ” 一词是指与随机概率相关的系统或过程。因此,在随机梯度下降中,随机选择一些样本,而不是每次迭代的整个数据集。
一文了解神经网络工作原理
随机梯度下降
在SGD中,我们一次获取一行数据,通过神经网络运行该数据,然后调整权重。对于第二行,我们运行它,然后比较Cost函数,然后再次调整权重。
SGD帮助我们避免了局部极小值的问题。它比Gradient Descent快得多,因为它一次运行每一行,并且不必将整个数据加载到内存中即可进行计算。
要注意的一件事是,由于SGD通常比典型的Gradient Descent噪声更大,因此由于其下降的随机性,通常需要更多的迭代次数才能达到最小值。尽管与典型的Gradient Descent相比,它需要更多的迭代次数才能达到最小值,但在计算消耗上仍比典型的Gradient Descent少得多。因此,在大多数情况下,SGD优于分批梯度下降。
利用随机梯度下降训练神经网络
步骤1→将权重随机初始化为接近0但不为0的小数。
步骤2→在输入层中输入数据集的第一个观测值,每个要素放在一个节点中。
步骤3→ 正向传播:从左到右,神经元按顺序被激活,直到获得预测值。每个神经元的影响都受权重的限制。
步骤4→将预测结果与实际结果进行比较,并测量的误差(成本函数)。
步骤5→ 反向传播:从右到左,误差反向传播。根据它们对错误造成的影响来更新权重。学习率决定了我们更新权重的程度。
步骤6→重复步骤1至5,并在每次比较后更新权重(强化学习)
步骤7→当整个训练集通过ANN时,就完成了。
结论
一文了解神经网络工作原理
资料来源:techcrunch.com
神经网络是一个全新的新概念,它还有很大潜力。可以应用于各种不同的概念中,并在测试阶段通过特定的反向传播和纠错机制进行学习。这些多层系统也许可以有一天仅靠学习来减少发生错误的可能性,而无需人工纠正。
![]() (编辑:宿州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |