自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (1)
  • 收藏
  • 关注

原创 Python 3.7.12,pytorch1.11.0+cu113下 安装 install signatory complextorch无法正常pip

2) 当尝试从源码构建时,CUDA 编译器(nvcc)未在 PATH 中找到。,加上你环境网络不稳(timeout/temporary failure),导致 pip 反复回退安装旧版,且无法自动修复。),这是 Conda 环境与宿主系统库路径不匹配造成的环境问题,与代码或 PyTorch 版本无关。这通常是由于 C++/CUDA 扩展编译失败导致的。这是 Python 3.7 扩展编译时常见的系统级依赖问题。(而不是 Conda 里的),这通常能解决链接库路径问题。包,但编译时找不到它的原因是。

2026-04-14 11:32:31 186

原创 CUDA 优化 PyTorch 双峰卷积算子项目复盘:从精准对齐到无奈放弃

然后终于正常编译了,后来回到实体机,发现也可以正常编译了,但是编译出来cuda算子版本的代码和python原版本代码的输出误差过大,于是又倒腾了几遍,一行一行的对应逻辑,最后干到了误差为六位浮点数的0,但是加速比却倒反天罡,cuda版本却更慢,分析来分析去,,发现首先原生pytorch的卷积是不能碰的,你要是卷积比原生的还好,你就可以等英伟达来挖了,这玩意是不开源的;这是我最初的认知误区,也是项目失败的根源之一。这意味着,我的 CUDA 算子逻辑是正确的,没有偏离核心业务逻辑,这是后续所有优化的基础。

2026-04-01 23:30:09 358 1

原创 从2D到1D:ShiftwiseConv核心思想落地与时序任务适配实践

分支 = 一组负责特定“砌砖 pattern”的工人小队在论文中,一个分支指的是一条独立的重参数化路径。每个分支都包含一组完整的3×3 组卷积 + 移位操作。就像一队工人,他们按照一种固定的模式(比如先横着砌三块,再竖着砌两块)来工作。N_path=2或N_path=3就是指有2个或3个并行的“分支”。每个分支都是一个独立的“工人小队”,从同一个输入提取特征,但可能学到略微不同的特征模式。# 论文中的多分支(Rep分支)示例。

2026-03-24 20:06:24 401

原创 从0到1由 Buildroot 构建的嵌入式 Linux 系统部署简单模型的ONNX

本文介绍了将动态卷积网络模块(DynamicConv1d)部署到ARM64设备的完整流程。针对ONNX不支持动态网络的问题,提出了两种解决方案:1)将动态计算改为等效静态计算;2)自定义算子。详细说明了模型导出、环境准备、C++推理代码编写、交叉编译、U盘部署等步骤,重点解决了ONNX Runtime API版本兼容性和数值一致性验证问题。通过生成相同输入数据对比Python和C++输出,确保推理结果正确性。最后提供了U盘挂载/卸载的正确操作方法,确保部署过程顺利完成。

2025-12-26 16:29:25 799

原创 如何阅读理解用户手册里的函数文档, 以man 2 stat举例

在 DESCRIPTION 中会给出结构体成员,或者在手册的其他部分(有时需要往下翻):每个字段的含义:比如st_size是文件大小(字节),st_mode包含文件类型和权限(需要用宏判断文件类型,如判断是否为普通文件)。时间戳st_atim是最后访问时间,st_mtim是最后修改时间,st_ctim是最后状态改变时间(如权限修改)。

2025-12-24 22:27:12 461

原创 为什么fclose处理的是file而不是fd

操作申请资源释放资源负责范围fopenFILE*结构体 + 内核fd+ 用户态缓冲区整个流(含缓冲区和 fd)open内核fd仅内核文件描述符核心原则谁分配,谁释放fopen分配了FILE结构 → 必须用fclose释放open分配了fd→ 必须用close释放混用时要清楚:用fileno拿出fd后,底层fd仍在FILE管理范围内,最终关闭应通过fclose完成。✅一句话记住fclose管的是“带缓冲区的流”,fd只是流里的一个零件,拆零件不拆整体,会漏资源、丢数据。

2025-12-24 21:49:38 363

原创 windows文件通过SSH复制到ubuntu目录下

出现进度条和速度即可,等待100%传输完成。输出结果的前几个数字带小数点的结果就是。windows下打开终端(命令提示符等)此处替换成自己的IP地址。

2025-11-19 09:54:30 217

原创 PowerShell运行python脚本报错:因为在此系统上禁止运行脚本

然后就可以正常运行和调试python脚本了。以管理员身份运行powershell。重启终端:执行以下命令。

