自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(146)
  • 资源 (3)
  • 收藏
  • 关注

原创 一文读懂循环神经网络—门控循环单元

重置门负责筛选历史信息,帮助模型关注 "当前相关" 的历史内容。更新门负责平衡新旧信息,帮助模型在 "记忆" 和 "遗忘" 之间找到平衡点。

2025-07-15 19:43:36 781

原创 详解从零开始实现循环神经网络(RNN)

无隐状态网络:无记忆,无法处理序列依赖,适合静态数据(如图片分类)。RNN(有隐状态):通过隐状态 “记忆” 历史信息,专门用于序列数据(如文本、时间序列)。字符级语言模型:基于 RNN,通过前文字符预测下一个字符,核心是利用隐状态捕捉上下文。困惑度:评估模型预测能力的指标,值越小越好,直观反映模型对序列的 “理解程度”

2025-07-14 21:56:07 901

原创 一文读懂循环神经网络(RNN)—语言模型+读取长序列数据(2)

指的是对超出模型单次处理能力(或固定长度限制)的超长序列进行读取、拆分和预处理的过程。其。

2025-07-14 17:11:46 572

原创 一文读懂循环神经网络(RNN)—语言模型+n元语法(1)

仅考虑单个词元的概率,忽略词与词之间的依赖关系,假设每个词的出现是独立的。

2025-07-14 16:53:44 576

原创 一文读懂循环神经网络(RNN)—文本预处理

词表通过给每个词元分配唯一索引(如 “猫”→102,“dog”→305),将文本转换为数字序列(如 “猫追狗”→[102, 567, 305]),适配模型的输入要求。文本中可能包含大量生僻词(如专业术语、错别字),词表通常会过滤低频词(如出现次数少于 5 次的词),只保留高频词,从而控制词汇表大小(避免模型参数爆炸)。原始文本(或其他序列数据)分割成更小的、有意义的基本单位(称为 “词元”,Token)的过程。的集合,每个词元都会被分配一个唯一的整数索引,用于将文本转换为模型可理解的数字形式。

2025-07-14 15:28:43 571

原创 一文读懂循环神经网络(RNN)—序列模型+损失函数的详解

循环神经网络(Recurrent Neural Network, RNN)是一种专门处理序列数据的神经网络模型,其核心特点是引入 “记忆” 机制——网络在处理当前输入时,会结合之前的输入信息(即 “历史状态”),从而捕捉序列数据中的时序依赖关系。与传统的前馈神经网络(如 CNN、MLP)不同,RNN 的结构中存在循环连接隐藏层的输出不仅取决于当前输入,还取决于上一时刻的隐藏状态。这种设计使其天然适合处理具有时序性的数据(如文本、语音、时间序列等)。

2025-07-14 14:48:22 888

原创 一文读懂现代卷积神经网络—稠密连接网络(DenseNet)

稠密连接网络(Dense Convolutional Network,简称 DenseNet)是 2017 年由 Huang 等人提出的一种深层卷积神经网络,其核心创新是“稠密连接(Dense Connection)”:网络中的每个层都会与前面所有层直接连接,即第l层的输入是前l-1层的输出的拼接(而非简单相加)。核心结构稠密块(Dense Block):由多个卷积层组成,层间通过稠密连接融合特征。设第i层的输出为,则第l层的输入为前所有层输出的拼接:其中表示通道维度上的拼接,

2025-07-14 14:04:38 594

原创 一文读懂现代卷积神经网络—残差网络(ResNet)

ResNet 通过残差块让网络学习 “残差” 而非直接学习输出,使优化更简单 —— 当网络需要拟合恒等映射(即输入等于输出)时,只需让 \(F(x) = 0\) 即可,避免了复杂的参数调整。: 当网络深度增加时,跳跃连接允许模型 “选择” 是否使用中间层的输出(若中间层学习的残差为 0,则\(y = x\),相当于直接传递输入,避免过度拟合)。当输入通道数(3)与输出通道数(6)不同时,直接做残差连接(Y += X)会因维度不匹配而失败(Y 是 6 通道,X 是 3 通道,无法相加)。

2025-07-14 11:42:10 884

原创 一文读懂现代卷积神经网络—批量规范化层( BN)

批量规范化层是深度神经网络中一种用于稳定中间层输入分布的技术,由 Ioffe 和 Szegedy 在 2015 年提出。在网络训练时,对每一批次(Batch)数据的每个特征(或通道) 进行标准化处理,再通过可学习参数调整,避免标准化破坏特征的表达能力。假设某一层的输入为一批特征图,形状为计算批次统计量:对每个通道(共 C 个),计算该批次内所有元素的均值μ_B和方差σ_B²(即对 B 个样本的该通道所有 H×W 个像素求均值和方差)。(x_i 为该通道批次内的所有元素)标准化。

