聊聊神经网络的基础知识

来自《深度学习入门:基于Python的理论与实现》

张量

Numpy、TensorFlow、Pytorch等框架主要是为了计算张量或是基于张量计算。

标量:0阶张量;12,4,3,

向量:一阶张量;12,4,3

矩阵:二阶张量; \[12,4,3, 11,2,3 ]

多阶张量:多维数组;

可以将张量的阶度理解为多维数组的维度。

神经网络

神经网络的图表示:

最左边的一列称为输入层,最右边的一列称为输出层,中间的称为中间层,也叫做隐藏层。

激活函数

概述

激活函数的作用在于决定如何来激活输入信号的总和。数学表达式如下:

图表示如下:

通常神经元用一个○表示,在明确神经网络的动作下,可以明确显示激活函数的计算过程。如下,这两个图是等效的。

sigmoid函数

神经网络中用sigmoid函数作为激活函数,进行信号的转换,转换后的信号被传送到下一个神经元。

函数表示为:

使用Numpy实现:

relu函数

relu函数在输入大于0时,直接输出该值;在输入小于等于0时,输出0。函数表示:

使用Numpy实现:

神经网络的实现

如下是三层神经网络的图表示,第0层神经元到第一层神经元的信号传递:

符号解释:

如下表示引入了偏置的神经元"1"。

神经元a1的数学表达式如下:

矩阵的乘法运算:

NumPy实现:

中间层(隐藏层)的激活函数可能是不一样的,如上可能是sigmoid函数或是rule函数计算。

第1层神经元到第二层神经元的信号传递,从下图也可以看出来,第二层到输出层的信号传递:

输出层的设计

神经网络可以用在分类问题和回归问题上,不过需要根据情况改变输出层的激活函数。一般而言,回归问题用恒等函数,分类问题用softmax函数。

机器学习的问题大致分为分类问题和回归问题。分类问题是数据属于哪一个类别的问题。而回归问题是根据某个输入预测一个数值的问题。

恒等函数和softmax函数

恒等函数会将输入按原样输出,对于输入的信息,不加以任何改动的直接输出。神经网络图表示:

分类问题中的softmax函数,其数学表达式如下,计算第K个神经元的输出:

图表示如下,输出层的各个神经元都受到所有输入信号的影响:

softmax函数的python实现:

softmax函数的输出是0.0到1.0之间的实数。并且softmax函数的输出值的总和是1。因此可以把softman函数的输出解释为"概率"。

损失函数

损失函数标识神经网络性能的"恶劣程度"的指标,即当前的神经网络对监督数据在多大程度上不拟合,在多大程度上不一致。损失函数的计算可以使用均方误差和交叉熵误差。

卷积神经网络

卷积神经网络(CNN)增加了卷积层(Convolution)和池化层(Pooling)。其神经网络结构示例如下:

之前的全连接神经网络中忽略了数据的形状,比如,输入数据是图像时,图像通常是高、长、通道三个方向上的3维形状。但是向全连接层输入时,需要将3维数据拉平为1维数据。全连接层会忽视形状,将全部的输入数据作为相同的神经元(同一纬度的神经元)处理,所以无法利用与形状相关的信息。

而卷积层可以保持形状不变。当输入数据是图像时,卷积层会以3维数据的形式接受输入数据,并以3维数据的形式输出至下一层。因此,CNN架构的网络可以正确理解图像等具有形状的数据。

卷积层

卷积层进行的处理就是卷积运算。卷积运算相当于图像处理中的"滤波器运算"。如下示例:

卷积运算对输入数据应用滤波器。计算顺序如下,卷积运算以一定间隔的步幅滑动滤波器的窗口并应用。如下所示:

将各个位置上滤波器的元素与输入的对应元素相乘,然后再求和。最后将结果保存到输出的对应位置。将这个过程在所有的位置运算一遍,就可以得到卷积运算的输出。

3维数据的卷积运算

之前的卷积运算都是以高、长方向的2维形状为对象的。图像是3维数据,除了高、长方向还有通道方向。增加了通道,会按通道进行输入数据与滤波器的卷积运算。如下是增加了通道方向的3维数据进行卷积运算的例子:

计算顺序如下:

池化层

池化是缩小高、长方向上的空间的运算。如下,将2*2的区域集约成1个元素的处理,缩小空间大小。

相关推荐
空堂与归2 小时前
序列数据怎么喂给神经网络?用循环神经网络RNN拆开一个时间步
人工智能·rnn·神经网络·nlp
zx_741484816 小时前
【机器学习入门】PyTorch 神经网络、卷积神经网络 CNN 实现矿物分类
pytorch·神经网络·机器学习
程序猿编码6 小时前
基于GGML的C++17轻量化语音推理引擎:说话人识别与语音分析技术全解析
开发语言·c++·pytorch·深度学习·神经网络·大模型
Carol06308 小时前
神经网络、激活函数:ReLU / SiLU / GELU
人工智能·深度学习·神经网络
在所不辞兄9 小时前
【神经网络干货】可穿戴电子皮肤正在从“单点传感”走向“多通道、多模态、连续监测”
人工智能·神经网络·机器学习·数据挖掘
yyk333241 天前
卷积神经网络
人工智能·神经网络·cnn
吴佳浩1 天前
企业如何把通用大模型训练成行业模型:Continued Pre-Training实战指南
人工智能·神经网络·llm
clorinda1 天前
从零理解 PyTorch:用神经网络完成 MNIST 手写数字识别
人工智能·pytorch·神经网络
小道士写程序1 天前
自然语言处理NLP - 第8章 词向量与神经网络:从手工特征到学习表示
神经网络·学习·自然语言处理
在所不辞兄2 天前
【零基础学智能仿真-07】随机森林——用多棵树获得更稳定的力学预测
人工智能·深度学习·神经网络·机器学习·工程技术