- 博客(18)
- 收藏
- 关注
原创 RuntimeError: Function ‘TanhBackward0‘ returned nan values in its 0th output.
1. 由于loss反向传播中出现Nan值,由于前向传播和反向传播中函数对应定义域的差异。这个可能要一一排除,可能是激活函数的设置,可能是输入没有归一化。--检查loss设置是否合理。
2025-01-22 17:22:38
156
原创 安装Mamba问题
发现是因为causal-conv1d版本不够,因此在通过gitclonehttps://github.com/Dao-AILab/causal-conv1d.gitz安装的causal-conv1d目录下。再直接分布安装casual-conv1d和mamba-ssm。再安装casual-conv1d和mamba-ssm。成功解决该问题,但会产生以下报错。但是报错如上,因此参考博客。再在下载目录安装对应的。
2025-01-18 16:20:19
272
原创 算法面经-深度学习
例如[[x_1, y_1, z_1], [x_2, y_2, z_2]],batch normalization 会对x_1和x_2进行归一化。交叉熵刻画的是两个概率分布之间的距离,或可以说它刻画的是通过概率分布q来表达概率分布p的困难程度,p代表正确答案,q代表的是预测值,交叉熵越小,两个概率的分布约接近。RNN是一个动态的网络,也就是size是变化的,可大可小,造成多样本维度都没法对齐,所以不适合用BN,只能使用LN。对于二分类问题,假设有一个样本的真实标签为 𝑦(0 或 1),模型的预测概率为。
2024-10-31 17:11:09
789
原创 lc刷题小心得
模块提供的一个非常有用的工具,它创建了一个带有默认值的字典。当你试图访问一个不存在的键时,,而是会自动为该键提供一个默认值。在这种情况下,默认值是一个空列表(函数是 Python 中字符串的一个方法,将可迭代对象中的。在lc49字母异位词中,将''''用于连接列表。是 Python 中。,并且可以指定分隔符。
2024-10-15 11:41:42
128
原创 基于君正magik-transform-tool对一维时序模型进行量化
由于一维时序数据为形如[1,23]的特征,当batch_size设置为64时,经dataloader读取传入后,input_tensor为[64,23]的特征。由于magik近支持pool2d,所以需。且默认的pool_kernel为(2,2),所以要将conv_block3,conv_block4的pool改为(1,1)而由于采用的panns模型,默认的conv如下,且有四层ConvBlock结构。之后导出为pth模型,再转为onnx后进行量化。
2024-08-26 17:49:09
261
原创 pth模型文件转为onnx,并利用magik进行量化
2. 在infer.py->predict.py中的predict函数中,加载模型之后进行torch.onnx.export()3. 通过修改magik.cfg中的input,修改模型input入口,注意是此处应是batchnorm层的output。4. 通过vim修改post_quantizie.sh,将所需要的量化的模型作为参数传入,之后执行。,但需要注意wav文件的尺寸,此处设置的[1,398,80]是4s的文件。但注意,因为在量化时需要校准文件,所以。通过指定bin文件目录,可以。
2024-08-16 17:49:33
325
原创 利用mips-linux-gnu-gcc进行交叉编译并上传至目标嵌入式设备
且本机和目标设备要在同一网段下,例如本机在192.168.2.xx,目标设备也是192.168.2.xxx。但注意到要迁移至嵌入式环境,需要以静态方式-static编译,并且参数配置较多(此处直接仿照给的example中的方式)3.可以按照一般情况下g++编译的方式进行编译 g++ -o hello hello.cpp,生成可执行文件。3. 在目标设备上通过tftp拉取本机ip上的文件,也就是将本机作为server,将目标设备作为client。生成可执行文件后,将文件和model通过tftp传给设备。
2024-07-31 09:45:14
524
原创 VScode c++配置
注意关键是要在task.json和launch.json中配置好program-->也就是cpp.exe的位置。1. 配置task.json ctrl+shift+p: Task:configure task。或者terminal->launch->other->create from template。2. 配置launch.json: ctrl+shift+p: launch。3.再此处选择run。
2024-07-25 17:17:28
190
原创 君正magik将自己的模型量化,如何量化并export为onnx
但在debug过程中,我发现graph在trace完后为空,但在输出中明明有网络各层结构,仔细排查,并且输出的INFO只有remove各个节点,并没有insert,后发现在Tracer.trace的最后一行有一个。3. 由于在模型量化过程在,需要通过symbolic tracing将模型转化为图,代码说明可以查看http://pytorch.org/docs/master/fx.html#torch.fx.Tracer。1. 初始化网络为resnet。2. 由于在导入模型后,量化的核心代码在。
2024-07-24 18:11:14
698
原创 vsstudio boost链接报错 LNK1104 无法打开文件“boost_thread-vc141-mt-gd-x32-1_85.lib”
第四个x64表示的是64位系统,如果是x86表示的就是32位系统,还有1_69表示的就是boost版本是1_69_0.,如果是1_70表示的就是boost1_70_0。所以这个地方注意两点,1就是你下载的boost版本要对应,2就是使用vs编译的版本要对应。分析得出,首先我使用的是vs studio2022们对于的为vc143,于是切换回vs2017 对于141,2019则是对应142。第一个表示的是vc141表示使用的是vc141进行编辑的,也就是vc2017,如果是vs2015就应该出来vc140;
2024-07-11 01:29:15
393
原创 【无标题】
String类型是个不可变的对象,当每次对String进行改变时都需要生成一个新的String对象,然后将指针指向一个新的对象,如果在一个循环里面,不断的改变一个对象,就要不断的生成新的对象,所以效率很低,建议在不断更改String对象的地方不要使用String类型。浅拷贝 —只是拷贝了基本类型的数据,而引用类型数据,复制后也是会发生引用,我们把这种拷贝叫做“(浅复制)浅拷贝”,换句话说,浅复制仅仅是指向被复制的内存地址,如果原地址中对象被改变了,那么浅复制出来的对象也会相应改变。
2024-03-12 15:24:54
903
1
原创 深度学习笔记 01 神经网络与监督学习
本系列学习主要基于吴恩达老师的深度学习,其中大部分图片直接截取字吴恩达老师的视频附上视频地址:[双语字幕]吴恩达深度学习deeplearning.ai_哔哩哔哩_bilibili简单以房价预测为例,如果想根据一些离散的点(可能包含房屋大小,房屋位置,政府政策...)进行预测,我们可能会首先联想到通过函数进行拟合,如右图的蓝线 如左图所示,输入时房屋大小,经由中间的节点进行处理后,输出时预测价格。这个中间节点就是神经元。神经网络(如右图)就是由多个神经元堆叠组成, 上图中的房价预测函数类R
2022-07-12 17:27:47
883
原创 练习记录 -- 双指针实现反转链表(简单思路)
NC78 反转链表知识点链表给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。如当输入链表{1,2,3}时,经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。......
2022-07-09 01:04:09
179
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人