自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 Python训练打卡DAY51

【代码】Python训练打卡DAY51。

2025-07-11 14:46:32 214

原创 Python训练打卡DAY50

DAY50:预训练模型+CBAM模块。一、观察resnet内部结构。针对预训练模型的训练策略。CBAM放置位置的思考。二、CBAM的放置位置。resnet结构解析。

2025-07-10 21:15:35 241

原创 Python训练打卡DAY49

CBAM 是一种能够集成到任何卷积神经网络架构中的注意力模块。它的核心目标是通过学习的方式,自动获取特征图在通道和空间维度上的重要性,进而对特征图进行自适应调整,增强重要特征,抑制不重要特征,提升模型的特征表达能力和性能。CBAM 由两个主要部分组成:通道注意力模块(Channel Attention Module)和空间注意力模块(Spatial Attention Module)。通道注意力(Channel Attention):分析 “哪些通道的特征更关键”(如图像中的颜色、纹理通道)。

2025-07-09 21:57:02 752

原创 Python训练打卡DAY48

在 PyTorch 中,torch.randn()是一个常用的随机张量生成函数,它可以创建一个由标准正态分布(均值为 0,标准差为 1)随机数填充的张量。PyTorch 的广播机制(Broadcasting)是一种高效的张量运算特性,允许在不同形状的张量之间执行元素级操作(如加法、乘法),而无需显式扩展或复制数据。- 一维扩展:若其中一个张量在某一维度上大小为 **1**,则该维度会被扩展为另一个张量对应维度的大小。3. 维度补全规则:若一个张量的维度少于另一个,则在其**左侧补 1** 直至维度数匹配。

2025-07-08 21:17:37 287

原创 Python训练打卡DAY47

DAY47:注意力热图可视化。

2025-07-07 21:04:22 133

原创 Python训练打卡DAY46

什么是注意力:注意力家族,类似于动物园,都是不同的模块,好不好试了才知道。不同CNN层的特征图:不同通道的特征图。DAY46:通道注意力(SE注意力)通道注意力:模型的定义和插入的位置。通道注意力后的特征图和热力图。三、通道注意力的定义。四、通道注意力的插入。

2025-07-06 21:24:23 303

原创 Python训练打卡DAY45

tensorboard在cifar上的实战:MLP和CNN模型。DAY45:TensorBoard使用介绍。tensorboard的发展历史和原理。tensorboard的常见操作。一、cifa-10 MLP实战。二、cifa-10 CNN实战。

2025-07-05 20:11:05 180

原创 Python训练打卡DAY44

预训练代码实战:resnet18。DAY44:预训练模型。图像预训练模型的发展史。常见的分类预训练模型。

2025-07-04 20:35:19 157

原创 Python训练打卡DAY43

Dataset类的__getitem__和__len__方法(本质是python的特殊方法)dropout操作:训练阶段随机丢弃神经元,测试阶段eval模式关闭dropout。batch归一化:调整一个批次的分布,常用与图像数据。展平操作:除第一个维度batchsize外全部展平。彩色和灰度图片测试和训练的规范写法:封装在函数中。特征图:只有卷积操作输出的才叫特征图。batchisize和训练的关系。hook函数的模块钩子和张量钩子。图像数据的格式:灰度和彩色数据。卷积神经网络定义的写法。

2025-07-03 20:11:03 125

原创 Python训练打卡DAY42

在hook中常常用到lambda函数,它是一种匿名函数(没有正式名称的函数),最大特点是用完即弃,无需提前命名和定义。其中回调函数作为参数传入,所以在定义的时候一般用callback来命名,在 PyTorch 的 Hook API 中,回调参数通常命名为 hook。- `register_full_backward_hook`:用于在完整的反向传播过程中监听张量的梯度(PyTorch 1.4+)Grad-CAM 的核心思想是:通过反向传播得到的梯度信息,来衡量每个特征图对目标类别的重要性。

2025-07-02 20:23:38 978

原创 Python训练打卡DAY41

