002深度学习入门——神经网络
内容目录

合集请查看:深度学习入门合集
参考书籍:深度学习入门 基于Python的理论与实现 作者:斋藤康毅

什么是神经网络

用图来表示就是下图↓

image.png|500

感知机和神经网络的主要区别在于激活函数

激活函数

定义:
[[Activation Function]]

激活函数是连接感知机和神经网络的桥梁。

阶跃函数

一旦输入超过阈值,就切换输出。这样的函数称为“阶跃函数
例如:

image.png|234

图形化:

image.png|200

sigmoid函数

image.png|226

(exp(−x)表示e −x)
图示:
image.png|251

ReLU函数

Rectified Linear Unit function

image.png|240

图示:

image.png|291

多维数组的运算

![[基于numPy的多维数组运算]]

![[矩阵乘法]]
注意,对应维度的元素个数必须一致(除非有一个是一维数组)
例如:
若A是形状为(3,5)的矩阵
B是形状为(4,3)的矩阵
C是形状为(5,3)的矩阵
D是形如[1,1,1]的向量
则,np.dot(A,B),np.dot(C,B)报错
而,np.dot(A,C),np.dot(A,D)合法
即N(X,Y),M必须为(Y,X)或者(Y,1),np.dot(N,M)才合法

矩阵乘积也称为点积,因此用dot函数

神经网络的内积

image.png

结合矩阵乘法,可以通过np.dot()的式子一次性计算出神经网络的结果

输出层的设计

一般而言,[[回归问题]]用[[恒等函数]],[[分类问题]]用[[Softmax Function]]

输出层的神经元数量

根据待解决的问题来决定。
对于分类问题,输出层的神经元数量一般设定为类别的数量。比如,对于某个输入图像,预测是图中的数字0到9中的哪一个的问题(10类别分类问题),可以将输出层的神经元设定为10个。

手写数字识别

使用[[MNIST]]手写数字图像集

上一篇
下一篇