2025-07-14 08:56:01 581

原创 一文读懂现代卷积神经网络—含并行连结的网络(GoogLeNet)

核心思想将不同的卷积层通过并联的方式结合在一起,经过不同卷积层处理的结果矩阵在深度这个维度拼接起来,形成一个更深的矩阵。通过这种方式对网络的深度和宽度进行高效扩充,在提升深度学习网络准确率的同时防止过拟合现象的发生。结构特点多尺度卷积核:通常使用 1×1、3×3、5×5 等不同尺寸的卷积核,增加了网络对不同尺度的适应性。小卷积核(如 1×1)可捕捉精细细节并降维,大卷积核(如 3×3、5×5)有助于识别更广泛的结构或模式。降维操作:引入 1×1 卷积核对输入进行降维,减少运算量。

2025-07-14 07:48:22 687

原创 一文读懂现代卷积神经网络—网络中的网络(NiN)

代码解析实验结果

2025-07-13 20:03:55 825

原创 一文读懂现代卷积神经网络—使用块的网络(VGG)

连续使用 3 个 3×3 卷积核(感受野 7×7)等效于 1 个 7×7 卷积核,但参数量减少 3×(3×3) = 27 vs 7×7 = 49,且增加了非线性(更多 ReLU 层)。VGG 有多个版本(如 VGG11、VGG13、VGG16、VGG19),数字代表网络的层数(卷积层 + 全连接层)。: 预训练的 VGG 模型是计算机视觉领域最常用的特征提取器之一,尤其在数据有限的场景下。: 每个块的输出通道数翻倍(64→128→256→512),逐步提取更抽象的特征。VGG 的最大创新在于提出了。

2025-07-13 18:05:16 648

原创 一文读懂现代卷积神经网络—深度卷积神经网络(AlexNet)

是 2012 年由 Alex Krizhevsky、Ilya Sutskever 和 Geoffrey Hinton 提出的深度卷积神经网络(DCNN),它在当年的 ImageNet 大规模视觉识别挑战赛(ILSVRC)中以。:通过卷积和汇聚逐步减小空间尺寸(224→55→27→13→6),同时增加通道数(3→96→256→384→256): 为目标检测(R-CNN)、语义分割(FCN)、人脸识别等任务奠定基础,推动 AI 在医疗、自动驾驶等领域的应用。夺冠,大幅超越第二名(26.2%),

2025-07-13 17:24:27 594

原创 早期 CNN 的经典模型—卷积神经网络(LeNet)

参数共享是指在神经网络中,一组参数(权重)被应用于多个不同的输入位置。卷积核的参数共享每个卷积核(滤波器)的参数在整个输入图像上保持不变。例如,一个 5×5 的卷积核在扫描输入图像的所有位置时,使用的是同一组权重。跨通道的独立性不同卷积核的参数是独立的,但同一卷积核在不同位置的参数共享。例如,32 个卷积核会生成 32 个特征图,每个特征图使用各自独立的参数。

2025-07-13 16:42:33 427

原创 一文读懂卷积神经网络中的汇聚层

是与卷积层紧密配合的关键组件,主要用于,并减少后续层的计算量。

2025-07-13 15:26:05 562

原创 详解卷积神经网络中的多输入多输出通道

定义输入数据包含多个通道(例如彩色图像的 RGB 三通道)。每个通道有独立的卷积核集合,分别处理不同通道的信息。定义每个卷积层生成多个输出通道(也称为 “特征图”)。每个输出通道对应一组独立的卷积核,提取不同类型的特征。

2025-07-13 14:50:32 965

原创 一文讲懂填充与步幅

填充(Padding):控制输出尺寸,补充边缘信息,避免丢失,可以增加输出的高度和宽度。步幅(Stride):控制卷积核滑动步长,影响输出尺寸和计算效率,可以减小输出的高和宽。

2025-07-13 13:25:54 681

原创 一文读懂图像卷积层

二维互相关是 CNN 的 “眼睛”,通过滑动卷积核计算局部加权和,实现对输入数据的局部特征提取。参数共享:一个卷积核在输入的所有位置复用,大幅减少参数数量。局部连接:每个输出只依赖输入的局部区域,符合 “局部特征决定整体” 的视觉规律(如识别物体先看边缘、纹理)。

2025-07-13 12:26:14 570

原创 延后初始化+自定义层+读写文件

