python
字符串反转
1
2
3s1="".join((lambda x:(x.sort(),x)[1])(list(s)))
# 或者
s1=s1[::-1]列表反转
1
s1=s[::-1]
求字典前n个最大值对应的键
1
return nlargest(k,hashmap,key=lambda k:hashmap[k])
查找当前目录的根目录,子目录以及文件信息
1
for root,dirs,files in os.walk(dir_name):
退出程序
1
sys.exit(0)
pytorch
增加GPU利用率,尽量保证batch_size将GPU显存占满,但是过大的batchsize可能会导致模型不稳定
增加cpu读取数据的线程,num_workers可以选择4,8,16,使能pin_memory,增加GPU利用率
1
2from torch.utils.data import DataLoader
train_loader = DataLoader(train_dataset, batch_size=args.bs, shuffle=False,num_workers=4,pin_memory=True)- 构建模型,初始化
1
2
3
4
5
6class Your_Module(nn.Module):
def __init__(self):
# 显示继承nn.Module的构造函数
super(Your_Module,self).__init__()
def forward(self,x):
pass
C
C++
ubuntu
查看英伟达显卡利用率
1
nvidia-smi
后台不挂断运行,输出当前进程的pid
1
nohup command &
关闭进程
1
kill -9 pid
查看进程
1
2jobs -l
ps -aux|grep python
深度学习工程结构
创建project目录,应包含以下几点:
- data.py 负责数据导入模块,Dataset类以及DataLoader类
- utils.py 模型的一些预处理以及一些常用的工具
- model.py 模型的核心部分,包含所有模型的子模块
- train.py 训练函数
- inference.py 测试(推断)函数
- csrc文件夹 放置一些C/C++编译的加速库
如果模型比较复杂,可以考虑使用文件夹的方式而不是用单个文件
myblog
本地部署演示,默认部署ip:127.0.0.1:4000
1
npm run start
创建新文章
1
hexo n "new article"
显示部分页面
1
<!--more-->
创建新页面
1
hexo new page "page name"
此外,需要在主题配置文件中设置链接格式
远程部署
1
npm run deploy