第三章 神经网络

神经网络结构

输入层->中间层(隐藏层)->输出层

神经网络与感知机的差异

向下一个神经元发送信号时,改变信号的激活函数有很大差异。

神经网络中使用的是平滑变化的sigmoid函数,而感知机中使用的是信号急剧变化的阶跃函数。

激活函数

激活函数将输入信号的总和转换为输出信号

作用在于决定如何来激活输入信号的总和

sigmoid函数

python 复制代码
def sigmoid(x):
    return 1 / (1 + np.exp(-x))

不管输入信号有多小,或者有多大,输出信号都在0到1之间

为了发挥叠加层所带来的有事,激活函数必须使用非线性函数

ReLU函数

ReLU函数在输入大于0 时,直接输出该值;在输入小于等于0 时,输出0

python 复制代码
def relu(x):
    return np.maximum(0, x)

使用np.dot计算矩阵的点积

关于输出层的激活函数

分类问题是数据属于哪一个类别的问题,而回归问题是根据某个输入预测一个(连续的)数值的问题

需要根据情况改变输出层的激活函数。回归问题用恒等函数,分类问题用softmax 函数

softmax函数

python 复制代码
def softmax(a):
    c = np.max(a)
    exp_a = np.exp(a - c) # 溢出对策
    sum_exp_a = np.sum(exp_a)
    y = exp_a / sum_exp_a
        return y

softmax函数的输出是0.0 到1.0之间的实数。并且,softmax函数的输出值的总和是1

因为有了这个性质,我们才可以把softmax 函数的输出解释为"概率"

输出层的神经元数量需要根据待解决的问题来决定。对于分类问题,输出层的神经元数量一般设定为类别的数量

输入数据的集合称为批,通过批处理可以实现计算机高速运算

sigmoid函数和softmax函数的区别和联系

多标签分类任务使用softmax函数

二分类任务使用sigmoid函数

相关推荐
慕木沐4 小时前
【Spring AI + Google ADK 】流式输出时 outputKey 状态缓存失败的问题
人工智能·spring·缓存
wuhanzhanhui4 小时前
智能工厂升级新风口,2026武汉智能工业自动化及机器人展览会引领未来
人工智能
云烟成雨TD4 小时前
Agent Scope Java 2.x 系列【4】模型层
java·人工智能·agent
dozenyaoyida4 小时前
AI与大模型新闻日报 | 2026-06-12
人工智能·ai·大模型·新闻
Blb1236544 小时前
技术解析-固体绝缘材料表面电阻率测试
人工智能·功能测试·制造·材料工程
云淡风轻~窗明几净4 小时前
角谷猜想的任意算法测试
数据结构·人工智能·算法
SaaS_Product4 小时前
同步盘操作教程:如何自动同步文件
人工智能·云计算·saas·onedrive
Z-D-K4 小时前
考验AI的“自我和意识“-AI对《红楼梦》后40回的改写(21)
人工智能·ai·aigc·交互·agi
CIO_Alliance4 小时前
API激增时代,如何用iPaaS实现API全生命周期治理
人工智能·ai·ipaas·系统集成·企业ai化转型
云烟成雨TD5 小时前
Agent Scope Java 2.x 系列【5】智能体抽象层
java·人工智能·agent