自定义层(Custom Layer)是指用户通过继承框架提供的基类(如 PyTorch 的nn.Module或 TensorFlow 的Layer),自己实现的具有特定功能的神经网络层。自定义层允许你封装复杂的计算逻辑,扩展框架原生功能,或实现特定领域的算法。复用性:将常用的计算模式封装为可复用的组件。灵活性:实现框架未提供的特殊运算(如自定义激活函数、复杂数学变换)。模块化:使模型结构更清晰,便于维护和调试。研究需求:在学术研究中快速验证新算法(如注意力机制、图神经网络等)。初始化(

2025-07-13 11:34:02 1016

原创 神经网络的层与块

层是神经网络中最基本的计算单元,实现特定的数学操作(如线性变换、卷积、激活函数等)。功能单一:通常只完成一种特定计算(如nn.Linear实现线性变换y = Wx + bnn.ReLU实现激活函数可复用性低:单个层一般不单独使用,需与其他层组合才能完成复杂任务。虽然 PyTorch 已有学习原理:理解 PyTorch 如何管理模块和参数。扩展功能:例如,添加日志记录、中间输出缓存等功能。简化接口:在特定场景下提供更简洁的 API。

2025-07-13 10:15:04 811

原创 实战Kaggle比赛:预测房价

iloc样本指的是数据集中的单个数据对象,代表一个具体的观测对象或实例。“谁 / 什么东西”。红色特征指的是描述样本的属性或变量,用于刻画样本的具体特点。“这个对象的什么属性”。蓝色例子:房屋A面积80㎡,房龄5年,3卧室,价格150万房屋B面积120㎡,房龄2年,4卧室,价格280万为什么选择线性回归?适用场景:房价预测是典型的回归问题,线性模型适用于初步建模和基准测试。简单高效:仅需学习一组权重和偏置,训练速度快,可解释性强(每个特征的权重直接反映其对房价的影响)。后续优化。

2025-07-13 09:14:35 891

原创 详解梯度消失和梯度爆炸(反向传播)?

梯度爆炸(Gradient Explosion)是深度学习中一种常见的优化问题,指在模型训练过程中,梯度(损失函数对参数的偏导数)的数值变得异常巨大,导致模型参数更新幅度过大,甚至超出合理范围,最终使模型无法收敛或性能严重下降。梯度爆炸的本质与表现在反向传播算法中,模型参数的更新依赖于梯度的计算。对于深层神经网络,梯度需要从输出层反向传播到输入层,过程中可能涉及多个矩阵乘法(或链式求导)。

2025-07-12 21:50:54 881

原创 从零开始实现暂退法(Dropout)来防止过拟合(完整+简洁代码)

简洁代码实验结果

2025-07-12 21:14:08 744

原创 从零开始实现权重衰减—高维线性回归(完整+简洁代码)

权重衰减可以通俗理解为给模型的 “参数重量” 做减法,防止它 “过度膨胀”。权重衰减(Weight Decay)是机器学习中常用的正则化技术,主要作用是防止模型过拟合,提升模型的泛化能力。其核心原理是通过对模型的权重参数施加惩罚,限制权重的大小,从而避免模型学习到训练数据中的噪声或冗余特征。

2025-07-12 18:11:24 840

原创 模型选择、欠拟合和过拟合——多项式回归

过拟合的核心矛盾:模型 “能力过剩”,数据集 “信息量不足”,导致模型 “钻牛角尖”。欠拟合的核心矛盾:模型 “能力不足”,数据集 “模式太复杂”,导致模型 “学不会”。

2025-07-12 17:04:52 917

原创 多层感知机的简洁实现

这是一个简单的3层神经网络结构,用于Fashion-MNIST图像分类任务。网络包含:1)Flatten层将28×28图像展平为784维向量;2)256个神经元的全连接层;3)ReLU激活函数;4)10个神经元的输出层。ReLU的加入使网络具备非线性能力,能学习复杂模式。实验使用交叉熵损失和SGD优化器进行训练。该结构实现了从图像输入到10分类输出的完整流程,相比线性模型具有更强的表达能力。

2025-07-12 15:17:28 737

原创 多层感知机的从零开始实现

神经网络初始化技巧:权重采用小随机数(如标准正态分布×0.01),避免神经元对称性问题和梯度爆炸;偏置初始化为0,让网络自主学习合适偏移。代码实现了一个双层全连接网络(784→256→10),使用ReLU激活函数和交叉熵损失,在Fashion-MNIST数据集上完成分类任务。关键点包括:参数初始化原理、设备一致性处理、评估模式切换,以及预测结果可视化展示。训练采用SGD优化器,10轮后达到约85%的测试准确率。

2025-07-12 13:11:24 237

原创 激活函数是什么?常用的激活函数:ReLU函数、sigmoid函数和tanh函数

第一个图展示 Sigmoid 函数本身的非线性特性(将输入映射到 (0,1) 区间);第二个图展示 Sigmoid 导数的分布特性(中间大、两边小,易导致梯度消失)。

2025-07-12 12:15:41 686

原创 softmax回归的简洁实现(API)

数据准备:使用 d2l 库的工具函数加载 Fashion-MNIST 数据集,批量大小设为 256模型结构:nn.Flatten():将 28×28 的图像展平为 784 维向量nn.Linear(784, 10):全连接层实现从输入到 10 个类别的线性变换权重初始化:通过init_weights函数将线性层的权重初始化为标准差 0.01 的正态分布。

