《深度学习》—— 神经网络基本结构

前言

深度学习 是一种基于神经网络机器学习算法,其核心在于构建由多层神经元组成的人工神经网络,这些层次能够捕捉数据中的复杂结构和抽象特征。神经网络通过调整连接各层的权重,从大量数据中自动学习并提取特征,进而实现预测或分类等任务。

一、神经网络结构

  • 神经网络的基本组成包括输入层、隐藏层和输出层。
    • 输入层:接收外部数据输入,每个节点(神经元)代表数据的一个特征。
    • 隐藏层 :神经网络中的中间层,可能有一个或多个。每个隐藏层由若干神经元组成,每个神经元接收前一层所有神经元的输出,经过权重和偏置的线性组合 后,通过激活函数处理产生输出。
    • 输出层 :产生神经网络的最终输出,输出节点的数量取决于问题的类型。例如,在分类问题中,输出层的节点数通常等于类别的数量
  • 如下图所示:

二、权重和激活函数

  • 权重(Weights):权重是神经网络中连接神经元(节点)的参数的集合。在神经网络的前向传播过程中,权重与输入数据相乘(并可能加上一个偏置项bias),然后将结果传递给激活函数。权重在网络的学习过程中(即训练过程中)会被更新,以最小化网络的实际输出与期望输出之间的差异。

    • 初始化:在开始训练之前,权重通常会被初始化为小的随机数,以避免网络陷入局部最优解或训练过程中的数值问题。
    • 学习:在训练过程中,通过反向传播算法和某种优化算法(如梯度下降)来更新权重。权重更新的目的是最小化网络的损失函数。
  • 激活函数(Activation Functions) :激活函数是神经网络中神经元的一种非线性变换函数,用于将神经元的输入(即加权和)映射到输出。激活函数的作用是引入非线性因素,使得神经网络能够学习和表示复杂的数据模式。

  • 所以神经网络的本质其实是:通过参数与激活函数来拟合特征与目标之间的真实函数关系

  • 下面是加权求和的推到过程和神经网络实现的过程图:

    • 这里的每个连接上的w值就是权重的值
    • 每个特征值与各自连接上的权重值相乘再求和便是加权和
    • 加权和的结果传输给每个神经元,再映射到神经元中的激活函数中,得到输出结果
    • 实际上如果只有单个的神经元,那么这样的实现过程与线性回归的过程基本一致
    • 当我们在输入层和输出层中加入隐藏层,引入多个神经元,则可以实现多维度的非线性回归和分类问题

三、注意

  • 1、设计一个神经网络时,输入层与输出层的节点数往往是固定的;中间层(隐藏层)则可以自由指定,较好的方法就是预先设定几个可选值,通过切换这几个值来看整个模型的预测效果,选择效果最好的值作为最终选择。
    • 输入层的节点数:与特征的维度匹配
    • 输出层的节点数:与目标的维度匹配
  • 2、神经网络结构图中的拓扑与箭头代表着预测过程时数据的流向,跟训练时的数据流有一定的区别;
  • 3、结构图里的关键不是圆圈(代表"神经元"),而是连接线(代表"神经元"之间的连接)。每个连接线对应一个不同的权重(其值称为权值),这是需要训练得到的
相关推荐
劲墨难解苍生苦2 分钟前
spring ai alibaba mcp 开发demo
java·人工智能
程序员霸哥哥19 分钟前
从零搭建PyTorch计算机视觉模型
人工智能·pytorch·python·计算机视觉
草莓熊Lotso34 分钟前
Linux 基础开发工具入门:软件包管理器的全方位实操指南
linux·运维·服务器·c++·人工智能·网络协议·rpc
机器学习之心38 分钟前
MATLAB遗传算法优化RVFL神经网络回归预测(随机函数链接神经网络)
神经网络·matlab·回归
IT_陈寒44 分钟前
Vue 3性能优化实战:7个关键技巧让我的应用加载速度提升50%
前端·人工智能·后端
【赫兹威客】浩哥1 小时前
基于 YOLO11+PyQt6+OpenCV 的智能水果检测系统设计与实现
人工智能·opencv·计算机视觉
RPA机器人就用八爪鱼1 小时前
RPA:企业数字化转型的高效自动化利器
人工智能
程序员-小李1 小时前
基于PyTorch的动物识别模型训练与应用实战
人工智能·pytorch·python
掘金安东尼1 小时前
AI 生成代码,从 Copilot 到 Claude Code 的全景测评
人工智能
说私域1 小时前
基于开源链动2+1模式AI智能名片S2B2C商城小程序的赛道力构建与品牌发展研究
人工智能·小程序