开发
judgechen1997
这个作者很懒,什么都没留下…
展开
-
关于模型分成多部分时的torch.optim优化设置
上次写代码时,backbone encoder是用了别人代码,另外又添加了多分支多layer作为task decoder。但是开始犯了个很致命的错误,在pytorch设置优化器时,仅使用了:optimizer = torch.optim.Adam(model.parameters(), lr=args.lr, weight_decay=args.weight_decay)这样实际上只优化了部分模型,应该这样设置:optimizer = torch.optim.Adam([{'params': mo原创 2020-09-14 17:18:46 · 862 阅读 · 0 评论 -
Python val() 通过字符串对应至同名变量
eval()函数可以方便的在python中,通过字符串访问变量名。方便代码中提取特定的一系列变量名相近的变量。在写Pytorch的一套代码(GPS DlinkNet_fusion),想要提取ResNet中的layer1、layer2、layer3、layer4. 一句一句的写代码太多,又不太雅观。这时候可以用val() 通过字符串对应至同名变量。简单例子,提取resnet.layer1,resnet.layer2,…resnet = models.resnet34(pretrained=True)b原创 2020-05-21 18:16:44 · 4402 阅读 · 0 评论 -
with torch.no_grad(): 可显著减少显存占用
模型训练的时候,爆显存了,可以调整batch,对数据进行crop等等操作今天发现一个模型,每次测试的时候爆显存,开始以为原因是用了全图(1920x1080略大)进行inference。这是一方面,但后来发现忘了用with torch.no_grad():这导致模型运算的时候不能释放显存(记录了梯度信息),所以显存巨大。加了之后,不过3G显存就够了。。确实inference不需要那么多显存的,以后记着这种不正常现象如何处理。...原创 2020-05-21 00:49:02 · 5223 阅读 · 6 评论 -
Python获取当前目录下所有文件的绝对路径并放在list中
os.listdir(path) 只能获取某个路径下所有的文件名字的list,而有时候需要获得该路径下所有的文件的绝对路径,一种简单的方法是:root = '/media/Disk/ShanghaiTech/'path = os.path.join(root, 'part_A_final', 'train_data', 'images')filenames = os.listdir(path...原创 2019-09-15 14:51:10 · 14023 阅读 · 1 评论 -
安装pytorch
安装pytorch的命令是pip install torch==0.4.0 torchvision==0.2.0不要打成pytorch=0.4.0了原创 2019-10-10 18:52:19 · 215 阅读 · 0 评论