2025-07-12 06:57:20 779

原创 softmax回归的从零开始实现

accuracy 是微观层面的工具,计算单个批次的正确预测数。evaluate_accuracy 是宏观层面的工具,基于 accuracy 计算整个数据集的准确率。两者结合实现了高效、模块化的模型评估流程。

2025-07-11 21:13:41 884

原创 图像分类Fashion-MNIST数据集

疑问见完整代码注解,详细解释了例如X和y为啥不同,如何分类等等?

2025-07-11 17:01:45 108

原创 线性回归的简洁实现(API)

通过标准正态分布随机生成特征矩阵 X。:根据线性模型 y = Xw + b 计算理论标签,再添加少量随机噪声使数据更接近真实场景。

2025-07-11 15:49:25 945

原创 线性回归的从零开始实现(详解部分疑问)

【代码】线性回归的从零开始实现(详解部分疑问)

2025-07-11 10:32:48 339

原创 如何用conda成功使用中文分词器jieba

利用pip install jieba来下载,如果使用conda install jieba会出现下载不成功的原因。使用activate 【name】切换到项目下。就可以成功使用jieba架包。

2023-02-17 08:30:44 339

原创 jvm虚拟机之类加载器子系统

隔离加载类修改类加载的方式扩展加载源防止源码泄露。

2022-08-06 05:00:00 245

原创 何为虚拟机?

由于跨平台性的设计,java的指令是根据栈来设计的栈:跨平台性、指令集小、指令多;执行性能比寄存器差虚拟机的启动Java虚拟机的启动是通过引导类加载器创建了一个初始类来完成的,这个类是由虚拟机的具体实现的。虚拟机的执行执行一个所谓Java程序其实就是执行一个叫作Java虚拟机的进程。...

2022-08-05 08:08:59 276

原创 安装nacos集群后遇到cpu爆红与负载爆红,如何解决?

以集群中的一个作为案例:名称为nacos3的。进入启动配置文件中,修改其中的配置如下:原来的配置如下:由于太大了,所以需要进行修改。更改后:

2021-05-31 12:05:08 792

原创 如何使用Nginx反向代理Nacos集群——笨方法

安装nginx镜像获取镜像安装docker之后,执行命令docker pull nginx查看镜像docker images启动容器docker run -d --name nginx -p 88:80 nginx使用nginx镜像启动一个容器实例run命令:创建一个新的容器并运行-d:后台运行–name nginx:–name选项为容器命名为nginx-p 88:80:端口映射,(实际端口):(容器内部端口),通过本机的实际端口访问容器内部端口,即这样设置后可

2021-05-29 17:21:08 1137

原创 Linux服务器使用docker安装 单机+集群nacos(笨办法)

需要做得准备:为避免不必要的麻烦,关闭服务器的防火墙安装docker https://www.cnblogs.com/dalaba/p/14759831.html安装 mysql 自己查吧(我用的是宝塔界面化的)1.安装单机版的nacos(参考:https://blog.csdn.net/jinxilongjxl/article/details/109718879参考:https://blog.csdn.net/qq_43532386/article/details/10513584

2021-05-28 21:58:16 481

原创 LeetCode题解java算法18. 四数之和

给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意:答案中不可以包含重复的四元组。示例 1:输入:nums = [1,0,-1,0,-2,2], target = 0输出:[[-2,-1,1,2],[-2,0,0,2],[-1,0,0,1]]示例 2:输入:nums = [], target = 0输出:[]提示

2021-05-21 09:07:30 201

python商城项目

(1)登录功能:主要实现用户通过登录界面进入信息管理系统,确保了一定的保密性。 (2)主界面功能:主要实现良好的人机交互界面,同时应具备与其它相关功能互联的功能。还要有注销用户,退出系统,备份和帮助等功能。再者,在保持功能稳定完善的情况下,使主窗体界面尽量美观,赏心悦目,增加可读性。 (3)商品信息管理功能:包括商品信息录入商品信息查询,新进商品,新增商品和更新商品的功能。 (4)VIP信息管理功能:包括VIP信息浏览,购物记录,注册VIP,查看修改VIP和注销VIP用户功能。 (5)商场人事管理功能:包括浏览员工信息,查询员工信息,注册员工信息,修改员工信息和注销员工信息功能。

2021-01-04

python-3.9.0a5-amd64.exe

python安装包,适合新学习者下载使用来进行检验你的学习效果,同时可以免除你的各种疑难问题的出现,想一想,不如敲一敲

2020-09-09

java-爱心宠物系统

功能需求:“爱心”宠物诊所的职员在工作中需要查阅和管理如下信息:诊所的兽医、客户以及客户的宠物。

2021-01-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除