什么是NLP?
自然语言处理(Natural Language Processing, 简称NLP), 是计算机科学与语言学中关注于计算机与人类语言间转换的领域, 简单来说就是让计算机识别并理解我们人类的语言,帮助我们完成一些类似翻译、问答等任务,NLP解决文本任务但并不限于文本,语音识别、看图说话等领域也属于NLP任务。
计算机科学之父图灵在1950年发表的论文中提出“Can machines thinking?”这一划时代的问题,从此促成了人类语言与计算机科学的交融。在1957~1970年间,NLP领域开始形成两大阵营:基于规则和基于统计,直到1994~1999年,基于统计的方法逐渐取得胜利,概率计算开始引入到NLP领域的每个任务中。在2015年之前,NLP的解决方案都来源于机器学习,而2015年到至今,深度学习技术深刻改变NLP的未来。
NLP 常见任务
场景:设想你现在拿到一张英语试卷,会有哪些题目呢?
- 判断题:对应NLP任务中分类任务,如情感分析等
- 完形填空:对应NLP任务中的MLM任务
- 排序:预训练语句顺序打乱, 排序
- 阅读理解:对应NLP任务中阅读理解
- 翻译: 对应NLP任务中的机器翻译
- 写作:对应NLP任务中的文本生成
NLP解决上述任务的流程:数据获取 -> 文本预处理 ->模型构建 ->模型训练和评估 -> 模型测试 ->模型保存
其中重点内容就是文本预处理和模型构建的过程,文本预处理的程度决定了数据的优质程度,数据越好,越能达到预期,同样模型就类似人的大脑,越聪明,学习的越快,对数据的理解越深刻。