神经网络

简介: 深度神经网络(DNN)神经网络是一些被称作感知机的单元的集合,感知机是二元线性分类器。如上图所示,输入 x1 和 x2 分别和各自的权重 w1 和 w2 相乘、求和,所以函数 f=x1*w1+x2*w2+b(偏置项,可以选择性地添加)。

深度神经网络(DNN)

神经网络是一些被称作感知机的单元的集合,感知机是二元线性分类器

如上图所示,输入 x1 和 x2 分别和各自的权重 w1 和 w2 相乘、求和,所以函数 f=x1*w1+x2*w2+b(偏置项,可以选择性地添加)。

函数 f 可以是任意的运算,但是对于感知机而言通常是求和。函数 f 随后会通过一个激活函数来评估,该激活函数能够实现期望分类Sigmoid 函数是用于二元分类的最常见的激活函数。

如果我们把单维度的感知机以各种组合算法聚合到一起,这就形成了网络似的全连接感知机,这些网络感知机(中间产物即隐层)的输出成为最后一个单元的输入,再通过函数 f 和激活函数得到最终的分类。

上面提到的神经网络也被称为前馈神经网络(FFNN),因为信息流是单向无环的。我们可以想象,数百个输入连接到数个这样的隐藏层会形成一个复杂的神经网络,通常被称为深度神经网络或者深度前馈神经网络(DFFNN)。

卷积神经网络(CNN)

其他的变体,如 RNN、LSTM、GRU 等,基于和 CNN 类似的结构,不过架构存在一些差异。

CNN 由三种不同的层组成,即卷积层池化层密集层或全连接层。深度神经网络是典型的全连接层神经网络。

卷积层:通过滤波器提取多个特征(滤波器是卷积)

假设一张图像有 5*5 个像素,1 代表白,0 代表黑,这幅图像被视为 5*5 的单色图像。现在用一个由随机地 0 和 1 组成的 3*3 矩阵去和图像中的子区域做乘法,每次迭代移动一个像素,这样该乘法会得到一个新的 3*3 的矩阵。

 

上述的 3*3 的矩阵被称作滤波器,它的任务是提取图像特征,它使用优化算法来决定 3*3 矩阵中具体的 0 和 1。

在神经网络的卷积层中使用好几个这样的滤波器来提取多个特征3*3 矩阵的每一个单个步骤被称作步幅(stride)。

池化层:这个层主要使用不同的函数为输入降维

最大池化层(max-pooling layer)出现在卷积层之后。池化层使用 2*2 的矩阵,以卷积层相同的方式处理图像,不过它是给图像本身降维。

池化层会损失信息通常的做法是在卷机层中使用一个较大的步幅

下面分别是使用「最大池化」和「平均池化」的示例。

全连接层:这个层是位于之前一层和激活函数之间的全连接层。

它和深度神经网络是类似的。

 

目录
相关文章
|
7月前
|
机器学习/深度学习 网络架构
神经网络4
与单层神经网络不同。理论证明,两层神经网络可以无限逼近任意连续函数。 这是什么意思呢?也就是说,面对复杂的非线性分类任务,两层(带一个隐藏层)神经网络可以分类的很好。 下面就是一个例子(此两图来自colah的博客),红色的线与蓝色的线代表数据。而红色区域和蓝色区域代表由神经网络划开的区域,两者的分界线就是决策分界。 可以看到,这个两层神经网络的决策分界是非常平滑的曲线,而且分类的很好。有趣的是,前面已经学到过,单层网络只能做线性分类任务。而两层神经网络中的后一层也是线性分类层,应该只能做线性分类任务。为什么两个线性分类任务结合就可以做非线性分类任务? 我们可以把输出层的决策分界单独拿出来看一下
46 0
|
机器学习/深度学习 数据可视化
|
2月前
|
机器学习/深度学习 人工智能 算法
训练神经网络的7个技巧
训练神经网络的7个技巧
44 1
|
7月前
|
机器学习/深度学习 存储 人工智能
神经网络
3.效果 与神经元模型不同,感知器中的权值是通过训练得到的。因此,根据以前的知识我们知道,感知器类似一个逻辑回归模型,可以做线性分类任务。 我们可以用决策分界来形象的表达分类的效果。决策分界就是在二维的数据平面中划出一条直线,当数据的维度是3维的时候,就是划出一个平面,当数据的维度是n维时,就是划出一个n-1维的超平面。 下图显示了在二维平面中划出决策分界的效果,也就是感知器的分类效果。 4.影响 感知器只能做简单的线性分类任务。但是当时的人们热情太过于高涨,并没有人清醒的认识到这点。于是,当人工智能领域的巨擘Minsky指出这点时,事态就发生了变化。 Minsky在1969年出版了一本叫
56 0
|
7月前
|
机器学习/深度学习 算法 自动驾驶
神经网络5
4.训练 下面简单介绍一下两层神经网络的训练。 在Rosenblat提出的感知器模型中,模型中的参数可以被训练,但是使用的方法较为简单,并没有使用目前机器学习中通用的方法,这导致其扩展性与适用性非常有限。从两层神经网络开始,神经网络的研究人员开始使用机器学习相关的技术进行神经网络的训练。例如用大量的数据(1000-10000左右),使用算法进行优化等等,从而使得模型训练可以获得性能与数据利用上的双重优势。 机器学习模型训练的目的,就是使得参数尽可能的与真实的模型逼近。具体做法是这样的。首先给所有参数赋上随机值。我们使用这些随机生成的参数值,来预测训练数据中的样本。样本的预测目标为yp,真实目标
45 0
|
9月前
|
机器学习/深度学习 算法 PyTorch
神经网络知识蒸馏
翻译:《Distilling the knowledge in a neural network》
|
9月前
|
机器学习/深度学习 自然语言处理 算法
简单了解神经网络
神经网络是一种强大的机器学习算法,具有很广泛的应用,可以用于图像识别、语音识别、自然语言处理、推荐系统等多个领域。
70 0
|
机器学习/深度学习 存储 算法
一文让你掌握22个神经网络训练技巧
一文让你掌握22个神经网络训练技巧
一文让你掌握22个神经网络训练技巧
|
12月前
|
机器学习/深度学习 算法
连载|神经网络(上)
连载|神经网络(上)
|
12月前
|
机器学习/深度学习 算法
连载|神经网络(下)
连载|神经网络(下)