2025-07-28 10:09:03 389

原创 2025TGRS多尺度稀疏交叉注意力网络

将上述多尺度特征图相加后得到包含丰富多尺度信息的特征表示,并将其与另一输入 X 分别展平和映射为查询矩阵 Q、键矩阵 K,以及值矩阵 V。MFEM旨在从遥感图像中学习多级特征,MFCM用于将高级特征与不同低级特征进行融合以获得分类特征,GCE则用于进一步增强分类特征,CM完成最终分类。MSC通过结合多尺度池化、稀疏操作和自适应加权机制,实现了对多层特征的有效融合,同时过滤掉无关信息,增强了特征表达能力,为遥感场景分类任务提供了更准确的特征。的多尺度稀疏交叉注意力网络,用于遥感场景分类(RSSC)。

2025-07-17 20:51:05 1998

原创 开漏模式的触发条件和工作状态

在该电路中,若输出控制模块使P - MOS管栅极电压相对源极(接Vdd )足够低,满足 \( V_{GS}< V_{thp} \) 条件,P - MOS管就会导通。当输出控制模块使N - MOS管栅极电压相对源极(接Vss )足够高,满足 \( V_{GS}> V_{thn} \) 条件,N - MOS管导通。截止时,P - MOS管相当于断开开关,阻止Vdd与输出节点间的电流通路。这是开漏(Open - Drain)电路结构,核心由输出控制模块和一对互补的MOS管(P - MOS和N - MOS)组成。

2025-04-13 15:01:21 738

原创 TimeBridge论文中公式引出对注意力公式的思考

如果Q,K相同,相乘得到的是一个对称矩阵,对称性适合捕捉双向关联,且计算效率高,缺点是无法建模方向性关系{如A导致B和B导致A无法作区分}。当Q=K时,每一行时某个位置的主动“提问”,决定它关注哪些位置;每一列是某个位置的被动“应答”,决定它被哪些位置关注。V类似于构建特征的基向量的概念,以上公式使用了残差连接,Pc作为V保证了残差相加的特征在一个特征空间上。A作为被检索者,A最被自己关注,少量被B,C关注。第一行,A作为查询者,A最关注自己,少关注B,C。行(查询者)\列(被检索者)

2025-04-13 14:44:06 295

原创 推挽输出的触发条件及工作状态

在该电路中,当输出控制模块输出低电平(接近Vss )时,P - MOS管的栅极电压较低,此时 \( V_{GS} \) 满足导通条件。在该电路中,当输出控制模块输出高电平(接近Vdd )时,N - MOS管的栅极电压较高,此时 \( V_{GS} \) 满足导通条件。输入为逻辑值0或1,经过输出控制模块后,控制P - MOS和N - MOS管的导通与截止,从而决定输出电平是高(接近Vdd)还是低(接近Vss )。当输入为1时,经过输出控制模块后,使P - MOS管的栅极电压升高,P - MOS管截止;

2025-04-13 14:41:02 392

原创 Windows上使用bash脚本

WSL也可以帮助在windows上使用bash,和linux一样。以vscode为例:关闭vscode重启终端即可在如下处看到bash。安装到你自己确定的路径,无脑下一步(无特殊需求)完成后,编辑系统环境变量。

2025-03-28 15:41:32 1597

原创 python身高排序

第六个元素 `[4,4]`,插入到 \( 4 \) 位置,结果 `res = [[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]`。最终重建的队列 `[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]`,通过将每个元素插入到 \( k_i \) 位置,确保了前面身高不小于 \( h_i \) 的人数正好是 \( k_i \),从而满足题目要求。第一个元素 `[7,0]`,插入到 \( 0 \) 位置,结果 `res = [[7,0]]`。

2025-03-28 13:25:21 372

原创 python找亲戚(并查集)

【代码】python找亲戚(并查集)

2025-03-23 15:44:55 311

原创 python长草(BFS)

【代码】python长草(BFS)

2025-03-22 23:25:54 141

原创 AI工具生成答案格式整理与保证生成文献真实性办法

豆包和deepseek生成内容可直接复制到腾讯文档里,腾讯文档检测出markdown格式,点击立即转换样式,然后复制到word或wps里是正常格式,没有#号;豆包--帮我写作板块里可以直接导出word文档,但是包含公式的内容无法正常导出,需要进一步转化。ChatGPT4.0有一个scholar AI插件,使用即可。Kimi不需要,可以直接复制粘贴。这个方法带公式的不能转化。买API接入办公软件。实际上是探索GPT里。

2025-02-25 16:03:58 840

原创 线性层的源码及原理