在图像数据预处理环节,为提升数据多样性,可采用数据增强(数据增广)策略。该策略通常不改变单次训练的样本总数,而是通过对现有图像进行多样化变换,使每次训练输入的样本呈现更丰富的形态差异,从而有效扩展模型训练的样本空间多样性。2. 像素变换:如修改颜色、亮度、对比度、饱和度、色相、高斯模糊(模拟对焦失败)、增加噪声、马赛克。此外,在数据极少的场景长,常常用生成模型来扩充数据集,如GAN、VAE等。只需要定义卷积核大小、输入通道数、输出通道数、步长四个参数。1. 几何变换:如旋转、缩放、平移、剪裁、裁剪、翻转。

2025-07-01 18:42:20 168

原创 python训练打卡DAY40

dropout操作:训练阶段随机丢弃神经元,测试阶段eval模式关闭dropout。展平操作:除第一个维度batchsize外全部展平。彩色和灰度图片测试和训练的规范写法:封装在函数中。DAY40:训练和测试的规范写法。一、单通道图片的规范写法。二、彩色图片的规范写法。

2025-06-30 21:18:56 267

原创 Python训练打卡DAY39

3、模型定义与batchsize的关系。batchisize和训练的关系。图像数据的格式:灰度和彩色数据。DAY39:图像数据与显存。二、图像相关神经网络。1、定义黑白图像模型。2、定义彩色图像模型。

2025-06-29 11:58:46 189

原创 Python打卡DAY38

样本的预处理逻辑(如裁剪、翻转、归一化等,通常通过`transform`参数实现)。Dataset类:告诉程序去哪里找数据,如何读取单个样本,以及如何预处理。- 原始数据的读取方式(如图像解码为PIL对象、文本读取为字符串)。- 返回值格式(如`(image_tensor, label)`)。- 数据存储路径/来源(如文件路径、数据库查询)。- 是否打乱数据顺序(`shuffle`)。- 批量大小(`batch_size`)。2、_len_方法:返回对象中元素的数量。一、Dataset类。

2025-06-28 19:40:39 381

原创 Python打卡DAY37

2、 每 200 轮训练执行一次判断:比较当前损失与历史最佳损失。- 若计数器达到最大容许的阈值patience,则停止训练。- 若当前损失更高或相等,计数器加 1。1、首先初始一个计数器counter。- 若当前损失更低,保存模型参数。DAY37:早停策略和模型权重的保存。一、判断是否过拟合(使用CPU)三、应对过拟合情况——早停策略。二、模型的保存和加载。

2025-06-27 15:04:57 253

原创 Python打卡DAY36

DAY36:复习日恩师。

2025-06-24 19:04:11 937

原创 Python打卡DAY35

2、torchsummary库的summary方法。3、torchinfo库的summary方法。一、回顾使用神经网络在GPU上训练模型过程。1、nn.model自带的方法。DAY35:模型可视化与推理。二、模型结构可视化方法。

2025-06-23 09:21:27 350

原创 Python打卡DAY34

1. 直接不打印训练过程的loss了,但是这样会没办法记录最后的可视化图片,只能肉眼观察loss数值变化。2. 每隔200个epoch保存一下loss,不需要20000个epoch每次都打印。DAY34:GPU训练及类的call方法。2、带参数的_call_方法。1、不带参数的call方法。4、定义损失函数和优化器。二、用GPU训练模型。3、设计神经网络结构。四、_call_方法。

2025-06-22 22:37:26 279

原创 Python打卡DAY33

2、简单的神经网络模型分成三层:输入层、隐藏层、输出层。DAY33:MLP神经网络的训练。1、数据的导入与划分数据集。2、数据预处理(归一化)1、定义损失函数和优化器。一、检查cuda的安装。

2025-06-21 09:44:01 260

原创 Python打卡DAY32

3. 官方文档:https://pdpbox.readthedocs.io/en/latest/1. GitHub 仓库:https://github.com/SauceCat/PDPbox。2. PyPI 页面:https://pypi.org/project/PDPbox/3、进入官方文档,选择图绘制,导入包。2、划分训练集和测试集、训练模型。4、实例化TargetPlot。DAY32:官方文档的阅读。

