当前位置: 首页 > news >正文

深度学习(3)神经网络

一、神经网络的层(Neural Network Layers)

1. 工作原理

        在神经网络(Neural Network)中,数据是逐层传递(feed-forward)的。每一层都会接收前一层的输出,经过加权、偏置和激活函数(activation function)计算后,再将结果传递给下一层。

        神经网络一般包含以下三类层次结构:

  • 输入层(Input Layer)

    • 接收原始输入数据(如图像像素、特征向量、数值型输入等)。

    • 输入层本身不进行任何计算,只负责将数据传递给下一层。

  • 隐藏层(Hidden Layers)

    • 每一层都会执行以下操作:

      其中:

      方括号中的上标 [l] 表示第几层,方便区分不同层的计算。

      • W[l]:第 l 层的权重矩阵(Weights)

      • b[l]:偏置(Bias)

      • a[l]:激活值(Activation),即该层的输出

      • σ:激活函数(Activation Function)

  • 输出层(Output Layer)

    • 最后一层神经元负责输出结果,例如分类概率或回归值。

    • 在分类任务中,常使用 SigmoidSoftmax 函数输出概率。

        有时在输出层之后,会增加一个“阈值处理(Thresholding)”步骤,比如当预测概率 ≥ 0.5 时,输出类别为 1,否则为 0。


二、更复杂的神经网络

        当神经网络的隐藏层数增多时,我们称之为 深度神经网络(Deep Neural Network, DNN)

注意: 计算网络层数时,不包括输入层
例如,一个包含两层隐藏层和一个输出层的网络,我们称它是一个 “2 层神经网络”

在每一层中,我们都会有对应的公式:

其中:

  • :输入层的特征向量;

  • :第一层隐藏层的输出;

  • :第二层隐藏层的输出;

  • 最后一层 :输出层的结果。

例如:

        层数增加可以让模型学习到更复杂的特征,但也会增加过拟合风险,需要配合正则化或 Dropout 控制模型复杂度。


三、向前传播的神经网络推理

        前向传播(Forward Propagation) 是神经网络进行“推理(inference)”的计算过程。
它的目标是:从输入出发,经过多层计算,得到最终预测结果。

流程如下:

  1. 输入层接收数据;

  2. 每一层执行线性计算 + 激活函数;

  3. 输出层得到预测值;

  4. 若是训练阶段,会将输出值与真实值计算损失函数(Loss)。

用公式表示:


四、代码示例:前向传播推理

下面通过一个简单示例来说明——预测咖啡烘焙质量

假设我们有两个输入特征:

  • 烘焙时间(Time)

  • 烘焙温度(Temperature)

目标是预测烘焙是否成功(输出一个概率)。

1.使用 TensorFlow 实现

import tensorflow as tf# 输入数据
x = tf.constant([[15.0, 180.0]])  # 时间、温度# 定义参数
W1 = tf.Variable([[0.1, 0.2],[0.3, 0.4],[0.5, 0.6]])
b1 = tf.Variable([[0.1, 0.1, 0.1]])W2 = tf.Variable([[0.7],[0.8],[0.9]])
b2 = tf.Variable([[0.2]])# 前向传播
a1 = tf.nn.relu(tf.matmul(x, W1) + b1)
y_hat = tf.sigmoid(tf.matmul(a1, W2) + b2)print("预测结果概率:", y_hat.numpy())

输出的概率值(例如 0.87)表示“烘焙成功”的可能性为 87%。

2.使用 PyTorch 实现

import torch
import torch.nn as nnx = torch.tensor([[15.0, 180.0]])# 定义两层神经网络
model = nn.Sequential(nn.Linear(2, 3),  # 输入层到隐藏层nn.ReLU(),nn.Linear(3, 1),  # 隐藏层到输出层nn.Sigmoid()
)# 前向传播
y_hat = model(x)
print("预测结果概率:", y_hat.item())

TensorFlow 与 PyTorch 的计算逻辑一致:输入 → 矩阵运算 → 激活函数 → 输出概率。


五、TensorFlow 中的数据处理

TensorFlow 的数据结构与 NumPy 十分类似,但有几个关键区别:

比较项NumPyTensorFlow
基本数据类型ndarraytf.Tensor
是否支持 GPU 运算
是否支持自动求导是(通过 tf.GradientTape
使用场景通用科学计算深度学习训练与推理

代码对比示例

import numpy as np
import tensorflow as tfa_np = np.array([[1, 2], [3, 4]])
a_tf = tf.constant([[1, 2], [3, 4]])print("NumPy 求和:", np.sum(a_np))
print("TensorFlow 求和:", tf.reduce_sum(a_tf))

输出结果类似,但 TensorFlow 的计算图可自动在 GPU 上执行,并支持反向传播。

        TensorFlow 是建立在计算图(Computation Graph)之上的框架,所有操作都能追踪梯度,用于模型训练。


六、总结(Summary)

  • 神经网络由输入层、隐藏层、输出层组成;

  • 每一层的输出是下一层的输入;

  • 层数计算时不包括输入层;

  • 前向传播是神经网络进行推理的核心过程;

  • TensorFlow 与 PyTorch 都能实现相同的前向计算逻辑;

  • TensorFlow 的张量(Tensor)与 NumPy 的数组类似,但具有 GPU 加速与自动求导优势。

http://www.dtcms.com/a/528587.html

相关文章:

  • FastAPI之 SQLAIchemy
  • [人工智能-大模型-70]:模型层技术 - 从数据中自动学习一个有用的数学函数的全过程,AI函数计算三大件:神经网络、损失函数、优化器
  • 网站开发最适合的浏览器wordpress下载页插件下载
  • EN 300-2006 欧松板(OSB)检测
  • 智能优化神经网络预测
  • 【Docker】镜像仓库
  • 2.Linux指令(三)
  • 【C++】哈希表:除留余散法和哈希桶的实现
  • 沧州网站运营自己做网站需要什么材料
  • PostgreSQL查不动?分区表+覆盖索引+物化视图的优化魔法了解下?
  • 多相CFD中的模型转换:Ansys Fluent中的从DPM到VOF和欧拉壁膜
  • 关于学校的网站模板免费下载高端网站建设磐石网络好
  • 在半导体制造中如何选择最佳的刻蚀方法?
  • 构建Django的Web镜像
  • 历史数据分析——锦江酒店
  • 做网站站怎么赚钱吗企业网站推广的收获与启示
  • 大厂硬件岗位笔试题库-卷11
  • 【操作系统】408操作系统核心考点精讲:第二章——进程的概念、组成与特征​
  • 基于脉冲神经网络的语音识别系统实现:识别“将榴弹从位置幺搬到位置两“命令
  • 破茧成蝶:全方位解析Java学习难点与征服之路
  • 江门网页建站模板aws 搭建wordpress
  • C语言:使用顺序表实现通讯录
  • 手机网站与app免费的网站平台有哪些
  • SQL186 对试卷得分做min-max归一化
  • 哪家开发app好有南昌网站优化公司
  • vue3 npm run dev局域网可以访问,vue启动设置局域网访问,
  • 网站建设续费催款通知书哈尔滨微信网站开发
  • NLP之Embedding:Youtu-Embedding的简介、安装和使用方法、案例应用之详细攻略
  • 做网站需要学哪些语言wordpress sina
  • Redis常见指令