【问题标题】:How does a Neural Network "remember" what its learned?神经网络如何“记住”它学到的东西?
【发布时间】:2018-12-17 06:18:28
【问题描述】:

我试图集中精力理解神经网络,从我所看到的一切来看,我知道它们是由节点创建的层组成的。这些节点通过“加权”连接相互连接,通过输入层传递值,值通过节点传播,根据连接的“权重”改变它们的值(对吗?)。最终,它们以一个值到达输出层。我理解这个过程,但我不明白这如何导致网络被训练。网络是否记得加权连接之间的模式?它是如何记住这种模式的?

【问题讨论】:

  • 理解神经网络的最佳方式是对其进行编程。这是一个精彩的介绍,您可能想查看Agile Artificial Intelligence。停止阅读,开始编码。

标签: neural-network


【解决方案1】:

每个节点上的每个权重和偏差就像一个存储变量。随着新数据导致其权重和偏差发生变化,这些变量也会发生变化。最终,经过训练的算法完成,权重和偏差不再需要改变。然后,您可以随心所欲地存储有关所有节点、权重、偏差和连接的信息。此信息是您的模型。所以“记忆”只是权重和偏差的值。

【讨论】:

  • 为了更准确,不要忘记偏见。神经网络在学习时会同时适应权重偏差
【解决方案2】:

神经网络通过其权重和偏差记住它学到的东西。让我们用一个二进制分类示例来解释它。在前向传播期间,计算的值是 概率(比如 p),实际值为 y。现在,使用以下公式计算损失:-> -(ylog(p) + (1-y)log(1-p))。一旦计算出损失,此信息将向后传播,并使用此损失计算权重和偏差的相应导数。现在根据这些导数调整权重和偏差。在一个 epoch 中,所有存在的示例都被传播,权重和偏差都被调整。然后,相同的示例向前和向后传播,并在每一步中相应地调整权重和偏差。最后,在最大限度地减少损失或实现高精度(确保不要过度拟合)之后,我们可以存储权重和偏差的值,这就是神经网络学到的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-16
    • 2021-09-07
    • 2021-01-12
    • 2018-03-21
    • 1970-01-01
    • 2012-03-15
    • 2016-07-11
    • 1970-01-01
    相关资源
    最近更新 更多