2025-06-20 09:59:33 233

原创 Python打卡DAY31

命名参考:`preprocess.py` 、`data_cleaning.py` 、`data_transformation.py`- 命名参考:`eda.py` 、`visualization_utils.py`- 命名参考:`load_data.py` 、`data_loader.py`- 命名参考:`predict.py` 、`inference.py`3、数据预处理:处理缺失值、异常值,进行标准化、归一化、编码等操作。- 命名参考:`model.py` 、`train.py`

2025-06-19 22:40:59 340

原创 Python打卡DAY30

3、非标准导入——导入整个库。二、导入自定义模块/库的方式。DAY30:模块和库的导入。1、标准导入:导入整个库。2、从库中导入特定项。

2025-06-18 09:41:43 341

原创 Python打卡DAY29

DAY29:复习日:类的装饰器。

2025-06-17 03:14:42 240

原创 Python打卡DAY28

DAY28:类的定义和方法。

2025-06-15 22:29:15 145

原创 Python打卡DAY27

DAY27:函数专题2:装饰器。

2025-06-14 12:29:30 207

原创 Python打卡DAY26

DAY26:函数专题1:函数定义与参数。

2025-06-11 22:43:24 250

原创 Python打卡DAY25

9、文件未找到错误FileNotFoundError:打开不存在的文件。10、导入错误ModuleNotFoundError:导入不存在的模块。3、类型错误TypeError:对不支持该操作的数据类型执行操作。7、属性错误AttributeError:访问不存在的属性或方法。2、名称错误NameError:使用未被定义的变量名、函数名等。5、索引错误IndexError:找序列中不存在的索引。4、值错误ValueError:值不合适或无效。6、键错误KeyError:访问不存在的键。DAY25:异常处理。

2025-06-09 23:16:45 193

原创 Python打卡DAY24

包括序列类型(列表、元组、字符串、范围)、集合类型、字典类型、文件对象、生成器、迭代器本身。1、OS是系统内置模块,无需安装。3、获取当前工作目录下的文件列表。2、元组的索引/切片/长度获取。6、os.walk用于访问目录。5、迭代字典的键、值、键值对。DAY24:元组和OS模块。2、获取当前工作目录。4、将两数据拼接起来。

2025-06-09 23:16:14 190

原创 Python打卡DAY23

2、构建ColumnTransformer接收一个 transformers 列表,每个元素是 (名称, 转换器对象, 列名列表)ColumnTransformer和Pipeline类。一、导入Pipeline和相关预处理工具。1、将不同列分类并定义对应的预处理步骤。四、使用pipeline进行训练和评估。DAY23:pipeline管道。二、分离特征和标签,划分数据集。3、构建完整pipeline。三、构建pipeline。转化器和估计器的概念。

2025-06-06 08:00:00 336

原创 Python打卡DAY22

4、特征筛选算法(方差筛选、皮尔逊相关系数、lasso、树模型、shap值、递归特征消除RFE)5、特征降维算法(奇异值SVD分解、PCA、t-SNE、LDA)2、聚类算法(Kmeans、DBSCAN、层次聚类)3、推断聚类后簇的含义(先选特征/后选特征)

2025-06-05 08:00:00 118

原创 Python打卡DAY21

通常保留方差大的方向(未必是有用的),在分类任务中,通常LDA比PCA有用。一、无监督降维(有特征数据本身即可)——PCA。三、有监督降维算法——线性判别分析LDA。二、无监督降维——t-SNE。DAY21:特征降维算法。2、PCA降维并测试。

2025-06-04 08:00:00 262

原创 Python打卡DAY20

