经过上一步的处理,我们将长文本切分成了单句,但每个句子长度又不完全一样。在批处理时,要求每个batch的句子长度必须一致,所以我们需要填充 PAD,来保证句子每个batch的句子长度一样。

另外,在后续模型 CRF 阶段计算损失时,可以通过MASK,将填充的 PAD 数值忽略掉,以消除填充值 PAD 的影响

综上,我们需要在 DataLoader 批量加载数据阶段,填充 PAD 来保证批数据长度一致,且需要记录 MASK。

代码示例

1、添加配置项

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

2、DataLader()

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

3、数据校对整理

先按句子长度从大到小排序,获取最大长度,其他句子填充到跟他一样长。

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

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

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