CN109947928A - 一种检索式人工智能问答机器人开发方法 - Google Patents
一种检索式人工智能问答机器人开发方法 Download PDFInfo
- Publication number
- CN109947928A CN109947928A CN201910304261.5A CN201910304261A CN109947928A CN 109947928 A CN109947928 A CN 109947928A CN 201910304261 A CN201910304261 A CN 201910304261A CN 109947928 A CN109947928 A CN 109947928A
- Authority
- CN
- China
- Prior art keywords
- question
- artificial intelligence
- answer
- question sentence
- word
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种人工智能问答机器人开发方法,通过将对话语料库上传云端,可以对问句主题进行无监督学习,自动对问句主题聚类,并将聚类结果以多种形式持久化,作为深度学习分类器的训练数据。深度学习分类器会对用户的提问进行主题分类,计算相似度和阈值进行比对,若超过阈值则判定为已学习的问题,并检索给出对应的回答。在训练过程中提供了可视化的界面来衡量训练质量,问句分类准确度可达95%以上。本发明通过训练,可以对一些常识性问题进行作答,无需问答机器人语料人工标注过程,且能够通过可视化界面进行超参数调优,极大提高了问答机器人的开发效率和分类准确性,可用于“智能客服”、“聊天助手”等实际应用中。
Description
技术领域
本发明涉及一种检索式人工智能问答机器人开发方法。
背景技术
问答机器人是自然语言处理中的一个重要应用。随着人工智能的发展,问答机器人的实现方式从传统的基于规则匹配,发展成了基于人工智能的问答机器人。基于人工智能的问答机器人相较传统的基于规则匹配优势非常明显:一、对问句的泛用性和鲁棒性更强,更贴近人类的使用习惯。二、无需维护海量的规则库,维护成本更低。
当前,人工智能的问答机器人主要有两种实现方式,基于检索式的问答机器人和基于Sequence to Sequence(序列到序列)模型的问答机器人,其中,基于检索式的问答机器人是当前学术及业内问答机器人研发领域的焦点,因为相较于基于Sequence toSequence的问答机器人,基于检索式的问答机器人具有能够面向具体任务且答案更具可靠性的特点,能够被应用于“智能客服”、“智能助手”等实际业务场景中。
当前的“检索式”问答机器人基于支持向量机(SVM)、梯度提升树(GDBT树)等机器学习算法对问句进行分类,根据分类结果在预先构筑的知识图谱中检索对应答案。答案和问题的匹配度取决于算法的分类精确度。而传统的机器学习分类算法的精确度比较有限,通常仅为80%左右,且需要依赖大量的问句语料标记,十分耗时。而且诸如SVM等算法在超参数的选取方面没有固定章法可循,在诸如选取核函数的操作中十分考验开发人员的经验和运气成分。这些直接影响了问答机器人的开发效率和结果的准确性。
由于深度神经网络具有极高的文本分类精确度,通常能达到90%以上,因此经常用于代替传统机器学习算法作分类。但深度神经网络本身具有“黑盒”特性,超参数的调整较难,且也需要大量的问句人工标注,开发效率较低。基于深度神经网络的“检索式”问答机器人也少见文献报导。
发明内容
为了解决上述现有技术中的缺陷,本发明提供一种检索式人工智能问答机器人开发方法,该方法包含以下步骤:
步骤1、云端上传文本形式的一问一答对话语料,并进行数据预处理;
步骤2、对预处理完成的问句使用Lancaster词干提取算法提取词干,再转换成词向量;
步骤3、对问句词向量调用LDA主题聚类算法进行聚类;
步骤4、将聚类结果保存在存储器中,以供神经网络分类器训练使用;
步骤5、使用Lancaster词干提取算法和深度神经网络问句分类算法,借助通过读取训练日志作成的可视化界面对聚类结果进行训练,并以文本形式保存分类模型。
优选地,所述步骤1中,数据预处理的步骤包含:
步骤11、根据不同的前缀区分问句和答句,形成问句-答句一问一答的格式;
步骤12、将文本形式的问句转换成一个由词汇组成的列表,以便于后续处理;
步骤13、通过停用词表,在文本中去掉对文本分析起不到任何的帮助的虚词、代词或者没有特定含义的动词、名词。
优选地,所述步骤2通过词频-逆文本频率来转换成词向量;
所述的词频是问句中各个词的出现频率统计;
所述的逆文本频率是指一个词在所有文本中出现的频率;
词频-逆文本频率=词频*逆文本频率。
优选地,所述的逆文本频率的表达式为
其中,N代表语料库中问句的总数;N(x)代表语料库中包含词x的文本总数。
优选地,步骤3中的LDA主题聚类算法使用词云和条形图进行可视化调参,选取最优参数。
优选地,在步骤4中的聚类结果存储形式包含JSON,关系型数据库,二维表。
优选地,所述步骤5中,训练的过程使用十折交叉验证的方法。
优选地,在步骤5中所述的深度神经网络问句分类算法,在输入层进行了Lancaster词干提取,隐藏层大小等于语料库中的词干数目,输出层classifier选用softmax函数,损失函数选择交叉熵损失函数,且激活函数选用RELU函数,并通过Adam迭代优化器及反向传播算法更新各节点权重使得损失函数取得最小值。
优选地,对上述步骤来得到训练模型的机器人提问时,机器人生成答复的过程包含如下步骤:
S1、从前端读取问句,使用Lancaster词干提取算法后,代入于所述的训练模型中进行分类,并计算问句和语料模型中问句的相似度;
S2、判断所述的相似度是否超过阈值;若超过阈值,则根据分类结果,检索生成对应的回答;若未超过阈值,则将问句判定为未学习内容。
优选地,所述的相似度是问句中的词向量与步骤3生成的测试集中词向量的余弦相似度;
所述阈值为问句词向量和训练集词向量的最低余弦相似度阈值。
本发明具有以下优点及效果:
1、提高了人工智能问答机器人开发的便利性,无需人工对问题进行标注,直接通过聚类算法训练问题集,再交由神经网络分类器进行训练。可通过可视化界面观察训练过程、调整超参数,更直观便捷。
2、提高了问句主题聚类及分类模型的准确性。利用Lancaster词根提取方法,能够更有效提取文本中词语的特征并达到降维的目的。通过TF-IDF(即“词频-逆文本频率”)加权算法能够更好地反映词对主题的贡献度。分类算法选用深度神经网络算法,能够在测试集上达到97%以上的问句分类精确度。
3、保障了答案匹配判断结果的可靠性。通过余弦相似度计算输入问句和语料库中的相似度并与最小相似度阈值比较来分类置信度,提高了答案匹配结果的可靠性。
4、该开发方法可以无监督地从问句-答句语料库中进行训练和学习,而无需人工标注问句类型。
附图说明
图1是本发明的检索式人工智能问答机器人训练模型生成流程图;
图2是对训练后的检索式人工智能问答机器人提问后机器人生成答复的流程图。
具体实施方式
以下根据图1,具体说明本发明的较佳实施例。
如图1所示,本发明提供一种检索式人工智能问答机器人开发方法,该方法包含以下步骤:
步骤1、云端上传文本形式的一问一答对话语料,并进行数据预处理。
此处提到的数据预处理,具体包含以下步骤:
步骤11、根据不同的前缀区分问句和答句,形成问句-答句一问一答的格式;
步骤12、将文本形式的问句转换成一个由词汇组成的列表,以便于后续处理;
步骤13、通过停用词表,在文本中去掉对文本分析起不到任何的帮助的虚词、代词或者没有特定含义的动词、名词。
步骤2、对预处理完成的问句使用Lancaster(兰卡斯特)词干提取算法提取词干,再转换成词向量。
所述的Lancaster是一种词干提取算法,比如doing和done,decide和decision具有相同的词干(do和deci-),因此具有相近的含义,在处理的时候可以合并成相同的情况进行处理,以达到降维及提取词汇所含信息的目的。
转换成词向量的方法是通过词频-逆文本频率来转换;所述的词频是问句中各个词的出现频率统计;所述的逆文本频率是指一个词在所有文本中出现的频率。
词频-逆文本频率=词频*逆文本频率;相比单纯地通过词频,本发明方法通过乘以逆文本频率来削弱常用词的影响;比如“我”这个词在所有文本中经常出现,词频很高,但是对确定该文本属于哪个主题,帮助不大。
所述的逆文本频率通过下列公式计算:
其中,N代表语料库中问句的总数,N(x)代表语料库中包含词x的文本总数。如果一个词在很少的文本中大量出现,那么它更能反映该文本倾向于表达某种主题,在计算逆文本频率时分子分母同时+1避免分母为0的情况出现。
步骤3、对问句词向量调用LDA(Latent Dirichlet Allocation)主题聚类算法进行聚类。
LDA主题聚类算法是一种对海量文本的聚类算法,算法描述如下:初始时,随机给文本中的每个单词w分配主题z;然后统计每个主题z下出现termt的数量分布以及每个文档m下主题z的数量分布;然后排除当前词的主题分配,根据其他所有词的主题分配估计当前词的主题;用同样的方法不断更新下一个词的主题,直至每个文档下主题的分布以及每个主题下词的分布收敛,算法停止。
所述的LDA主题聚类算法使用词云和条形图进行可视化调参,选取最优参数。词云是一种网络文本中出现频率较高的“关键词”予以视觉上的突出以形成“关键词云层”或“关键词渲染”的数据可视化工具,通过过滤掉大量的文本信息,使得只要一眼扫过词云就可以领略对应文本的主旨。条形图是一种用宽度相同的条形的高度或长短来表示数据多少的图形对频率进行统计的可视化工具,通过条形图可直观地了解主题下不同词的贡献率。
步骤4、将聚类结果持久化,使用JSON(JavaScript Object Notation),关系型数据库(mysql),二维表(pandas DataFrame)等形式将其保存在磁盘中,供神经网络分类器训练使用。
步骤5、使用Lancaster词干提取算法和深度神经网络问句分类算法,借助通过读取训练日志作成的可视化界面对聚类结果进行训练,并以文本形式保存分类模型。
其中所述的深度神经网络问句分类算法,在输入层进行了Lancaster词干提取,隐藏层为3层,隐藏层大小等于语料库中的词干数目,输出层分类器(classifier)选用归一化指数(softmax)函数,损失函数选择交叉熵损失函数,激活函数选用RELU函数来有效避免梯度消失问题,并通过Adam迭代优化器及反向传播算法更新各节点权重使得损失函数取得最小值。
进一步地,在步骤5中,对深度神经网络进行超参数的调优时使用可视化界面来实现。且在训练的过程使用十折交叉验证的方法,迭代20000次或者测试集准确度大于97%时,算法停止。
如附图2所示,对上述步骤来得到训练模型的机器人提问时,机器人生成答复的过程包含如下步骤:
S1、从前端读取问句,使用Lancaster词干提取算法后,代入于所述的训练模型中进行分类,并计算问句和语料模型中问句的相似度。
所述的相似度是问句中的词向量与步骤3生成的测试集中词向量的余弦相似度。
S2、判断所述的相似度是否超过阈值;若超过阈值,则根据分类结果,检索生成对应的回答;若未超过阈值,则将问句判定为未学习内容,回答‘I can’t guess’。
所述的阈值为问句词向量和训练集词向量的最低余弦相似度阈值。
本发明通过训练,可以对一些常识性问题进行作答,无需问答机器人语料人工标注过程,且能够通过可视化界面进行超参数调优,极大提高了问答机器人的开发效率和分类准确性,可用于“智能客服”、“聊天助手”等实际应用中。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (10)
1.一种检索式人工智能问答机器人开发方法,其特征在于,包含以下步骤:
步骤1、云端上传文本形式的一问一答对话语料,并进行数据预处理;
步骤2、对预处理完成的问句使用Lancaster词干提取算法提取词干,再转换成词向量;
步骤3、对问句词向量调用LDA主题聚类算法进行聚类;
步骤4、将聚类结果保存在存储器中,以供神经网络分类器训练使用;
步骤5、使用Lancaster词干提取算法和深度神经网络问句分类算法,借助通过读取训练日志作成的可视化界面对聚类结果进行训练,并以文本形式保存分类模型。
2.如权利要求1所述的一种检索式人工智能问答机器人开发方法,其特征在于,所述步骤1中,数据预处理的步骤包含:
步骤11、根据不同的前缀区分问句和答句,形成问句-答句一问一答的格式;
步骤12、将文本形式的问句转换成一个由词汇组成的列表,以便于后续处理;
步骤13、通过停用词表,在文本中去掉对文本分析起不到任何的帮助的虚词、代词或者没有特定含义的动词、名词。
3.如权利要求1所述的一种检索式人工智能问答机器人开发方法,其特征在于,所述步骤2通过词频-逆文本频率来转换成词向量;
所述的词频是问句中各个词的出现频率统计;
所述的逆文本频率是指一个词在所有文本中出现的频率;
词频-逆文本频率=词频*逆文本频率。
4.如权利要求3所述的一种检索式人工智能问答机器人开发方法,其特征在于,所述的逆文本频率的表达式为
其中,N代表语料库中问句的总数;N(x)代表语料库中包含词x的文本总数。
5.如权利要求1所述的一种检索式人工智能问答机器人开发方法,其特征在于,步骤3中的LDA主题聚类算法使用词云和条形图进行可视化调参,选取最优参数。
6.如权利要求1所述的一种检索式人工智能问答机器人开发方法,其特征在于,在步骤4中的聚类结果存储形式包含JSON,关系型数据库,二维表。
7.如权利要求1所述的一种检索式人工智能问答机器人开发方法,其特征在于,所述步骤5中,训练的过程使用十折交叉验证的方法。
8.如权利要求1所述的一种检索式人工智能问答机器人开发方法,其特征在于,在步骤5中所述的深度神经网络问句分类算法,在输入层进行了Lancaster词干提取,隐藏层大小等于语料库中的词干数目,输出层classifier选用softmax函数,损失函数选择交叉熵损失函数,且激活函数选用RELU函数,并通过Adam迭代优化器及反向传播算法更新各节点权重使得损失函数取得最小值。
9.如权利要求1-8任一项所述的一种检索式人工智能问答机器人开发方法,其特征在于,对上述步骤来得到训练模型的机器人提问时,机器人生成答复的过程包含如下步骤:
S1、从前端读取问句,使用Lancaster词干提取算法后,代入于所述的训练模型中进行分类,并计算问句和语料模型中问句的相似度;
S2、判断所述的相似度是否超过阈值;若超过阈值,则根据分类结果,检索生成对应的回答;若未超过阈值,则将问句判定为未学习内容。
10.如权利要求9所述的一种检索式人工智能问答机器人开发方法,其特征在于,所述的相似度是问句中的词向量与步骤3生成的测试集中词向量的余弦相似度;
所述阈值为问句词向量和训练集词向量的最低余弦相似度阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910304261.5A CN109947928A (zh) | 2019-04-16 | 2019-04-16 | 一种检索式人工智能问答机器人开发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910304261.5A CN109947928A (zh) | 2019-04-16 | 2019-04-16 | 一种检索式人工智能问答机器人开发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109947928A true CN109947928A (zh) | 2019-06-28 |
Family
ID=67015419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910304261.5A Pending CN109947928A (zh) | 2019-04-16 | 2019-04-16 | 一种检索式人工智能问答机器人开发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109947928A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110647619A (zh) * | 2019-08-01 | 2020-01-03 | 中山大学 | 一种基于问题生成和卷积神经网络的常识问答方法 |
CN111091884A (zh) * | 2019-12-24 | 2020-05-01 | 无锡识凌科技有限公司 | 一种医院信息集成平台的患者主索引匹配系统及方法 |
CN111241848A (zh) * | 2020-01-15 | 2020-06-05 | 江苏联著实业股份有限公司 | 一种基于机器学习的文章阅读理解答案检索系统及装置 |
CN113128415A (zh) * | 2021-04-22 | 2021-07-16 | 合肥工业大学 | 一种环境辨别方法、系统、设备及存储介质 |
CN113961518A (zh) * | 2021-09-08 | 2022-01-21 | 北京百度网讯科技有限公司 | 日志的可视化展示方法、装置、电子设备及存储介质 |
CN115906835A (zh) * | 2022-11-23 | 2023-04-04 | 之江实验室 | 一种基于聚类和对比学习的中文问句文本表示学习的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095872A (zh) * | 2016-06-07 | 2016-11-09 | 北京高地信息技术有限公司 | 用于智能问答系统的答案排序方法及装置 |
CN107368547A (zh) * | 2017-06-28 | 2017-11-21 | 西安交通大学 | 一种基于深度学习的智能医疗自动问答方法 |
CN108345585A (zh) * | 2018-01-11 | 2018-07-31 | 浙江大学 | 一种基于深度学习的自动问答方法 |
CN109460448A (zh) * | 2018-08-31 | 2019-03-12 | 厦门快商通信息技术有限公司 | 一种可自主配置的faq服务框架 |
-
2019
- 2019-04-16 CN CN201910304261.5A patent/CN109947928A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106095872A (zh) * | 2016-06-07 | 2016-11-09 | 北京高地信息技术有限公司 | 用于智能问答系统的答案排序方法及装置 |
CN107368547A (zh) * | 2017-06-28 | 2017-11-21 | 西安交通大学 | 一种基于深度学习的智能医疗自动问答方法 |
CN108345585A (zh) * | 2018-01-11 | 2018-07-31 | 浙江大学 | 一种基于深度学习的自动问答方法 |
CN109460448A (zh) * | 2018-08-31 | 2019-03-12 | 厦门快商通信息技术有限公司 | 一种可自主配置的faq服务框架 |
Non-Patent Citations (3)
Title |
---|
吴思竹: ""词干提取方法及工具的对比分析研究"", 《图书情报工作》 * |
吴炳林: ""基于中文深度智能问答系统的证据检索和评分算法研究"", 《万方》 * |
张力: ""社区问答系统中答案排序和问题检索算法研究与应用"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110647619A (zh) * | 2019-08-01 | 2020-01-03 | 中山大学 | 一种基于问题生成和卷积神经网络的常识问答方法 |
CN110647619B (zh) * | 2019-08-01 | 2023-05-05 | 中山大学 | 一种基于问题生成和卷积神经网络的常识问答方法 |
CN111091884A (zh) * | 2019-12-24 | 2020-05-01 | 无锡识凌科技有限公司 | 一种医院信息集成平台的患者主索引匹配系统及方法 |
CN111091884B (zh) * | 2019-12-24 | 2024-04-05 | 无锡识凌科技有限公司 | 一种医院信息集成平台的患者主索引匹配系统及方法 |
CN111241848A (zh) * | 2020-01-15 | 2020-06-05 | 江苏联著实业股份有限公司 | 一种基于机器学习的文章阅读理解答案检索系统及装置 |
CN111241848B (zh) * | 2020-01-15 | 2020-12-01 | 江苏联著实业股份有限公司 | 一种基于机器学习的文章阅读理解答案检索方法及装置 |
CN113128415A (zh) * | 2021-04-22 | 2021-07-16 | 合肥工业大学 | 一种环境辨别方法、系统、设备及存储介质 |
CN113128415B (zh) * | 2021-04-22 | 2023-09-29 | 合肥工业大学 | 一种环境辨别方法、系统、设备及存储介质 |
CN113961518A (zh) * | 2021-09-08 | 2022-01-21 | 北京百度网讯科技有限公司 | 日志的可视化展示方法、装置、电子设备及存储介质 |
CN113961518B (zh) * | 2021-09-08 | 2022-09-23 | 北京百度网讯科技有限公司 | 日志的可视化展示方法、装置、电子设备及存储介质 |
CN115906835A (zh) * | 2022-11-23 | 2023-04-04 | 之江实验室 | 一种基于聚类和对比学习的中文问句文本表示学习的方法 |
CN115906835B (zh) * | 2022-11-23 | 2024-02-20 | 之江实验室 | 一种基于聚类和对比学习的中文问句文本表示学习的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109947928A (zh) | 一种检索式人工智能问答机器人开发方法 | |
CN113011533B (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN108573047A (zh) | 一种中文文本分类模型的训练方法及装置 | |
CN108197109A (zh) | 一种基于自然语言处理的多语言分析方法和装置 | |
CN110134793A (zh) | 文本情感分类方法 | |
CN116796045B (zh) | 一种多维度图书分级方法、系统及可读介质 | |
CN113886562A (zh) | 一种ai简历筛选方法、系统、设备和存储介质 | |
Jayakody et al. | Sentiment analysis on product reviews on twitter using Machine Learning Approaches | |
Sai | Ensemble machine learning models in predicting personality traits and insights using Myers-Briggs dataset | |
CN113486143A (zh) | 一种基于多层级文本表示及模型融合的用户画像生成方法 | |
Chen et al. | Gaussian mixture embeddings for multiple word prototypes | |
CN116975275A (zh) | 多语种文本分类模型训练方法、装置和计算机设备 | |
CN115840815A (zh) | 基于指针关键信息的自动摘要生成方法 | |
CN115129890A (zh) | 回馈数据图谱生成方法、生成设备、问答设备及冰箱 | |
Li et al. | Multilingual toxic text classification model based on deep learning | |
Shanto et al. | Binary vs. Multiclass Sentiment Classification for Bangla E-commerce Product Reviews: A Comparative Analysis of Machine Learning Models | |
CN108108371A (zh) | 一种文本分类方法及装置 | |
CN113821571A (zh) | 基于bert和改进pcnn的食品安全关系抽取方法 | |
Shanmugam et al. | Twitter sentiment analysis using novelty detection | |
Ferdous et al. | Assortment of bangladeshi e-commerce site reviews using machine learning approaches | |
Krosuri et al. | Feature level fine grained sentiment analysis using boosted long short-term memory with improvised local search whale optimization | |
CN111008281A (zh) | 文本分类方法、装置、计算机设备和存储介质 | |
CN110569331A (zh) | 一种基于上下文的关联性预测方法、装置及存储设备 | |
CN117648635B (zh) | 敏感信息分类分级方法及系统、电子设备 | |
Sharma et al. | LSTM-Based Model for Classification of Tweets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190628 |
|
RJ01 | Rejection of invention patent application after publication |