自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Day56 Python打卡训练营

在时序预测中,这种要求会更加苛刻,你设想一下,你可以制造一个随机的序列,然后让模型来学习,这注定也是不可能实现的。也就是说 数据本身要具备可预测性。一个完全随机的序列(学术上称为“白噪声”)是不可预测的。它的未来值与过去值没有任何相关性。任何模型试图从中学习规律,最终都只会是徒劳。什么叫做白噪声呢?均值为0方差恒定自相关性为0(即过去的值对未来的值没有影响)我们来生成一组随机序列# 中文显示设置。

2025-06-26 22:41:59 1081

原创 Day55 Python打卡训练营

我们之前接触到的结构化数据,它本身不具备顺序,我们认为每个样本之间独立无关,样本之间即使调换顺序,仍然不影响模型的训练。但是日常中很多数据是存在先后关系的,而他们对应的任务是预测下一步的值,我们把这个任务称之为序列预测。举个例子,比如有过去30天的股票价格,我们希望预测第31天的价格。比如之前的单车预测,有前60天的单车需求数据,希望预测后面20天的销量。或者文本,人的语言是有顺序的,预测下一个单词是这也是序列预测任务。

2025-06-26 22:33:17 1018

原创 Day54 Python打卡训练营

今天我们介绍inception,也就是GoogleNet传统计算机视觉的发展史从上面的链接,可以看到其实inceptionnet是在resnet之前的,那为什么我今天才说呢?因为他要引出我们后面的特征融合和特征并行处理这些思想。Inception 网络,也被称为 GoogLeNet,是 Google 团队在 2014 年提出的经典卷积神经网络架构。

2025-06-15 22:24:05 854

原创 Day53 Python打卡训练营

知识点回顾:对抗生成网络的思想:关注损失从何而来生成器、判别器nn.sequential容器:适合于按顺序运算的情况,简化前向传播写法leakyReLU介绍:避免relu的神经元失活现象ps;如果你学有余力,对于gan的损失函数的理解,建议去找找视频看看,如果只是用,没必要学作业:对于心脏病数据集,对于病人这个不平衡的样本用GAN来学习并生成病人样本,观察不用GAN和用GAN的F1分数差异。

2025-06-13 22:08:11 2031

原创 Day52 Python打卡训练营

知识点回顾:1.随机种子2.内参的初始化3.神经网络调参指南a.参数的分类b.调参的顺序c.各部分参数的调整心得。

2025-06-12 21:58:53 2064

原创 Day51 Python打卡训练营

通过优化CBAM模块、引入广播机制和调整训练策略,模型的验证集准确率预计从0.85提升至0.89-0.91,精度提升约4-6%。day43的时候我们安排大家对自己找的数据集用简单cnn训练,现在可以尝试下借助这几天的知识来实现精度的进一步提高。DAY 51 复习日。

2025-06-11 21:54:44 185

原创 Day50 Python打卡训练营

知识点回顾:1.resnet结构解析2.CBAM放置位置的思考3.针对预训练模型的训练策略a.差异化学习率b.三阶段微调现在我们思考下,是否可以对于预训练模型增加模块来优化其效果,这里我们会遇到一个问题预训练模型的结构和权重是固定的,如果修改其中的模型结构,是否会大幅影响其性能。其次是训练的时候如何训练才可以更好的避免破坏原有的特征提取器的参数。所以今天的内容,我们需要回答2个问题。

2025-06-10 23:09:07 2266

原创 Day49 Python打卡训练营

cbam注意力之前我们介绍了se通道注意力,我们说所有的模块本质上只是对特征进一步提取,今天进一步介绍cbam注意力CBAM 是一种能够集成到任何卷积神经网络架构中的注意力模块。它的核心目标是通过学习的方式,自动获取特征图在通道和空间维度上的重要性,进而对特征图进行自适应调整,增强重要特征,抑制不重要特征,提升模型的特征表达能力和性能。简单来说,它就像是给模型装上了 “智能眼镜”,让模型能够更精准地看到图像中关键的部分。

