实验感悟
唐僧爱吃唐僧肉
这个作者很懒,什么都没留下…
展开
-
总结:阅读transformer结构的t5源代码的经验
阅读transformers中的t5结构经验1.用笔在纸上画出结构,哪一部分接着跟着哪一部分2.把握关键的操作3.刚开始按顺序读代码,把握脉络之后抓住重点的结构对于代码的改变1.用笔在纸上画出结构,哪一部分接着跟着哪一部分因为t5总体的结构比较复杂,所以必须使用纸和笔画出结构之后,画出每一部位结构进行的操作,读代码的过程才会更清晰2.把握关键的操作比如在attention之中重点就是key和value对于原来值的更改,所以只有把握了重点语句的操作过程,才能明白原理。3.刚开始按顺序读代码,把握脉络原创 2021-11-28 15:12:38 · 961 阅读 · 0 评论 -
训练过程不可复现原因解决
今天在打比赛的过程中,发现代码不能够复现是一个很头痛的问题,相同的代码在同样的电脑上跑两次结果不一样,查阅资料之后发现,可以通过如下的方式解决:torch.manual_seed(seed)torch.cuda.manual_seed(seed)torch.cuda.manual_seed_all(seed) # if you are using multi-GPU.np.random.seed(seed) # Numpy module.random.seed(seed) # Python原创 2021-10-06 17:40:36 · 2028 阅读 · 0 评论 -
预训练之后分数较低排查错误
达观杯预训练之后分数较低使用标准的tensorflow中的预训练过程进行比较最近在预训练完达观杯基于大规模预训练模型的风险事物标签识别的题目之后,发现分数较低,排查错误的过程整理为一篇对应论文。使用标准的tensorflow中的预训练过程进行比较这里我们首先使用tensorflow之中的微调过程进行比对,训练的结果如下Epoch 1/202021-09-19 16:34:15.721296: I tensorflow/stream_executor/cuda/cuda_blas.cc:1760]原创 2021-09-19 20:26:01 · 2046 阅读 · 0 评论 -
出现一级标签以及二级标签的时候,需要仔细研究标签总的出现次数,因为可能有废标签的产生
最近在参加第五届“达观杯” 基于大规模预训练模型的风险事件标签识别比赛之中,题目要求的是一级标签10个,二级标签35个,看似总共是350个标签。所以这里可以用一个set统计出现的标签,然后只需要预测训练集合中出现的标签即可,如果训练集合中未出现过该标签,那么我们不会得到关于这个标签的任何信息,预测的时候也不会预测出来这个标签...原创 2021-09-15 09:24:32 · 499 阅读 · 0 评论 -
预训练之后微调出现的参数一致(总结:模型训练输出一致有模型的参数问题或者模型的结构问题)
预训练之后微调参数一致设想问题1,后面的padding出现问题今天训练之后发现了相应的问题,即预训练之后微调出现的参数一致。设想问题1,后面的padding出现问题inputs = {'input_ids': tensor([[ 2, 136, 4, 149, 149, 38, 171, 4, 2062, 3, 16, 23, 148, 4, 8249, 3], [ 2, 33, 3044, 130,原创 2021-09-11 21:45:07 · 573 阅读 · 1 评论 -
不同的参数经过模型之后输出的参数相同时,则模型训练之后输出的参数必然相同
今天在训练模型的时候出现了状况,不同的参数经过模型之后输出的预测数值相同。model.eval()output = model(torch.tensor([[ 101, 403, 2033, 2011, 2151, 1003, 2017, 1005, 1040, 102], [ 101, 102 , 103, 104 , 105 , 106 , 107 , 108 , 109 , 112]]), torch.tensor([原创 2021-09-09 11:25:09 · 866 阅读 · 0 评论 -
模型参数无法更新的原因:训练、预测中加入了print函数
今天下午编写代码的时候,发现不同的输入输出内容几乎一致for epoch in range(1): print('epoch {}'.format(epoch+1)) train_loss = 0 train_acc = 0 device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu") model.train() model = model.to(device) mod原创 2021-08-30 18:03:13 · 4328 阅读 · 0 评论 -
线上和线下差六个点以上(线上和线下差距过大)
之前比赛的时候发现线上和线下差距过大,仔细查看才发现使用的指标错误,线上使用的指标为f1-score的f1得分内容,而我使用的指标却是(精确率+召回率+f1-score)/3的平均得分值,这一指标使用的错误导致我最终线上和线下差了六个点,线上和线下差距过大。...原创 2021-07-23 23:21:30 · 334 阅读 · 0 评论 -
验证集分数很高但最后的测试集合分数很低
今天编程的时候,发现训练的时候验证集分数很高但是最后的测试集合分数很低,经过细心比对发现是在编写测试集的预测的时候程序没有编写正确原创 2021-07-21 22:37:25 · 3087 阅读 · 2 评论 -
SparseCategoricalAccuracy低的情况下,得到的f1_score不一定很低。
今天的实验之中,发现SparseCategoricalAccuracy低的情况下,得到的f1_score不一定很低。放出实验结果Epoch 1/202133/2133 [==============================] - 883s 396ms/step - loss: 0.5979 - acc: 0.3773 0%| | 0/10243 [00:00<?, ?it/s]len train = 92187len test = 10243100%原创 2021-07-21 15:48:34 · 988 阅读 · 0 评论