- 博客(1040)
- 资源 (1)
- 收藏
- 关注
原创 《Python 从入门到精通》046|f-string 为什么成了最推荐的格式化方式
本文详细介绍了Python中的f-string字符串格式化方法,重点突出了其简洁自然的语法特点。文章通过对比传统的%和format()格式化方式,展示了f-string在可读性和便捷性上的优势。主要内容包括:f-string的基本语法(字符串前加f,变量放入{})、多变量插入、支持表达式计算、方法调用、数字格式控制(如:.2f保留两位小数)以及文本对齐功能。通过多个实用示例(如成绩单、商品信息等)演示了f-string如何将变量、计算和格式控制自然地整合在字符串中,使其成为Python中最受欢迎的字符串格式
2026-05-09 15:38:07
902
原创 基于 PyTorch 的对抗攻击库
本文梳理了GitHub上主流的PyTorch对抗攻击库,按常用度排序。推荐图像攻击首选Torchattacks,因其接口简洁、易用;需多框架支持选ART;鲁棒性评估推荐AutoAttack与RobustBench;NLP领域使用TextAttack。其他如Foolbox、DeepRobust等也各具特色,适用于不同场景。
2026-09-29 08:16:25
95
原创 你的模型,是不是在“瞎猜”?
判断模型是否“瞎猜”,不能仅看准确率,需对比其与随机基线的差距。在类别不均衡时,全猜多数类的准确率(max p_i)是更严苛的基准。不同指标(如AUC-ROC、MCC、交叉熵)各有随机水平,需结合统计检验(如二项检验、置换检验)确认结果是否显著优于随机。训练过程中的损失停滞、预测趋同、验证波动等信号也提示模型未学习。排查应优先检查数据标签对齐、训练流程完整性和任务可解性,通过小批量过拟合和随机标签对照快速定位问题。
2026-09-29 08:14:41
39
原创 调制识别对抗攻击防御的开源代码
本文综述了射频机器学习(RFML)领域中对抗攻击与防御的高质量开源项目。首推 rfml 作为入门框架,支持主流数据集加载与对抗训练;顶会最新工作 Robust-ViT-for-AMR 提出基于ViT的鲁棒调制识别方法,提供真实场景数据集。辅助工具如 torchattacks 和 AWN 可用于攻击生成与模型基线对比。此外,多个高价值防御方法(如SafeAMC、最大似然蒸馏等)虽无公开代码,但可复现。建议以rfml为基础,结合强模型与多类型攻击评估,实现高效防御研究。
2026-09-29 08:11:03
33
原创 【Pytorch教程】深入理解 PyTorch 的 `nn.KLDivLoss`:别再把输入顺序和 `log_softmax` 搞错了
PyTorch的nn.KLDivLoss用于计算KL散度损失,常用于知识蒸馏等任务。使用时需注意:1)输入必须是log_softmax后的对数概率;2)目标值应为归一化概率分布;3)推荐使用reduction="batchmean"以获得数学正确的KL散度值;4)API参数顺序与数学记号相反,input对应模型输出,target对应真实分布。常见错误包括直接输入softmax概率、目标未归一化以及误用默认的mean缩减方式。正确用法应确保输入经过log_softmax处理,目标值合法,并明确指定batchm
2026-05-27 15:44:42
108
原创 《Python 从入门到精通》047|转义字符与原始字符串:路径问题一次讲明白
本文深入讲解了Python字符串中的转义字符和原始字符串概念。主要内容包括:1)转义字符的定义与常见示例(如\n换行、\t制表符);2)路径处理中的反斜杠问题及其解决方案(双反斜杠或原始字符串);3)原始字符串(r前缀)的作用与使用场景;4)引号冲突的处理方法。文章通过大量实例演示了这些概念的实际应用,特别针对Windows文件路径处理这一常见痛点进行了详细解析,帮助读者彻底理解字符串中的特殊字符处理机制。
2026-05-09 15:49:15
1083
原创 《Python 高阶教程》018|自己实现一个迭代器:看懂 **iter** 和 **next**
这一章从零手写了多个迭代器,把 `__iter__`、`__next__`、状态推进和 StopIteration 全讲透了。看懂后,你就真正会做迭代器了,而不只是会用 for。
2026-04-27 10:00:00
167
原创 《Python 高阶教程》017|for 循环背后发生了什么:迭代协议完整拆解
这一章把 for 循环背后的机制彻底拆开。看懂后,你会真正明白可迭代对象、迭代器、iter、next 和 StopIteration 之间的关系,也会知道为什么自定义对象只要遵守协议就能直接进 for。
2026-04-26 09:45:00
583
原创 《Python 高阶教程》016|偏函数与柯里化:把复杂调用拆成更简单的组合
这一章把偏函数和柯里化彻底讲透。看懂后,你会知道什么时候该用 partial 预绑定参数,什么时候该用闭包补充逻辑,也会明白柯里化在 Python 里该理解到什么程度。
2026-04-25 09:30:00
466
原创 《Python 高阶教程》015|lambda、map、filter、reduce:函数式工具到底值不值得用
这一章把 lambda、map、filter、reduce 的用法和取舍一次讲透。看懂后,你不仅会写这些函数式工具,更重要的是能判断它们什么时候真有价值,什么时候只是让代码更绕。
2026-04-24 09:45:00
93
原创 《Python 高阶教程》014|递归、尾递归与替代方案:写得巧不如跑得稳
这一章把递归、尾递归和替代方案彻底讲透。看懂后,你不只会写递归,还会判断什么时候该用、什么时候该停手,以及为什么很多场景里循环反而更专业。
2026-04-23 09:45:00
76
原创 《Python 高阶教程》013|类装饰器与函数装饰器:什么时候该用哪一种
这一章把函数装饰器和类装饰器的差别彻底讲透。看懂后,你不只会写类装饰器,更重要的是能判断什么时候该继续用函数,什么时候该升级成类。
2026-04-22 09:45:00
93
原创 《Python 高阶教程》012|带参数的装饰器怎么写:一篇彻底讲透
这一章把带参数装饰器从执行顺序拆到工程实战。看懂后,你不仅能写出重试、权限、日志、缓存这类可配置装饰器,还能真正理解它为什么一定要多包一层。
2026-04-21 16:15:00
74
原创 从 from dataclasses import dataclass 开始:全面理解Python数据类
Python的dataclass装饰器通过类型注解自动生成__init__、__repr__等方法,简化数据类定义。它支持默认值、字段顺序控制、可变默认值处理(default_factory)、只读对象(frozen=True)等功能,适合建模配置、DTO等数据对象,同时保持类的完整特性。dataclass不是运行时类型检查工具,而是减少模板代码的实用工具。
2026-04-21 16:10:16
727
原创 《Python 高阶教程》011|装饰器入门到实战:给函数优雅地加能力
这一章把装饰器从原理拆到实战。看懂后,你会明白 @ 背后到底做了什么,也能自己写出日志、耗时、权限、异常、重试这类真正有用的装饰器。
2026-04-21 10:00:00
87
原创 《Python 高阶教程》010|闭包真正的用法:不是概念,而是解决问题的工具
这一章把闭包从定义讲到实战。看懂后,你会真正明白闭包为什么能保存状态、为什么循环里容易踩坑,以及它在计数器、工厂函数、日志和缓存里到底怎么用。
2026-04-20 09:45:00
465
原创 《Python 高阶教程》009|函数也是对象:高阶函数的威力从哪里来
这一章把“函数也是对象”彻底讲透。看懂后,你会真正明白高阶函数为什么强,也会为后面的闭包、装饰器和函数式编程打下最重要的一层基础。
2026-04-19 10:30:00
73
原创 《Python 高阶教程》008|小心内存泄漏:引用计数、循环引用与排查思路
这一章专讲 Python 内存泄漏的真实来源和排查思路。看懂后,你会知道内存上涨该从哪查,哪些代码最容易偷偷留住对象,长期运行程序也会写得更稳。
2026-04-19 09:00:00
84
原创 《Python 高阶教程》007|垃圾回收机制详解:Python 如何管理内存
摘这一章把 Python 垃圾回收讲透了。看懂后,你会明白对象为什么会存活、循环引用为何麻烦、内存上涨不一定是泄漏,写代码时也会更有边界感。
2026-04-18 09:30:00
91
原创 《Python 高阶教程》006|作用域与命名空间:global、nonlocal 到底该怎么用
这一章把作用域、命名空间、LEGB、global、nonlocal 一次讲透。看懂后,变量“明明存在却报错”的问题,基本都能自己顺着查清楚。
2026-04-17 10:00:00
85
原创 《Python 高阶教程》005|深拷贝和浅拷贝:数据复制到底复制了什么
这一章把赋值、浅拷贝、深拷贝一次讲透。看懂后,你会明白为什么 copy 之后原数据还会被污染,也会知道什么时候该用 copy,什么时候必须用 deepcopy。
2026-04-16 19:30:00
99
原创 《Python 高阶教程》004|可变与不可变:为什么有些 bug 总是防不胜防
这一章把可变与不可变彻底讲透。看懂后,你会明白为什么默认参数会翻车、函数会偷偷改外部数据、嵌套结构总是出怪问题,后面学拷贝会更顺。
2026-04-15 19:30:00
83
原创 《Python 高阶教程》003|变量背后不是盒子:名字、对象与引用的本质
这一章把变量、对象、引用彻底讲透。看懂后,你会真正明白为什么列表会联动、函数参数会出坑、赋值不等于复制,后面学拷贝和作用域也会轻松很多。
2026-04-14 19:00:00
432
原创 《Python 高阶教程》002|Python 程序是怎么跑起来的:解释器、字节码与执行流程
这一章把 Python 程序从源码到运行的全过程串了一遍。看懂解释器、字节码、模块导入和函数调用后,你会发现很多以前靠记的知识点,开始真正能讲通了。
2026-04-13 16:43:26
749
原创 《Python 高阶教程》001|从会写代码到写好代码:高阶 Python 到底高在哪里
这一章不讲炫技语法,先讲清高阶 Python 的核心差别:结构、可读性、复用、边界和工程思维。后面学的每个高级特性,都会更容易理解。
2026-04-13 16:30:46
195
原创 希腊字母与特殊符号在数学中的应用
希腊字母在数学、物理和工程学中广泛用于表示常数、变量和参数。常见符号包括:α(角度/系数)、β(回归系数)、Σ(求和)、π(圆周率)、γ(伽马函数)、δ(微小变化量)、θ(角度)、λ(特征值/波长)、μ(平均值)等。这些符号在不同领域具有特定含义,如π用于几何计算,Σ用于数列求和,β在金融中衡量风险。希腊字母的使用使数学表达式更简洁精确,是学术研究中不可或缺的通用符号体系。(150字)
2025-11-11 08:56:31
1767
原创 【深度学习-pytorch】nn.Conv2d
摘要:nn.Conv2d是PyTorch中的二维卷积层,用于处理图像数据。它通过滑动卷积核提取特征,参数包括输入/输出通道数、卷积核大小、步长、填充等。示例展示了如何定义卷积层并计算输出特征图尺寸。该层广泛应用于图像分类、目标检测等任务,通过调整参数可控制特征图大小和特征提取效果。
2025-11-06 11:18:33
262
原创 【Python实战练习】用 Python与Pygame 打造完整的贪吃蛇小游戏
本文介绍了一个使用Python和Pygame库开发的完整贪吃蛇游戏,包含菜单系统、中文支持、穿墙选项等功能。游戏支持开始菜单界面、分数保存、暂停和重新开始等操作,并提供了可调节的穿墙模式。文章详细讲解了环境配置、项目结构、关键功能实现(如UI控件、中文显示、状态机管理)以及扩展思路。通过保存配置到JSON文件,游戏可以记录最高分和用户设置。最终效果简洁实用,适合作为Python游戏开发的学习案例。文中还附有游戏截图和完整源码,方便读者参考实现。
2025-08-26 18:40:56
456
原创 【Pytorch实战教程】torchvision.datasets.ImageFolder的详细用法介绍
【Pytorch实战教程】torchvision.datasets.ImageFolder的详细用法介绍
2025-07-25 09:55:08
363
原创 【Pytorch实战教程】nn.Conv2d中默认的stride=1,padding=0,dilation=1,groups=1,bias=True参数含义详解
【Pytorch实战教程】nn.Conv2d中默认的stride=1,padding=0,dilation=1,groups=1,bias=True参数含义详解
2025-07-25 09:26:10
589
原创 【调制识别】PGD攻击中参数的含义
PGD(Projected Gradient Descent)对抗攻击通过多次迭代生成对抗样本,代码中的关键参数包括扰动步长(step_size)、扰动范围(epsilon)和迭代次数(num_steps)。step_size控制每次更新的幅度,epsilon限制扰动的不可察觉性,num_steps决定迭代次数。代码逻辑包括初始化、随机扰动、迭代更新和投影约束,确保扰动在合法范围内。PGD通过梯度上升最大化损失,结合投影操作生成对抗样本,平衡了攻击强度与计算效率。
2025-05-19 23:15:17
669
原创 【Python机器学习】Gradio:让机器学习模型触手可及的交互式界面工具
Gradio凭借其低代码、高扩展性的特点,已成为MLOps生态中的重要工具。对于希望快速验证模型效果、构建原型系统的开发者,它是不可或缺的利器。延伸学习gradio.app• 进阶教程:《用Blocks API构建股票预测仪表盘》通过以上内容,开发者可快速掌握Gradio的核心功能,并将其应用于实际项目。无论是学术研究还是工业落地,这个工具都将显著提升模型的可访问性与用户体验。
2025-04-08 08:05:30
415
原创 【Pytorch实战教程】with torch.no_grad():
是优化推理效率的关键工具,适用于无需梯度计算的场景。实际应用中常与联合使用,以兼顾模块行为与性能优化。
2025-03-28 16:48:04
541
原创 【Pytorch实战教程】深入浅出的学习Dataset
在PyTorch中,**Dataset**是用于表示数据集的核心抽象类,通过继承并实现其方法,可以灵活地加载和管理各种类型的数据。
2025-03-28 11:26:45
242
原创 【人工智能】科普:模态间的语义对齐
比如AI看图写话时,如果图片是狗却生成“这是一只鸟”,就是语义没对齐。对齐后AI才能准确理解跨模态信息(像人类一样看到猫说猫,听到笑话会笑)。你正在看一部外语电影,画面里一个人在哭(视觉模态),但字幕却写着“他好开心啊”(文本模态)。这时候你会觉得特别别扭,因为画面和文字。说到跨模态,一定避不开一个词,模态间的语义对齐,那到底什么意思呢?就是让不同模态的信息表达。
2025-03-27 12:33:27
943
原创 【人工智能】自注意力机制(Self-Attention)和传统注意力机制(Attention Mechanism)的核心区别
例如在机器翻译中,查询(Query)是目标语言(如英文)的单词特征,键(Key)和值(Value)是源语言(如中文)的单词特征。例如在处理一句话时,每个单词(Query)会同时计算与其他单词(Key)的相关性,并结合自身信息(Value)生成新的表示。通过这种设计,自注意力机制在保持计算效率的同时,显著提升了模型对复杂序列关系的建模能力,成为Transformer等现代架构的核心组件。其中,Q (Query)、 K (Key)、 V (Value)分别来自不同序列。所有 Q 、K 、 V 均来自。
2025-03-27 11:59:26
384
原创 【Pytorch实战教程】拆解PyTorch中的多头注意力:原来Transformer的核心组件可以这样玩
维度地狱:新版PyTorch的参数能救命,但混合使用时仍要小心——当遇到时,请先做三个深呼吸再检查维度顺序。注意力分数计算:默认使用缩放点积注意力,记得除以√d_k(不过PyTorch已经帮你做好了)梯度消失:当num_heads太大时可能出现,可以尝试结合LayerNorm使用显存杀手:序列长度平方级的显存消耗,处理长文本时可以考虑内存高效的实现方式多头注意力就像给模型装上了复眼,让它能够从多个角度观察数据之间的关系。理解。
2025-03-15 15:26:23
365
原创 【人工智能】缩放点积注意力和多头注意力
通过计算Query和Key的点积,得到注意力权重,然后对Value进行加权求和,得到输出。:并行地执行多个Scaled Dot-Product Attention,然后将结果拼接并线性变换,得到最终的输出。
2025-03-13 12:45:13
991
原创 【人工智能】Transformer、BERT、GPT:区别与联系
Transformer、BERT、GPT 是 NLP 发展史上的重要里程碑。它们之间相互借鉴、相互促进,共同推动了 NLP 技术的进步。未来,随着技术的不断发展,我们可以期待更多更强大的模型出现,为人类语言理解和生成带来更多可能性。
2025-03-13 10:10:07
760
QPSK是一种常用的数字调制技术,它将数据信号调制到一个载波波形上,通过改变载波的相位来表示数据 这种调制技术因其相对高效的频谱
2024-04-08
基于改进Apriori算法的地铁故障关联规则挖掘
2024-01-18
基于支持向量机的通信干扰效果在线评估算法
2024-01-18
Python数据科学速查表
2024-01-16
短波通信协议智能识别技术研究
2024-01-16
基于深度学习的通信信号种类识别研究
2024-01-16
融合SENet和Trans...mer的应用层协议识别方法.caj
2024-01-15
python调制识别数据及代码
2024-01-02
随机 Transformer;变分自编码器;多维时间序列;异常检测
2023-08-22
专升本知识点和题型大全
2023-03-27
Markdown语法详解
2022-04-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