CN107291828B - 基于人工智能的口语查询解析方法、装置及存储介质 - Google Patents

基于人工智能的口语查询解析方法、装置及存储介质 Download PDF

Info

Publication number
CN107291828B
CN107291828B CN201710389780.7A CN201710389780A CN107291828B CN 107291828 B CN107291828 B CN 107291828B CN 201710389780 A CN201710389780 A CN 201710389780A CN 107291828 B CN107291828 B CN 107291828B
Authority
CN
China
Prior art keywords
query
training
domain
word
knowledge base
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.)
Active
Application number
CN201710389780.7A
Other languages
English (en)
Other versions
CN107291828A (zh
Inventor
王硕寰
孙宇
于佃海
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201710389780.7A priority Critical patent/CN107291828B/zh
Publication of CN107291828A publication Critical patent/CN107291828A/zh
Priority to US15/990,157 priority patent/US10698932B2/en
Application granted granted Critical
Publication of CN107291828B publication Critical patent/CN107291828B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3334Selection or weighting of terms from queries, including natural language queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3343Query execution using phonetics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/027Frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了基于人工智能的口语查询解析方法、装置及存储介质,其中方法包括:针对任一应用领域,获取该应用领域对应的知识库;根据知识库确定出作为训练语料的训练query;根据训练语料训练得到深度query解析模型;利用深度query解析模型对用户的query进行解析,得到解析结果。应用本发明方案,能够提高解析结果的准确性等。

Description

基于人工智能的口语查询解析方法、装置及存储介质
【技术领域】
本发明涉及计算机应用技术,特别涉及基于人工智能的口语查询解析方法、装置及存储介质。
【背景技术】
人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。
计算机和人的自然交互是人工智能的一个核心问题,要让机器和人类能够无障碍的交流,首先需要解决的就是让机器能够理解人类说的语言。
目前,人机对话产品的应用越来越广泛,与搜索的查询形式不同,人机对话产品中的查询(query),通常是以口语的形式出现,这种形式更加符合人类的自然表达,但它的表述多样性以及复杂性却增大了机器对这类query的理解难度。
目前的主要人机对话产品中,都会把主要功能拆解为不同的应用领域(Domain),比如,定火车票是一个应用领域,天气查询也是一个应用领域。
机器理解口语query的过程,可形式化为,给定某个query,机器需要解析出其是否属于某一应用领域,如果属于,还需要给出query的意图(Intent)以及该意图下的参数信息。
比如,query=帮我订张从北京到天津的火车票,query=我想坐火车从北京到天津,这两个query都表达了用户想“订火车票”的意图,参数信息包括:起始地:北京、目的地:天津等。
可见,人机对话产品中的一个关键问题就是对用户的query进行解析,从而得到准确的解析结果。
现有技术中,通常采用以下解析方式:通过人工总结一些case,找出这些case的固定模板,将模板进行保存,当需要对一个query进行解析时,通过将该query与所保存的模板进行匹配,确定出该query的意图以及该意图下的参数信息等。
但是,口语表达方式复杂多样,而模板需要人工总结,往往数量有限,因此依靠模板只能解析一些比较简单、模板能够覆盖到的query,对于除此之外的其它query,则无法进行正确地解析,即从整体上来说,解析结果的准确性较低。
【发明内容】
有鉴于此,本发明提供了基于人工智能的口语查询解析方法、装置及存储介质,能够提高解析结果的准确性。
具体技术方案如下:
一种基于人工智能的口语查询解析方法,包括:
针对任一应用领域,获取所述应用领域对应的知识库;
根据所述知识库确定出作为训练语料的训练查询query;
根据所述训练语料训练得到深度query解析模型;
利用所述深度query解析模型对用户的query进行解析,得到解析结果。
根据本发明一优选实施例,所述获取所述应用领域对应的知识库包括:
获取所述应用领域的领域概要Schema、领域词典以及领域模板;
获取各应用领域通用的通用词典;
将获取到的信息作为所述应用领域对应的知识库。
根据本发明一优选实施例,所述根据所述知识库确定出作为训练语料的训练query包括:
对候选query库进行筛选,从中筛选出与所述知识库相匹配的query以及与所述知识库不相匹配的query;
将筛选出的query作为训练query。
根据本发明一优选实施例,所述利用所述深度query解析模型对用户的query进行解析,得到解析结果包括:
对所述query进行分词处理;
针对得到的每个词,分别获取所述词对应的embedding表示;
将各词对应的embedding表示输入给所述深度query解析模型,得到所述query的解析结果;
其中,所述解析结果中包括:是否属于所述应用领域,若属于所述应用领域,则进一步包括意图以及所述意图下的参数信息。
根据本发明一优选实施例,所述获取所述词对应的embedding表示包括:
分别获取所述词的词性标签以及领域知识标签;
利用预先训练得到的word2vec模型,分别得到所述词、所述词的词性标签以及所述词的领域知识标签的embedding表示;
将三个embedding表示进行拼接,将拼接结果作为所述词对应的embedding表示。
根据本发明一优选实施例,所述深度query解析模型中利用条件随机场CRF模型进行全局的槽位标注,确定出所述query中的参数信息。
根据本发明一优选实施例,该方法进一步包括:
将所述query存入所述候选query库;
若获取到更新后的知识库,则根据更新后的知识库重新筛选训练语料,并根据筛选出的训练语料训练得到更新后的深度query解析模型。
一种基于人工智能的口语查询解析装置,包括:预处理单元以及解析单元;
所述预处理单元,用于针对任一应用领域,获取所述应用领域对应的知识库,根据所述知识库确定出作为训练语料的训练查询query,根据所述训练语料训练得到深度query解析模型;
所述解析单元,用于利用所述深度query解析模型对用户的query进行解析,得到解析结果。
根据本发明一优选实施例,所述预处理单元获取所述应用领域的领域概要Schema、领域词典以及领域模板,并获取各应用领域通用的通用词典,将获取到的信息作为所述应用领域对应的知识库。
根据本发明一优选实施例,所述预处理单元对候选query库进行筛选,从中筛选出与所述知识库相匹配的query以及与所述知识库不相匹配的query,将筛选出的query作为训练query。
根据本发明一优选实施例,所述解析单元对所述query进行分词处理,针对得到的每个词,分别获取所述词对应的embedding表示,将各词对应的embedding表示输入给所述深度query解析模型,得到所述query的解析结果;
其中,所述解析结果中包括:是否属于所述应用领域,若属于所述应用领域,则进一步包括意图以及所述意图下的参数信息。
根据本发明一优选实施例,所述解析单元针对得到的每个词,分别获取所述词的词性标签以及领域知识标签,利用预先训练得到的word2vec模型,分别得到所述词、所述词的词性标签以及所述词的领域知识标签的embedding表示,将三个embedding表示进行拼接,将拼接结果作为所述词对应的embedding表示。
根据本发明一优选实施例,所述深度query解析模型中利用条件随机场CRF模型进行全局的槽位标注,确定出所述query中的参数信息。
根据本发明一优选实施例,所述解析单元进一步用于,将所述query存入所述候选query库;
所述预处理单元进一步用于,若获取到更新后的知识库,则根据更新后的知识库重新筛选训练语料,并根据筛选出的训练语料训练得到更新后的深度query解析模型。
一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如以上所述的方法。
基于上述介绍可以看出,采用本发明所述方案,针对任一应用领域,可首先获取该应用领域对应的知识库,并根据知识库确定出作为训练语料的训练query,进而根据训练语料训练得到深度query解析模型,这样,后续即可利用深度query解析模型来对用户的query进行解析,从而得到所需的解析结果,相比于现有技术,本发明所述方案中通过机器学习的方法对query进行解析,可适用于各种表述方式的query,提高了解析结果的准确性。
【附图说明】
图1为本发明所述口语查询解析方法实施例的流程图。
图2为本发明所述领域Schema的示意图。
图3为本发明所述领域词典的示意图。
图4为本发明所述领域模板的示意图。
图5为本发明所述候选query库的示意图。
图6为本发明所述从候选query库中筛选出的与知识库相匹配的query的示意图。
图7为本发明所述深度query解析模型的结构示意图。
图8为本发明所述口语查询解析方法的整体结构示意图。
图9为本发明所述口语查询解析装置实施例的组成结构示意图。
图10示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。
【具体实施方式】
为了使本发明的技术方案更加清楚、明白,以下参照附图并举实施例,对本发明所述方案进行进一步说明。
显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明所述口语查询解析方法实施例的流程图,如图1所示,包括以下具体实现方式:
在101中,针对任一应用领域,获取该应用领域对应的知识库;
在102中,根据知识库确定出作为训练语料的训练query;
在103中,根据训练语料训练得到深度query解析模型;
在104中,利用深度query解析模型对用户的query进行解析,得到解析结果。
为便于表述,以下将上述任一应用领域称为应用领域a。
可以看出,上述实施例中,针对应用领域a,可首先获取应用领域a对应的知识库,并根据知识库确定出作为训练语料的训练query,进而根据训练语料训练得到深度query解析模型,这样,后续当需要对用户的query进行解析时,即可直接利用深度query解析模型来进行query的解析,从而得到所需的解析结果。
以下分别对上述各部分的具体实现进行详细说明。
1)深度query解析模型
可由应用定制者根据经验和领域知识等,配置符合应用领域a的领域概要(Schema)、领域词典以及领域模板等。
如图2~4所示,图2为本发明所述领域Schema的示意图,图3为本发明所述领域词典的示意图,图4为本发明所述领域模板的示意图。
如图2所示,应用领域a下有两个意图,分别为订票意图和查票意图,每个意图下分别有起始地(Start)、目的地(End)、出行时间(Time)、车票种类(Seat)以及车次种类(Type)等参数。
如图4所示,领域模板,代表符合这个应用领域的query的基本形式,并标明了其中的槽位(Slot)位置,如“帮我订下<时间><地点>到<地点>的火车票”,其中的<>所示即为槽位位置。
如图3所示,领域词典中包含了这个应用领域特有的一些词,比如,高铁、动车、普快等。
除了领域词典,还可针对各不同的应用领域,设置一个各应用领域通用的通用词典,通用词典包含了各个应用领域通用的一些词,如时间、地点类的词等,通用词典也可以使用命名实体识别技术来补充。
为训练应用领域a对应的深度query解析模型,需要首先获取应用领域a对应的知识库,即:获取应用领域a的领域Schema、领域词典以及领域模板,并获取各应用领域通用的通用词典,将获取到的信息作为应用领域a对应的知识库。
之后,可根据知识库确定出作为训练语料的训练query。
通过搜索或已有的通用的人机对话产品,可积累大量的query存入候选query库。
可对候选query库进行筛选,从中选出与知识库相匹配的query以及与知识库不匹配的query,将筛选出的query作为训练query。
其中,筛选与知识库相匹配的query的方式可以是,首先,从候选query库中查找出与应用领域a的领域模板相匹配的query,之后,可根据应用领域a的领域词典、领域Schema以及通用词典,确定出查找出的query中的槽位中的词是否符合槽位要求等。
比如,查找出的一个query与图4中的“帮我顶下<时间>去<地点>的<车次种类>票”的领域模板相匹配,为便于表述,按照从左到右的顺序,将该领域模板中的三个槽位分别称为槽位1、槽位2和槽位3,那么可提取出该query中的槽位1中的词,并根据通用词典确定该词是否为时间类的词,如果是,则可认为槽位1中的词符合槽位要求,提取出该query中的槽位2中的词,并根据通用词典确定该词是否为地点类的词,如果是,则可认为槽位2中的词符合槽位要求,提取出该query中的槽位3中的词,并根据领域词典确定该词是否为车次种类类的词,如果是,则可认为槽位3中的词符合槽位要求,如果各槽位中的词均符合槽位要求,则可认为该query为与知识库相匹配的query。
与知识库不匹配的query,可以是指不属于应用领域a的query等。
除上述通过对候选query库进行筛选得到训练query的方式之外,在实际应用中,还可以通过一些其它的方式得到训练query,比如,根据知识库,人工构造一些与知识库中的领域模板、领域词典等相符合的query作为训练query。
图5为本发明所述候选query库的示意图,图6为本发明所述从候选query库中筛选出的与知识库相匹配的query的示意图。
如图6所示,针对每个与知识库相匹配的query,还可分别获取其意图以及该意图下的参数信息,比如,query=帮我订下明天去上海的高铁票,其意图为订票意图,该意图下的参数信息包括:时间:明天,目的地:上海,车次种类:高铁。
候选query中可能会包含很多query,可根据实际需要选出一定数量的query作为训练query。
之后,可根据训练query训练得到深度query解析模型。
在实际应用中,很多词表达的意思相近,比如,“查找”、“寻找”、“定位”、“搜索”等词在“查找路线”和“查找地点”等意图中表达的意思相近,但使用模板,有些表征意图和属性的动词往往见到的不够充分,而在实际使用时,这些词经常会使用在相同的上下文中,因此本实施例中提出,可通过word2vec模型预训练词的Embedding表示,这种模型相对来说,可以让这些词的初始Embedding表示比较相近。
相应地,针对每个训练query,可首先按照现有技术对其进行分词处理,之后,针对得到的每个词,分别获取该词对应的embedding表示。
具体地,针对得到的每个词,可分别获取该词的词性标签以及领域知识标签,词性标签可包括动词、名词等,领域知识标签即类别/分类标签,如可包括时间、地点等,可结合领域词典以及通用词典等确定,之后,可利用预先训练得到的word2vec模型,分别得到该词、该词的词性标签以及该词的领域知识标签的embedding表示,并将三个embedding表示进行拼接,将拼接结果作为该词对应的embedding表示。
针对每个训练query,可分别将其中的各词对应的embedding表示作为输入,将该训练query的解析结果作为输出,从而对深度query解析模型进行训练,解析结果可分为两种情况:1)不属于应用领域a;2)属于应用领域a、意图以及该意图下的参数信息。
深度query解析模型可为Bi-LSTM-CRF模型。
如图7所示,图7为本发明所述深度query解析模型的结构示意图,将训练query中的各词对应的embedding表示输入给深度query解析模型之后,首先经过一层双向长短时间记忆网络(Bi-LSTM,Bi-Long Short Term Memory Networks),从而分别得到每个词的前向和后向LSTM表示,之后,可针对每个词,分别将其前向LSTM表示和后向LSTM表示进行拼接,从而分别得到每个词的Representation,然后对所有词的Representation经过vsum层相加,并根据相加结果进行领域识别,识别结果包括属于应用领域a以及不属于应用领域a,如果不属于,则不再继续后续处理,如果属于,则分别对各词的Representation进行进一步的变换,如进行全连接变换,并将各变换结果经过vsum层相加,根据相加结果进行意图分类,即确定属于应用领域a中的哪个意图,另外,在Slot层引入了条件随机场(CRF,ConditionalRandom Field)模型,用于进行全局的槽位标注,从而确定出query中的参数信息。
基于上述介绍,如何根据各训练query训练得到深度query解析模型为现有技术。
其中,每次训练结束之后,可分别得到一个Loss函数L=LD+LI+LS,LD,LI,LS分别表示领域识别的Loss、意图分类的Loss以及槽位标注的Loss,可根据Loss函数的取值对模型参数进行调整以及确定是否可以停止训练等。
参数训练过程中,可以使用神经网络Backpropagation算法,计算各参数的梯度,并利用随机梯度下降方法,对于不属于应用领域a的训练数据,可将LI,LS置为0,从而优化Loss函数L=LD+LI+LS
2)利用深度query解析模型对query进行解析
在训练得到深度query解析模型之后,即可利用该模型来对用户的query进行解析。
具体地,可对query进行分词处理,针对得到的每个词,分别获取该词对应的embedding表示,进而将各词对应的embedding表示输入给深度query解析模型,从而得到解析结果。
解析结果包括:是否属于应用领域a,若属于应用领域a,则进一步包括意图以及该意图下的参数信息。
3)模型优化
在对用户的query进行解析之后,可将解析结果反馈给用户以及应用定制者,并可将query存入候选query库,后续,应用定制者可根据深度query模型对各query的解析情况等,确定是否需要更新知识库,比如,是否需要增加新的领域模板等,如果应用定制者更新了知识库,那么可根据更新后的知识库重新筛选训练语料,并根据筛选出的训练语料训练得到更新后的深度query解析模型,从而实现对于模型的优化。
综合上述介绍,图8为本发明所述口语查询解析方法的整体结构示意图,具体实现请参照前述相关说明,不再赘述。
总之,采用上述实施例所述方案,可训练得到深度query解析模型,即通过机器学习的方法对query进行解析,从而可适用于各种表述方式的query,进而提高了解析结果的准确性。
另外,采用上述实施例所述方案,将领域识别、意图分类以及槽位标注合并在一个模型中完成,从而减少了模型的级联错误,并且,通过引入CRF模型,达到了全局最优的槽位标注效果。
再有,采用上述实施例所述方案,可不断地对模型进行优化,从而不断地提升模型效果。
以上是关于方法实施例的介绍,以下通过装置实施例,对本发明所述方案进行进一步说明。
图9为本发明所述口语查询解析装置实施例的组成结构示意图,如图9所示,包括:预处理单元901以及解析单元902。
预处理单元901,用于针对任一应用领域,获取该应用领域对应的知识库,根据知识库确定出作为训练语料的训练query,根据训练语料训练得到深度query解析模型。
解析单元902,用于利用深度query解析模型对用户的query进行解析,得到解析结果。
为便于表述,以下将上述任一应用领域称为应用领域a。
可由应用定制者根据经验和领域知识等,配置符合应用领域a的领域Schema、领域词典以及领域模板。
领域Schema可如图2所示;领域模板,代表符合这个应用领域的query的基本形式,可如图4所示;领域词典中包含了这个应用领域特有的一些词,可如图3所示。
除了领域词典,还可针对各不同的应用领域,设置一个各应用领域通用的通用词典,通用词典包含了各个应用领域通用的一些词,如时间、地点类的词等。
相应地,预处理单元901可获取应用领域a的领域概要Schema、领域词典以及领域模板,并获取各应用领域通用的通用词典,将获取到的信息作为应用领域a对应的知识库。
之后,可根据知识库确定出作为训练语料的训练query。
通过搜索或已有的通用的人机对话产品,可积累大量的query存入候选query库。
预处理单元901可对候选query库进行筛选,从中筛选出与知识库相匹配的query以及与知识库不相匹配的query,将筛选出的query作为训练query。
候选query中可能会包含很多query,可根据实际需要筛选出一定数量的query作为训练query。
之后,预处理单元901可根据训练query训练得到深度query解析模型。
针对每个训练query,可分别将其中的各词对应的embedding表示作为输入,将该训练query的解析结果作为输出,从而对深度query解析模型进行训练,解析结果可分为两种情况:1)不属于应用领域a;2)属于应用领域a、意图以及该意图下的参数信息。
深度query解析模型可为Bi-LSTM-CRF模型。
在训练得到深度query解析模型之后,即可利用该模型来对用户的query进行解析。
具体地,解析单元902可对query进行分词处理,针对得到的每个词,分别获取词对应的embedding表示,将各词对应的embedding表示输入给深度query解析模型,从而得到query的解析结果。
上述获取每个词对应的embedding表示的方式可为:针对得到的每个词,分别获取词的词性标签以及领域知识标签,利用预先训练得到的word2vec模型,分别得到词、词的词性标签以及词的领域知识标签的embedding表示,将三个embedding表示进行拼接,将拼接结果作为词对应的embedding表示。
另外,深度query解析模型中可利用CRF模型进行全局的槽位标注,确定出query中的参数信息。
解析单元902在利用深度query解析模型对用户的query进行解析之后,可将解析结果反馈给用户以及应用定制者,并可将query存入候选query库。
后续,应用定制者可根据深度query模型对各query的解析情况等,确定是否需要更新知识库,比如,是否需要增加新的领域模板等,如果应用定制者更新了知识库,那么预处理单元901可根据更新后的知识库重新筛选训练语料,并根据筛选出的训练语料训练得到更新后的深度query解析模型,从而实现对于模型的优化。
图9所示装置实施例的具体工作流程请参照前述方法实施例中的相应说明,不再赘述。
图10示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图10显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图10所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器(处理单元)16,存储器28,连接不同系统组件(包括存储器28和处理器16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图10未显示,通常称为“硬盘驱动器”)。尽管图10中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图10所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器16通过运行存储在存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现图1所示实施例中的方法,即针对任一应用领域,获取该应用领域对应的知识库,根据知识库确定出作为训练语料的训练query,根据训练语料训练得到深度query解析模型,利用深度query解析模型对用户的query进行解析,得到解析结果。
具体实现请参照前述各实施例中的相关说明,不再赘述。
本发明同时公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时将实现如图1所示实施例中的方法。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法等,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (8)

