CN114218364A - 问答知识库扩充方法与装置 - Google Patents
问答知识库扩充方法与装置 Download PDFInfo
- Publication number
- CN114218364A CN114218364A CN202111397544.2A CN202111397544A CN114218364A CN 114218364 A CN114218364 A CN 114218364A CN 202111397544 A CN202111397544 A CN 202111397544A CN 114218364 A CN114218364 A CN 114218364A
- Authority
- CN
- China
- Prior art keywords
- data
- sentence
- entity
- structured data
- determining
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3343—Query execution using phonetics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种问答知识库扩充方法与装置,可以实现:获取多个在线用户的行为日志,并根据多个在线用户的行为日志确定目标话题;在网页中获取与目标话题相关的第一数据并进行存储,该第一数据为非结构化数据;在第一数据中抽取第二数据,并将第二数据保存至预设的问答知识库,该第二数据为结构化数据。本申请实施例可以根据在线用户的行为日志,确定出当前用户感兴趣的目标话题,并主动从网页中获取与目标话题相关的非结构化数据,然后从非结构化数据中抽取结构化数据,并利用抽取的结构化数据扩充问答知识库,从而丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。
Description
技术领域
本申请实施例涉及语音交互技术领域,尤其涉及一种问答知识库扩充方法与装置。
背景技术
现阶段由于语音技术的发展,智能语音交互设备越来越多,语音交互已经成为一种非常重要的人机交互途径,尤其是近些年语音助手的普及,从移动终端到一些智能家电,都可以通过语音交互来获取服务。
现有的语音交互系统,虽然普遍都已支持问答查询功能,但是大部分问答查询功能都局限于常识性知识问答,比如“天空为什么是蓝色的?”,这类问题的答案相对固定,因此依照问答知识库中存储的内容能够准确回答用户;而对于突发性事件的信息查询,例如“本市昨天的暴雨造成了多大的损失?”,这类问题的答案并不固定,且很难实时准确的存储到问答知识库中,导致语音交互系统无法提供准的答案。
发明内容
本申请实施例提供一种问答知识库扩充方法与装置,可以提升电子设备语音问答功能的准确性。
在一些实施例中,上述问答知识库扩充方法包括:
获取多个在线用户的行为日志,并根据所述多个在线用户的行为日志,确定目标话题;
在网页中获取与所述目标话题相关的第一数据并进行存储,所述第一数据为非结构化数据;
在所述第一数据中抽取第二数据,并将所述第二数据保存至预设的问答知识库,所述第二数据为结构化数据。
在一种可行的实施方式中,所述根据多个在线用户的行为日志,确定目标话题,包括:
对所述多个在线用户的行为日志进行预处理,并确定预处理后的行为日志中含有的各个句子;
将所述各个句子输入基于Transformer的双向编码器(Bidirectional EncoderRepresentations from Transformers,BERT)模型,得到所述各个句子对应的句子向量;
对所述各个句子对应的句子向量进行聚类,并基于聚类结果,确定所述目标话题。
在一种可行的实施方式中,在所述第一数据中抽取第二数据,包括:
采用预设的分步式信息抽取模型从所述第一数据中抽取第一结构化数据;
采用预设的联合式信息抽取模型从所述第一数据中抽取第二结构化数据;
根据所述第一结构化数据与所述第二结构化数据,得到所述第二数据。
在一种可行的实施方式中,所述分步式信息抽取模型包括关系分类模型与实体识别模型;所述采用预设的分步式信息抽取模型从所述第一数据中抽取第一结构化数据,包括:
利用所述关系分类模型,将所述第一数据中的各个句子输入BERT模型,得到所述各个句子对应的第一句子向量;确定所述各个句子对应的第一句子向量与预设关系集合的映射;根据所述各个句子对应的第一句子向量与预定关系集合的映射,确定所述各个句子所属的关系类别;
利用所述实体识别模型,将所述各个句子所属的关系类别添加到所述各个句子中,并将添加后的各个句子输入BERT模型,得到所述各个句子对应的第二句子向量;确定所述各个句子对应的第二句子向量的每个元与预设序列标签集合的映射;根据所述各个句子对应的第二句子向量的每个元与预设序列标签集合的映射,确定所述各个句子中的主实体与客实体;
根据所述各个句子中的主实体与客实体,以及所述各个句子所属的关系类别,得到所述第一结构化数据。
在一种可行的实施方式中,所述采用预设的联合式信息抽取模型从所述第一数据中抽取第二结构化数据,包括:
利用所述联合式信息抽取模型,将所述第一数据中的各个句子输入BERT模型,得到所述各个句子对应的第一句子向量;
根据所述各个句子对应的第一句子向量,确定所述各个句子中的主实体的位置信息,所述主实体的位置信息包括所述主实体的起始位置和结束位置;
将所述各个句子中的主实体的位置信息添加到对应的第一句子向量中,得到所述各个句子对应的第二句子向量;
根据所述各个句子对应的第二句子向量,确定所述各个句子中的客实体的位置信息,以及所述各个句子中的主实体与客实体之间的关系类别,所述客实体的位置信息包括所述客实体的起始位置和结束位置;
根据所述各个句子中的主实体与客实体,以及所述各个句子中的主实体与客实体之间的关系类别,得到所述第二结构化数据。
在一种可行的实施方式中,所述根据所述第一结构化数据与所述第二结构化数据,得到所述第二数据,包括:
确定所述第一结构化数据与所述第二结构化数据之间的交集,并将所述交集确定为所述第二数据。
在一种可行的实施方式中,所述根据所述第一结构化数据与所述第二结构化数据,得到所述第二数据,包括:
基于先验知识,对所述第一结构化数据与所述第二结构化数据进行校验;
将校验后的所述第一结构化数据与所述第二结构化数据之间的交集,确定为所述第二数据。
在一种可行的实施方式中,所述在网页中获取与所述目标话题相关的第一数据并进行存储,包括:
采用预设的爬虫程序,在网页中获取与所述目标话题相关的第一数据并进行存储。
在一种可行的实施方式中,所述在网页中获取与所述目标话题相关的第一数据并进行存储,
在网页中获取与所述目标话题相关的第一数据后,将所述第一数据分别存储至预设的分布式文件系统(Hadoop Distributed File System,简称HDFS)和搜索服务器(ElasticSearch,简称ES)。
在一些实施例中,上述问答知识库扩充装置包括:
第一获取模块,用于获取多个在线用户的行为日志,并根据所述多个在线用户的行为日志,确定目标话题;
第二获取模块,用于在网页中获取与所述目标话题相关的第一数据并进行存储,所述第一数据为非结构化数据;
处理模块,用于在所述第一数据中抽取第二数据,并将所述第二数据保存至预设的问答知识库,所述第二数据为结构化数据。
本申请实施例所提供的问答知识库扩充方法与装置,通过获取多个在线用户的行为日志,可以确定出当前用户感兴趣的目标话题;且在确定出目标话题后,主动从网页中获取与目标话题相关的非结构化数据并进行存储;然后基于信息抽取技术,从上述非结构化数据中抽取结构化数据,并利用抽取的结构化数据扩充问答知识库,从而实时丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对本申请实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为电子设备应用在语音交互场景的流程示意图;
图2为电子设备应用在语音交互场景的另一流程示意图;
图3为本申请实施例提供的一种问答知识库扩充方法的流程示意图;
图4为本申请实施例中示例性示出的一种结构化数据抽取系统框架示意图;
图5为本申请实施例提供的一种问答知识库扩充装置的程序模块示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,虽然本申请中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整实施方式。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换,例如能够根据本申请实施例图示或描述中给出那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
本申请中使用的术语“模块”,是指任何已知或后来开发的硬件、软件、固件、人工智能、模糊逻辑或硬件或/和软件代码的组合,能够执行与该元件相关的功能。
本申请实施例所提供的问答知识库扩充方法可以应用于如移动终端、平板电脑、计算机、笔记本电脑、智能电视等电子设备,本申请实施例中不做限制。
在一些实施例中,电子设备包括声音采集器与控制器,电子设备可以通过其声音采集器实时采集语音数据,随后,将采集得到的语音数据发送给控制器,由控制器对语音数据中包括的指令进行识别,并执行问答操作。
在一些实施例中,参照图1,图1为电子设备应用在语音交互场景的流程示意图。在S11中,电子设备内的声音采集器实时采集电子设备所在周围环境中的语音数据。
在S12中,控制器在接收到语音数据后,对语音数据中包括的指令进行识别。例如,语音数据中包括用户所发出的“天空为什么是蓝色的?”的提问,则控制器在识别到语音数据中包括的指令后,可以由该控制器执行所识别出的指令,在问答知识库中搜索相关的答案。
在一些实施例中,电子设备可以通过互联网与服务器连接,则当电子设备采集到语音数据后,可以将语音数据通过互联网发送给服务器,由服务器对语音数据中包括的指令进行识别,并将识别后的指令发送回电子设备,使得电子设备可以直接执行所接收到的指令。这种场景与如图1所示的场景相比,减少了对电子设备运算能力的要求,能够在服务器上设置更大的识别模型,来进一步提高对语音数据中指令识别的准确率与语音问答功能的准确性。
在一些实施例中,参照图2,图2为电子设备应用在语音交互场景的另一流程示意图。在S21中,电子设备内的声音采集器实时采集电子设备所在周围环境中的语音数据,并将所采集到的语音数据发送给控制器,控制器在S22中将语音数据进一步通过通信器发送给服务器,由服务器在S23中识别语音数据中包括的指令,随后,服务器将识别得到的指令在S24中发送回电子设备,对应地,电子设备通过通信器接收指令后发送给控制器,最终控制器可以在S25直接执行所接收到的指令。
在一些实施方式中,电子设备在接收到用户输入的语音后,一般先对用户输入的语音进行语音识别,并通过语义理解引擎确定用户意图,然后再根据用户意图来为用户提供相关的服务。现有的电子设备虽然普遍都已支持问答查询功能,但是大部分问答查询功能都局限于常识性知识问答,比如“天空为什么是蓝色的?”,这类问题的答案相对固定,因此依照知识库中存储的内容能够准确回答用户;而对于突发性事件的信息查询,例如“本市昨天的暴雨造成了多大的损失?”,这类问题的答案并不固定,且很难实时准确的存储到知识库中,导致语音交互系统无法提供准的答案。
面对上述技术问题,本申请实施例中提供了一种问答知识库扩充方法,通过获取多个在线用户的行为日志,可以确定出当前用户感兴趣的目标话题;且在确定出目标话题后,主动从网页中获取与目标话题相关的非结构化数据并进行存储;然后基于信息抽取技术,从上述非结构化数据中抽取结构化数据,并利用抽取的结构化数据扩充问答知识库,从而实时丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。下面采用详细的实施例进行详细说明。
参照图3,图3为本申请实施例提供的问答知识库扩充方法的流程示意图,本实施例的执行主体可以为图1所示实施例中的电子设备,也可以为图2所示实施例的服务器,本实施例此处不做特别限制。如图3所示,该方法包括:
S301、获取多个在线用户的行为日志,并根据多个在线用户的行为日志,确定目标话题。
在一种可行的实施方式中,可以实时采集多个在线用户的行为日志,并根据采集到的多个在线用户的行为日志,确定目标话题。
在一些实施例中,上述目标话题可以是多个在线用户提问的所有话题中,提问频次最高的一个话题,或者也可以是提问频次比较高的多个话题。
示例性的,若采集到的行为日志中频繁出现“暴雨”,则可以确定用户对当前的暴雨天气非常关注,可以确定用户感兴趣的话题为“暴雨”;若采集到的日志数据中频繁出现“奥运会”、“金牌榜”,则可以确定用户对当前的奥运会与金牌排名非常关注,可以确定用户感兴趣的话题为“奥运会”与“金牌榜”。
S302、在网页中获取与目标话题相关的第一数据并进行存储,该第一数据为非结构化数据。
在一些实施例中,在确定出用户感兴趣的目标话题后,在网页中搜索与该目标话题相关的第一数据并进行保存。
其中,上述第一数据为非结构化数据。
在一种可行的实施方式中,可以采用爬虫技术,在多个网页中搜索与上述目标话题相关的内容,并将搜索到的内容作为第一数据。
其中,爬虫技术是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。例如,聚焦爬虫技术可以自动下载网页,或者根据既定的抓取目标,有选择的访问万维网上的网页与相关的链接,获取所需要的信息。
与通用爬虫接收不同,聚焦爬虫并不追求大的覆盖,而将目标定为抓取与某一特定主题内容相关的网页,为面向主题的用户查询准备数据资源,可以极大地节省硬件和网络资源;另外,保存的页面也由于数量少而更新快,还可以很好地满足一些特定人群对特定领域信息的需求。
其中,上述非结构化数据可以理解为数据结构不规则或不完整、没有预定义的数据模型,且不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、可扩展标记语言(Extensible Markup Language,XML)、超文本标记语言(Hyper TextMarkup Language,HTML)、各类报表、图像和音频/视频信息等。
在一些实施例中,在获取到上述第一数据后,可以将上述第一数据进行存储。
在一种可行的实施方式中,可以将上述第一数据分别存储至预设的HDFS和ES;或者,也可以将上述第一数据只存储于HDFS或ES。
可以理解的是,ES是一种基于RESTful web接口并且构建在Apache Lucene之上的开源分布式搜索引擎。同时ES还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,能够横向扩展至数以百计的服务器存储以及处理PB级的数据。可以在极短的时间内存储、搜索和分析大量的数据,从而可以作为具有复杂搜索场景情况下的核心搜索引擎。
HDFS有着高容错性的特点,且它提供高吞吐量来访问应用程序的数据,可以适合超大数据集的应用程序。
S303、在第一数据中抽取第二数据,并将第二数据保存至预设的问答知识库,该第二数据为结构化数据。
在一些实施例中,在存储上述第一数据之后,可以搭建一套完整的信息抽取系统,通过信息抽取,实现非结构化数据到结构化数据的转化,即在上述第一数据中抽取第二数据,该第二数据为结构化数据。
其中,结构化数据也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和管理。
在抽取到上述第二数据后,将上述第二数据保存至预设的问答知识库,当电子设备接收到与上述目标话题相关的问题时,电子设备即可从问答知识库中搜索到相关的数据并进行答复。
本申请实施例所提供的问答知识库扩充方法,通过获取多个在线用户的行为日志,可以确定出当前用户感兴趣的目标话题;且在确定出目标话题后,主动从网页中获取与目标话题相关的非结构化数据并进行存储;然后基于信息抽取技术,从上述非结构化数据中抽取结构化数据,并利用抽取的结构化数据扩充问答知识库,从而实时丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。
基于上述实施例中描述的内容,在本申请一些实施例中,在获取到多个在线用户的行为日志后,可以先对获取到的行为日志进行预处理。
在一种可行的实施方式中,上述预处理的过程可以包括:
(1)过滤掉获取到的行为日志中的无效字符、敏感信息、比较长的文本和比较短的文本等后,将剩余的文本信息整理为多个句子。
(2)将上述各个句子输入到BERT模型中,以得到每个句子的句子向量(表征)。
在一种可行的实施方式中,上述BERT模型结构主要包括Embedding层和输出层。其中,BERT模型的输入是两个句子,彼此之间用[SEP]符号分隔,句首会增加一个特殊符号[CLS],方便下游分类任务使用。BERT的输入embedding则由token embedding、segmentembedding、position embedding三部分组成。其中token embedding为每个词的向量表示;segment embedding主要是用来区分两个句子,用于句子级别的MASK任务,用“0”和“1”加以区分;position embedding表示位置编码,就是把每个词的位置,通过编码的形式表示出来。BERT中的位置编码和原转换器(transformer)的三角函数位置编码不同,是在模型中训练得到的。然后通过上述三种编码方式求和,得到BERT的Embedding层。
在输出层,把输入的Embedding输入到一个多层堆叠的双向Transformer的编码器(encoder)进行特征提取,最终句子中的每一个词都会输出一个长度为hidden_size的向量。
(3)对各个句子对应的句子向量进行聚类,并基于聚类结果,确定上述目标话题。
在一种可行的实施方式中,可以利用Kmeans算法对多个句子向量进行聚类,并对聚类结果进行人工分析,选取目标领域的聚类行为日志进行第二次聚类,……,重复上述聚类过程直至收敛。在上述聚类过程收敛后,根据聚类结果,确定出上述目标话题。
本申请实施例所提供的问答知识库扩充方法,通过获取多个在线用户的行为日志,经过BERT编码与Kmeans聚类,可以确定出当前用户感兴趣的目标话题;且在确定出目标话题后,主动从网页中获取与目标话题相关的数据并进行存储,从而实时丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。
基于上述实施例中描述的内容,在本申请一些实施例中,在获取到与上述目标话题相关的第一数据后,可以利用分步式信息抽取模型和联合式信息抽取模型来从第一数据中抽取结构化数据(即第二数据)。
在一种可行的实施方式中,可以采用分步式信息抽取模型从第一数据中抽取第一结构化数据;采用预设的联合式信息抽取模型从第一数据中抽取第二结构化数据;然后根据第一结构化数据与第二结构化数据,得到上述第二数据。
为了更好的理解本申请实施例,参照图4,图4为本申请实施例中示例性示出的一种结构化数据抽取系统框架示意图。在一些实施例中,分步式信息抽取模型包括关系分类模型与实体识别模型。
其中,关系分类模型可以实现:
BERT编码:将第一数据中的各个句子输入BERT模型,得到各个句子对应的第一句子向量。
文本分类:确定上述各个句子对应的第一句子向量与预设关系集合的映射;根据上述各个句子对应的第一句子向量与预定关系集合的映射,确定上述各个句子所属的关系类别。
实体识别模型可以实现:
BERT编码:将上述各个句子所属的关系类别添加到上述各个句子中,并将添加后的各个句子输入BERT模型,得到上述各个句子对应的第二句子向量。
序列标签标注:确定上述各个句子对应的第二句子向量的每个元与预设序列标签集合的映射。
文本分类:根据上述各个句子对应的第二句子向量的每个元与预设序列标签集合的映射,确定上述各个句子中的主实体与客实体。
其中,根据上述各个句子中的主实体与客实体,以及上述各个句子所属的关系类别,可以得到第一结构化数据。
在一种可行的实施方式中,利用关系分类模型完成BERT编码后的第一句子向量到预设关系集合的映射,从而确定各个句子的所属关系类别。然后,将确定的关系类别追加到各个句子后面,并进行BERT第二次编码得到新的第二句子向量;利用实体识别模型完成第二句子向量的每个元到序列标签集合的映射,从而确定句子中主实体、客实体。
其中,文本分类是自然语言处理(NLP,Natural Language Processing)中的一个任务,可以分为传统机器学习方法和深度学习方法。传统机器学习方法利用SVM分类模型、KNN分类模型、随机森林模型(RF)等,深度学习方法利用fastText模型、TextCNN模型、TextRNN模型和预训练BERT模型等。
基于BERT的文本分类主要可以分为以下三步:
1).基于预训练语言模型BERT获取输入句子的表征(句子向量);
2).将BERT的输出句子向量经过全连接层后激活得到分类类别;
3).将得到的分类与标准做对比并优化两者之间的差异直至差异最小。
其中,命名实体识别(Named Entity Recognition,NER)也是NLP中的一项任务。实体,可以认为是某一个概念的实例,例如,“人名”是一种概念,或者说实体类型,那么“张三”就是一种“人名”实体了。“时间”是一种实体类型,那么“中秋节”就是一种“时间”实体了。所谓实体识别就是将想要获取到的实体类型,从一句话里面挑出来的过程。
NER可以当做序列标注问题来处理,比如BIO序列标注。BIO序列标注就是将每个元素标注为“B-X”、“I-X”或者“O”。其中,“B-X”表示此元素所在的片段属于X类型并且此元素在此片段的开头,“I-X”表示此元素所在的片段属于X类型并且此元素在此片段的中间或结束位置,“O”表示不属于任何实体类型。比如,将“小明在南京大学的燕园看了中国男篮的一场比赛”这句话,进行标注,结果就是:[B-PER,I-PER,O,B-ORG,I-ORG,I-ORG,I-ORG,O,B-LOC,I-LOC,O,O,B-ORG,I-ORG,I-ORG,I-ORG,O,O,O,O,O],其中PER表示人物类型,ORG表示组织、机构类型,LOC表示地点类型。
在一些实施例中,联合式信息抽取模型可以实现:
BERT编码:将上述第一数据中的各个句子输入BERT模型,得到各个句子对应的第一句子向量。
确定主实体:根据上述各个句子对应的第一句子向量,确定各个句子中的主实体的位置信息(包括起始位置和结束位置)。
抽取主实体、客实体及关系类别:将上述各个句子中的主实体的位置信息添加到各个句子对应的第一句子向量中,得到各个句子对应的第二句子向量;根据上述各个句子对应的第二句子向量,确定各个句子中的客实体的位置信息(包括起始位置和结束位置信息),以及各个句子中的主实体与客实体之间的关系类别;根据上述各个句子中的主实体与客实体,以及各个句子中的主实体与客实体之间的关系类别,得到第二结构化数据。
其中,联合抽取网络(Cascade-Binary-Tagging-Framework)是一个基于BERT做底层编码,利用Seq2seq概率图思想将主实体(subject)和客实体(object)的谓语关系(predicate)建模为主实体到客实体的映射函数,来达到从非结构化文本中抽取实体及实体间对应关系目的的网络结构。该网络主要分为以下几步:
1).原始序列输入BERT编码器得到编码序列;
2).将编码后的序列输入到一个二分类器的全连接网络中,预测subject;
3).根据预测得到的subject,从编码序列中抽取出subject的首部和尾部对应的编码向量;
4).以subject的编码向量作为条件,对编码序列做一次执行LayerNormalization操作,用以对每一层的单个样本的所有神经元节点进行规范化;
5).将Layer Normalization后的序列(句子向量)输入到另一个二分类的全连接的网络中来预测该subject对应的object以及predicate。
为了更好了理解本申请实施例,以输入句子:“《战狼2》的导演吴京生于1974年”为例,经过联合抽取网络后,得到的实体关系三元组为:[(战狼2,导演,吴京)、(吴京,出生日期,1974年)]。
在一些实施例中,在得到上述第一结构化数据与第二结构化数据之后,可以确定第一结构化数据与第二结构化数据之间的交集,并将该交集确定为上述第二数据。
在另一些实施例中,在得到上述第一结构化数据与第二结构化数据之后,还可以基于先验知识,对第一结构化数据与第二结构化数据进行校验;将校验后的第一结构化数据与第二结构化数据之间的交集,确定为上述第二数据,从而提高第二数据的准确率。
在本申请一些实施例中,还可以将上述两个模型得到的结构化数据进行对比,并利用阈值筛选等方法,进一步提高第二数据的准确率。
本申请实施例所提供的问答知识库扩充方法,在确定出目标话题后,可以从网页中获取与目标话题相关的非结构化数据,然后基于预设的信息抽取技术,从上述非结构化数据中抽取结构化数据,并利用抽取的结构化数据扩充问答知识库,从而实时丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。
在一些实施例中,本申请还提供了一种问答知识库扩充装置,参照图5,图5为本申请实施例提供的问答知识库扩充装置的程序模块示意图。
如图5所示,该装置包括:
第一获取模块501、获取多个在线用户的行为日志,并根据多个在线用户的行为日志,确定目标话题。
第二获取模块502、在网页中获取与目标话题相关的第一数据并进行存储,该第一数据为非结构化数据。
处理模块503、在第一数据中抽取第二数据,并将第二数据保存至预设的问答知识库,该第二数据为结构化数据。
本申请实施例所提供的知识库扩充装置,通过获取多个在线用户的行为日志,可以确定出当前用户感兴趣的目标话题;且在确定出目标话题后,主动从网页中获取与目标话题相关的非结构化数据并进行存储;然后基于信息抽取技术,从上述非结构化数据中抽取结构化数据,并利用抽取的结构化数据扩充问答知识库,从而实时丰富了电子设备的问答知识库,因此能够更准确的对用户提出的问题进行回答。
在一种可行的实施方式中,第一获取模块501用于:
对上述多个在线用户的行为日志进行预处理,并确定预处理后的行为日志中含有的各个句子;将各个句子输入BERT模型,得到所述各个句子对应的句子向量;对各个句子对应的句子向量进行聚类,并基于聚类结果,确定上述目标话题。
在一种可行的实施方式中,处理模块503用于:
采用预设的分步式信息抽取模型从上述第一数据中抽取第一结构化数据;采用预设的联合式信息抽取模型从上述第一数据中抽取第二结构化数据;根据上述第一结构化数据与上述第二结构化数据,得到上述第二数据。
在一种可行的实施方式中,上述分步式信息抽取模型包括关系分类模型与实体识别模型;处理模块503具体用于:
利用上述关系分类模型,将上述第一数据中的各个句子输入BERT模型,得到各个句子对应的第一句子向量;确定各个句子对应的第一句子向量与预设关系集合的映射;根据各个句子对应的第一句子向量与预定关系集合的映射,确定各个句子所属的关系类别。
利用上述实体识别模型,将各个句子所属的关系类别添加到各个句子中,并将添加后的各个句子输入BERT模型,得到各个句子对应的第二句子向量;确定各个句子对应的第二句子向量的每个元与预设序列标签集合的映射;根据各个句子对应的第二句子向量的每个元与预设序列标签集合的映射,确定各个句子中的主实体与客实体。
根据各个句子中的主实体与客实体,以及各个句子所属的关系类别,得到第一结构化数据。
在一种可行的实施方式中,处理模块503具体用于:
利用联合式信息抽取模型,将第一数据中的各个句子输入BERT模型,得到各个句子对应的第一句子向量;
根据各个句子对应的第一句子向量,确定各个句子中的主实体的位置信息,包括起始位置和结束位置;
将各个句子中的主实体的位置信息添加到各个句子对应的第一句子向量中,得到各个句子对应的第二句子向量;
根据各个句子对应的第二句子向量,确定各个句子中的客实体的位置信息(包括起始位置和结束位置),以及各个句子中的主实体与客实体之间的关系类别;根据各个句子中的主实体与客实体,以及各个句子中的主实体与客实体之间的关系类别,得到第二结构化数据。
在一种可行的实施方式中,处理模块503具体用于:
确定所述第一结构化数据与所述第二结构化数据之间的交集,并将所述交集确定为所述第二数据。
在一种可行的实施方式中,上述确定所述第一结构化数据与所述第二结构化数据之间的交集,并将所述交集确定为所述第二数据,包括:
基于先验知识,对第一结构化数据与第二结构化数据进行校验;将校验后的第一结构化数据与第二结构化数据之间的交集,确定为第二数据。
在一种可行的实施方式中,第二获取模块503具体用于:
采用预设的爬虫程序,在网页中获取与目标话题相关的第一数据并进行存储。
在一种可行的实施方式中,第二获取模块503具体用于:
在网页中获取与目标话题相关的第一数据后,将第一数据分别存储至预设的HDFS和ES。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称:ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种问答知识库扩充方法,其特征在于,包括:
获取多个在线用户的行为日志,并根据所述多个在线用户的行为日志,确定目标话题;
在网页中获取与所述目标话题相关的第一数据并进行存储,所述第一数据为非结构化数据;
在所述第一数据中抽取第二数据,并将所述第二数据保存至预设的问答知识库,所述第二数据为结构化数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个在线用户的行为日志,确定目标话题,包括:
对所述多个在线用户的行为日志进行预处理,并确定预处理后的行为日志中含有的各个句子;
将所述各个句子输入基于Transformer的双向编码的BERT模型,得到所述各个句子对应的句子向量;
对所述各个句子对应的句子向量进行聚类,并基于聚类结果,确定所述目标话题。
3.根据权利要求1所述的方法,其特征在于,在所述第一数据中抽取第二数据,包括:
采用预设的分步式信息抽取模型从所述第一数据中抽取第一结构化数据;
采用预设的联合式信息抽取模型从所述第一数据中抽取第二结构化数据;
根据所述第一结构化数据与所述第二结构化数据,得到所述第二数据。
4.根据权利要求3所述的方法,其特征在于,所述分步式信息抽取模型包括关系分类模型与实体识别模型;所述采用预设的分步式信息抽取模型从所述第一数据中抽取第一结构化数据,包括:
利用所述关系分类模型,将所述第一数据中的各个句子输入BERT模型,得到所述各个句子对应的第一句子向量;确定所述各个句子对应的第一句子向量与预设关系集合的映射;根据所述各个句子对应的第一句子向量与预定关系集合的映射,确定所述各个句子所属的关系类别;
利用所述实体识别模型,将所述各个句子所属的关系类别添加到所述各个句子中,并将添加后的各个句子输入BERT模型,得到所述各个句子对应的第二句子向量;确定所述各个句子对应的第二句子向量的每个元与预设序列标签集合的映射;根据所述各个句子对应的第二句子向量的每个元与预设序列标签集合的映射,确定所述各个句子中的主实体与客实体;
根据所述各个句子中的主实体与客实体,以及所述各个句子所属的关系类别,得到所述第一结构化数据。
5.根据权利要求3所述的方法,其特征在于,所述采用预设的联合式信息抽取模型从所述第一数据中抽取第二结构化数据,包括:
利用所述联合式信息抽取模型,将所述第一数据中的各个句子输入BERT模型,得到所述各个句子对应的第一句子向量;
根据所述各个句子对应的第一句子向量,确定所述各个句子中的主实体的位置信息,所述主实体的位置信息包括所述主实体的起始位置和结束位置;
将所述各个句子中的主实体的位置信息添加到对应的第一句子向量中,得到所述各个句子对应的第二句子向量;
根据所述各个句子对应的第二句子向量,确定所述各个句子中的客实体的位置信息,以及所述各个句子中的主实体与客实体之间的关系类别,所述客实体的位置信息包括所述客实体的起始位置和结束位置;
根据所述各个句子中的主实体与客实体,以及所述各个句子中的主实体与客实体之间的关系类别,得到所述第二结构化数据。
6.根据权利要求3至5任一项所述的方法,其特征在于,所述根据所述第一结构化数据与所述第二结构化数据,得到所述第二数据,包括:
确定所述第一结构化数据与所述第二结构化数据之间的交集,并将所述交集确定为所述第二数据。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一结构化数据与所述第二结构化数据,得到所述第二数据,包括:
基于先验知识,对所述第一结构化数据与所述第二结构化数据进行校验;
将校验后的所述第一结构化数据与所述第二结构化数据之间的交集,确定为所述第二数据。
8.根据权利要求1所述的方法,其特征在于,所述在网页中获取与所述目标话题相关的第一数据并进行存储,包括:
采用预设的爬虫程序,在网页中获取与所述目标话题相关的第一数据并进行存储。
9.根据权利要求1或8所述的方法,其特征在于,所述在网页中获取与所述目标话题相关的第一数据并进行存储,包括:
在网页中获取与所述目标话题相关的第一数据后,将所述第一数据分别存储至预设的分布式文件系统HDFS和搜索服务器ES。
10.一种问答知识库扩充装置,其特征在于,所述装置包括:
第一获取模块,用于获取多个在线用户的行为日志,并根据所述多个在线用户的行为日志,确定目标话题;
第二获取模块,用于在网页中获取与所述目标话题相关的第一数据并进行存储,所述第一数据为非结构化数据;
处理模块,用于在所述第一数据中抽取第二数据,并将所述第二数据保存至预设的问答知识库,所述第二数据为结构化数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111397544.2A CN114218364A (zh) | 2021-11-23 | 2021-11-23 | 问答知识库扩充方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111397544.2A CN114218364A (zh) | 2021-11-23 | 2021-11-23 | 问答知识库扩充方法与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114218364A true CN114218364A (zh) | 2022-03-22 |
Family
ID=80697990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111397544.2A Pending CN114218364A (zh) | 2021-11-23 | 2021-11-23 | 问答知识库扩充方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114218364A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115017276A (zh) * | 2022-03-28 | 2022-09-06 | 连芷萱 | 结合模糊逻辑与r-gcn的政务咨询多轮对话方法及系统 |
-
2021
- 2021-11-23 CN CN202111397544.2A patent/CN114218364A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115017276A (zh) * | 2022-03-28 | 2022-09-06 | 连芷萱 | 结合模糊逻辑与r-gcn的政务咨询多轮对话方法及系统 |
CN115017276B (zh) * | 2022-03-28 | 2022-11-29 | 连芷萱 | 政务咨询多轮对话方法、系统、政务机器人和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11334635B2 (en) | Domain specific natural language understanding of customer intent in self-help | |
CN111897970B (zh) | 基于知识图谱的文本比对方法、装置、设备及存储介质 | |
CN111324728B (zh) | 文本事件摘要的生成方法、装置、电子设备及存储介质 | |
CN112131350B (zh) | 文本标签确定方法、装置、终端及可读存储介质 | |
CN111274365B (zh) | 基于语义理解的智能问诊方法、装置、存储介质及服务器 | |
CN105139237A (zh) | 信息推送的方法和装置 | |
CN113590850A (zh) | 多媒体数据的搜索方法、装置、设备及存储介质 | |
CN112287069B (zh) | 基于语音语义的信息检索方法、装置及计算机设备 | |
CN111625715B (zh) | 信息提取方法、装置、电子设备及存储介质 | |
CN111783471B (zh) | 自然语言的语义识别方法、装置、设备及存储介质 | |
CN111143556A (zh) | 软件功能点自动计数方法、装置、介质及电子设备 | |
CN111782793A (zh) | 智能客服处理方法和系统及设备 | |
CN117520503A (zh) | 基于llm模型的金融客服对话生成方法、装置、设备及介质 | |
CN114218364A (zh) | 问答知识库扩充方法与装置 | |
CN113821612A (zh) | 信息查找方法以及装置 | |
CN116955591A (zh) | 用于内容推荐的推荐语生成方法、相关装置和介质 | |
CN111524515A (zh) | 语音交互方法、装置、电子设备及可读存储介质 | |
CN115132182B (zh) | 一种数据识别方法、装置、设备及可读存储介质 | |
CN112364649B (zh) | 命名实体的识别方法、装置、计算机设备及存储介质 | |
CN113807920A (zh) | 基于人工智能的产品推荐方法、装置、设备及存储介质 | |
CN112818212A (zh) | 语料数据采集方法、装置、计算机设备和存储介质 | |
CN111949781A (zh) | 一种基于自然语句句法分析的智能交互方法及装置 | |
CN117473995A (zh) | 文本处理方法、装置、产品、设备和介质 | |
CN117649852A (zh) | 多事件音频-文本对生成方法及装置 | |
KR20230126390A (ko) | 딥러닝에 기반한 교육 목적의 사용자 맞춤형 면접 피드백 제공 방법 및 시스템 |
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 |