2025-06-09 18:48:14 521

原创 Day48 Python打卡训练营

在 PyTorch 中,torch.randn()是一个常用的随机张量生成函数,它可以创建一个由标准正态分布(均值为 0,标准差为 1)随机数填充的张量。PyTorch 的广播机制(Broadcasting)是一种强大的张量运算特性,允许在不同形状的张量之间进行算术运算,而无需显式地扩展张量维度或复制数据。在深度学习中经常需要随机生成一些张量,比如权重的初始化,或者计算输入纬度经过模块后输出的维度,都可以用一个随机函数来实现需要的张量格式,而无需像之前一样必须加载一张真实的图片。

2025-06-08 21:47:26 776

原创 Day47 Python打卡训练营

昨天代码中注意力热图的部分顺移至今天。

2025-06-07 21:37:15 208

原创 Day46 Python打卡训练营

之前复试班强化部分的transformer框架那节课已经介绍过注意力机制的由来,本质从onehot-elmo-selfattention-encoder-bert这就是一条不断提取特征的路。各有各的特点,也可以说由弱到强。其中注意力机制是一种让模型学会「选择性关注重要信息」的特征提取器,就像人类视觉会自动忽略背景,聚焦于图片中的主体(如猫、汽车)。transformer中的叫做自注意力机制,他是一种自己学习自己的机制,他可以自动学习到图片中的主体,并忽略背景。

2025-06-06 21:22:36 821

原创 Day45 Python打卡训练营

知识点回顾:1.tensorboard的发展历史和原理2.tensorboard的常见操作3.tensorboard在cifar上的实战:MLP和CNN模型。

2025-06-05 20:28:15 961

原创 Day44 Python打卡训练营

上图的层数,代表该模型不同的版本resnet有resnet18、resnet50、resnet152;efficientnet有efficientnet-b0、efficientnet-b1、efficientnet-b2、efficientnet-b3、efficientnet-b4等。

2025-06-04 17:19:44 830

原创 Day43 Python打卡训练营

此文件定义一个简单的CNN模型,适合CIFAR-10分类任务。])

2025-06-02 21:34:22 549

原创 Day42 Python打卡训练营

知识点回顾1.回调函数2.lambda函数3.hook函数的模块钩子和张量钩子4.Grad-CAM的示例作业:理解下今天的代码即可1.回调函数Hook本质是回调函数,所以我们先介绍一下回调函数 回调函数是作为参数传递给其他函数的函数,其目的是在某个特定事件发生时被调用执行。这种机制允许代码在运行时动态指定需要执行的逻辑,实现了代码的灵活性和可扩展性。回调函数的核心价值在于: 1. 解耦逻辑:将通用逻辑与特定处理逻辑分离,使代码更模块化。

2025-06-01 17:54:11 731

原创 Day41 Python打卡训练营

卷积核越大,考虑到越是全局信息.每个通道都有一个卷积核,所以3通道的图像会需要一个三通道的卷积核假设有一个 3x3x3 的卷积核(3 个通道,每个通道大小为 3x3)作用于一个 5x5x3 的 RGB 图像块(高 5、宽 5、3 个通道)。然后将这3个矩阵对应位置的元素相加(可能再加上偏置值),就得到一个 3x3的特征图,此特征图即为该卷积核生成的一个输出通道卷积核的通道需要和图像的通道的一致。如果有多个这样的卷积核,就会生成多个特征图,这些特征图共同构成了卷积层的输出,输出的通道数等于卷积核的数量。

2025-05-31 19:58:15 494

原创 Day40 Python打卡训练营

仔细学习下测试和训练代码的逻辑,这是基础,这个代码框架后续会一直沿用,后续的重点慢慢就是转向模型定义阶段了。dropout操作:训练阶段随机丢弃神经元,测试阶段eval模式关闭dropout。展平操作:除第一个维度batchsize外全部展平。彩色和灰度图片测试和训练的规范写法:封装在函数中。

