目录

人工神经网络(Artificial Neural Networks)

人工神经网络,或简称神经网络,并不是一个新概念。 它已经存在了大约80年。

直到2011年,深度神经网络才开始流行使用新技术,庞大的数据集可用性和强大的计算机。

神经网络模仿神经元,其具有树突,核,轴突和末端轴突。

终端轴突

对于网络,我们需要两个神经元。 这些神经元通过一个的树突和另一个的末端轴突之间的突触传递信息。

神经元转移信息

一个可能的人造神经元模型看起来像这样 -

可能的模型

神经网络如下图所示 -

神经网络

圆是神经元或节点,它们在数据上的功能和连接它们的线/边是传递的权重/信息。

每列都是一个图层。 数据的第一层是输入层。 然后,输入层和输出层之间的所有层都是隐藏层。

如果你有一个或几个隐藏层,那么你有一个浅层的神经网络。 如果你有许多隐藏层,那么你有一个深层神经网络。

在这个模型中,您有输入数据,您可以对其进行加权,并将其传递给神经元中称为阈值函数或激活函数的函数。

基本上,它是将某个值与某个值进行比较后的所有值的总和。 如果你发出一个信号,那么结果是(1)out,或者什么也没发出,然后是(0)。 然后将其加权并传递给下一个神经元,并运行相同类型的函数。

我们可以使用sigmoid(s形)函数作为激活函数。

至于权重,它们只是随机启动,并且每个输入到节点/神经元中它们是唯一的。

在典型的“前馈”中,最基本的神经网络类型,您可以直接通过您创建的网络传递信息,并将输出与您希望输出使用样本数据的内容进行比较。

从这里,您需要调整权重以帮助您使输出与您想要的输出相匹配。

直接通过神经网络发送数据的行为称为feed forward neural network.

我们的数据从输入,到层,按顺序,然后到输出。

当我们向后并开始调整权重以最小化损失/成本时,这称为back propagation.

这是一个optimization problem. 使用神经网络,在实际操作中,我们必须处理数十万个变量,或数百万或更多。

第一种解决方案是使用随机梯度下降作为优化方法。 现在,有AdaGrad,Adam Optimizer等选项。 无论哪种方式,这都是一个庞大的计算操作。 这就是为什么神经网络大多数被搁置半个多世纪的原因。 直到最近,我们甚至在我们的机器中拥有功能和架构,甚至考虑进行这些操作,以及匹配的适当大小的数据集。

对于简单的分类任务,神经网络在性能上与其他简单算法(如K Nearest Neighbors)相对接近。 当我们拥有更大的数据和更复杂的问题时,实现了神经网络的真正实用性,这两个问题都优于其他机器学习模型。

↑回到顶部↑
WIKI教程 @2018