深度学习入门_P2 神经网络
1. 从感知机到神经网络
下图所示的结构就是两层神经网络,从左到右依次是输入层,中间层和输出层。中间层有时候也称为隐藏层,隐藏层的神经元是看不到的。

前面说了感知机的公式是:

对于该公式可以进行简化。

h(x)这个函数将信号的总和转换为信号,就被称为激活函数。
2. 激活函数
2.1. sigmoid 函数
def sigmoid(x): |

2.2. 阶跃函数
def step_function(x): |
下面函数图像有问题,从 0 到 1 时没有斜率的。

2.3. ReLU 函数
def relu(x): |

[!note]
上面的激活函数都是明显的非线性函数,注意激活函数只能使用非线性函数。如果激活函数使用线性函数,那么神经网络层数就失去了意义。
3. 实现三层神经元
通过自定义权重和偏置可以实现三层神经元。
import numpy as np |
上述代码中有用到恒等函数
identity_function,该函数的主要作用是把函数原本的样子输出出来。一般的回归问题用恒等函数,二元分类问题用sigmoid函数,多元分类问题用softmax函数。
4. 输出层的设计
4.1. softmax 函数
softmax 函数如下所示。

可以看到其中大量使用了 e 的指数,如果 xk 过大会导致数字溢出,为了解决这个问题需要对公式进行改进。

C' 数字可以取输入信号的最大值,用 python 实现应该如下所示。
def softmax(a): |
4.2. softmax 函数特征
softmax 函数的输出是 0 到 1 之间的实数,并且函数的输出值总和是 1。
求解机器学习问题的过程可以分为学习和推理两个阶段,在学习阶段进行模型的学习,然后在推理阶段用学到的模型对未知的数据进行推理。
- Title: 深度学习入门_P2 神经网络
- Author: JBpeople
- Created at : 2025-11-11 00:00:00
- Updated at : 2025-11-18 14:43:45
- Link: https://blog.ddacc.me/posts/3f4d5009/
- License: This work is licensed under CC BY-NC-SA 4.0.