基于句子长度的批量数据预处理流程图

该思维导图描述了数据处理流程,主要针对批次数据进行预处理。流程首先对句子按长度排序,找到最长句子长度,然后初始化输入、目标和掩码列表。之后遍历每个句子,计算需要填充的长度,并使用填充标记对输入句子和目标标签进行补齐,同时生成掩码张量,指示实际数据和填充部分。最后返回补齐后的输入张量、目标张量和掩码张量,用于后续模型训练或处理。整个流程确保了批次数据长度一致,方便模型处理。

源码
# 基于句子长度的批量数据预处理流程图
## 对批次数据进行排序
- 根据句子长度排序
  - 升序排列
  - 降序排列
## 得到最长句子长度
- 确定批次中最长句子的长度
  - 找到所有句子的最大长度
  - 记录最长句子的索引
## 初始化输入、目标和掩码列表
- 初始化三个空列表
  - 补齐后的输入句子
    - 存储处理后的句子
  - 目标标签
    - 存储与句子对应的标签
  - 掩码信息
    - 指示数据有效性
## 遍历批次中的每个句子
- 对每个句子进行处理
  - 逐句操作
  - 更新索引
## 计算补齐长度
- 长度 = 最长句子长度 - 当前句子的长度
  - 确保补齐逻辑
  - 考虑特殊情况
## 补齐输入句子
- 使用填充标记进行补齐
  - 填充字符选择
  - 在句子末尾添加填充
## 补齐目标标签
- 确保目标标签长度一致
  - 同样应用填充逻辑
  - 验证标签完整性
## 生成掩码
- 创建掩码张量
  - 布尔值数组
    - 真 = 实际数据
    - 假 = 填充
  - 掩码形状与输入一致
## 返回补齐后的张量
- 返回输入张量、目标张量和掩码张量
  - 输出格式整理
  - 准备后续处理
图片
基于句子长度的批量数据预处理流程图