2025-05-30 14:40:07 303

原创 Day39 Python打卡训练营

考虑课程内容的推进,今日的内容只提定义,不涉及训练和测试过程# 先归一化,再标准化transforms.ToTensor(), # 转换为张量并归一化到[0,1]transforms.Normalize((0.1307,), (0.3081,)) # MNIST数据集的均值和标准差,这个值很出名,所以直接使用])# 2. 加载MNIST数据集,如果没有会自动下载# 定义两层MLP神经网络self.flatten = nn.Flatten() # 将28x28的图像展平为784维向量。

2025-05-29 17:49:49 1060

原创 Day38 Python打卡训练营

核心结论Dataset类:定义数据的内容和格式数据存储路径/来源(如文件路径、数据库查询)。原始数据的读取方式(如图像解码为PIL对象、文本读取为字符串)。样本的预处理逻辑(如裁剪、翻转、归一化等,通常通过transform参数实现)。返回值格式(如DataLoader类:定义数据的加载方式和批量处理逻辑批量大小(batch_size是否打乱数据顺序(shuffle@浙大疏锦行。

2025-05-27 11:04:47 567

原创 Day37 Python打卡训练营

知识点回顾:1.过拟合的判断:测试集和训练集同步打印指标2.模型的保存和加载a.仅保存权重b.保存权重和模型c.保存全部信息checkpoint,还包含训练状态3.早停策略复习使用设备: cpu训练进度: 100%|██████████| 20000/20000 [00:06<00:00, 3252.53epoch/s, Loss=0.0618]测试集准确率: 96.67%

2025-05-26 14:14:08 1020

原创 Day36 Python打卡训练营

对之前的信贷项目,利用神经网络训练下,尝试用到目前的知识点让代码更加规范和美观。仔细回顾一下神经网络到目前的内容,没跟上进度的同学补一下进度。:尝试进入nn.Module中,查看他的方法。探索性作业(随意完成)

2025-05-25 18:17:15 154

原创 Day35 Python打卡训练营

知识点回顾:1.三种不同的模型可视化方法:推荐torchinfo打印summary+权重分布可视化2.进度条功能:手动和自动写法,让打印结果更加美观3.推理的写法:评估模式模型的推理 进度条功能 模型保存和加载。

2025-05-24 10:18:11 678

原创 Day34 Python打卡训练营

知识点回归:1.CPU性能的查看:看架构代际、核心数、线程数2.GPU性能的查看:看显存、看级别、看架构代际3.GPU训练的方法:数据和模型移动到GPU device上4.类的call方法:为什么定义前向传播时可以直接写作self.fc1(x)要让模型在 GPU 上训练,主要是将模型和数据迁移到 GPU 设备上。在 PyTorch 里,.to(device) 方法的作用是把张量或者模型转移到指定的计算设备(像 CPU 或者 GPU)上。

2025-05-23 18:18:35 984

原创 Day33 Python打卡训练营

定义一个简单的全连接神经网络模型,包含一个输入层、一个隐藏层和一个输出层。定义层数+定义前向传播顺序class MLP(nn.Module): # 定义一个多层感知机(MLP)模型,继承父类nn.Moduledef __init__(self): # 初始化函数super(MLP, self).__init__() # 调用父类的初始化函数# 前三行是八股文,后面的是自定义的self.fc1 = nn.Linear(4, 10) # 输入层到隐藏层。

2025-05-22 17:25:16 590

原创 Day32 Python打卡训练营

大多数 Python 库都会有官方文档,里面包含了函数的详细说明、用法示例以及版本兼容性信息。官方文档:https://pdpbox.readthedocs.io/en/latest/GitHub 仓库:https://github.com/SauceCat/PDPbox。PyPI 页面:https://pypi.org/project/PDPbox/官方文档的阅读和使用:要求安装的包和文档为同一个版本。官方文档的检索方式:github和官网。DAY 32 官方文档的阅读。绘图的理解:对底层库的调用。

2025-05-21 20:06:01 158

原创 Day31 Python打卡训练营

这个项目实现了一个信用违约预测模型,使用随机森林算法对客户是否会发生信用违约进行预测。

2025-05-20 19:36:37 576

原创 Day30 Python打卡训练营

知识点回顾:1.导入官方库的三种手段2.导入自定义库/模块的方式3.导入库/模块的核心逻辑:找到根目录(python解释器的目录和终端的目录不一致)同一目录导入2.创建。

2025-05-19 13:30:50 294

原创 Day29 Python打卡训练营

所以你还是需要理解 装饰器本质就是一个语法糖,对类而言:@decorator 语法只是 MyClass = decorator(MyClass) 的简写,即使类已定义,仍可手动调用装饰器函数修改它。回顾一下,函数的装饰器是 :接收一个函数,返回一个修改后的函数。我们之前是用复用的思想来看装饰器的,换一个角度理解,当你想修改一个函数的时候,可以通过装饰器方法来修改而无需重新定义这个函数。总结:装饰器的核心是动态修改类 / 函数,而不改变原代码。类也有修饰器,他的逻辑类似:接收一个类,返回一个修改后的类。

2025-05-18 10:47:11 465

原创 Day28 Python打卡训练营

知识点回顾:1.类的定义2.pass占位语句3.类的初始化方法4.类的普通方法5.类的继承:属性的继承、方法的继承作业题目1:定义圆(Circle)类要求:1.包含属性:半径 radius。2.包含方法:●calculate_area():计算圆的面积(公式:πr²)。●calculate_circumference():计算圆的周长(公式:2πr)。3.初始化时需传入半径,默认值为 1。题目2:定义长方形(Rectangle)类1.

2025-05-17 19:43:40 947

原创 Day27 Python打卡训练营

知识点回顾:1.装饰器的思想:进一步复用2.函数的装饰器写法3.注意内部函数的返回值作业:编写一个装饰器 logger,在函数执行前后打印日志信息(如函数名、参数、返回值)装饰器本质上是一个 Python 函数,它可以让其他函数或方法在不需要做任何代码修改的前提下增加额外功能。--本质是如果让一个函数具备太多功能,那么他看起来就会比较乱,可读性比较差,如果把其中一部分相同甚至可以复用的功能用一个新的函数来调用,然后让2个函数同时实现,就会做到。

2025-05-16 14:44:49 692

原创 Day26 Python打卡训练营

编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。编写一个名为 calculate_average 的函数,该函数可以接收任意数量的数字作为参数(引入可变位置参数 (*args)),并返回它们的平均值。编写一个名为 print_user_info 的函数,该函数接收一个必需的参数 user_id,以及任意数量的额外用户信息(作为关键字参数)。函数的参数类型:位置参数、默认参数、不定参数。user_id 是一个必需的位置参数。

2025-05-15 21:58:58 345

原创 Day25 Python打卡训练营

如果找到匹配的,则执行该 except 块中的代码,然后继续执行整个 try-except 结构之后的代码(除非 except 块中又引发了新异常或执行了 return/break/continue 等)。except:如果 try 块里的代码真的出错了(从出错开始就不会继续执行try之后的代码了),Python 就会跳到 except 块里执行这里的代码,而不是崩溃。如果 try 失败:try 块中出错前的代码会执行,然后匹配的 except 块的代码会执行(else 块不会执行)。

2025-05-14 20:55:25 652

原创 Day24 Python打卡训练营

知识点回顾:1.元组2.可迭代对象3.os模块元组的特点:有序,可以重复,这一点和列表一样元组中的元素不能修改,这一点非常重要,深度学习场景中很多参数、形状定义好了确保后续不能被修改。很多流行的 ML/DL 库(如 TensorFlow, PyTorch, NumPy)在其 API 中都广泛使用了元组来表示形状、配置等。可以看到,元组最重要的功能是在列表之上,增加了不可修改这个需求。

2025-05-13 21:28:30 1057

原创 Day23 Python打卡训练营

ColumTransformer的核心# --- 定义不同列的类型和它们对应的预处理步骤 ---# 这些定义是基于原始数据 X 的列类型来确定的# 识别原始的 object 列 (对应你原代码中的 discrete_features 在预处理前)# 识别原始的非 object 列 (通常是数值列)# 有序分类特征 (对应你之前的标签编码)# 注意:OrdinalEncoder默认编码为0, 1, 2... 对应你之前的1, 2, 3...需要在模型解释时注意。

2025-05-12 19:46:29 736

原创 Day22 Python打卡训练营

自行学习参考如何使用kaggle平台,写下使用注意点,并对下述比赛提交。仔细回顾一下之前21天的内容,没跟上进度的同学补一下进度。

2025-05-11 17:07:21 292

原创 Day21 Python打卡训练营

t-SNE 是一种强大的非线性降维技术,主要用于高维数据的可视化。它通过在低维空间中保持高维空间中数据点之间的局部相似性(邻域关系)来工作。与PCA关注全局方差不同,t-SNE 更关注局部细节。理解它的超参数(尤其是困惑度)和结果的正确解读方式非常重要。

2025-05-10 19:35:26 955

原创 Day20 Python打卡训练营

首先需要介绍一个经典的工具SVD奇异值分解,他是很多降维算法的基础相信大家在考研期间都考过线性代数,今天我们来回顾一下经典的考研题目,你就会知道之前的线性代数就是在为这里埋下伏笔。当然可以!在考研数学中,特征值分解(Eigenvalue Decomposition)相关的内容通常出现在线性代数部分,常见题目类型包括求矩阵的特征值和特征向量、判断矩阵是否可对角化、以及利用特征值分解进行矩阵的对角化。

2025-05-09 16:14:58 306

原创 Day19 Python打卡训练营

常见的特征筛选算法1.方差筛选2.皮尔逊相关系数筛选3.lasso筛选4.树模型重要性5.shap重要性6.递归特征消除REF--- 1. 默认参数随机森林 (训练集 -> 测试集) ---训练与预测耗时: 1.8811 秒默认随机森林 在测试集上的分类报告:默认随机森林 在测试集上的混淆矩阵:过去电脑性能比较差,特征数目太多计算起来很慢。同时特征中可能存在很多冗余特征干扰解释性、存在噪声特征干扰精度。

2025-05-08 18:47:59 842

原创 Day18 Python打卡训练营

你最开始聚类的时候,就选择了你想最后用来确定簇含义的特征,那么你需要选择一些特征来进行聚类,那么你最后确定簇含义的特征就是这几个特征,而非全部。如你想聚类消费者购买习惯,那么他过去的消费记录、购买记录、购买金额等等,这些特征都与消费者购买习惯有关,你可以使用这些特征来确定簇含义,一些其他的特征,如消费者年龄,工作行业则不考虑。----适用于你本身就有构造某些明确含义的特征的情况。现在需要给这个簇赋予实际的含义,一般当你赋予实际含义的时候,你需要根据某几个特征来赋予,但是源数据特征很多,如何选择特征呢?

2025-05-07 19:13:10 194

原创 Day17 Python打卡训练营

知识点1.聚类的指标2.聚类常见算法:kmeans聚类、dbscan聚类、层次聚类3.三种算法对应的流程实际在论文中聚类的策略不一定是针对所有特征,可以针对其中几个可以解释的特征进行聚类,得到聚类后的类别,这样后续进行解释也更加符合逻辑。聚类的流程1.标准化数据2.选择合适的算法,根据评估指标调参( )3.将聚类后的特征添加到原数据中4.原则t-sne或者pca进行2D或3D可视化聚类评估指标介绍。

2025-05-06 21:12:07 700

空空如也

空空如也

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

TA关注的人

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