- 博客(54)
- 收藏
- 关注
原创 Python打卡第51天
day43的时候我们安排大家对自己找的数据集用简单cnn训练,现在可以尝试下借助这几天的知识来实现精度的进一步提高。
2025-06-11 21:30:50
422
1
原创 Python打卡第50天
定义通道注意力"""通道注意力机制初始化参数:in_channels: 输入特征图的通道数ratio: 降维比例,用于减少参数量,默认为16"""# 全局平均池化,将每个通道的特征图压缩为1x1,保留通道间的平均值信息# 全局最大池化,将每个通道的特征图压缩为1x1,保留通道间的最显著特征# 共享全连接层,用于学习通道间的关系# 先降维(除以ratio),再通过ReLU激活,最后升维回原始通道数。
2025-06-10 22:42:02
367
原创 Python打卡第49天
它的核心目标是通过学习的方式,自动获取特征图在通道和空间维度上的重要性,进而对特征图进行自适应调整,增强重要特征,抑制不重要特征,提升模型的特征表达能力和性能。通道注意力(Channel Attention):分析 “哪些通道的特征更关键”(如图像中的颜色、纹理通道)。空间注意力(Spatial Attention):定位 “关键特征在图像中的具体位置”(如物体所在区域)。双重优化:同时提升通道和空间维度的特征质量,尤其适合复杂场景(如小目标检测、语义分割)。最终测试准确率: 85.98%
2025-06-09 23:40:45
395
原创 Python打卡第48天
知识点回顾:随机张量的生成:torch.randn函数卷积和池化的计算公式(可以不掌握,会自动计算的)pytorch的广播机制:加法和乘法的广播机制。
2025-06-08 21:38:53
620
原创 Python打卡第47天
检查模型是否关注合理区域(如分类猫时是否聚焦于头部)。:向非技术人员展示模型决策依据。对比不同卷积层热图可视化的结果。:对比不同模型的注意力模式。
2025-06-07 22:12:15
252
原创 Python打卡第46天
复杂场景中,可能需要同时关注通道和空间(如混合注意力模块 CBAM),或处理长距离依赖(如全局注意力模块 Non-local)。通道注意力(Channel Attention)属于**注意力机制(Attention Mechanism)的变体**,而非自注意力(Self-Attention)的直接变体。但是卷积是 “固定权重” 的特征提取(如 3x3 卷积核)--训练完了就结束了,注意力是 “动态权重” 的特征提取(权重随输入数据变化)---输入数据不同权重不同。最终测试准确率: 84.68%
2025-06-06 23:32:04
1681
原创 Python打卡第45天
运行代码后,会在指定目录(如 runs/cifar10_mlp_experiment_1)生成 .tfevents 文件,存储所有 TensorBoard 数据。打开浏览器,输入终端提示的 URL(通常为 http://localhost:6006)。tensorboard --logdir=runs # 假设日志目录在 runs/ 下。
2025-06-05 23:54:03
149
原创 Python打卡第40天
批量维度不变性:无论进行flatten、view还是reshape操作,第一个维度batch_size通常保持不变。Flatten后形状:(batch_size, 3×28×28) = (batch_size, 2352)结果:展平为两个维度,保留batch_size,第二个维度自动计算为3×28×28=2352。说明:第一个维度batch_size不变,后面的所有维度被展平为一个维度。输入形状:(batch_size, 3, 28, 28)(图像数据)例如:(batch_size, 3, 28, 28)
2025-05-30 19:42:12
840
原创 Python打卡第36天
作业:对之前的信贷项目,利用神经网络训练下,尝试用到目前的知识点让代码更加规范和美观。代码耗时过长,进行优化探索性作业(随意完成)尝试进入nn.Module中,查看他的方法。
2025-05-25 16:48:39
245
原创 Python打卡第34天
在 Python 中,__call__ 方法是一个特殊的魔术方法(双下划线方法),它允许类的实例像函数一样被调用。虽然只在 CPU 中执行,但它会触发一次 GPU → CPU 的强制同步,这是影响性能的关键!GPU 可以高效计算,但 不能直接读取数值(就像工厂生产产品,但你要亲自去工厂拿货)。把数据从 GPU 复制到 CPU(通过 PCIe 总线,就像用卡车从工厂运货到商店)。暂停 GPU 计算:强制 GPU 停下当前所有任务(同步点)。本身慢,而是 GPU→CPU 的传输和同步慢!3. 为什么这么慢?
2025-05-23 21:41:31
740
2
原创 Python打卡第33天
class MLP(nn.Module): # 定义一个多层感知机(MLP)模型,继承父类nn.Moduledef __init__(self): # 初始化函数super(MLP, self).__init__() # 调用父类的初始化函数# 前三行是八股文,后面的是自定义的self.fc1 = nn.Linear(4, 10) # 输入层到隐藏层self.fc2 = nn.Linear(10, 3) # 隐藏层到输出层。
2025-05-22 22:14:33
366
原创 Python打卡31天
day31 文件的拆分和使用\src\data\preprocessing.py。day31 文件的拆分和使用\src\data\load_data.py。day31 文件的拆分和使用\src\models\train.py。
2025-05-20 22:47:39
317
原创 Python打卡第30天
模块(Module)- **本质**:以 `.py` 结尾的**单个文件**,包含Python代码(函数、类、变量等)。- **作用**:将代码拆分到不同文件中,避免代码冗余,方便复用和维护。包(Package)在python里,包就是库- **本质**:**有层次的文件目录结构**(即文件夹),用于组织多个模块和子包。- **核心特征**:包的根目录下必须包含一个 `__init__.py` 文件(可以为空),用于标识该目录是一个包。## 使用案例。
2025-05-19 21:00:22
607
原创 Python打卡第29天
pass# 添加实例方法# 添加类方法# 添加静态方法print(obj.instance_method()) # 输出: Dynamically added instance methodprint(MyClass.class_method()) # 输出: Dynamically added class methodprint(MyClass.static_method()) # 输出: Dynamically added static method。
2025-05-18 09:18:24
994
原创 Python打卡第28天
calculate_perimeter():计算周长(公式:2×(长+宽))。shape_type="rectangle":创建长方形(参数:长、宽)。"长:{rect.length}, 宽:{rect.width}""周长:{rect.calculate_perimeter()}"f"面积:{circle.calculate_area()}"shape_type="circle":创建圆(参数:半径)。"面积:{rect.calculate_area()}"f"半径:{circle.radius}"
2025-05-17 22:37:04
627
原创 Python打卡第27天
-本质是如果让一个函数具备太多功能,那么他看起来就会比较乱,可读性比较差,如果把其中一部分相同甚至可以复用的功能用一个新的函数来调用,然后让2个函数同时实现,就会做到。装饰器函数返回的是wrapper函数,所以,在调用装饰器函数的时候,返回的还是wrapper函数,而不是被修饰的函数。他是被修饰函数的外层函数,参数要大于等于被修饰函数的参数。可以看到,上述这个写法的时候,prime_nums()没有传入参数,如果函数有参数,那么必须给外部函数传入参数,也就是需要给外部的装饰器函数传入参数。
2025-05-16 21:58:23
390
原创 Python打卡第26天
编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。编写一个名为 calculate_average 的函数,该函数可以接收任意数量的数字作为参数(引入可变位置参数 (*args)),并返回它们的平均值。编写一个名为 print_user_info 的函数,该函数接收一个必需的参数 user_id,以及任意数量的额外用户信息(作为关键字参数)。如果长度或宽度为负数,函数应该返回 0。的函数,该函数接收图形的名称。
2025-05-15 16:02:02
276
原创 Python打卡第25天
如果找到匹配的,则执行该 except 块中的代码,然后继续执行整个 try-except 结构之后的代码(除非 except 块中又引发了新异常或执行了 return/break/continue 等)。else 块中的代码不会被同一个 try 块的 except 子句捕获。如果 try 失败:try 块中出错前的代码会执行,然后匹配的 except 块的代码会执行(else 块不会执行)。- except: 如果try块中的代码确实引发了特定类型的异常(或者任何异常,如果未指定类型),则执行此代码块。
2025-05-14 21:13:26
949
原创 Python打卡第24天
os.walk` 会首先访问起始目录 (`my_project`),然后它会选择第一个子目录 (`data`) 并深入进去,访问 `data` 目录本身,然后继续深入它的子目录 (`processed` -> `raw`)。只有当 `data` 分支下的所有内容都被访问完毕后,它才会回到 `my_project` 这一层,去访问下一个子目录 (`src`),并对 `src` 分支重复深度优先的探索。子目录列表 (dirnames): ['data', 'src'] # <--- 列出第一层子目录。
2025-05-13 21:26:47
609
原创 Python打卡第18天
-- 1. SHAP 特征重要性条形图 ---X_cluster1为高风险心脏病患者群体。X_cluster0为低风险或健康群体。
2025-05-07 09:05:54
177
原创 Python打卡第17天
@浙大疏锦行聚类评估指标介绍以下是三种常用的聚类效果评估指标,分别用于衡量聚类的质量和簇的分离与紧凑程度:- **定义**:轮廓系数衡量每个样本与其所属簇的紧密程度以及与最近其他簇的分离程度。- **取值范围**:[-1, 1] - 轮廓系数越接近 **1**,表示样本与其所属簇内其他样本很近,与其他簇很远,聚类效果越好。 - 轮廓系数越接近 **-1**,表示样本与其所属簇内样本较远,与其他簇较近,聚类效果越差(可能被错误分类)。 - 轮廓系数接近 **0**,表示样本在簇
2025-05-06 14:47:07
868
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人