- 博客(67)
- 收藏
- 关注
原创 什么叫“结构表示”和“文本表示”不对齐?(Self)
结构表示这个 API 是“怎么被用的”?哪些用户用过它它和哪些 API 一起被用使用频率和共现关系⚠️ 它不知道 API 的功能含义。如果 API A 经常和 API C 一起被用户调用👉 模型会认为A 和 C 很像文本表示这个 API “是干什么的”?API 的功能描述接口说明文档文本语义相似性⚠️ 它不知道用户是如何使用它的。如果 API A 和 API B 的描述都是“天气相关”👉 模型会认为A 和 B 很像。
2025-12-14 20:41:09
280
原创 交互噪声(Interaction Noise):推荐系统中被忽视却关键的问题
交互噪声指在用户与物品的交互行为中,不能真实、准确反映用户真实兴趣或偏好的行为信号。它会导致观测到的交互数据与用户真实意图之间存在偏差,使模型难以学习到可靠的偏好表示。交互噪声既存在于显式反馈中,也广泛存在于隐式反馈中。
2025-12-14 20:24:18
500
原创 解决 VS Code 中 Python 虚拟环境无法激活的问题
在Windows PowerShell中执行conda activate失败时,通常是由于PowerShell执行策略限制和conda初始化问题导致。解决方案包括:1)修改执行策略为RemoteSigned;2)运行conda init powershell初始化;3)重新打开终端后即可正常激活虚拟环境。验证时应注意Python路径是否指向虚拟环境目录。该问题常见于未正确配置PowerShell权限或conda环境的情况。
2025-12-08 21:21:34
445
原创 VSCode 报错 “No module named ‘torch‘“
明明安装了包(如 `torch`, `numpy`),解释器也选对了,为什么运行代码还是报错?
2025-12-03 13:54:24
390
原创 SOFL:掌握条件数据流图的核心概念与模式
SOFL是一种结合图形化条件数据流图(CDFD)与文本化规约模块的形式化建模方法,通过"图文互补"的层次化结构精确描述系统功能。
2025-11-25 12:14:38
22
原创 在 Jupyter Notebook 中启动 TensorBoard
使用类是在 Jupyter Notebook 中启动 TensorBoard 最稳定、最简洁的方法,完美解决了环境配置和模块导入的各种问题。推荐在所有 Jupyter Notebook 项目中采用此方法!
2025-11-20 17:26:41
346
原创 向量的合并(累积)策略有效性的比较
本文比较了深度学习模型中三种特征累积方法:sum(·)、max(·)和stack(·)。stack(·)因其信息完整性和自适应能力成为最佳选择。
2025-11-20 09:07:47
659
原创 TCP SYN 扫描发送器(libnet)
本文详细介绍了使用libnet库实现TCP SYN扫描的核心步骤:构造TCP SYN包、构建IP头、发送数据包和清理缓存。通过示例代码展示了如何设置关键TCP/IP字段(如源/目的端口、序列号、标志位),并强调了随机化参数以减少检测风险。文章还提供了发送数据包和清理缓存的实践建议,最后给出完整的扫描函数示例及调试方法。实现中需注意权限、速率控制和错误处理,推荐配合抓包工具验证结果。
2025-10-30 21:25:40
810
原创 TCP 扫描中的“有效响应”过滤器解析
只抓有用响应:SYN-ACK(开放)或 RST(关闭)过滤掉无关数据:其他协议、其他 IP 或无关 TCP 包提升效率:扫描器只处理目标端口返回的关键包,节省时间和资源。
2025-10-30 18:11:17
350
原创 libpcap 抓包:从打开网卡到解析数据包
本文介绍了如何使用libpcap库实现网络数据包捕获。libpcap是一个跨平台的底层网络数据包捕获库,Wireshark等工具都基于它构建。文章详细说明了libpcap的核心工作流程:打开网卡(pcap_open_live)、设置BPF过滤规则(pcap_compile/setfilter)以及捕获处理数据(pcap_loop)。其中重点讲解了回调函数的结构和参数含义,并提供了示例代码展示如何解析IP包头。通过libpcap,开发者可以构建自定义的网络分析工具,实现类似Wireshark的功能。
2025-10-30 17:43:38
1062
原创 C语言字符串处理高频函数:`strdup`、`strchr`、`strtok_r`、`atoi`
摘要:本文介绍C语言中4个高频字符串处理函数:1)strdup用于堆上复制字符串;2)strchr用于查找字符串中的字符;3)strtok_r是线程安全的字符串分割函数,适合解析CSV等数据;4)atoi用于将数字字符串转换为整数。每个函数都包含用法说明和示例代码,涵盖字符串复制、查找、分割和类型转换等常见操作场景,是C语言字符串处理的实用参考。
2025-10-30 10:34:28
324
原创 C语言命令行参数解析详解:getopt、optarg、optind
参数含义argc命令行参数个数argv命令行参数数组optstring有效选项定义字符串(例如"t:v:"getopt()每次调用时,会返回当前解析到的命令行选项的“字母”,例如-t就会返回't'当解析完成后,返回-1。getopt():用于解析命令行选项optarg:存放选项的参数值optind:记录下一个待解析参数的位置optopt:当前出错的选项字符。
2025-10-30 09:57:27
822
原创 在 Google Colab +免费的 GPU 加速训练
ps:如果目录确实存在但显示找不到,请重新挂载,或进入包含的main的那个文件夹。3.空白处右键,点击更多——>Goole Colaboratory。1.空白处右键新建空白文件夹,此处重名为baseline。5. 挂载 Google Drive,读写项目代码。,进入项目文件夹,从而启动模型训练或实验流程。2.进入新建文件夹,上传整个项目文件。
2025-09-28 21:35:46
180
原创 Jupyter Notebook 两种模式:编辑模式 & 命令模式
Jupyter Notebook提供两种操作模式:编辑模式(绿色边框)用于编写和修改单元格内容,通过Enter进入;命令模式(蓝色边框)用于管理单元格,通过Esc进入。编辑模式支持运行代码/文本,命令模式提供快捷键操作(如新建/删除单元格、切换类型)。两种模式通过Enter/Esc灵活切换,提高工作效率。
2025-09-28 12:01:23
533
原创 典型的深度学习模型训练与评估流程
任务类型常用损失函数优化器回归均方误差 (MSE)SGD, Adam分类交叉熵 (Cross Entropy)对比/生成任务对比损失、GAN 损失Adam💡 小提示:学习率 lr 是关键参数,过大可能发散,过小训练缓慢。深度学习的精髓在于“数据 + 模型 + 优化”,多实践、多观察训练曲线,是快速成长的关键。
2025-09-18 15:11:19
919
原创 2️⃣ NumPy 核心用法
本文介绍了NumPy的核心功能,这是深度学习的必备基础工具。主要内容包括:数组创建方法(np.array、zeros等)、数组属性(shape、dtype等)、索引与切片操作、数组运算与广播机制、逻辑运算和布尔索引、数组变形与转置、常用统计函数以及随机数生成。这些功能为处理张量数据、实现矩阵运算和初始化参数提供了基础支持,是后续使用PyTorch或TensorFlow等深度学习框架的重要前提。
2025-08-06 18:26:04
806
原创 1️⃣ NumPy 入门指南:快速理解数组是什么
摘要: NumPy数组是数据分析的核心数据结构,与Python列表不同,它要求数据类型统一、排列规整,显著提升计算效率(快10-100倍)。数组支持多维结构(1D至nD),内置丰富数学运算,并能与主流数据工具无缝衔接。创建数组简单(如np.array()或np.zeros()),但需注意其结构一致性。核心优势包括高速计算、批量操作和广泛兼容性,是数据科学领域的“基础砖块”。初学者需掌握其统一性、多维性和高效性三大特点。
2025-08-06 18:02:32
1024
原创 NumPy 数组创建(初始化)常用方法
本文介绍了NumPy中最常用的数组创建方法,包括:从Python列表转换(np.array())、创建全0/全1数组(np.zeros()/np.ones())、生成指定值数组(np.full())、构建等差数列(np.arange()/np.linspace())、生成随机数组(np.random系列)、创建单位矩阵/对角矩阵(np.eye()/np.diag())以及基于现有数组创建新数组(xxx_like()系列)。这些方法是NumPy数据处理的基础,适用于初始化参数、构建测试数据和矩阵运算等场景。文
2025-08-05 16:59:16
767
原创 2️⃣ NumPy 深度学习实战教程
本文介绍了NumPy在深度学习中的关键应用: 数据预处理:通过归一化和标准化处理数据; One-hot编码:将分类标签转换为向量形式; 矩阵运算:实现神经网络前向传播; 激活函数:如ReLU和Sigmoid的非线性转换; 损失计算:Softmax和交叉熵损失函数; 梯度下降:参数优化过程模拟; 维度操作:包括reshape、transpose等张量处理技巧。这些基础操作是深度学习实现的核心,帮助理解神经网络底层原理。
2025-08-05 16:09:13
1494
原创 文件操作实战
深度学习项目中的文件操作是核心技能,涵盖数据读取、模型保存、日志记录等关键环节。本文总结了深度学习场景下的文件处理技巧:1)基础文件读写(文本/二进制模式);2)高效路径管理(os模块跨平台处理);3)专用文件格式(JSON配置、CSV标注);4)实战避坑指南(路径检查、大文件处理)。掌握这些技能能显著提升深度学习工程效率,避免常见文件操作错误。
2025-08-02 16:37:20
1050
原创 1️⃣5️⃣ 文件常用操作
本文系统介绍了Python中的文件操作方法,包括文件打开模式、读写操作、上下文管理以及目录管理。主要内容有:1)文件操作三步走:打开-操作-关闭,推荐使用with语句自动管理资源;2)文本文件读写方法,如read()、write()等;3)os模块的常用文件和目录操作;4)常见问题解决方案,如中文乱码处理和大文件处理技巧;5)通过文件复制工具案例展示实际应用。掌握这些核心要点能有效提升Python文件处理能力。
2025-08-02 16:26:48
790
原创 1️⃣4️⃣ OOP:类、封装、继承、多态
本文系统介绍了Python面向对象编程(OOP)的核心概念,主要包括:类作为抽象模板,实例是具体对象;封装通过私有属性和方法保护数据;继承实现代码复用,子类可扩展功能;多态允许统一接口调用不同行为
2025-07-31 18:06:02
973
原创 1️⃣3️⃣ 偏函数(Partial Function):简化函数调用
偏函数用于固定函数的部分参数值,生成新的简化函数。其核心作用是减少重复参数输入,使调用更简洁。既能简化代码,又不影响原函数功能,是一种实用的编程技巧。
2025-07-30 15:40:24
671
原创 1️⃣2️⃣ 装饰器(Decorator)
Python装饰器是一种在不修改原函数代码的情况下动态增强函数功能的技术。本文介绍了装饰器的核心概念和工作原理:装饰器本质是返回函数的高阶函数,通过@语法糖实现函数增强。文章详细讲解了基础装饰器、带参数装饰器的实现方式,强调了使用functools.wraps保留原函数元信息的重要性,并提供了计时装饰器的实践案例。装饰器适用于日志记录、权限验证、性能统计等场景,能够有效提升代码的灵活性和可维护性。
2025-07-30 10:40:45
1295
原创 1️⃣1️⃣ 匿名函数
在 Python 中,匿名函数(也称为 lambda 函数)是一种轻量级的函数定义方式,它允许你在不使用传统def关键字的情况下快速创建函数。
2025-07-28 17:34:58
471
原创 1️⃣0️⃣Python 闭包与函数返回函数的用法
本文深入讲解了 Python 中函数作为返回值的用法,并重点介绍了闭包(Closure)这一重要概念。通过延迟求和、变量引用、循环陷阱、nonlocal 关键字等实例,帮助你理解闭包是如何在函数内部“记住”外层作用域的变量,从而实现延迟执行和状态保持。同时附有实用练习,如实现一个计数器函数,巩固对闭包特性的掌握。
2025-07-28 17:16:16
438
原创 9️⃣高阶函数:map()、reduce()、filter()、sorted()
本文介绍了Python中四个常用的高阶函数:map()、reduce()、filter()和sorted()。map()用于元素级变换,reduce()用于累积规约,filter()用于过滤元素,sorted()用于自定义排序。文章通过具体示例展示了每个函数的用法,包括数字平方、序列求和、素数生成、字符串排序等常见操作。同时提供了练习题和延伸阅读推荐,帮助读者掌握这些高阶函数的应用场景和使用技巧。这些函数能以简洁的方式处理序列操作,提高代码的可读性和效率。
2025-07-27 16:30:19
484
原创 Python 开发环境
通常安装 Anaconda 后会自带 Jupyter Notebook,直接使用即可。Anaconda 是一个用于科学计算的 Python 发行版,适用于。,自带了包管理和环境管理工具。社区版免费,功能也足够使用。
2025-07-27 11:19:46
766
原创 8️⃣高级特性—— 迭代器(Iterator)
可迭代对象(Iterable)是可以被循环的对象。listtupledictsetstrgenerator包含yield的生成器函数迭代器(Iterator)是一个可以被next()调用并不断返回下一个值的对象,直到抛出异常为止。生成器(Generator)是天然的 Iterator。
2025-07-27 10:36:48
563
原创 8️⃣高级特性—— 生成器(Generator)
Python生成器是一种高效节能的内存管理工具,通过惰性求值按需生成数据,避免一次性占用过多内存。创建生成器有两种方式:将列表生成式的[]改为(),或使用yield定义生成器函数。生成器通过next()获取值或for循环迭代,yield机制使函数执行时能暂停和恢复。还能捕获StopIteration获取返回值,适合处理大数据流或无限序列(如杨辉三角)。生成器结合了函数暂停、惰性生成和高效节能三大特性,是优化Python内存使用的利器。
2025-07-27 10:22:02
220
原创 8️⃣ 高级特性—— 迭代(Iteration)
Python迭代机制通过for...in结构简化数据遍历,支持列表、字符串、字典等多种可迭代对象。字典默认迭代键,也可用values()和items()遍历值和键值对。使用enumerate获取索引和值,支持多变量解包。通过collections.abc的Iterable判断对象可迭代性。示例展示了查找列表最小最大值的方法,体现了Python迭代的高效与简洁。
2025-07-26 10:44:48
360
原创 8️⃣ 高级特性——切片(Slice)
Python切片是处理序列数据的强大工具,语法为sequence[start:stop:step],支持截取子集、倒序访问和间隔取样等操作。它能简化大量循环代码,适用于list、tuple和str等序列类型。
2025-07-26 10:08:57
843
原创 5️⃣ set(集合)速查表
Python 中的集合(set)是一组无序且不重复的元素集合。它类似于字典(dict)的键集合,但不存储对应的值。集合提供了高效的成员检测和数学集合操作,如交集、并集、差集。set是无序且无重复元素的集合,支持高效的数学集合操作。集合中的元素必须是不可变对象。选择合适的不可变类型作为字典的键或集合的元素,能确保程序稳定、高效运行。
2025-07-23 23:40:17
343
原创 4️⃣字典(dict)速查表
Python 内置了强大的字典(dict)数据结构,也称为映射(map),它以“键-值”(key-value)对的形式存储数据,拥有极快的查找速度。它广泛应用于需要快速访问和存储数据的场景。
2025-07-23 23:34:30
454
原创 2️⃣tuple(元组)速查表
Python中的tuple(元组)是一种有序且不可变的数据结构,与list类似但元素不可修改。其"不可变"是指元素指向的对象不变,但若元素本身是可变对象(如list),其内容仍可修改。tuple使用小括号创建,单元素需加逗号避免歧义。相比list,tuple不支持增删操作,但更安全高效,适合存储固定数据或作为字典key。核心特点包括:元素访问支持索引、嵌套可变对象不影响不可变性、单元素需特殊语法。推荐在数据只读时优先使用tuple而非list。
2025-07-22 18:01:22
178
网络技术挑战赛–选拔赛,分组抽签是进行到哪个阶段了呀,有哪个参加过的朋友知道的不
2024-06-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