NER项目 P6 DataLoader句子填充PAD和MASK
经过上一步的处理,我们将长文本切分成了单句,但每个句子长度又不完全一样。在批处理时,要求每个batch的句子长度必须一致,所以我们需要填充 PAD,来保证句子每个batch的句子长度一样。
另外,在后续模型 CRF 阶段计算损失时,可以通过MASK,将填充的 PAD 数值忽略掉,以消除填充值 PAD 的影响。
综上,我们需要在 DataLoader 批量加载数据阶段,填充 PAD 来保证批数据长度一致,且需要记录 MASK。
代码示例
1、添加配置项
内容不可见,请联系管理员开通权限。
2、DataLader()
内容不可见,请联系管理员开通权限。
3、数据校对整理
先按句子长度从大到小排序,获取最大长度,其他句子填充到跟他一样长。
内容不可见,请联系管理员开通权限。
本文链接:http://www.ichenhua.cn/edu/note/458
版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!