使用原NLC训练CSV数据迁移Watson NLC至NLU的训练报错问题咨询
Watson NLC 迁移至 NLU 训练问题解决方案
1. 原有NLC训练CSV适配NLU的处理要求
原有Watson NLC的训练CSV不能直接复用在NLU,需要做如下调整:
- 列结构调整:NLC支持最多3列(文本、标签、可选置信度),NLU仅允许两列,第一列为文本内容,第二列为分类标签,所有额外列必须删除,且不得包含表头行
- 格式规范:删除文件内所有空行、文本字段内未转义的逗号/换行符,若文本内包含双引号需成对使用反斜杠转义,文件编码统一使用UTF-8无BOM格式
- 多标签拆分:如果原有NLC数据存在单条文本对应多个标签的情况,需要拆分为多条独立数据,每条数据仅对应1个标签(NLU默认单标签分类训练不支持单样本多标签)
- 样本量校验:提前统计每个标签对应的有效样本数,保证所有标签的样本量均≥5
2. 两类报错的最优解决方法
2.1 报错:Training data validation failed: Too few examples for label XXXX. Minimum of 5 required
该报错为数据校验不通过,按如下顺序处理:
- 先排查对应XXXX标签的样本是否存在格式错误(如标签列错位、空值、乱码)导致系统未识别为有效样本,修正格式后重新提交
- 若确认该标签有效样本确实不足5条,补充至少3条以上语义相似的同标签训练文本,保证有效样本数≥5
- 若该标签为废弃标签,直接删除所有对应样本即可
2.2 报错:internal training error occurred, please try again
该类内部报错绝大多数由训练数据不符合NLU要求导致,按如下顺序排查:
- 首先按照上述1中的CSV适配要求全量校验训练文件,修正所有格式问题后重新提交训练
- 若调整格式后仍报错,检查总训练样本量:NLU单分类模型总样本需控制在50条到10万条之间,若原有NLC训练集规模不符合要求,调整样本量到合理区间后重试
- 若以上操作均无效,更换当前NLU实例所属的可用区域后重新提交训练,规避单区域服务临时故障
内容的提问来源于stack exchange,提问作者kazuki
相关产品推荐
相关产品推荐

