问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

前馈神经网络 - 应用举例(Logistic回归、Softmax回归)

创作时间:
作者:
@小白创作中心

前馈神经网络 - 应用举例(Logistic回归、Softmax回归)

引用
CSDN
1.
https://m.blog.csdn.net/liruiqiang05/article/details/146019113

前馈神经网络是机器学习领域的重要模型之一,广泛应用于各种分类任务。本文通过Logistic回归和Softmax回归两个具体例子,深入浅出地介绍了前馈神经网络的基本原理和应用方法。

一、前馈神经网络的基本原理

1. "万能函数"的比喻

神经网络就像一个"变形工具箱"。想象你有一个工具箱,里面有无数种形状的积木(对应神经网络的神经元)。只要积木足够多、形状足够丰富(足够的神经元和层),你可以拼出任何你想要的形状(逼近任何函数)。

为什么是"万能"?通用近似定理证明,无论目标函数是曲线、波浪线还是更复杂的形状(如预测房价、识别猫狗图片的规律),只要神经网络足够大,总能组合出足够接近的"积木拼图"。

注意"某种程度"的限制:

  • 工具箱的"万能"是有条件的:需要足够多的积木(神经元)、正确的拼装方式(参数训练)、合适的工具类型(激活函数如ReLU/Sigmoid)。
  • 它不能解决所有问题(比如需要无限资源),但理论上能逼近任何"合理"的函数(数学上连续的函数)。

2. "复杂特征转换"

神经网络是"自动特征工程师"。传统机器学习需要人工设计特征(比如从图片中提取边缘、颜色直方图),而神经网络通过隐藏层的非线性计算,自动将原始输入(如像素)转换为更高级的特征(比如从边缘→纹理→物体部件→完整物体)。

举个栗子:假设你要识别手写数字"7":

  • 输入层:784个像素点(28x28的图片)。
  • 隐藏层:可能先检测"横线"、"竖线"、"拐角"等局部特征。
  • 更深层:组合这些局部特征,判断是否符合"7"的结构(比如顶部横线 + 中间斜线)。
  • 输出层:给出概率"这是7的概率是90%"。

关键点:神经网络不需要你告诉它"横线、竖线"是什么,而是通过训练自动发现这些特征。

3. "逼近复杂条件分布"

概率视角:神经网络可以模拟"概率规则"。条件分布指在给定输入数据X时,输出Y的概率分布。例如:

  • 输入一张图X,输出"是猫的概率为80%,是狗的概率为20%"。

神经网络如何逼近?通过Softmax输出层(分类任务)或概率建模(如回归+高斯分布),调整参数使得网络的输出分布尽可能接近真实数据的分布。

举个栗子:预测明天下雨的概率:

  • 输入X:今天的温度、湿度、气压。
  • 输出Y:下雨的概率(比如P(Y=下雨|X)=70%)。
  • 神经网络:通过训练,学习从X到Y的复杂关系(非线性条件分布)。

4. 神经网络的三层角色

角色
功能
类比
万能函数逼近器
拟合任意输入到输出的复杂映射关系
积木拼出任何形状
特征转换器
自动提取数据中的分层抽象特征
从像素→边缘→物体部件→完整物体
条件分布建模器
学习数据背后的概率规则
预测"可能性"而非绝对答案

5. 实际学习中的注意事项

  • 理论≠实践:定理只证明存在这样的网络,但找到正确的参数需要好的优化算法(如梯度下降)、足够的数据和合理的超参数。
  • "足够多神经元"的代价:网络过宽可能导致过拟合,实际中更倾向用"深度"网络(多层)而非无限宽的单一隐藏层。
  • 不要神话"万能":神经网络仍然受限于数据质量、训练方法和计算资源。

二、前馈神经网络使用Logistic回归、Softmax回归举例

给定一个训练样本 (𝒙, 𝑦),先利用多层前馈神经网络将 𝒙 映射到 𝜙(𝒙),然后 再将 𝜙(𝒙) 输入到分类器 𝑔(⋅),其中 𝑔(⋅) 为线性或非线性的分类器,𝜃 为分类器 𝑔(⋅) 的参数,𝑦̂ 为分类器的输出。特别地,如果分类器𝑔(⋅)为Logistic回归分类器或Softmax回归分类器,那么 𝑔(⋅) 也可以看成是网络的最后一层,即神经网络直接输出不同类别的条件概率 𝑝(𝑦|𝒙)。在前馈神经网络中,Logistic回归和Softmax回归主要用于输出层,用以完成分类任务。

