TextCNN项目 P11 多标签数据集的数据预处理
上节课我们提到,为了提高模型准确率,后面我们会把多标签和单标签两个模型结合,做成一个 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://edu.ichenhua.cn/edu/note/562
版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!