每一行有4个特征,3个时间步。每一行有两个特征,3个时间步。

2024-12-16 23:41:30 634

原创 多通道卷积

6个卷积核组,3个通道每个通道有一个5×5的卷积核,3个通道为一组。以下这个图可以更直观的概括多通道多核的卷积过程:(一个卷积核组)3通道的特征图经过一一对应的3通道的卷积核,生成一个新的特征图。填充:使原来边缘点也多次参与运算否则只参与一次计算。

2024-12-15 20:40:52 478

原创 wsl到anaconda安装

在安装 WSL 2 之前,必须启用虚拟机平台可选功能,以管理员身份打开 PowerShell 并运行以下命令,然后重启计算机。若需要更新最新的WSL版本(WSLg),不论安装的是 WSL 的应用商店版还是内版本,均可通过以下两种方式更新。对于 ARM64 系统:版本 2004 或更高版本,内部版本 19041 或更高版本。对于 x64 系统:版本 1903 或更高版本,内部版本 18362 或更高版本。上一步命令运行完必须重启,否则该步安装更新包将报错。正版激活的Windows10!

2024-11-10 14:08:10 932

原创 混淆矩阵注解

TP,预测也为正,这个结论是真的,实际是正类,对A来说,则是predicted下的A列代表预测为正,actual行的A行代表实际为正,A列与A行相交的cell就是TP,类似地;原图来自另外一位CSDN博客,但是忘了在哪,特此声明尊重一下,单纯加了一点注解。TN,预测为负,这个结论是真的,实际也是负类,则是B,C列和B,C行。FN,预测为负类,这个结论是假的,实际是正类,则是B,C列,A行。FP,预测为正类,这个结论是假的,实际是负类,则是A列B,C行。

2024-10-26 22:37:49 375

原创 网络训练越来越慢

看看memory-usage是不是爆满,那此时就要考虑调小batchsize,dim数以及网络深度了。1.一个原因是保存和打印操作、文件IO操作太多会明显影响训练时间,但这不是主要影响越来越慢的原因。如果训练速度降下来了,看看cuda利用率一直在100%左右水平。显卡内存即为显存,主要使用的就是专用gpu内存。

2024-10-17 16:08:24 480

原创 python的可变类型和不可变类型(赋值操作常见错误)

【代码】python的可变类型和不可变类型(赋值操作常见错误)

2024-10-11 17:24:58 191

原创 Tensorboard的使用

代码准备好后,vscode会通知安装或者启动tensorboard。这个问题通常发生在 Python 版本较旧的时候。低版本 Python 环境中,

2024-08-21 16:57:16 476

原创 EEG-DL(GitHub项目部分学习)

当num_classes = 4时,NUM_TRIALS = 21 * 4 = 84。[1, 5, 9, 13, 17, 21, 2, 6, 10, 14, 18, 22, 3, 7, 11, 15, 19, 23, 4, 8, 12, 16, 20, 24]一通道的所有数据。[1, 5, 9, 13, 17, 21, 2, 6, 10, 14, 18, 22, 3, 7, 11, 15, 19, 23, 4, 8, 12, 16, 20, 24]一通道的所有数据。

2024-08-08 19:59:25 997

原创 python的with语句

在 Python 中,with语句用于创建一个上下文管理器,以更简洁和安全的方式管理资源。其主要优点是可以确保在代码块执行完毕后,相关资源能够被正确释放或清理,即使在代码块内部发生了异常。以下是一个使用with在上述代码中,返回一个文件对象,它实现了上下文管理器协议。当进入with代码块时,文件被打开;当退出代码块时,无论是正常退出还是因为异常退出,文件都会被自动关闭,无需手动调用方法。一些常见的库和模块也提供了支持with语句的上下文管理器,比如数据库连接、锁等。例如,使用sqlite3。

2024-07-18 20:35:03 685

原创 python的mixin设计模式

在 Python 中,mixin 是一种设计模式,它是一个包含了特定功能单元的类,这些功能可以被其他类组合利用,这些功能可以被其他类组合利用,以实现代码的复用和功能扩展。mixin 类通常不被单独实例化,也不作为其他类的唯一父类,而是通过多重继承与其他类结合使用。子类可以根据需要组合继承不同功能的 mixin 类,从而在不修改源代码的情况下扩展已有类的功能。例如,假设有一个然后可以定义其他类,并通过继承来获得日志记录功能:在上述示例中,MyClass继承了的log方法,无需在MyClass。

2024-07-18 19:16:07 1516

原创 python的super函数