1.一种基于人工智能的口语查询解析方法,其特征在于,包括:
针对任一应用领域,获取所述应用领域对应的知识库,包括:获取所述应用领域的领域概要Schema、领域词典以及领域模板;获取各应用领域通用的通用词典;将获取到的信息作为所述应用领域对应的知识库;
根据所述知识库确定出作为训练语料的训练查询query,包括:对候选query库进行筛选,从中筛选出与所述知识库相匹配的query以及与所述知识库不相匹配的query,将筛选出的query作为训练query;
根据所述训练语料训练得到深度query解析模型;
利用所述深度query解析模型对用户的query进行解析,得到解析结果,包括:对所述query进行分词处理;针对得到的每个词,分别获取所述词的词性标签以及领域知识标签,利用预先训练得到的word2vec模型,分别得到所述词、所述词的词性标签以及所述词的领域知识标签的embedding表示,将三个embedding表示进行拼接,将拼接结果作为所述词对应的embedding表示;将各词对应的embedding表示输入给所述深度query解析模型,得到所述query的解析结果;所述解析结果包括:是否属于所述应用领域,若属于所述应用领域,则进一步包括意图以及所述意图下的参数信息。
2.根据权利要求1所述的方法,其特征在于,
所述深度query解析模型中利用条件随机场CRF模型进行全局的槽位标注,确定出所述query中的参数信息。
3.根据权利要求1所述的方法,其特征在于,
该方法进一步包括:
将所述query存入所述候选query库;
若获取到更新后的知识库,则根据更新后的知识库重新筛选训练语料,并根据筛选出的训练语料训练得到更新后的深度query解析模型。
4.一种基于人工智能的口语查询解析装置,其特征在于,包括:预处理单元以及解析单元;
所述预处理单元,用于针对任一应用领域,获取所述应用领域对应的知识库,根据所述知识库确定出作为训练语料的训练查询query,根据所述训练语料训练得到深度query解析模型;
所述解析单元,用于利用所述深度query解析模型对用户的query进行解析,得到解析结果,包括:对所述query进行分词处理;针对得到的每个词,分别获取所述词的词性标签以及领域知识标签,利用预先训练得到的word2vec模型,分别得到所述词、所述词的词性标签以及所述词的领域知识标签的embedding表示,将三个embedding表示进行拼接,将拼接结果作为所述词对应的embedding表示;将各词对应的embedding表示输入给所述深度query解析模型,得到所述query的解析结果;所述解析结果包括:是否属于所述应用领域,若属于所述应用领域,则进一步包括意图以及所述意图下的参数信息;
其中,所述预处理单元获取所述应用领域的领域概要Schema、领域词典以及领域模板,并获取各应用领域通用的通用词典,将获取到的信息作为所述应用领域对应的知识库;
所述预处理单元对候选query库进行筛选,从中筛选出与所述知识库相匹配的query以及与所述知识库不相匹配的query,将筛选出的query作为训练query。
5.根据权利要求4所述的装置,其特征在于,
所述深度query解析模型中利用条件随机场CRF模型进行全局的槽位标注,确定出所述query中的参数信息。
6.根据权利要求4所述的装置,其特征在于,
所述解析单元进一步用于,将所述query存入所述候选query库;
所述预处理单元进一步用于,若获取到更新后的知识库,则根据更新后的知识库重新筛选训练语料,并根据筛选出的训练语料训练得到更新后的深度query解析模型。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~3中任一项所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1~3中任一项所述的方法。
CN201710389780.7A 2017-05-27 2017-05-27 基于人工智能的口语查询解析方法、装置及存储介质 Active CN107291828B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710389780.7A CN107291828B (zh) 2017-05-27 2017-05-27 基于人工智能的口语查询解析方法、装置及存储介质
US15/990,157 US10698932B2 (en) 2017-05-27 2018-05-25 Method and apparatus for parsing query based on artificial intelligence, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710389780.7A CN107291828B (zh) 2017-05-27 2017-05-27 基于人工智能的口语查询解析方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN107291828A CN107291828A (zh) 2017-10-24
CN107291828B true CN107291828B (zh) 2021-06-11