推荐系统:在协同过滤算法中,用户-物品评分矩阵通常是稀疏且高维的。SVD (或其变种如 FunkSVD, SVD++) 可以用来分解这个矩阵,发现潜在因子 (latent factors),从而预测未评分的项。数据重构:比如重构信号、重构图像(可以实现有损压缩,k 越小压缩率越高,但图像质量损失越大)降噪:通常噪声对应较小的奇异值。通过丢弃这些小奇异值并重构矩阵,可以达到一定程度的降噪效果。对训练集进行SVD降维并进行模型训练,对测试集应用相同的降维方法。DAY20:奇异值SVD分解。

2025-06-03 08:00:00 309

原创 Python打卡DAY19

1、方差筛选:计算一个特征的方差,方差小的说明变化不大,可能对结果影响不大,因此去掉(有可能去掉变化不大但有意义的特征值)需要设定一个阈值,方差越过这个阈值的去掉。3、lasso筛选:结合特征筛选和模型训练,在进行线性回归的同时,通过引入L1正则化,将一些不重要的回归系数强压到0(lasso可以自动筛选出对结果有贡献的特征)2、皮尔逊相关系数筛选:计算每个特征与标签的相关系数(-1,1),绝对值越大,说明相关性越大;6、递归特征消除RFE:通过递归逐步消除不重要的特征,逐步缩小特征集。

2025-06-02 08:00:00 415

原创 Python打卡DAY18

2、后选特征:最开始用全部特征聚类,根据得到的簇类做重要性分析,再得出重要的特征。2、绘制各个簇前四个重要特征的分布,以簇0为例。1、先选特征:最开始就选好用来定义簇的特征;推断簇含义的2个思路:先选特征和后选特征。科研逻辑闭环:通过精度判断特征工程价值。通过可视化图形借助ai定义簇的含义。(2)用全部数据训练随机森林模型。(3)用shap做特征重要性分析。(1)筛选出标签列和特征列。1、筛选出每个簇的数据。

2025-06-01 08:00:00 203

原创 Python训练打卡DAY17

聚类常见算法:kmeans聚类、dbscan聚类、层次聚类。2、DBSCANS聚类算法。DAY17:常见聚类算法。1、Kmeans聚类算法。

2025-05-31 08:00:00 204

原创 Python训练打卡DAY16

numpy数组的创建:简单创建、随机创建、遍历、运算。7、创建一个2*2的随机数组c,区间为[0,1)numpy数组的索引:一维、二维、三维。4、创建一个2行3列的全零数组并打印。5、创建一个形状为(3,)的全1数组。DAY16:数组的常见操作和形状。1、导入数组操作所用包numpy。6、创建一个从1到10的数组。2、创建并打印一个一维数组。3、创建并打印一个二维数组。SHAP值的深入理解。

2025-05-30 08:00:00 218

原创 Python训练打卡DAY15

3、调参后用模型训练(贝叶斯算法、网格搜索)4、筛选连续性变量和离散型变量。1、未调参的随机森林等模型训练。

2025-05-29 08:00:00 184

原创 Python训练打卡DAY14

DAY14:shap图的绘制。4、shap特征重要性条形图。5、shap特征重要性蜂巢图。1、导入shap相关包。

2025-05-28 08:00:00 155

原创 Python训练打卡DAY13

1、修改权重:模型训练时会侧重多数样本数据,通过设置算法的参数(class_weight='balanced'),将少数样本的参考权重提高;2、过采样——Smote过采样:根据少数类样本合成新数据加入数据集中。利用未调参的随机森林模型进行训练得出用于对比的结果。重新训练观察训练结果,和未调整的数据集训练做对比。不平衡数据集的处理策略:过采样、修改权重、修改阈值。2、修改阈值:模型评估时,调整模型输出规则。:复制数量少的数据加入到数据集中。DAY13:不平衡数据的处理。

2025-05-27 08:00:00 313

原创 Python打卡DAY12

三种启发式算法的示例代码:遗传算法、粒子群算法、退火算法。学习优化算法的思路(避免浪费无效时间)DAY12:启发式算法(找最优参数)2、粒子群算法更新参数。1、遗传算法更新参数。3、退火算法更新参数。

2025-05-26 08:00:00 182

空空如也

空空如也

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

TA关注的人

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