【Python深度学习第二版】学习笔记之——神经网络

首先来说对于神经网络这几章看的很懵,虽然作者已经去掉了数学公式相关内容,讲得已经很想让读者容易理解了,奈何读完还是一知半解,下面就以我目前的理解简单记录一下吧,往后了解的多了再回头看一看。

一、张量运算

作者把张量运算比作神经网络的"齿轮",那么什么是张量呢?

神经网络的数据以张量的形式表示,即存储在多维 NumPy 数组中数据。

对于文本、时间序列、图片、视频数据,分别按不同阶张量表示。

二、双向传播算法

将训练集数据输入到输入层,经过隐藏层,最后达到输出层并输出结果,这是ANN的前向传播过程;

由于每一次训练的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层;在反向传播的过程中,根据误差调整各种参数的值;不断迭代上述过程,直至收敛。

这其中涉及到的一些知识点有 损失值、优化器、梯度下降。

  • 损失函数(目标函数)------在训练过程中需要将其最小化。它衡量的是当前任务是否成功。
  • 优化器------决定如何基于损失函数对神经网络进行更新。它执行的是随机梯度下降(SGD)的某个变体。
  • 指标 ------衡量成功的标准,在训练和验证过程中需要对其进行监控,如分类精度。与损
    失不同,训练不会直接对这些指标进行优化。因此,指标不需要是可微的。

三、术语表

  • 样本 (sample)或输入(input):进入模型的数据点。
  • 预测 (prediction)或输出(output):模型的输出结果。
  • 目标(target):真实值。对于外部数据源,理想情况下模型应该能够预测出目标。
  • 预测误差 (prediction error)或损失值(loss value):模型预测与目标之间的差距。
  • 类别(class):分类问题中可供选择的一组标签。举例来说,对猫狗图片进行分类时,"猫"和"狗"就是两个类别。
  • 标签(label):分类问题中类别标注的具体实例。如果 1234 号图片被标注为包含类别"狗",那么"狗"就是 1234 号图片的标签。
  • 真实值 (ground-truth)或标注(annotation):数据集的所有目标,通常由人工收集。
  • 二分类(binary classification):一项分类任务,每个输入样本都应被划分到两个互斥的类别中。
  • 多分类(multiclass classification):一项分类任务,每个输入样本都应被划分到两个以上的类别中,比如手写数字分类。
  • 多标签分类(multilabel classification):一项分类任务,每个输入样本都可以被分配多个标签。举个例子,一张图片中可能既有猫又有狗,那么应该同时被标注"猫"标签和"狗"标签。每张图片的标签个数通常是可变的。
  • 标量回归(scalar regression):目标是一个连续标量值的任务。预测房价就是一个很好的例子,不同的目标价格形成一个连续空间。
  • 向量回归(vector regression):目标是一组连续值(比如一个连续向量)的任务。如果对多个值(比如图像边界框的坐标)进行回归,那就是向量回归。
  • 小批量 (mini-batch)或批量(batch):模型同时处理的一小部分样本(样本数通常在 8 和 128 之间)。样本数通常取 2 的幂,这样便于在 GPU 上分配内存。训练时,小批量用于计算一次梯度下降,以更新模型权重。
相关推荐
寻星探路4 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
聆风吟º7 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
User_芊芊君子7 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
ValhallaCoder7 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
智驱力人工智能7 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
人工不智能5778 小时前
拆解 BERT:Output 中的 Hidden States 到底藏了什么秘密?
人工智能·深度学习·bert
猫头虎8 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
h64648564h8 小时前
CANN 性能剖析与调优全指南:从 Profiling 到 Kernel 级优化
人工智能·深度学习
心疼你的一切8 小时前
解密CANN仓库:AIGC的算力底座、关键应用与API实战解析
数据仓库·深度学习·aigc·cann
八零后琐话8 小时前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python