人工神经网络怎么工作?有没有简单的解释?

在上图中,没有两个数字是一模一样的 。但它们有一些相似的特征 , 足以让我们分辨出它们 。你知道“8”就是有两个环,而“9”是一个环,然后在环右边加一条竖线 , 等等 。人工神经网络能够运作,就是因为本质上数据有问题做神经网络可以吗,它们可以学习这些关系 , 从而发现输入信息的特征 。
如果我告诉你人工神经网络可以学习任何关系呢?当然,它可以“学习”“2”长什么样数据有问题做神经网络可以吗,还能了解“2”和其他数字的区别 。对于识别特定的输入信息,如音频、视频等,神经网络基本上会输出输入信息的类别 。在更高层次上,基于某些公式,这种函数可以根据输入信息生成输出信息 。就这一点而言,每一个数字都代表它输入像素强度的特定函数 。如果有人知道明确的函数,就没必要训练人工神经网络了 。但是,由于这种函数并不明显 , 有的还可能非常复杂,训练人工神经网络就很有必要了,这样它们可以从训练数据中构建函数 。要理解人工神经网络工作的原因,关键在于意识到人工神经网络可以模拟任何给定的函数 。换句话说,对于任何抽象的功能 , 总有对应的人工神经网络,能输出要求的目标函数的合理近似函数 。下面给了一个简单的图标说明 。
要理解人工神经网络的普遍性,我们来试试构建一个神经网络 , 仅凭一个输出输入结果来给出下面这个重要函数的近似值:
让人工神经网络的隐藏神经元的激活函数变成阶梯函数 。让人工神经网络的隐藏层被神经元的极限值参数化 。假设接下来的人工神经网络隐藏神经元的极限值为2,质量为1.5,假设神经元的输出值只是简单地计算输入值的总质量 。
上述人工神经网络的输出很简单:
现在看看下面这个人工神经网络 , 这只是对之前的人工神经网络做了一点小小的修改:
这给了我们一个脉冲,当2
将这些脉冲组合在一起,我们就可以模拟我们的目标函数了 。我们先试着以四个脉冲模拟函数 。下面的神经网络得到的结果相同:
神经网络的输出函数几乎是目标函数的近似值:
【人工神经网络怎么工作?有没有简单的解释?】通过增加神经元的数量,人工神经网络可以输出一个与目标函数近似度更高的值 。事实上,有了S形激活函数,即使少量的神经元也可以得出近似度很高的函数 。简化的例子解释了人工神经网络的普遍性 。通过一些类似的处理 , 全面性可以扩展到更大的领域,可以生成多输出、多输入的函数 。
在有限的案例中,人工神经网络理论上可以记住输入域的每一个点 。假设数字的尺寸是16*16像素 , 每个像素不是0,就是1.这总共是2161621616.
本文到此结束,希望对大家有所帮助!

猜你喜欢