(一)使用Logistic回归的前馈神经网络

例子1:垃圾邮件检测

  • 任务描述:判断一封邮件是否为垃圾邮件(0:正常邮件,1:垃圾邮件)。

  • 网络结构

  • 输入层:对邮件进行特征提取(如关键词频率、邮件长度等)。

  • 隐藏层:1-2层全连接层,采用ReLU激活函数。

  • 输出层:1个神经元,使用Sigmoid激活函数输出概率。

  • 工作流程

    1. 邮件的特征经过前馈网络逐层处理,最终得到一个值 z。
    2. 经过Sigmoid函数映射为 σ(z)。
    3. 如果 σ(z)≥0.5则预测为垃圾邮件,否则为正常邮件。
  • 训练过程:最小化预测概率与真实标签(0或1)的交叉熵。

例子2:疾病预测

  • 任务描述:根据患者的临床指标预测是否患有某种疾病(例如糖尿病,0:无糖尿病,1:有糖尿病)。

  • 网络结构

  • 输入层:接受患者的多个特征,如血糖水平、体重、年龄等。

  • 隐藏层:多层全连接网络,采用ReLU或Tanh激活函数提取特征。

  • 输出层:1个神经元,使用Sigmoid激活函数输出一个概率。

  • 工作流程

    1. 网络将输入特征通过前馈传递处理。
    2. 输出层计算线性组合 zz 并通过Sigmoid函数得到患病概率。
    3. 根据概率和设定的阈值(比如0.5或根据实际需求调整),判断是否预测患者患病。
  • 训练过程:最小化预测概率与真实标签(0或1)的交叉熵。

(二)使用Softmax回归的前馈神经网络

原理说明

对于多分类问题,前馈神经网络的输出层通常设置为与类别数相等的神经元。每个神经元计算一个线性组合 z_i = w_i^T a + b_i,然后通过Softmax函数转换为概率分布:

这样,输出层为每个类别提供一个概率,模型最终预测概率最大的类别。

例子1:手写数字识别(MNIST)

  • 任务描述:识别手写数字(0到9,共10个类别)。

  • 网络结构

  • 输入层:28×28像素的图像展平成784维向量。

  • 隐藏层:若干全连接层(或者卷积层+全连接层),采用ReLU激活函数。

  • 输出层:10个神经元,使用Softmax激活函数输出10个类别的概率分布。

  • 工作流程

    1. 图像经过隐藏层提取特征,最后传递到输出层。
    2. 输出层每个神经元计算 z_i,然后 Softmax 将这些 z_i 转换成概率 P(y=i∣x)。
    3. 网络选择概率最高的类别作为预测结果。
  • 训练过程:最小化预测分布与真实标签(One-Hot编码)的交叉熵。

例子2:新闻分类

  • 任务描述:将新闻文本分为多个类别,如政治、娱乐、体育、科技等。

  • 网络结构

  • 输入层:将文本数据通过词嵌入(Word Embedding)转换为向量。

  • 隐藏层:可以使用卷积神经网络(CNN)或循环神经网络(RNN)提取文本特征。

  • 输出层:设定神经元数目与新闻类别数相等,使用Softmax激活函数输出每个类别的概率。

  • 工作流程

    1. 文本输入经过嵌入层转换成向量,再通过CNN或RNN提取特征。
    2. 输出层对提取的特征进行线性变换,计算各类别的得分,并通过Softmax函数得到概率分布。
    3. 选择概率最高的类别作为新闻的最终分类。
  • 训练过程:最小化预测分布与真实标签(One-Hot编码)的交叉熵。

总结

  • Logistic回归用于二分类问题,在前馈神经网络中通常体现在输出层只有一个神经元,经过Sigmoid函数将线性组合映射为概率。
  • Softmax回归用于多分类问题,在前馈神经网络中输出层有多个神经元,通过Softmax函数将各神经元的线性组合转换为概率分布。

通过这两个例子,我们可以直观地理解前馈神经网络如何利用Logistic回归和Softmax回归来解决不同类型的分类问题,以及它们在网络结构中的具体应用。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号