- 博客(97)
- 收藏
- 关注
原创 Transformer
Sequence-to-sequence(简称 Seq2seq,序列到序列) 是一种深度学习的,核心逻辑是,输入和输出的长度可以不相等,输出长度由模型自主决定。它是解决 “输入输出均为可变长度序列” 这类问题的通用范式,,因此广泛成为自然语言处理(NLP)、语音处理等领域的核心框架。上述任务(语音识别、机器翻译、语音翻译、TTS、聊天机器人、问答系统)核心都围绕语言 / 语音序列的处理,因此绝大多数属于自然语言处理(NLP)或语音处理(Speech Processing,NLP 的交叉领域)。
2026-04-09 18:36:22
394
原创 图神经网络(GNN)
GNN 处理的图 (Graph) 是非欧几里得结构化数据,数学表示:现实生活中,图的应用广泛:GNN的设计用于解决三个主要问题:GNN主要的思路是 “消息传递及邻域聚合” ,即先每个节点生成初始特征向量,然后通过非线性变换聚合相邻节点的特征信息,迭代更新将拓扑结构融入自身特征向量,通过多层神经网络堆叠学习浅层及深层信息。它的设计原则如下:GNN 四大类核心任务,涵盖了绝大多数图学习场景:CNN是一套通用的局部特征提取范式,它只聚合局部邻域的信息,符合 “空间上相邻的元素相关性更高” 的物理规律,并且同一个卷
2026-04-05 19:57:53
414
原创 自注意力机制(Self-attention)
由多个向量组成、长度可变的输入数据,广泛存在于 NLP、语音、图结构等领域,核心特点是输入长度不固定。
2026-03-29 17:10:34
408
原创 循环神经网络(RNN)
对于自然语言处理这种的任务,一般的前馈网络只能单独处理每个词,没有记忆(即无法联系前后文进行语义理解),即前馈网络处理不了 “序列依赖”。<ap, app><Taipei><Ta, Tai><arrive><ar, arr>在训练一个能处理序列的模型时,通过将输入单词进行编码再喂给模型。在序列标注 / 槽填充 / 语言建模等分类任务中,通常用。
2026-03-27 20:13:46
469
原创 CNN经典神经网络架构
LeNet 是人类历史上第一个成功商用、真正落地的,也是现代所有 CNN(AlexNet、VGG、GoogLeNet、ResNet)的鼻祖。诞生之初是为了实现手写数字识别(银行支票、邮政编码)
2026-03-22 16:34:51
564
原创 卷积神经网络(CNN)与 STN
即卷积层提取的不同通道对应不同特征(比如通道 1 是 “边缘”、通道 2 是 “纹理”、通道 3 是 “颜色”),1×1 卷积能将这些分散在不同通道的特征融合成新的、更有意义的特征。最左侧的三个5X5矩阵分别是RGB图像的三个通道(各通道数值一般不同),其分别与三通道卷积核的三个通道(各通道参数数值可以设定)进行数乘滑动,最后相加得到一个通道的卷积结果。除此之外,一维卷积和三维卷积也是存在的,本质上是同一思想在不同维度数据上的扩展,它们都能提取对应维度的局部特征,只是适配的数据类型和场景不同。
2026-03-22 12:57:43
356
原创 对优化器的改进
本文章结合之前文章优化问题——局部最小值与鞍点-CSDN博客、自动调整学习率-CSDN博客的各种优化训练的方法,介绍实际工程中常用的优化器Adam,全称Adaptive Moment Estimation(自适应矩估计),它实际上就是结合了 SGD with Momentum(SGDM) 和 RMSProp 思想的自适应学习率优化器,既带惯性,又自适应学习率,是目前深度学习最常用、默认首选的优化器(自适应学习率优化器)。SGDM和RMSProp之前都已经学习过,这里将它们整合到一起,介绍一个完整的优化器Ad
2026-03-19 19:01:23
628
原创 自动调整学习率
当你的训练损失不再下降时,你可能是遇到了critical point的问题,但实际上更可能是遇到了学习率的问题。如下图所示,在损失很小时仍然有较大更新梯度,说明并不是critical point的问题,而是你的学习率在这种情况下过大而导致梯度在某个低点之上不断左右横移(如左图绿色箭头所示)如下实验数据所示(颜色越浅表示值越低,黄色叉号为最低点(最优位置),黑点为初始参数位置)。当学习率时可以明显看到图中的多条黑线,这表示参数经过每次的梯度下降操作后在上下陡坡间不断跳跃而无法收敛到最优位置;
2026-03-16 14:51:50
392
原创 优化问题——局部最小值与鞍点
实际上,我们觉得局部最小值很常见,是因为在二维、三维这种低维度空间内我们可以很容易可视化看到 曲线 / 曲面 “鼓起来又陷下去”,形成大量局部最小值。试想一下如果在二维空间内遇到了一个局部最小值,这意味着二维空间内它没有路达到最低点,但是如果此时将维度扩大到三维,那到达最低点的路就会增加很多,同样,如果三维空间内陷入局部最小值,那升至四维空间到达最低点的路又会多很多(只不过四维不可视,我们无法理解它是如何到达最低点的)。
2026-03-16 10:41:29
556
原创 机器学习基本步骤与模型优化思路
如果测试集上的损失也小,这是我们想要的,是一个比较好的模型。如果你对模型得到的测试集结果不满的话。并且检查得到模型在训练数据上的损失够小(如果你对模型得到的测试集结果不满的话。先检查模型在训练数据上的损失。对于如何解决optimization的方法,将在下一节说明。整个过程如下:拿到训练数据(Training Data)),那接下来就要看损失(loss)在测试集上的大小(放到测试数据(Testing Data),找到一个合适的损失函数。,然后利用梯度下降找到。后,拟定一个模型函数。
2026-03-14 11:10:10
372
原创 机器学习过程(分类)—— 模型构造与优化
假定模型为一个函数,如果带入使得:定义为,表示通过模型分类训练集错误的次数。上述的模型与损失函数在优化时没办法进行微分,也就没办法使用梯度下降,所以需要采取别的方法。
2026-03-12 20:42:24
397
原创 PyTorch实现卷积神经网络(CNN)
在之前的文章中,我们构建神经网络使用的都是全连接层(线性层),多个线性层串联连接起来称为全连接网络,如下所示:全连接层是将输入展平成一维向量,每个神经元和所有输入相连。卷积层是用,在输入数据(如图像、特征图)上,通过提取局部特征的神经网络层。这是是的核心。简单来说,它不是 “全连接” 那样把所有神经元乱连一通,而是。这可以保留图像的空间结构,并且参数更少(只有卷积核的几个参数)。对于单通道图片(如灰度图像),假设Input是5X5的特征数据,Kernel(卷积核)是3X3的(9个参数我们先随机指定)。
2026-02-11 17:04:40
657
原创 PyTorch实现多分类
我们以MNIST数据集为例实现多分类任务(MINST数据集共十个类别,即数字0~9)在之前实现多维特征输入的二分类问题时我们搭建的神经网络如下所示(每个样本都有8个特征,即):当要分类十个标签时,神经网络的最终输出就要有十个,每个输出代表是此种类别的概率(输出要满足分布条件,即满足最终输出是一个均大于0的概率值,并且和等于1):输入经过线性层和Sigmoid层之后输出的是一个在-1~1之间的值。要满足最终输出均为概率值(大于0),且和等于1,必须对最终的输出。
2026-02-10 20:16:35
834
原创 PyTorch加载数据集
实际开发中,你更多需要处理自有数据(如本地 CSV 文件、自定义图片集、文本文件),此时需要继承Dataset抽象类,并实现__init__
2026-02-10 14:40:44
708
原创 PyTorch实现二分类(多特征输出+多层神经网络)
对于神经网络而言,就是将网络层堆叠几次,使输入数据的维度不断降低或升高(下面的图片实例是维度不断下降)。如果你最终需要的输出是一个数值,那最终就需要降维到一维,如果最终你需要的输出是一个矩阵那就降维到二维。在此例中,一个样本输入的特征有8个,要训练出好的模型参数需要的样本数要远远大于8个,这里为了方便只给出了三个样本。是二维列表(矩阵),外层列表表示样本集,内层每个列表表示单个样本的特征,即表示输入三个样本,每个样本。,模型的输入也要能够接收输入的多个特征。的维度为1维(1个特征feature)。
2026-02-09 17:18:24
704
原创 PyTorch实现二分类(单特征输出+单层神经网络)
二分类问题的实现方法,核心是把线性回归的 “连续值输出” 改成 “0/1 类别概率输出”。最基础常用的二分类模型基于二分类本质上也是一种回归(Regression)问题,在上述线性回归的基础上修改就可以实现。
2026-02-08 19:05:20
518
原创 机器学习过程(线性回归)—— 模型构造与优化
以预测明日文章订阅量的任务(Regression,回归)为例。在此例中,机器学习的过程就是通过前几个月甚至几年的数据,机器找到一个函数能够预测明日的订阅情况,即第一步需要我们写出一个代表未知参数的函数式,简单来说就是先猜测一下这个能预测明日订阅情况的函数式。以最简单的线性形式为例(guess based on domain knowledge),我们假设这个式子是Loss称为损失函数,写作。它通过计算模型预测值和真实目标值(label)的差距,给函数的拟合效果打分(判断参数选择的好坏)。
2026-02-05 14:51:50
1180
原创 机器学习概述(概念+分类)
是让计算机从数据中自动学习规律、模式,无需人工逐条编写复杂规则,从而完成回归(Regression)、分类(Classification)、聚类(Cluster)等任务,并随数据增多不断优化性能的技术。自监督学习是无监督学习的重要分支,无需人工标注的标签数据,而是从数据自身的结构、关联、属性中自动构造监督信号(伪标签 / 代理任务),驱动模型学习数据的通用特征表示,是一种利用无标注数据做监督式训练的范式。(深度学习是机器学习的一部分,它要找的函数是由神经网络组成的)
2026-02-04 19:51:58
1083
原创 第九章:模拟接口技术
微机系统处理信号分为三类,分别为i数字信号,脉冲信号,模拟信号。微机系统监测的信号大多是随时间变化的模拟量,如温度、压力、流量、振动、速度等;很多控制对象也只能接收模拟信号。而微控制器只能接收和输出数字信号,所以模拟接口技术是微控制器监测和控制外部世界的主要通道,是微机数据采集系统和微机控制系统的重要组成部分。
2026-02-04 10:58:46
704
原创 第八章:人机接口技术
键盘接口技术人机接口是微控制器系统的重要组成部分,是实现人与微机系统信息交互的接口技术。人机交互的输入设备如键盘、拨码开关等,用于向微机系统输入命令和参数等;输出设备如段码式 LED、点阵式 LED、LCD 显示器等,用于显示微机系统的测量与处理结果以及状态信息。键盘接口技术键盘是微机系统中最常用的输入设备,用户通过键盘向微机系统输入命令、数据。键盘与微控制器的接口包括两部分。硬件是指键盘的组织,即键盘结构及其与 MCU 的连接方式,有独立式按键接口和行列式按键接口。
2025-12-20 12:48:33
1109
原创 第五章:中断系统
中断概念中断是通过硬件来改变 CPU 程序运行方向的一种技术,既和硬件有关,也和软件有关;先进的中断系统能提高 MCU 实时处理外界异步事件的能力。在微控制器执行程序过程中,由于内部或者外部的某种原因,要求 MCU 尽快停止正在运行的程序,转去执行其他的处理程序,待处理结束后,再回来继续执行被打断的原程序。这种程序在执行过程中,由于外界的原因而被打断的情况称为“中断”。中断相关的几个术语:“主程序”或“调用程序”是指原来运行的程序;“中断服务程序”是指中断之后执行的程序;“断点”
2025-12-18 13:38:12
1281
原创 第三章(3.1):8051指令系统与汇编程序设计---指令系统基础
微控制器具有的指令集合即为该微控制器的指令系统,指令系统中的每条指令对应有不同的机器代码,是由微控制器内核设计人员确定的,相同内核的微控制器具有相同的指令系统。寻址方式操作数 / 使用的寄存器寻址空间立即寻址程序存储器直接寻址direct内部 RAM 低 128 字节、特殊功能寄存器寄存器寻址R0~R7、AR0~R7、A寄存器间接寻址内部 RAM 的 256 字节外部 RAM变址寻址基址寄存器 DPTR、PC;变址寄存器 A程序存储器相对寻址PC + 偏移量 (rel)
2025-12-17 17:21:25
948
原创 第二章(2.5):微控制器8051的硬件结构---时钟、复位和MCU工作方式
微控制器的时钟为CPU和各个功能模块的协调工作提供同步信号和基本时序信号。
2025-12-16 16:22:37
905
原创 第二章(2.4):微控制器8051的硬件结构---引脚与I/O端口结构
P0~P3端口的每一位均由一个输出锁存D触发器、输出驱动电路组成。P0端口的输出驱动电路由两个场效应管T1、T2组成,作I/O接口使用时,内部控制T1截止,此时输出电路漏极开路,即为高阻态,所以作I/O接口使用时,需要外接上拉电阻,才能实现高、低电平的输出。P1~P3端口的输出驱动电路均由一个场效应管T2和一个内部上拉电阻Rp组成。P0~P3端口的每一位均有两个三态的数据输入缓冲器BUF1和BUF2,分别用于读锁存器数据和读引脚的输入缓冲。
2025-12-16 11:58:31
1503
原创 第二章(2.3):微控制器8051的硬件结构---内部总线与微控制器工作原理
MCU内部总线或称片内总线,是微控制器CPU与各功能模块之间传输信息的公共通道,包括数据总线DB(data bus)、地址总线AB(address bus)和控制总线CB(control bus)三类,分别用来传输数据、地址和控制信号。以CPU访问存储器为例,CPU通过地址总线、数据总线和控制总线的配合, 与存储器之间传输信息,如从存储器读取指令、数据;或将运算结果输出,写入存储器保存。(存储器由存储矩阵、地址译码器、读写控制(三态双向缓冲器)等部分组成),
2025-12-14 16:01:14
1006
原创 第二章(2.2):微控制器8051的硬件结构---半导体存储器(RAM、ROM)与存储系统
存储器是计算机中存放指令和数据的主要部件。其在计算机中的定位如下所示。存储器容量越大,能存储的信息越多。提高存储系统(存储系统是由多种类型的存储器构成)的访问速度,是提高计算机处理信息速度的重要措施。在计算机中,存储器可以分为主存储器、辅助存储器、寄存器存储器、高速缓冲存储器四个部分。寄存器存储器主要是CPU内部的多个寄存器构成,用于存放地址、数据以及运算的中间结果,存储速度极快,与CPU匹配,但容量极小;
2025-12-05 22:02:14
1632
原创 第一章:微机技术概述
通用微型计算机和专用微型计算机的核心区别在于设计的出发点和适用范围:前者追求广泛的适应性以处理多种任务,后者则专注于在特定任务上实现极致的性能或效率。特性维度通用微型计算机专用微型计算机,适合多种应用场景,为解决特定问题而设计硬件通用,软件丰富,可安装多种操作系统和应用软件软硬件紧密结合,常固化在系统中综合处理能力强,但在特定任务上效率可能非最优解决结构相对复杂,结构相对简单,个人电脑(台式机、笔记本)、服务器、工作站。
2025-10-31 14:57:53
779
原创 Apollo
百度 Apollo Cyber RT 是一个专为自动驾驶场景设计的高性能、开源运行时框架。它的核心目标是满足自动驾驶系统对高并发、低延迟和高吞吐量的严苛要求。Cyber RT 在 Apollo 自动驾驶平台中扮演着核心中间件的角色,负责管理各个功能模块(如感知、规划、控制)之间的通信、调度和协同工作。可以把它理解为一个专为自动驾驶场景设计的“神经系统”。
2025-09-26 11:25:21
1241
原创 --控制--
控制”是最终的执行环节。它接收“规划”层输出的指令(例如:“以30km/h的速度,沿当前车道中心线行驶,并在5秒后开始轻柔地向右变道”),并将其转化为车辆底盘执行机构(如油门、刹车、方向盘)能够理解和执行的具体动作。
2025-09-09 17:08:28
1306
原创 --规划--
规划是自动驾驶系统的“决策大脑”,它接收感知(Perception) 和定位(Localization) 模块提供的信息(例如:我在哪?周围有什么?它们在哪、移动速度多快?),然后生成一条让车辆能够安全、舒适、高效地从起点行驶到目标点的轨迹和速度指令。
2025-09-08 11:37:16
1052
原创 --预测--
在自动驾驶系统中,“预测”(Prediction)模块是确保安全的关键环节,其目标是对周围动态物体(主要是车辆、行人、骑行者等)未来的行为或运动轨迹进行预估。
2025-09-08 08:56:04
1354
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
3