[每周碎片知识] 1

  • nn对参数的初始化方式非常敏感,我用randn初始化时,怎么都不收敛(即便是只有一条数据的训练集),后来用xavier_uniform_之后结果大大改善。
for name, params in xlnet.named_parameters():
    if params.dim() >1:
        torch.nn.init.xavier_uniform_(params)
        print(name)
  • 去掉极端数据(非常长但是个数很少的句子)可以显著提高GPU的利用率
  • 当CNN遇到CTC,哪些因素会影响模型的收敛?

CNN的kernal size和stride会影响模型的收敛,ks尽量大一些,stride应当接近或低于ks的一半。

一个极端的例子:ks=3,stride=2,很难收敛,因为帧与帧之间有很高的相似性,这样卷积后不同帧之间的差别就更小了,不利于后续的分类。

  • pytorch查看模型参数量:
model = Model()
print('total parameters:', sum(param.numel() for param in model.parameters()))
  • low gpu util  遇到这种问题尽量不要用下面的代码显式删除变量
del loss,targets_mask,targets,input_q,target_mapping,perm_mask,input_mask,input_k
torch.cuda.empty_cache()    
self.q_proj_weight = nn.Parameter(torch.randn(self.n_layer, self.d_model,
                                                      self.n_head, self.d_head))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值