上节课我们提到,为了提高模型准确率,后面我们会把多标签和单标签两个模型结合,做成一个 pipline 的联合模型,所以我们先把之前的单标签模型,替换一下数据集,重新训练一个当前数据集对应的模型文件出来备用。同时,这个过程也是大家学完这个课程之后,用这个模型来训练自己的数据的流程,这里顺便给大家演示一下。

Bug修复

1、squeeze()导致的报错

max_pool2d 之后,输出 tensor.shape = [10, 256, 1, 1],之后的 squeeze(),正常情况下会压缩 tensor 的最后两维,变成 [10, 256]。但如果是我们的训练数据是101条,batch_size = 10,最后一次就只剩下一条数据,max_pool2d 输出 tensor.shape = [1, 256, 1, 1],再经过 squeeze(),会变成 [256],后续程序会报错,所以我们需要改为只压缩最后两维。

内容不可见,请联系管理员开通权限。

2、Python版本导致语法改动

如果 iter(dev_loader).next() 方法报错,可以修改为 next(iter(dev_loader))。

数据预处理

1、修改配置项

内容不可见,请联系管理员开通权限。

2、label文本转数字函数

内容不可见,请联系管理员开通权限。

3、category文本转id

内容不可见,请联系管理员开通权限。

4、统计长度

内容不可见,请联系管理员开通权限。

经过以上处理之后呢,我们就把原始标注文件中的文本,转化成了 label_id,后面转换目标值,就可以直接调用 labels 了。

本文链接:http://www.ichenhua.cn/edu/note/562

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!