CN116644158A - 树形槽位式高速公路出行的智能问答方法 - Google Patents

树形槽位式高速公路出行的智能问答方法 Download PDF

Info

Publication number
CN116644158A
CN116644158A CN202310372813.2A CN202310372813A CN116644158A CN 116644158 A CN116644158 A CN 116644158A CN 202310372813 A CN202310372813 A CN 202310372813A CN 116644158 A CN116644158 A CN 116644158A
Authority
CN
China
Prior art keywords
tree
slot
station
node
intention
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
Application number
CN202310372813.2A
Other languages
English (en)
Inventor
张泽鑫
宋杰
Original Assignee
东北大学
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 东北大学 filed Critical 东北大学
Priority to CN202310372813.2A priority Critical patent/CN116644158A/zh
Publication of CN116644158A publication Critical patent/CN116644158A/zh
Pending legal-status Critical Current

Links

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/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • 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/3344Query execution using natural language analysis
    • 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/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/117Tagging; Marking up; Designating a block; Setting of attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Animal Behavior & Ethology (AREA)
  • Human Computer Interaction (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Navigation (AREA)

Abstract

本发明提供一种树形槽位式高速公路出行的智能问答方法,涉及自然语言处理技术领域。本发明基于意图规则、槽位规则以及高速路网构建知识图谱,对于与高速有关的问题语料先进行意图识别,再进行槽位填充,将获取的意图与槽位在图数据库中查询结果,将该结果与对话上下文中其他结果拼接为树形结构经过树形神经网络输出回答。该方法与其余采用规则模板的方法相比,减少了模板的数量,并使用知识图谱的存储方式在查询时在知识图谱上生成树形结构,经由树形神经网络生成问答结果。

Description

树形槽位式高速公路出行的智能问答方法
技术领域
本发明涉及自然语言处理领域,具体涉及一种树形槽位式高速公路出行的智能问答方法。
背景技术
在现代社会中,高速公路已成为人们出行的主要方式之一,尤其是在长距离出行和商业物流中。然而,高速公路的交通事故和拥堵问题仍然给人们带来很大的困扰。在某些情况下,驾驶人员需要根据目标意图获得关于道路状况、路线选择、拥堵情况方面的实时信息和有针对性的出行建议,以便减少路上花费的时间和资源,并确保安全到达目的地。因此,如何快速有效地获取这些信息和建议,成为人们亟待解决的问题。近年来,越来越多的研究人员使用机器学习和深度学习技术,来设计智能问答机器人,以提供有用的信息和建议,特别是在高速公路出行方面。问答机器人可以通过分析道路历史数据和实时交通状况,来预测当前或未来的拥堵情况,并提供相应的路线建议,使驾驶人员在最短的时间内选择较为合适的出行方案。同时,问答机器人还可以提供天气状况、道路施工、事故事件方面的信息,以便驾驶人员对突发情况作出相应的反应。
现在的问答机器人的相关技术有很多都是关用问答对数据进行设计的,通过一些相似度算法,将用户问题与所存在的问答进行相似度分析,返回匹配度最高的该问题所对应的答案。然而,尽管这种方法在某些情况下可以获得很好的回答结果,但在其他情况下会存在一些问题。其中主要问题是缺乏实时的高速公路路况信息。因此,如果仅通过已有的信息生成回答,那么问答机器人返回的结果很可能已经与当前的高速公路炉况信息不符,导致对用户出行的误导。另一个问题是,在某些情况下,所匹配到的答案可能与上下文缺乏逻辑关联。当用户提出一个多轮对话的复杂问题时,简单的相似度算法很难分析全局语义,维持整个对话的连贯性。
发明内容
针对现有技术存在的问题,本发明提供了一种树形槽位式高速公路出行的智能问答方法,旨在有效的结合知识图谱中的结构化信息与当前的高速公路路况、优惠信息,生成考虑了对话上下文信息的特定问题意图的回答。
本发明的技术方案为:
一种树形槽位式高速公路出行的智能问答方法,包括以下步骤:
步骤1:确定高速公路出行的问题意图种类,并针对不同意图类别制定对应的形式化表达式;
所述问题意图种类包括路线意图、路况意图和优惠政策意图;对于有多种提问方式的意图,每种提问方式对应不同的正则表达式,将各个正则表达式用‘|’连接构建总体正则表达式;将意图的总体正则表达式定义为该意图的意图规则模板;
步骤2:确定每种意图的语义槽,并制定对应的槽位规则模板;
确定一个意图的答案需要若干必要信息,每个信息都对应为该意图的一个语义槽,由此将一个意图划分若干个语义槽;为识别语义槽对应的信息,针对每个语义槽构建槽位规则模板;
所述槽位规则模板,用于将问题意图嵌入以形式化表示的模板,为识别槽位对应的信息,针对每个语义槽构建槽位规则模板,总体正则表达式即为该语义槽的槽位规则模板。
步骤3:将高速路网建模为有向图;
将高速站点和互通立交映射为节点,道路映射为边,将高速路网构建为有向图G,如下式所示:
G=(N,E)
其中,N表示高速站点与互通立交的集合,E表示道路集合,在表示高速站点的节点处存储站点信息,包括站点名称、站点经纬度、站点编号。根据三种问题意图种类在边上存储相应信息,包括道路信息、路况信息以及优惠信息。
(1)道路信息包括道路编号、起始站点、结束站点、道路长度、收费规则、不同时段的行驶速度;
(2)路况信息包括路况编号、道路名称、路况类型;
(3)优惠信息包括优惠编号、道路名称、对于不同类型车的优惠内容;
步骤4:依据意图、槽位以及高速信息之间的关系构建知识图谱;将该知识图谱存储在图数据库中,然后通过得到的意图和槽位在图数据库中查询出结果,依据该结果生成相应的回答语句。
所述知识图谱的实体包含意图、意图的各个槽位以及站点;依据意图与其对应槽位的关系以及站点和互通立交构建三元组<意图、包含、槽位>、<站点、连接、立交>、<站点、连接、站点>以及<立交、连接、立交>,除此之外,若某一槽位表示出发站点或者目的站点,则该槽位与站点也存在关系,用三元组<槽位、可选、站点>表示;将实体作为节点,关系作为边,依据三元组构建知识图谱,并将该知识图谱存储在图数据库中;
步骤5:接收与高速出行有关的问题语句,将语句与知识图谱中的各个意图的规则模板进行匹配得到该问题语句的意图;
步骤6:在知识图谱中获取该问题语句的意图对应的槽位信息,将该问题语句与所有槽位的规则模板进行匹配得到所有槽位值;若槽位值属于地名,则使用最大规则匹配的方式,获得需要的站点信息;
步骤6.1:通过规则匹配,在图数据库中查找与该槽位值相匹配的高速站点;
步骤6.2:根据高速站点的信息,在知识图谱上找到所有包含该高速站点名称的子站点信息;
步骤6.3:使用最大规则匹配的方式将该槽位值与子站点进行匹配,获取其在知识图谱中的对应站点;
如果找到与该槽位值匹配的子站点,则重复步骤6.2,循环查找该子站点的所有子站点,直至站点不再包含子站点或所有子站点都无法匹配该槽位值时结束,最后一个匹配到的站点即为该槽位值对应的最大匹配的高速站点;如果没有找到与该槽位值匹配的子站点,则该高速站点即为最大匹配的结果。
步骤7:将匹配到的槽位相关信息依据知识图谱构建为一个树形结构;
依据步骤6在知识图谱中查询到的槽位值对应的站点,构建一个树形结构,表示该次查询相关的站点信息;在步骤6中获得了该问题意图对应的槽位信息,该信息对应知识图谱中的部分节点,将这些节点构建为一个树形结构,所述树形结构中的节点与边与知识图谱中的节点与边相对应;
步骤7.1:根据对话上下文选择树形结构的根节点;
选择根节点,如果当前问答为对话中的第一次问答,则新建一个节点作为根节点,否则使用该次对话中第一次问答的根节点作为根节点;
步骤7.2:根据当前问题语句获得的槽位信息在知识图谱中生成路径path;
将该此问答生成路径path作为此次问答第一次对话生成的根节点的一个孩子节点。
步骤7.3:将步骤7.2生成的路径path添加进步骤7.1的根节点上,得到本次问答的树形结构;
每次插入的新路径path在根节点孩子节点中的最左侧,即其兄弟节点都在其右侧;
步骤8:将树形结构输入树形神经网络,输出问题的回答;
所述树形神经网络为兼容树形结构的输入,采用了路径采样的方式,采样树中根节点到叶节点的每条路径,将其称为垂直路径,将垂直路径输入树形神经网络中,输出回答。
步骤8.1:将步骤7生成的树形结构经过若干层树形编码器中的树形注意力模块得到中间表示向量;
所述树形编码器为用于编码树形路径的编码器,由树形注意力模块、前馈神经网络模块和两个相加与层归一化模块组成;
步骤8.1.1:通过节点编码获得节点的向量表示;
每一条垂直路径上的节点由其在知识图谱中的编号表示,树形结构中第i层的第j个节点的编号xi,j经过词嵌入层后得到该节点的向量表示zi,j,其公式如下:
zi,j=Ez(xi,j)
其中Ez为可学习的嵌入矩阵,其将每一个节点映射为一个d维的向量;
步骤8.1.2:为节点向量表示添加其在树形结构中对应的位置编码;
为了保留各个节点在路径采样前的树形结构中的位置信息,提出了一种树形位置编码,一次问答中的树形结构确定后,同一层节点的顺序就不在变更;所以树形结构中第i层第j个节点有且仅有一个,并且在同一个树形结构中不会变更;在树形结构中第i层的第j个节点的位置编码PE计算公式如下:
PEi,j=Eh(|Hi,j|)+Ev(|Ti,j|)
其中Eh与Ev分别表示水平的位置信息与垂直的位置信息的嵌入矩阵,Hi,j表示树形结构中在第i层的第j个节点左侧的兄弟节点集合,Ti,j表示其所有子孙节点的集合;将第i层的第j个节点的位置编码PEi,j与其向量表示zi,j相加得到其最终表示
步骤8.1.3:对路径编码,得到树中每条垂直路径的初步向量表示;
第j条叶子节点所在的垂直路径的向量表示pj,由路径上各个节点的向量表示连接后经过全连接层降维为dmodel维向量,dmodel<d,其计算公式为:
其中Concat表示向量连接操作,WO为全连接层的映射矩阵,输出维度为dmodel,n为路径长度;
步骤8.1.4:由自注意力机制计算树中每条垂直路径的最终向量表示;
各垂直路径表示p经过线性变换为Q,K,V,其计算公式为:
Q=p·WQ
K=p·WK
V=p·WV
其中WQ,WK,WV为线性变换映射矩阵,输出维度为dmodel;由Q,K,V经过自注意力机制计算路径表示计算公式为:
其中d为向量维度,QT和KT分别表示Q和K的转置,Softmax的计算公式为:
其中yi表示矩阵中的向量;
至此步骤8.1.1至步骤8.1.4建立树形注意力模块完成;
步骤8.1.5:对路径表示进行残差连接与层归一化;
树形注意力模块输出经过相加与层归一化模块、前馈神经网络模块、相加与层归一化模块得到输出h,其中相加与层归一化模块的计算公式如下:
其中μi为样本期望,σ2+∈为有偏样本方差。
步骤8.1.6:将输出的h输入前馈神经网络层,所述前馈神经网络层由两个线性变换与在线性变换之间的ReLU激活函数组成,并且其中的两个线性变换不含常数参数,前馈神经网络的计算公式如下:
其中W1和W2为线性变换映射矩阵;
步骤8.1.7:将前馈神经网络层的输出再作用于步骤8.1.5中的残差连接与层归一化得到树形编码器的最终表示c;
步骤8.2:通过解码器逐时间步输出回答;在每个时间步骤中,解码器的输入都由编码器输出和上一时间步的回答组成;这样,在不断地生成新词汇的过程中,解码器依次递推出整个句子的内容。整个回答生成过程在某个时间步,当解码器生成一个表示结束的特殊词汇标记或达到了最大时间步限制时结束,结束时时间步回答为最终对用户问题的回答。
解码器的输入由编码器的输出和一个特殊的开始词汇标记组成,这个标记表示当前还没有生成回答。所述词汇标记为与词汇具有相同粒度的特殊词汇,表示特定的意义,如开始词汇标记表示一个句子的开始,结束词汇标记表示一个句子的结束。在每个时间步,解码器会根据编码器的输出和当前已经生成的部分回答,生成一个新的词汇,并将其添加到当前时间步的回答中。这个词汇标记是与词汇粒度相同的特殊词汇,用于表示某种特定意义,比如开始词汇标记表示一个句子的开头,结束词汇标记则表示一个句子的结束。
与现有技术相比,本发明提出的技术方案具有以下有益效果:
1、本发明方法将问题进行拆分,制定出意图规则和槽位规则,基于意图规则、槽位规则和高速路网构建知识图谱。通过意图规则与槽位规则获得问题的形式化表示,并在知识图谱中找到相关信息,确保提供信息的准确性;
2、本发明通过槽位匹配的方式将单次问题的输入形式转为知识图谱上的一条路径,并将该路径与本次对话其他问题的输入路径组合为一个树形结构来容纳整个对话的上下文,能够使问答考虑整个对话期间的上下文信息,使回答更加智能;
3、本发明提出了兼容了树形输入的编码器解码器结构的神经网络,来生成对应问题的回答,该神经网络的输出为树形结构的路径采样,并通过本发明提出的树形位置编码在采样路径中有效地保留节点在树中的位置信息。
附图说明
为了更清楚地说明本发明实施例中的具体方式,下面将对实施例中涉及的相关附图做简单说明,下面的附图仅仅是本发明的优选实施例,对于本领域普通技术人员来说,在没有创造性改变的前提下,可以根据这些附图获得其它的附图。
图1为本实施方式树形槽位式高速公路出行的智能问答方法的流程示意图;
图2为本发明中构建知识图谱以及处理问题语料的流程图。
图3为路线意图及其槽位的示意图。
图4为表示高速路网的有向图
图5为本方法提出的树形神经网络结构图。
图6为本方法提出的树形神经网络中树形编码器块的结构图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳实施方式。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本申请的公开内容理解的更加透彻全面。
本发明的核心思路为,本发明旨在为高速实行差异化收费政策后,通过智能问答系统为用户提供出行的建议,帮助用户更好的了解当前高速公路的路线信息、路况信息和优惠方案。
图1是本实施方式树形槽位式高速公路出行的智能问答方法的流程示意图,如图1所示,所述树形槽位式高速公路出行的智能问答方法包括以下步骤:
步骤1:确定高速公路出行的问题意图种类,并针对不同意图类别制定对应的形式化表达式;
所述问题意图种类包括路线意图、路况意图和优惠政策意图;对于有多种提问方式的意图,每种提问方式对应不同的正则表达式,将各个正则表达式用‘|’连接构建总体正则表达式;将意图的总体正则表达式定义为该意图的意图规则模板;意图规则模板的作用是将问题转化为一种特定的内容格式。高速出行常见问题包括询问路线、询问路况以及咨询高速折扣优惠,由此总结出三种意图:路线意图、路况意图以及优惠意图。本实施例对三种意图的规则模板分别进行介绍:
(1)对于路线意图的问题常见的提问方式有:“从A到B的路线是什么”、“从A到B怎么走”、“从A到B的路怎么走”、“从A到B的路线”等,将各种提问方式整合到一起总结出路线意图的规则模板:“(路线[是为](什么)?)|((路|道)?(怎么|如何)走)”。
(2)对于路况意图的问题常见的提问方式有:“从A站点到B站点的路况怎么样”、“从A站点到B站点是否堵车”、“从A站点到B站点封路了吗”、“从A站点到B站点是否有事故”等,于是可以总结出对于询问路况的问题会带有词语“路网”、“堵车”、“封路”以及“事故”,将所有词语整合到一起总结出路况意图的规则模板“(路况|堵车|封路|事故)(情况)?”。
(3)与路况意图类似,对于询问优惠政策的问题会带有词语“优惠”、“打折”、“省钱”,在这些词语的后面或伴随词语“政策”,将所有提问方式整合到一起总结出优惠政策意图的规则模板“(优惠|打折|省钱)(政策)?”
步骤2:确定每种意图的语义槽,并制定对应的槽位规则模板;
确定一个意图的答案需要若干必要信息,每个信息都对应为该意图的一个语义槽,由此将一个意图划分若干个语义槽;为识别语义槽对应的信息,针对每个语义槽构建槽位规则模板;
所述槽位规则模板,用于将问题意图嵌入以形式化表示的模板,为识别槽位对应的信息,针对每个语义槽构建槽位规则模板,总体正则表达式即为该语义槽的槽位规则模板。
图2为路线意图及其槽位的示意图,查询路线首先需要知道路线的出发地与目的地,同时不同要求的路线会不相同。例如:路程最短的路线、时间最短的路线以及花销最少的路线,所以路线意图还包含路线要求槽位,同时,路线要求槽位会包含时间少、路线短以及花费少三种类型,每种类型都有各自的规则模板用来识别不同的要求。不同的车型有不同的优惠政策,意图为咨询最优惠政策时需要具体的车型信息,所以路线意图也包括车型槽位。为识别槽位对应的信息,针对每个语义槽构建槽位规则模板。一个信息可能有多种表达方式,每种表达方式会对应不同的正则表达式。将各个正则表达式用‘|’连接构建总体正则表达式,总体正则表达式即为该语义槽的槽位规则模板。以车型槽位为例,描述车型有两种表达方式:“车型为A”和“A车”,所以车型槽位的规则模板为“车[型]?[是为:]?(\d+|([\s\S]+车))”。同样的可以得到其他槽位的规则模板。
类比路线意图,路况意图包含路况出发地、路况目的地以及路况车道三个槽位,优惠意图包含优惠出发地、优惠目的地以及优惠车道三个槽位。同时,根据上述生成槽位规则模板的方法生成路况意图与优惠意图的槽位的规则模板。
步骤3:将高速路网建模为有向图;
将高速站点和互通立交映射为节点,道路映射为边,将高速路网构建为有向图G,如下式所示:
G=(N,E)
其中,N表示高速站点与互通立交的集合,E表示道路集合。图3展示了部分辽宁高速路网对应的有向图。在表示高速站点的节点处存储站点信息,包括站点名称、站点经纬度、站点编号。根据三种问题意图种类在边上存储相应信息,包括道路信息、路况信息以及优惠信息。
(1)道路信息包括道路编号、起始站点、结束站点、道路长度、收费规则、不同时段的行驶速度;
(2)路况信息包括路况编号、道路名称、路况类型(如封路、事故、拥堵);
(3)优惠信息包括优惠编号、道路名称、对于不同类型车的优惠内容(如全部车型打九折);
步骤4:依据意图、槽位以及高速信息之间的关系构建知识图谱;知识图谱可以识别出与高速出行相关的问题语料的意图以及对应的槽位。将该知识图谱存储在图数据库中,然后通过得到的意图和槽位在图数据库中查询出结果,依据该结果生成相应的回答语句。
图4为本方法提出的知识图谱的示意图。所述知识图谱的实体包含意图、意图的各个槽位以及站点;依据意图与其对应槽位的关系以及站点和互通立交构建三元组<意图、包含、槽位>、<站点、连接、立交>、<站点、连接、站点>以及<立交、连接、立交>,除此之外,若某一槽位表示出发站点或者目的站点,则该槽位与站点也存在关系,用三元组<槽位、可选、站点>表示;将实体作为节点,关系作为边,依据三元组构建知识图谱,并将该知识图谱存储在图数据库中;
步骤5:接收与高速出行有关的问题语句,将语句与知识图谱中的各个意图的规则模板进行匹配得到该问题语句的意图;
例如询问路线的问题,“从鞍山南出发到辽阳,车的类型为一类客车,想要花费最少应该怎么走?”,将该问题与所有意图的规则模板进行匹配得到该问题的意图为路线意图。
步骤6:在知识图谱中获取该问题语句的意图对应的槽位信息,将该问题语句与所有槽位的规则模板进行匹配得到所有槽位值;若槽位值属于地名,则使用最大规则匹配的方式,获得需要的站点信息;
步骤6.1:通过规则匹配,在图数据库中查找与该槽位值相匹配的高速站点;
步骤6.2:根据高速站点的信息,在知识图谱上找到所有包含该高速站点名称的子站点信息;
步骤6.3:使用最大规则匹配的方式将该槽位值与子站点进行匹配,获取其在知识图谱中的对应站点;
如果找到与该槽位值匹配的子站点,则重复步骤6.2,循环查找该子站点的所有子站点,直至站点不再包含子站点或所有子站点都无法匹配该槽位值时结束,最后一个匹配到的站点即为该槽位值对应的最大匹配的高速站点;如果没有找到与该槽位值匹配的子站点,则该高速站点即为最大匹配的结果。例如从知识图谱中得到,路线意图有路线出发地、路线目的地、车型和要求四个槽位。将问题“从铁岭南出发到辽阳,车的类型为一类客车,想要花费最少应该怎么走?”与这四个槽位的规则模板进行匹配,可以得到四个槽位的槽位值分别为“铁岭南”、“辽阳”、“一类客车”以及“花费少”。在四个槽位值中路线出发地与路线目的地的槽位值属于地名,所以需要进行最大规则匹配获得需要的站点信息。以“铁岭南”为例,在数据库中查找与“铁岭南”相匹配的高速站点,若该高速站点为铁岭站,则查找铁岭站的所有子站点,包括铁岭南站、铁岭北站和铁岭西站,将所有子站点与“铁岭南”进行匹配,得到匹配站点铁岭南站,因为铁岭南站没有子站点,所以铁岭南站为最后一个匹配到的站点,则“铁岭南”表示的是铁岭南站;若该高速站点为铁岭南站,则查找铁岭南站的所有子站点,因为铁岭南站没有子站点,所以铁岭南站为最后一个匹配到的站点,则“铁岭南”表示的是铁岭南站。同样的方式可以得到“辽阳”表示的是辽阳站。
步骤7:将匹配到的槽位相关信息依据知识图谱构建为一个树形结构;
依据步骤6在知识图谱中查询到的槽位值对应的站点,构建一个树形结构,表示该次查询相关的站点信息;在步骤6中获得了该问题意图对应的槽位信息,该信息对应知识图谱中的部分节点,将这些节点构建为一个树形结构,所述树形结构中的节点与边与知识图谱中的节点与边相对应;
步骤7.1:根据对话上下文选择树形结构的根节点;
选择根节点,如果当前问答为对话中的第一次问答,则新建一个节点作为根节点,否则使用该次对话中第一次问答的根节点作为根节点;
步骤7.2:根据当前问题语句获得的槽位信息在知识图谱中生成路径path;
如上述问题的意图为路线意图,旨在求最少花销,则查询语句的模板为:
"MATCH(from:Station{name:'"+starting+"'}),(to:Station{name:'"+destination+"'})"
"CALL apoc.algo.dijkstra(from,to,'VEHICLE_TYPE_"+str(vehicle_type_number)+"','money')"
"yield path as path,weight as weight RETURN path,weight"
在实例中所提供的路线出发地“铁岭南站”、路线目的地“辽阳站”以及车型“一类客车”作为属性提供给该查询语句的模板,该查询语句在算法库中调用迪杰斯特拉(Dijkstra)算法得到花费最少的路径path以及具体花费weight。经过计算得到路径path为“(辽宁铁岭南站)→(鞍山南互通立交)→(鞍山互通立交)→(辽阳县互通立交)→(绣江枢纽立交)→(辽阳互通立交)→(辽宁辽阳站)”,weight为61.0元。
将该此问答生成路径path作为此次问答第一次对话生成的根节点的一个孩子节点。
步骤7.3:将步骤7.2生成的路径path添加进步骤7.1的根节点上,得到本次问答的树形结构;
每次插入的新路径path在根节点孩子节点中的最左侧,即其兄弟节点都在其右侧,原因是需要保留该树形结构中兄弟节点间的顺序信息,这些信息将在后续步骤中让神经网络确定当前回答所针对的问题,并保持上下文的连贯性。
步骤8:将树形结构输入树形神经网络,输出问题的回答;
图5为本实施方式提出的树形神经网络的结构,所述树形神经网络为兼容树形结构的输入,采用了路径采样的方式,采样树中根节点到叶节点的每条路径,将其称为垂直路径,将垂直路径输入树形神经网络中,输出回答。
步骤8.1:将步骤7生成的树形结构经过若干层树形编码器中的树形注意力模块得到中间表示向量;
所述树形编码器为用于编码树形路径的编码器,其结构如图6所示。由树形注意力模块、前馈神经网络模块和两个相加与层归一化模块组成;
步骤8.1.1:通过节点编码获得节点的向量表示;
每一条垂直路径上的节点由其在知识图谱中的编号表示,树形结构中第i层的第j个节点的编号xi,j经过词嵌入层后得到该节点的向量表示zi,j,其公式如下:
zi,j=Ez(xi,j)
其中Ez为可学习的嵌入矩阵,其将每一个节点映射为一个d维的向量;
步骤8.1.2:为节点向量表示添加其在树形结构中对应的位置编码;
为了保留各个节点在路径采样前的树形结构中的位置信息,提出了一种树形位置编码,一次问答中的树形结构确定后,同一层节点的顺序就不在变更;所以树形结构中第i层第j个节点有且仅有一个,并且在同一个树形结构中不会变更;这也能保证第2层的第1个节点为当前问题所表示的路径的父节点。在树形结构中第i层的第j个节点的位置编码PE计算公式如下:
PEi,j=Eh(|Hi,j|)+Ev(|Ti,j|)
其中Eh与Ev分别表示水平的位置信息与垂直的位置信息的嵌入矩阵,Hi,j表示树形结构中在第i层的第j个节点左侧的兄弟节点集合,Ti,j表示其所有子孙节点的集合;水平位置信息区分了不同垂直路径上的同一父节点,而垂直位置信息引入了相关垂直路径上的节点顺序。将第i层的第j个节点的位置编码PEi,j与其向量表示zi,j相加得到其最终表示
步骤8.1.3:对路径编码,得到树中每条垂直路径的初步向量表示;
第j条叶子节点所在的垂直路径的向量表示pj,由路径上各个节点的向量表示连接后经过全连接层降维为dmodel维向量,dmodel<d,其计算公式为:
其中Concat表示向量连接操作,WO为全连接层的映射矩阵,输出维度为dmodel,n为路径长度;
步骤8.1.4:由自注意力机制计算树中每条垂直路径的最终向量表示;
各垂直路径表示p经过线性变换为Q,K,V,其计算公式为:
Q=p·WQ
K=p·WK
V=p·WV
其中WQ,WK,WV为线性变换映射矩阵,输出维度为dmodel;由Q,K,V经过自注意力机制计算路径表示计算公式为:
其中d为向量维度,QT和KT分别表示Q和K的转置,Softmax的计算公式为:
其中yi表示矩阵中的向量;
至此步骤8.1.1至步骤8.1.4建立树形注意力模块完成;
步骤8.1.5:对路径表示进行残差连接与层归一化;
树形注意力模块输出经过相加与层归一化模块、前馈神经网络模块、相加与层归一化模块得到输出h,其中相加与层归一化模块的计算公式如下:
其中μi为样本期望,σ2+∈为有偏样本方差。
步骤8.1.6:将输出的h输入前馈神经网络层,所述前馈神经网络层由两个线性变换与在线性变换之间的ReLU激活函数组成,并且其中的两个线性变换不含常数参数,前馈神经网络的计算公式如下:
其中W1和W2为线性变换映射矩阵;
步骤8.1.7:将前馈神经网络层的输出再作用于步骤8.1.5中的残差连接与层归一化得到树形编码器的最终表示c;
步骤8.2:通过解码器逐时间步输出回答;在每个时间步骤中,解码器的输入都由编码器输出和上一时间步的回答组成。这样,在不断地生成新词汇的过程中,解码器依次递推出整个句子的内容。整个回答生成过程在某个时间步,当解码器生成一个表示结束的特殊词汇标记或达到了最大时间步限制时结束,结束时时间步回答为最终对用户问题的回答。
解码器结构为Transformer模型中的解码器结构;时间步为一次解码器推理的过程,因为解码器一次输出为一个词汇,所以输出整句的回答实际上为多个时间步的解码器推理过程。解码器的输入由编码器的输出和一个特殊的开始词汇标记组成,这个标记表示当前还没有生成回答。所述词汇标记为与词汇具有相同粒度的特殊词汇,表示特定的意义,如开始词汇标记表示一个句子的开始,结束词汇标记表示一个句子的结束。在每个时间步,解码器会根据编码器的输出和当前已经生成的部分回答,生成一个新的词汇,并将其添加到当前时间步的回答中。这个词汇标记是与词汇粒度相同的特殊词汇,用于表示某种特定意义,比如开始词汇标记表示一个句子的开头,结束词汇标记则表示一个句子的结束。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;因而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。

Claims (8)

1.一种树形槽位式高速公路出行的智能问答方法,其特征在于,包括以下步骤:
步骤1:确定高速公路出行的问题意图种类,并针对不同意图类别制定对应的形式化表达式;
步骤2:确定每种意图的语义槽,并制定对应的槽位规则模板;
确定一个意图的答案需要若干必要信息,每个信息都对应为该意图的一个语义槽,由此将一个意图划分若干个语义槽;为识别语义槽对应的信息,针对每个语义槽构建槽位规则模板;
所述槽位规则模板,用于将问题意图嵌入以形式化表示的模板,为识别槽位对应的信息,针对每个语义槽构建槽位规则模板,总体正则表达式即为该语义槽的槽位规则模板;
步骤3:将高速路网建模为有向图;
步骤4:依据意图、槽位以及高速信息之间的关系构建知识图谱;将该知识图谱存储在图数据库中,然后通过得到的意图和槽位在图数据库中查询出结果,依据该结果生成相应的回答语句;
步骤5:接收与高速出行有关的问题语句,将语句与知识图谱中的各个意图的规则模板进行匹配得到该问题语句的意图;
步骤6:在知识图谱中获取该问题语句的意图对应的槽位信息,将该问题语句与所有槽位的规则模板进行匹配得到所有槽位值;若槽位值属于地名,则使用最大规则匹配的方式,获得需要的站点信息;
步骤7:将匹配到的槽位相关信息依据知识图谱构建为一个树形结构;
依据步骤6在知识图谱中查询到的槽位值对应的站点,构建一个树形结构,表示该次查询相关的站点信息;在步骤6中获得了该问题意图对应的槽位信息,该信息对应知识图谱中的部分节点,将这些节点构建为一个树形结构,所述树形结构中的节点与边与知识图谱中的节点与边相对应;
步骤8:将树形结构输入树形神经网络,输出问题的回答;
所述树形神经网络为兼容树形结构的输入,采用了路径采样的方式,采样树中根节点到叶节点的每条路径,将其称为垂直路径,将垂直路径输入树形神经网络中,输出回答。
2.根据权利要求1所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,步骤1中所述问题意图种类包括路线意图、路况意图和优惠政策意图;对于有多种提问方式的意图,每种提问方式对应不同的正则表达式,将各个正则表达式用‘|’连接构建总体正则表达式;将意图的总体正则表达式定义为该意图的意图规则模板。
3.根据权利要求1所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,所述步骤3具体为:将高速站点和互通立交映射为节点,道路映射为边,将高速路网构建为有向图G,如下式所示:
G=(N,E)
其中,N表示高速站点与互通立交的集合,E表示道路集合,在表示高速站点的节点处存储站点信息,包括站点名称、站点经纬度、站点编号;根据三种问题意图种类在边上存储相应信息,包括道路信息、路况信息以及优惠信息;
(1)道路信息包括道路编号、起始站点、结束站点、道路长度、收费规则、不同时段的行驶速度;
(2)路况信息包括路况编号、道路名称、路况类型;
(3)优惠信息包括优惠编号、道路名称、对于不同类型车的优惠内容。
4.根据权利要求1所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,步骤4中所述知识图谱的实体包含意图、意图的各个槽位以及站点;依据意图与其对应槽位的关系以及站点和互通立交构建三元组<意图、包含、槽位>、<站点、连接、立交>、<站点、连接、站点>以及<立交、连接、立交>,除此之外,若某一槽位表示出发站点或者目的站点,则该槽位与站点也存在关系,用三元组<槽位、可选、站点>表示;将实体作为节点,关系作为边,依据三元组构建知识图谱,并将该知识图谱存储在图数据库中。
5.根据权利要求1所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,所述步骤6具体包括以下步骤:
步骤6.1:通过规则匹配,在图数据库中查找与该槽位值相匹配的高速站点;
步骤6.2:根据高速站点的信息,在知识图谱上找到所有包含该高速站点名称的子站点信息;
步骤6.3:使用最大规则匹配的方式将该槽位值与子站点进行匹配,获取其在知识图谱中的对应站点;
如果找到与该槽位值匹配的子站点,则重复步骤6.2,循环查找该子站点的所有子站点,直至站点不再包含子站点或所有子站点都无法匹配该槽位值时结束,最后一个匹配到的站点即为该槽位值对应的最大匹配的高速站点;如果没有找到与该槽位值匹配的子站点,则该高速站点即为最大匹配的结果。
6.根据权利要求1所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,所述步骤7具体包括以下步骤:
步骤7.1:根据对话上下文选择树形结构的根节点;
选择根节点,如果当前问答为对话中的第一次问答,则新建一个节点作为根节点,否则使用该次对话中第一次问答的根节点作为根节点;
步骤7.2:根据当前问题语句获得的槽位信息在知识图谱中生成路径path;
将该此问答生成路径path作为此次问答第一次对话生成的根节点的一个孩子节点;
步骤7.3:将步骤7.2生成的路径path添加进步骤7.1的根节点上,得到本次问答的树形结构;
每次插入的新路径path在根节点孩子节点中的最左侧,即其兄弟节点都在其右侧。
7.根据权利要求1所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,所述步骤8具体包括以下步骤:
步骤8.1:将步骤7生成的树形结构经过若干层树形编码器中的树形注意力模块得到中间表示向量;
所述树形编码器为用于编码树形路径的编码器,由树形注意力模块、前馈神经网络模块和两个相加与层归一化模块组成;
步骤8.2:通过解码器逐时间步输出回答;在每个时间步骤中,解码器的输入都由编码器输出和上一时间步的回答组成;这样,在不断地生成新词汇的过程中,解码器依次递推出整个句子的内容;整个回答生成过程在某个时间步,当解码器生成一个表示结束的特殊词汇标记或达到了最大时间步限制时结束,结束时时间步回答为最终对用户问题的回答;
解码器的输入由编码器的输出和一个特殊的开始词汇标记组成,这个标记表示当前还没有生成回答;所述词汇标记为与词汇具有相同粒度的特殊词汇,表示特定的意义,如开始词汇标记表示一个句子的开始,结束词汇标记表示一个句子的结束;在每个时间步,解码器会根据编码器的输出和当前已经生成的部分回答,生成一个新的词汇,并将其添加到当前时间步的回答中;这个词汇标记是与词汇粒度相同的特殊词汇,用于表示某种特定意义,比如开始词汇标记表示一个句子的开头,结束词汇标记则表示一个句子的结束。
8.根据权利要求7所述的一种树形槽位式高速公路出行的智能问答方法,其特征在于,所述步骤8.1具体包括以下步骤:
步骤8.1.1:通过节点编码获得节点的向量表示;
每一条垂直路径上的节点由其在知识图谱中的编号表示,树形结构中第i层的第j个节点的编号xi,j经过词嵌入层后得到该节点的向量表示zi,j,其公式如下:
zi,j=Ez(xi,j)
其中Ez为可学习的嵌入矩阵,其将每一个节点映射为一个d维的向量;
步骤8.1.2:为节点向量表示添加其在树形结构中对应的位置编码;
为了保留各个节点在路径采样前的树形结构中的位置信息,提出了一种树形位置编码,一次问答中的树形结构确定后,同一层节点的顺序就不在变更;所以树形结构中第i层第j个节点有且仅有一个,并且在同一个树形结构中不会变更;在树形结构中第i层的第j个节点的位置编码PE计算公式如下:
PEi,j=Eh(|Hi,j|)+Ev(|Ti,j|)
其中Eh与Ev分别表示水平的位置信息与垂直的位置信息的嵌入矩阵,Hi,j表示树形结构中在第i层的第j个节点左侧的兄弟节点集合,Ti,j表示其所有子孙节点的集合;将第i层的第j个节点的位置编码PEi,j与其向量表示zi,j相加得到其最终表示
步骤8.1.3:对路径编码,得到树中每条垂直路径的初步向量表示;
第j条叶子节点所在的垂直路径的向量表示pj,由路径上各个节点的向量表示连接后经过全连接层降维为dmodel维向量,dmodel<d,其计算公式为:
其中Concat表示向量连接操作,WO为全连接层的映射矩阵,输出维度为dmodel,n为路径长度;
步骤8.1.4:由自注意力机制计算树中每条垂直路径的最终向量表示;
各垂直路径表示p经过线性变换为Q,K,V,其计算公式为:
Q=p·WQ
K=p·WK
V=p·WV
其中WQ,WK,WV为线性变换映射矩阵,输出维度为dmodel;由Q,K,V经过自注意力机制计算路径表示计算公式为:
其中d为向量维度,QT和KT分别表示Q和K的转置,Softmax的计算公式为:
其中yi表示矩阵中的向量;
至此步骤8.1.1至步骤8.1.4建立树形注意力模块完成;
步骤8.1.5:对路径表示进行残差连接与层归一化;
树形注意力模块输出经过相加与层归一化模块、前馈神经网络模块、相加与层归一化模块得到输出h,其中相加与层归一化模块的计算公式如下:
其中μi为样本期望,σ2+∈为有偏样本方差;
步骤8.1.6:将输出的h输入前馈神经网络层,所述前馈神经网络层由两个线性变换与在线性变换之间的ReLU激活函数组成,并且其中的两个线性变换不含常数参数,前馈神经网络的计算公式如下:
其中W1和W2为线性变换映射矩阵;
步骤8.1.7:将前馈神经网络层的输出再作用于步骤8.1.5中的残差连接与层归一化得到树形编码器的最终表示c。
CN202310372813.2A 2023-04-10 2023-04-10 树形槽位式高速公路出行的智能问答方法 Pending CN116644158A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310372813.2A CN116644158A (zh) 2023-04-10 2023-04-10 树形槽位式高速公路出行的智能问答方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310372813.2A CN116644158A (zh) 2023-04-10 2023-04-10 树形槽位式高速公路出行的智能问答方法

Publications (1)

Publication Number Publication Date
CN116644158A true CN116644158A (zh) 2023-08-25

Family

ID=87621856

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310372813.2A Pending CN116644158A (zh) 2023-04-10 2023-04-10 树形槽位式高速公路出行的智能问答方法

Country Status (1)

Country Link
CN (1) CN116644158A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117149983A (zh) * 2023-10-30 2023-12-01 山东高速信息集团有限公司 基于高速公路业务智能对话的方法、装置及设备
CN117235108A (zh) * 2023-11-14 2023-12-15 云筑信息科技(成都)有限公司 一种基于图神经网络的nl2sql生成方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117149983A (zh) * 2023-10-30 2023-12-01 山东高速信息集团有限公司 基于高速公路业务智能对话的方法、装置及设备
CN117149983B (zh) * 2023-10-30 2024-02-27 山东高速信息集团有限公司 基于高速公路业务智能对话的方法、装置及设备
CN117235108A (zh) * 2023-11-14 2023-12-15 云筑信息科技(成都)有限公司 一种基于图神经网络的nl2sql生成方法

Similar Documents

Publication Publication Date Title
CN116644158A (zh) 树形槽位式高速公路出行的智能问答方法
Nakamura et al. Decision support using causation knowledge base
CN110309277B (zh) 人机对话语义解析方法和系统、车载人机对话方法和系统、控制器及存储介质
CN106057200A (zh) 基于语义的交互系统及交互方法
CN112084336A (zh) 一种高速公路突发事件的实体提取和事件分类方法及装置
CN113010663A (zh) 一种基于工业认知图谱的自适应推理问答方法和系统
CN112579921B (zh) 基于倒排序索引及前缀树的轨迹索引和查询方法及系统
Griggs et al. Leader and leaderless multi-layer consensus with state obfuscation: An application to distributed speed advisory systems
Larioui et al. Towards a semantic layer design for an advanced intelligent multimodal transportation system
CN115630648A (zh) 面向人机对话的地址要素解析方法、系统与计算机可读介质
CN113392147B (zh) 一种vr场景知识图谱表示及动态更新方法
CN114818707A (zh) 一种基于知识图谱的自动驾驶决策方法和系统
CN116450799B (zh) 一种应用于交通管理服务的智能对话方法及设备
CN113157875A (zh) 知识图谱问答系统、方法及装置
CN114970547A (zh) 多层级多类型的规划内容差异识别与冲突消除方法
CN115423841A (zh) 一种面向大宗物流的运输终点校准方法及系统
Menšík et al. Heuristics for spatial data descriptions in a multi-agent system
CN114036268A (zh) 基于意图门的任务型多轮对话方法及系统
Huang et al. Driving route recommendation with profit maximization in ride sharing
Stewart Hornsby et al. Linking geosensor network data and ontologies to support transportation modeling
Kalpakchi et al. SpaceRefNet: a neural approach to spatial reference resolution in a real city environment
CN116878531B (zh) 基于道路资源预测的智能导航方法
CN117113037B (zh) 通行数据确定方法、装置、电子设备及存储介质
Brathwaite The Holy Trinity: Blending Statistics, Machine Learning and Discrete Choice, with Applications to Strategic Bicycle Planning
Zhu Multi-criteria electric vehicle routing planning

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