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

前言

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

一、神经网络结构

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

二、权重和激活函数

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

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

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

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

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

三、注意

  • 1、设计一个神经网络时,输入层与输出层的节点数往往是固定的;中间层(隐藏层)则可以自由指定,较好的方法就是预先设定几个可选值,通过切换这几个值来看整个模型的预测效果,选择效果最好的值作为最终选择。
    • 输入层的节点数:与特征的维度匹配
    • 输出层的节点数:与目标的维度匹配
  • 2、神经网络结构图中的拓扑与箭头代表着预测过程时数据的流向,跟训练时的数据流有一定的区别;
  • 3、结构图里的关键不是圆圈(代表"神经元"),而是连接线(代表"神经元"之间的连接)。每个连接线对应一个不同的权重(其值称为权值),这是需要训练得到的
相关推荐
老兵发新帖20 小时前
LlamaFactory能做哪些?
人工智能
2202_7567496920 小时前
LLM大模型-大模型微调(常见微调方法、LoRA原理与实战、LLaMA-Factory工具部署与训练、模型量化QLoRA)
人工智能·深度学习·llama
人有一心20 小时前
深度学习中显性特征组合的网络结构crossNet
人工智能·深度学习
机器之心20 小时前
用光学生成图像,几乎0耗电,浙大校友一作研究登Nature
人工智能·openai
苏苏susuus20 小时前
NLP:Transformer之self-attention(特别分享3)
人工智能·自然语言处理·transformer
猫天意20 小时前
【目标检测】metrice_curve和loss_curve对比图可视化
人工智能·深度学习·目标检测·计算机视觉·cv
山烛21 小时前
OpenCV:图像透视变换
人工智能·opencv·计算机视觉·图像透视变换
艾醒(AiXing-w)21 小时前
探索大语言模型(LLM):Ollama快速安装部署及使用(含Linux环境下离线安装)
linux·人工智能·语言模型
月小水长21 小时前
大模型接入自定义 MCP Server,我开发了个免费使用的基金涨跌归纳和归因分析的 Agent
人工智能·后端
咏方舟【长江支流】21 小时前
AI+华为HarmonyOS开发工具DevEco Studio详细安装指南
人工智能·华为·移动开发·harmonyos·arkts·deveco studio·长江支流