草庐IT

解决RuntimeError: Error(s) in loading state_dict for ResNet: Missing key(s) in state_dict: “conv1.0...

项目场景:在多GPU环境下用Pytorch训练的Resnet分类网络问题描述卷积神经网络ResNet训练好之后,测试环境或测试代码用了单GPU版或CPU版,在加载网络的时候报错,报错处代码为:net.load_state_dict(torch.load(args.weights))报错如下:RuntimeError:Error(s)inloadingstate_dictforResNet: Missingkey(s)instate_dict:"conv1.0.weights","conv1.1.weights","conv1.1.bias",...原因分析:出现这种报错的原因主要是,state

RuntimeError: Error(s) in loading state_dict for ..:Missing key(s) in state_dict: …Unexpected key...

原因:预训练权重层数的键值与新构建的模型中的权重层数名称不吻合,Checkpoint里面的模型是在双卡上训练的,保存的key前面都多一个module.解决:model=torch.nn.DataParallel(model,device_ids=[0,1]).cuda()torch.nn.DataParallel是一种能够将数据分散到多张显卡上从而加快模型训练的方法。它的原理是首先在指定的每张显卡上拷贝一份模型,然后将输入的数据分散到各张显卡上,计算梯度,回传到第一张显卡上,然后再对模型进行参数优化。注意:不能直接在load_state_dict里面加strict=False来解决此问题,加入

RuntimeError: Error(s) in loading state_dict for ..:Missing key(s) in state_dict: …Unexpected key...

原因:预训练权重层数的键值与新构建的模型中的权重层数名称不吻合,Checkpoint里面的模型是在双卡上训练的,保存的key前面都多一个module.解决:model=torch.nn.DataParallel(model,device_ids=[0,1]).cuda()torch.nn.DataParallel是一种能够将数据分散到多张显卡上从而加快模型训练的方法。它的原理是首先在指定的每张显卡上拷贝一份模型,然后将输入的数据分散到各张显卡上,计算梯度,回传到第一张显卡上,然后再对模型进行参数优化。注意:不能直接在load_state_dict里面加strict=False来解决此问题,加入

【Python】对key或values是datetime类型或时间字符串的字典dict排序

目录1key是时间字符串类型1.1问题1.2解决办法2key是datetime类型2.1问题2.2解决方案1key是时间字符串类型1.1问题当字典的key是时间字符串类型,如下time_dict={‘2021-05-18’:119,‘2021-06-05’:119,‘2020-12-10’:116,‘2021-04-19’:110,‘2020-12-04’:108,‘2021-04-13’:106,‘2020-12-08’:106,‘2020-09-12’:103,‘2021-05-14’:101,‘2021-05-08’:100,‘2021-01-09’:99,‘2020-12-09’:99

【Python】对key或values是datetime类型或时间字符串的字典dict排序

目录1key是时间字符串类型1.1问题1.2解决办法2key是datetime类型2.1问题2.2解决方案1key是时间字符串类型1.1问题当字典的key是时间字符串类型,如下time_dict={‘2021-05-18’:119,‘2021-06-05’:119,‘2020-12-10’:116,‘2021-04-19’:110,‘2020-12-04’:108,‘2021-04-13’:106,‘2020-12-08’:106,‘2020-09-12’:103,‘2021-05-14’:101,‘2021-05-08’:100,‘2021-01-09’:99,‘2020-12-09’:99

Python导入Excel表格数据并以字典dict格式保存

  本文介绍基于Python语言,将一个Excel表格文件中的数据导入到Python中,并将其通过字典格式来存储的方法。  我们以如下所示的一个表格(.xlsx格式)作为简单的示例。其中,表格共有两列,第一列为学号,第二列为姓名,且每一行的学号都不重复;同时表格的第一行为表头。  假设我们需要将第一列的学号数据作为字典的键,而第二列姓名数据作为字典的值。  首先,导入必要的库。fromopenpyxlimportload_workbook  随后,列出需要转换为字典格式数据的Excel文件的路径与名称,以及数据开头所在行、数据的总行数。在这里,由于第一行是表头,因此开头所在行look_up_t

Python导入Excel表格数据并以字典dict格式保存

  本文介绍基于Python语言,将一个Excel表格文件中的数据导入到Python中,并将其通过字典格式来存储的方法。  我们以如下所示的一个表格(.xlsx格式)作为简单的示例。其中,表格共有两列,第一列为学号,第二列为姓名,且每一行的学号都不重复;同时表格的第一行为表头。  假设我们需要将第一列的学号数据作为字典的键,而第二列姓名数据作为字典的值。  首先,导入必要的库。fromopenpyxlimportload_workbook  随后,列出需要转换为字典格式数据的Excel文件的路径与名称,以及数据开头所在行、数据的总行数。在这里,由于第一行是表头,因此开头所在行look_up_t

Kaldi搭建语音识别系统—发音词典相关文件准备

Kaldi搭建语音识别系统实践——发音词典相关文件准备在上一篇文章,我们讲述了如何利用kaldi进行声学特征的提取,以及当前比较流行的声学特征(MFCC)。语音识别系统除了声学特征外,还有需要音素、发音词典、声学单元及kaldi识别的格式*.fst等文件发音词典开源普通话数据集aishell为我们提供了发音词典,如下所示该发音词典主要采用声韵母结构,其中a1中数字代表声调,常用的声调有5种,分别阴平、阳平、上声、及去声,外加一个轻声;而对于静音或者噪音,则统一采用SIL(silent的3个首字母)来表示。声学单元kaldi中关于声学单元有四种文件,在data/local/dict目录下,由脚本

Kaldi搭建语音识别系统—发音词典相关文件准备

Kaldi搭建语音识别系统实践——发音词典相关文件准备在上一篇文章,我们讲述了如何利用kaldi进行声学特征的提取,以及当前比较流行的声学特征(MFCC)。语音识别系统除了声学特征外,还有需要音素、发音词典、声学单元及kaldi识别的格式*.fst等文件发音词典开源普通话数据集aishell为我们提供了发音词典,如下所示该发音词典主要采用声韵母结构,其中a1中数字代表声调,常用的声调有5种,分别阴平、阳平、上声、及去声,外加一个轻声;而对于静音或者噪音,则统一采用SIL(silent的3个首字母)来表示。声学单元kaldi中关于声学单元有四种文件,在data/local/dict目录下,由脚本

openwrt临时封禁ip

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2280端口映射到公网,发现经常被暴力破解,自己写了个临时封禁ip功能的脚本,实现5分钟内同一个ip登录密码错误10次就封禁这个ip5分钟,并且进行邮件通知使用步骤openwrt为19.07.03版本,其他版本没有测试过安装bashmsmtpopkgupdate;opkginstallbashmsmtp添加脚本/root/port-security.sh,内容参考下面附件,主要修改通知的邮箱脚本增加执行权限chmoda+x/root/port-security.sh添加定时任务crontab-e,10分钟执行一次脚本,如果脚本已经