Family

ID=60094675

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710389780.7A Active CN107291828B (zh) 2017-05-27 2017-05-27 基于人工智能的口语查询解析方法、装置及存储介质

Country Status (2)

Country Link
US (1) US10698932B2 (zh)
CN (1) CN107291828B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107544726B (zh) * 2017-07-04 2021-04-16 百度在线网络技术(北京)有限公司 基于人工智能的语音识别结果纠错方法、装置及存储介质
CN110168535B (zh) * 2017-10-31 2021-07-09 腾讯科技(深圳)有限公司 一种信息处理方法及终端、计算机存储介质
CN108022012A (zh) * 2017-12-01 2018-05-11 兰州大学 基于深度学习的车辆位置预测方法
CN108255934B (zh) * 2017-12-07 2020-10-27 北京奇艺世纪科技有限公司 一种语音控制方法及装置
CN107943793A (zh) * 2018-01-10 2018-04-20 威盛电子股份有限公司 自然语言的语义解析方法
US10528669B2 (en) * 2018-03-20 2020-01-07 Wipro Limited Method and device for extracting causal from natural language sentences for intelligent systems
CN109062094B (zh) * 2018-07-24 2021-08-06 卢坤雄 模型的控制方法、装置及存储介质
CN109063934B (zh) * 2018-09-27 2022-05-03 北京百度网讯科技有限公司 基于人工智能的组合优化结果获取方法、设备及可读介质
US10983971B2 (en) * 2018-11-28 2021-04-20 Intuit Inc. Detecting duplicated questions using reverse gradient adversarial domain adaptation
CN109710930A (zh) * 2018-12-20 2019-05-03 重庆邮电大学 一种基于深度神经网络的中文简历解析方法
CN109740150A (zh) * 2018-12-20 2019-05-10 出门问问信息科技有限公司 地址解析方法、装置、计算机设备及计算机可读存储介质
WO2020142110A1 (en) * 2018-12-31 2020-07-09 Intel Corporation Securing systems employing artificial intelligence
CN110473521B (zh) * 2019-02-26 2022-03-01 杭州蓦然认知科技有限公司 一种任务模型的训练方法、装置、设备
CN111339250B (zh) * 2020-02-20 2023-08-18 北京百度网讯科技有限公司 新类别标签的挖掘方法及电子设备、计算机可读介质
CN111708870A (zh) * 2020-05-27 2020-09-25 盛视科技股份有限公司 基于深度神经网络的问答方法、装置及存储介质
CN111767372B (zh) * 2020-06-30 2023-08-01 北京百度网讯科技有限公司 语音查询的解析方法、解析模型的训练方法、装置、设备
CN111914074B (zh) * 2020-07-16 2023-06-20 华中师范大学 基于深度学习与知识图谱的限定领域对话生成方法及系统
CN112115245B (zh) * 2020-08-31 2024-06-04 深圳市欢太科技有限公司 查询语句处理方法、装置、终端及存储介质
CN112307774B (zh) * 2020-11-05 2024-06-21 北京有竹居网络技术有限公司 对话理解方法、装置、可读介质及电子设备
US20220238103A1 (en) * 2021-01-21 2022-07-28 Servicenow, Inc. Domain-aware vector encoding (dave) system for a natural language understanding (nlu) framework
US11942080B2 (en) * 2021-01-29 2024-03-26 Walmart Apollo, Llc Enhanced spoken language understanding using joint model training
CN112884376A (zh) * 2021-03-30 2021-06-01 中信银行股份有限公司 工单处理方法、装置、电子设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1952929A (zh) * 2005-10-20 2007-04-25 关涛 面向领域基于样本的互联网结构化数据抽取方法及其系统
CN101388026A (zh) * 2008-10-09 2009-03-18 浙江大学 一种基于领域本体的语义索引方法
CN102073919A (zh) * 2010-11-24 2011-05-25 中南大学 一种决策问题智能分析处理方法
CN102141997A (zh) * 2010-02-02 2011-08-03 三星电子(中国)研发中心 智能决策支持系统及其智能决策方法
CN102968409A (zh) * 2012-11-23 2013-03-13 海信集团有限公司 智能人机交互语义分析方法及交互系统
CN106294593A (zh) * 2016-07-28 2017-01-04 浙江大学 结合从句级远程监督和半监督集成学习的关系抽取方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2707808A4 (en) * 2011-05-13 2015-10-21 Microsoft Technology Licensing Llc USE OF QUERY LOOKING PROTOCOLS FOR DOMAIN RECOGNITION IN UNDERSTANDING SPOKEN LANGUAGE
US20140324469A1 (en) * 2013-04-30 2014-10-30 Bruce Reiner Customizable context and user-specific patient referenceable medical database
CN104050256B (zh) * 2014-06-13 2017-05-24 西安蒜泥电子科技有限责任公司 基于主动学习的问答方法及采用该方法的问答系统
CN105550190B (zh) * 2015-06-26 2019-03-29 许昌学院 面向知识图谱的跨媒体检索系统
US10388274B1 (en) * 2016-03-31 2019-08-20 Amazon Technologies, Inc. Confidence checking for speech processing and query answering
US10037360B2 (en) * 2016-06-20 2018-07-31 Rovi Guides, Inc. Approximate template matching for natural language queries
US10546066B2 (en) * 2016-08-31 2020-01-28 Microsoft Technology Licensing, Llc End-to-end learning of dialogue agents for information access
CN106407333B (zh) * 2016-09-05 2020-03-03 北京百度网讯科技有限公司 基于人工智能的口语查询识别方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1952929A (zh) * 2005-10-20 2007-04-25 关涛 面向领域基于样本的互联网结构化数据抽取方法及其系统
CN101388026A (zh) * 2008-10-09 2009-03-18 浙江大学 一种基于领域本体的语义索引方法
CN102141997A (zh) * 2010-02-02 2011-08-03 三星电子(中国)研发中心 智能决策支持系统及其智能决策方法
CN102073919A (zh) * 2010-11-24 2011-05-25 中南大学 一种决策问题智能分析处理方法
CN102968409A (zh) * 2012-11-23 2013-03-13 海信集团有限公司 智能人机交互语义分析方法及交互系统
CN106294593A (zh) * 2016-07-28 2017-01-04 浙江大学 结合从句级远程监督和半监督集成学习的关系抽取方法

