第三章 神经网络

神经网络结构

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

神经网络与感知机的差异

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

神经网络中使用的是平滑变化的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函数

相关推荐
一切尽在,你来9 分钟前
1.1 AI大模型应用开发和Langchain的关系
人工智能·langchain
Coder_Boy_16 分钟前
基于Spring AI的分布式在线考试系统-事件处理架构实现方案
人工智能·spring boot·分布式·spring
Light6030 分钟前
智链未来:彭山物流园区从物理基建到数据智能体的全维度构建方案
人工智能·系统架构·数字孪生·智慧物流·实施路径·彭山项目
AI资源库33 分钟前
GLM-4.7-Flash模型深入解析
人工智能·语言模型
一切尽在,你来1 小时前
1.2 LangChain 1.2.7 版本核心特性与升级点
人工智能·langchain
LYFlied1 小时前
AI大时代下前端跨端解决方案的现状与演进路径
前端·人工智能
深蓝电商API1 小时前
图片验证码识别:pytesseract+opencv入门
人工智能·opencv·计算机视觉·pytesseract
.Katherine௰1 小时前
AI数字人模拟面试机器人
人工智能
光影少年1 小时前
AI 前端 / 高级前端
前端·人工智能·状态模式
zhangshuang-peta1 小时前
OpenCode vs Claude Code vs OpenAI Codex:AI编程助手全面对比
人工智能·ai agent·mcp·peta