【Python机器学习】NLP概述——聊天机器人的自然语言流水线

构建对话引擎或者聊天机器人所需的NLP流水线类似于某些问答系统。

聊天机器人需要4个处理阶段和一个数据库来维护过去语句和回复的记录。这4个处理阶段中的每个阶段都可以包含一个或多个并行或串行工作的处理算法。如下图所示:

1、解析:从自然语言文本中提取特征、结构化数值数;

2、分析:通过对文本的情感、语法合法度及语义打分,生成和组合特征;

3、生成:使用模板、搜索或语言模型生成可能的回复;

4、执行:根据对话历史和目标,规划相应语句,并选择下一条回复。

上述4个阶段中的每个阶段都可以使用框图中相应框中列出的一个或多个算法来实现。大多数聊天机器人将包含这5个子系统(4个处理阶段加上数据库)的所有元素,但是很多应用程序针对其中多个步骤只需要简单的算法。有些聊天机器人更擅长回答事实型问题,而其他一些则更擅长做出冗长、复杂、令人信服的像人一样的回复。上述提到的每一种能力都需要不同的方法。

此外,深度学习和数据驱动编程(机器学习或概率语言模块)使NLP和聊天机器人的应用迅速多样化。这种数据驱动的方法通过NLP流水线提供越来越多的期望得以应用的领域中的数据使其更加复杂。当一种新的机器学习方法被发现能够更好地利用这些数据进行更有效的模型泛化或正则化时,那么就有可能实现能力的巨大飞跃。

上图展示的聊天机器人NLP流水线包含了大多数NLP应用程序的所有构建模块。我们将流水线划分为4个主要的子系统或阶段。此外,我们还显式地调用了一个数据库来记录每个阶段所需的数据,并随着时间的推移保存这些阶段的配置和训练集。这可以在聊天机器人与外界进行交互时对每个阶段进行批量或在线再训练。我们还在生成的文本回复上给出了一个反馈循环,以便使用与处理用户语句相同的算法来处理我们的回复。然后,根据聊天机器人的对话规划或目标,将回复的得分或特征融合都按一个目标函数中,以评估和选择可能的最佳回复。

上述流水线在金融预测或商业分析方面的应用可能不那么明显,但是想象一下流水线分析部分生成的特征。这些从分析或特征生成中得到的特征可以针对具体的金融或商业预测任务进行优化。通过这种方式,就可以将自然语言数据输入到机器学习流水线中进行预测。

在上图中有一个处理要素通常不会用于搜索、预测或问答系统,这就是自然语言生成。而对聊天机器人来说,这是它的核心特征。尽管如此,文本生成步骤经常被合并到搜索引擎NLP应用程序中,这可以为这样的引擎带来巨大的竞争优势。对很多流行的搜索引擎来说,整合或概括搜索结果的能力是一项制胜特征。可以想象,如果一个金融预测引擎能够根据它从社交媒体网络或新闻源中的自然语言流中检测的金融业务活动生成语句、推文或整篇文章,那将非常有价值。

相关推荐
Python大数据分析@12 分钟前
python操作CSV和excel,如何来做?
开发语言·python·excel
黑叶白树13 分钟前
简单的签到程序 python笔记
笔记·python
北京搜维尔科技有限公司14 分钟前
搜维尔科技:【应用】Xsens在荷兰车辆管理局人体工程学评估中的应用
人工智能·安全
说私域17 分钟前
基于开源 AI 智能名片 S2B2C 商城小程序的视频号交易小程序优化研究
人工智能·小程序·零售
YRr YRr17 分钟前
深度学习:Transformer Decoder详解
人工智能·深度学习·transformer
知来者逆22 分钟前
研究大语言模型在心理保健智能顾问的有效性和挑战
人工智能·神经网络·机器学习·语言模型·自然语言处理
Shy96041826 分钟前
Bert完形填空
python·深度学习·bert
云起无垠31 分钟前
技术分享 | 大语言模型赋能软件测试:开启智能软件安全新时代
人工智能·安全·语言模型
上海_彭彭37 分钟前
【提效工具开发】Python功能模块执行和 SQL 执行 需求整理
开发语言·python·sql·测试工具·element
老艾的AI世界44 分钟前
新一代AI换脸更自然,DeepLiveCam下载介绍(可直播)
图像处理·人工智能·深度学习·神经网络·目标检测·机器学习·ai换脸·视频换脸·直播换脸·图片换脸