Also Published As

Publication number Publication date
US20180341698A1 (en) 2018-11-29
CN107291828A (zh) 2017-10-24
US10698932B2 (en) 2020-06-30

Similar Documents

Publication Publication Date Title
CN107291828B (zh) 基于人工智能的口语查询解析方法、装置及存储介质
CN107908635B (zh) 建立文本分类模型以及文本分类的方法、装置
CN107679039B (zh) 用于确定语句意图的方法和装置
US10657325B2 (en) Method for parsing query based on artificial intelligence and computer device
CN107992596B (zh) 一种文本聚类方法、装置、服务器和存储介质
US10733197B2 (en) Method and apparatus for providing information based on artificial intelligence
CN108549656B (zh) 语句解析方法、装置、计算机设备及可读介质
CN110245348B (zh) 一种意图识别方法及系统
CN106897439B (zh) 文本的情感识别方法、装置、服务器以及存储介质
CN111738016B (zh) 多意图识别方法及相关设备
CN113807098A (zh) 模型训练方法和装置、电子设备以及存储介质
CN111191445B (zh) 广告文本分类方法及装置
CN111324771B (zh) 视频标签的确定方法、装置、电子设备及存储介质
CN112256860A (zh) 客服对话内容的语义检索方法、系统、设备及存储介质
CN109325201A (zh) 实体关系数据的生成方法、装置、设备及存储介质
CN110162786B (zh) 构建配置文件以及抽取结构化信息的方法、装置
CN108932218B (zh) 一种实例扩展方法、装置、设备和介质
CN111597800B (zh) 同义句的获取方法及装置、设备及存储介质
CN113051914A (zh) 一种基于多特征动态画像的企业隐藏标签抽取方法及装置
CN113822013B (zh) 用于文本数据的标注方法、装置、计算机设备及存储介质
CN113220999A (zh) 用户特征的生成方法、装置、电子设备和存储介质
CN113947086A (zh) 样本数据生成方法、训练方法、语料生成方法和装置
CN116402166A (zh) 一种预测模型的训练方法、装置、电子设备及存储介质
CN112989050B (zh) 一种表格分类方法、装置、设备及存储介质
CN113096687B (zh) 音视频处理方法、装置、计算机设备及存储介质

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
GR01 Patent grant
GR01 Patent grant