整理一些之前的笔记,有的不一定对,也希望大家看到有问题的地方多多指出,非常感谢~~
1. 全连接层:
神经元个数增加,模型复杂度提升,全连接层数加深,模型非线性表达能力提高。
2. batchsize
在机器翻译中,用更大的batch size配合更大学习率能提升模型优化速率和模型性能
参考自:https://cloud.tencent.com/developer/news/460855
3. RoBERTa和BERT对比
整体效果 RoBERTa>XLNET>BERT
参考: https://www.jianshu.com/p/eddf04ba8545
4. 深度学习参数理解——warmup_proportion
Warmup是在ResNet论文中提到的一种学习率预热的方法,它在训练开始的时候先选择使用一个较小的学习率,训练了一些epoches或者steps(比如4个epoches,10000steps),再修改为预先设置的学习来进行训练。
由于刚开始训练时,模型的权重(weights)是随机初始化的,此时若选择一个较大的学习率,可能带来模型的不稳定(振荡),选择Warmup预热学习率的方式,可以使得开始训练的几个epoches或者一些steps内学习率较小,在预热的小学习率下,模型可以慢慢趋于稳定,等模型相对稳定后再选择预先设置的学习率进行训练,使得模型收敛速度变得更快,模型效果更佳。
参考链接:https://blog.csdn.net/sinat_36618660/article/details/99650804
5. 激活函数
softmax用来做多分类,sigmoid做二分类。多标签就是多个softmax或者多个sigmoid
6. 标准化
Bert lN可以和dropout一起用
BN不可以和dropout一起用
7. 蒸馏
模型蒸馏, 设置温度T, 大模型logits 训练小模型。 loss 需要乘T方
数据蒸馏, n折交叉验证
参考 https://blog.csdn.net/zc199329/article/details/100726712
8. tensorboard 查看loss
CUDA_VISIBLE_DEVICES=7 tensorboard --logdir=/home/zhuyuanqing/resources/legal/cail/runs/1559284939/summaries/train
看loss