按照方法解析顺序(Method Resolution Order,MRO)来查找父类中的方法。MRO 决定了在多继承情况下方法的查找顺序。的行为可能会变得复杂,需要特别小心 MRO 的影响,以避免意外的结果。这样就实现了在子类的初始化方法中同时执行父类的初始化操作。来调用父类的初始化方法,以确保父类的属性和设置正确初始化。用于在子类中调用父类的方法。方法覆盖:当子类覆盖了父类的方法时,可以使用。来调用父类被覆盖的方法,以扩展或补充其功能。方法,然后再执行子类中的后续代码。多重继承:在多重继承的场景中,

2024-07-16 14:50:23 526

原创 python的自省机制(改bug有用)

在 Python 中,自省(Introspection)机制是指程序在运行时能够获取自身的信息,例如对象的类型、属性、方法等。自省机制使得 Python 程序具有很高的灵活性和动态性,可以在运行时根据对象的信息进行动态的决策和操作。这个字典包含了实例自身定义的属性及其对应的值,不包括从父类继承的属性。是一个常见的条件判断,用于确保以下的代码仅在当前脚本作为主程序运行时执行。总的来说,这段代码主要演示了类的继承、实例的创建以及通过。时,传递的参数 "慕课网" 被赋值给了实例属性。类的类属性,并且可以被。

2024-07-14 21:06:54 573

原创 python的私有属性和数据封装

实际上,私有属性会被重命名为。总的来说,封装强调的是将数据和操作数据的方法组合在一起,并控制对数据的访问和修改,私有属性在实现这种控制方面起到了重要作用,但公共属性的合理使用和管理也是封装的一部分。封装的目的是将数据和操作数据的方法封装在一个类中,只通过公共方法来提供对外的接口,以控制对数据的访问和修改,提高代码的可维护性和可扩展性。总的来说,私有属性和公共属性都是类的属性,用于描述类的状态,但私有属性提供了更严格的访问控制,有助于实现良好的封装和代码设计。是公共属性,可以在类的外部直接访问和修改,如。

2024-07-14 20:45:06 1135

原创 SHAP(SHapley Additive exPlanations)算法

通过 SHAP 值,可以了解每个特征对模型预测结果的影响程度和方向,从而提高模型的透明度和可解释性。SHAP 算法将每个特征值对模型输出的贡献视为一种“公平”的分配,确保了每个特征值的贡献是其应得的份额。SHAP 算法的核心思想是将模型的输出分解为各个特征的贡献和。对于给定的预测,它通过考虑所有特征值的排列组合,计算每个特征值对预测结果的贡献。SHAP(SHapley Additive exPlanations)算法是一种用于解释机器学习模型的方法,它基于博弈论中的 Shapley 值。

2024-07-12 00:21:16 3149

原创 Python 中类方法、实例方法和静态方法

【代码】Python 中类方法、实例方法和静态方法。

2024-07-12 00:20:13 719

原创 python的类变量和实例变量

另外,在多继承中,如果多个父类有相同的方法名,可能会导致方法的调用具有一定的不确定性,并且可能出现一些复杂的情况。Python 3 中,多继承的查找顺序是广度优先,即从左到右,先在同一级的父类中查找,然后再向上一级查找,直到找到所需的方法或属性,或者到达。在 Python 中,当访问属性时,会先查找实例属性,如果实例中没有该属性,再去查找类属性。当通过实例访问一个属性时,如果实例中没有该属性,会自动到类中查找对应的类属性。实例变量的查找会先在实例自身的属性中查找,如果没有找到,会去类中查找类变量。

2024-07-11 13:03:58 1486 1

原创 python的isinstance和type

函数用于检查一个对象是否是某个类或由某个类派生出来的类的实例。它可以接受一个对象和一个类(或者由多个类组成的元组)作为参数。它们都与对象的类型信息有关,用于在编程中确定对象的类型特征。都用于检查对象的类型,但它们有一些区别和联系。,因为一个对象肯定是它自身实际类型的实例。函数直接返回对象的类型。会返回该对象的确切类型。会返回一个布尔值,表示。在 Python 中,

2024-07-10 20:06:55 310

原创 python的抽象基类

就像上面说的“动物”抽象基类规定了要有“吃”和“睡”的能力,那么继承它的子类,比如“狗”“猫”“牛”等等,都得有这两个能力,这样就保证了大家都遵循同样的规则,代码写起来更整齐、更有条理。比如说,您有一堆不同的类,有的是“动物”的子类,有的不是。和接口的概念有点像,接口也是规定了一些方法,但在 Python 里没有像其他语言那样明确的“接口”概念,抽象基类在一定程度上起到了类似的作用。再比如说和继承的关系,子类继承抽象基类,就得按照抽象基类定的规矩把那些没写具体的方法给补充完整,不然子类也不能正常工作。

