基于客户评论的问答系统构建指南
在问答系统的构建中,从客户评论中提取潜在答案是关键的第一步。例如,当问题是“它防水吗?”,而评论内容为“这款手表在30米深度防水”时,模型应输出“在30米深度防水”。为了实现这一目标,我们需要掌握以下几个方面:
1. 构建监督学习问题
2. 对问答任务的文本进行分词和编码
3. 处理超过模型最大上下文大小的长文本段落
1. 跨度分类
最常见的从文本中提取答案的方法是将问题构建为跨度分类任务,即模型需要预测答案跨度的起始和结束标记作为标签。由于训练集相对较小(仅1295个示例),一个好的策略是从已经在大规模问答数据集(如SQuAD)上进行微调的语言模型开始。这些模型通常具有较强的阅读理解能力,可以作为构建更精确系统的良好基础。
可以通过访问Hugging Face Hub并在“Models”标签中搜索“squad”来找到一系列提取式问答模型。选择合适的模型取决于多种因素,如语料库是单语言还是多语言,以及在生产环境中运行模型的限制。以下是一些在SQuAD 2.0上进行微调的基础Transformer模型:
| Transformer | 描述 | 参数数量 | SQuAD 2.0上的F1分数 |
| — | — | — | — |
| MiniLM | BERT-base的蒸馏版本,保留99%的性能,速度快两倍 | 66M | 79.5 |
| RoBERTa-base | RoBERTa模型比BERT模型性能更好,可使用单个GPU在大多数问答数据集上进行微调 | 125
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