2024-07-10 19:41:12 609

原创 Python的多态

简单来说,多态允许使用一个统一的接口来操作不同类型的对象,而这些对象会根据自身的类型来执行相应的具体操作。换句话说,在使用对象时,不关注对象的类型,而是关注对象是否具有所需的方法和属性。方法,但不同的子类对象会根据自己的实现计算并返回不同的结果,这就是多态的体现。其理念是:如果一个对象的行为(方法和属性)看起来像鸭子,走路像鸭子,叫声像鸭子,那么我们就可以把它当作鸭子。这种编程风格强调的是对象的行为,而不是对象的类型,使得代码更加灵活和可扩展。然后,可以创建这些不同形状的对象,并通过相同的方式调用。

2024-07-07 19:48:10 695

原创 Python魔法函数(Magic Methods简介

在这段代码中,`42` 这个值的传递关系如下: 当创建对象 `my_object = MyClass(42)` 时,`42` 作为参数被传递给了 `MyClass` 类的 `__init__` 方法。当执行 `str(my_object)` 或 `print(my_object)` 时,会调用 `__str__` 方法,在 `__str__` 方法中通过 `self.value` 访问到了之前存储的 `42` 值,并将其用于生成返回的字符串 `My value is 42`。

2024-07-07 17:57:55 1670

原创 嵌入式底层系统了解

最后,在开发板上电启动后,通过串口查看内核的启动信息,检查是否能正确识别硬件设备,处理可能出现的错误,如驱动加载失败、内存分配异常等,以完成整个调试过程。在 Linux 系统移植过程中,交叉编译环境是指在一个平台(通常是主机,如 x86 架构的 PC)上生成能够在另一个不同架构的平台(目标平台,如 ARM、MIPS 等)上运行的代码的编译环境。例如,如果要将 Linux 移植到一个嵌入式设备上,可能会制作一个精简的根文件系统,只包含该设备运行所需的最基本的命令和配置,以节省存储空间和提高系统启动速度。

2024-07-04 22:00:49 991

原创 STFT短时傅里叶变换MTLAB简析

FFTLength’参数默认为128的DFT点数,设置时要与窗函数比较,一定要大于或等于窗函数长度,否则会出现数值bug,而且难以被发现。短时傅里叶变换的结果矩阵s的行数与参数‘FFTLength’等同。如果信号x有Nx个时间样本,短时傅里叶变换的结果矩阵s有k列;k的计算方式如图所示,M是窗函数的长度,L是重叠长度。此符号是向下取整符号。

2024-07-03 16:58:34 367

原创 搜索python包的说明

当我发现bug时,就怀疑是sns包的版本问题了(原代码是原作者以前成功运行的代码),于是直接到网上搜,找到对应的说明文档。

2024-06-21 17:34:50 282

从0到1由 Buildroot 构建的嵌入式 Linux 系统部署简单模型的ONNX

与文章匹配的相关过程文件

2025-12-29

基于WSL环境配置与解决GitHub SSH连接及深度学习项目环境搭建(mamba)问题

内容概要:本文主要讲述了在一个Windows Subsystem for Linux (WSL)环境下,从解决GitHub的SSH连接问题开始,逐步实现GitHub项目的克隆(以‘mamba’项目为例),再到深度学习项目的环境配置与运行。重点内容涵盖了生成并配置SSH密钥,编辑和检查SSH配置文件以确保正确连通性,利用GitHub的SSH方式快速高效克隆项目代码库;在安装项目所需的各类Python库,尤其是PyTorch等与GPU兼容性密切相关的深度学习框架时遇到的版本适配难题,及其解决方案。同时,探讨了WSL2中配置GPU支持的关键步骤,面对旧硬件设备无法支撑最新框架时提出相应的折衷措施,以及针对环境变量和conda环境初始化等问题提供了详尽指引。 适用人群:有一定Linux基础和PyTorch或其他深度学习框架使用经验的技术人员,尤其是正面临从Windows过渡到WSL环境中构建开发环境的开发者或研究学者。 使用场景及目标:帮助用户顺利搭建适合进行深度学习模型训练的工作环境,特别是在现有计算硬件条件较为局限的情况下寻找最优实践方法;同时也为那些需要频繁通过SSH协议与Git平台交互

2025-03-24

MSP430x2xx 系列 用户指南(英文版).pdf

适合学习MSP430x2xx 系列控制器

2021-08-09

空空如也

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

TA关注的人

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