CN112136125A - 用于自然语言分类的训练数据扩展 - Google Patents

用于自然语言分类的训练数据扩展 Download PDF

Info

Publication number
CN112136125A
CN112136125A CN201980033219.2A CN201980033219A CN112136125A CN 112136125 A CN112136125 A CN 112136125A CN 201980033219 A CN201980033219 A CN 201980033219A CN 112136125 A CN112136125 A CN 112136125A
Authority
CN
China
Prior art keywords
intent
expression
expressions
computer
terms
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
CN201980033219.2A
Other languages
English (en)
Inventor
M·库迪勒
A·佩罗尼
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN112136125A publication Critical patent/CN112136125A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

提供了一种用于训练与计算机系统的聊天界面相关联的自然语言分类器的计算机实现的方法。该方法可以包括接收训练数据集,该训练数据集包括与意图相对应的初始表达集合。可以生成与该意图相对应的附加表达,其中,基于与该意图相对应的初始表达集合来生成附加表达。可以基于与意图对应的初始表达集合和附加表达来训练自然语言分类器。训练的自然语言分类器可以被实现为基于训练自然语言分类器的初始表达集合和附加表达来确定由检测到的查询表达的意图。

Description

用于自然语言分类的训练数据扩展
背景技术
本发明总体上涉及自然语言处理领域,尤其涉及开发用于训练自然语言分类器的训练数据。
聊天机器人、谈话机器人、即时消息收发机器人、人工对话实体等(“聊天机器人”)是设计用于模拟与人类和最终用户的自然语言交流、谈话和对话的计算机软件程序。聊天机器人的重要功能可能包括理解、解释和确定来自最终用户的用户输入的表达的意图。表达的意图可以包括,例如,自由格式的文本和/或话语。聊天机器人可以通过正确地确定用户输入的表达的意图来支持并促进与最终用户的自然语言通信,例如,以响应于用户输入正确且适当地生成有意义的、有用的或期望的输出。即,聊天机器人可以通过正确地确定用户输入的表达的意图来生成期望的输出。例如,能够充分确定各种表达的意图的聊天机器人可以用于支持和促进与广泛的最终用户的自然语言通信,以便响应查询、回答问题并响应于诸如“我想更改系统密码”、或“我在注册电话号码时出错,需要更正它。”的请求提供信息。最终用户可以用许多不同的方式表达这种意图。
聊天机器人可以通过实施自然语言分类器(NLC)来消除歧义、理解和解释表达的意图(例如通过文本分类)来确定表达的意图。相对于对应类别或表达的相应集合,NLC可以对表达的意图进行分类、归类或分组来实现。可以使用由置信度得分表示的置信度执行分类。聊天机器人可以正确确定表达的意图的程度可以取决于NLC进行分类的准确性。置信度得分可以反映确定意图分类的准确性或确定性水平,这可能取决于表达的意图的NLC的理解和解释(“自然语言理解”)的水平和粒度。
发明内容
根据本发明的一个方面,提供了一种用于训练与计算机系统的聊天界面相关联的自然语言分类器的计算机实现的方法、计算机系统和计算机程序产品。该方法可以包括接收训练数据集,该训练数据集包括与意图相对应的的初表达始集合。可以生成与该意图相对应的附加表达,其中,基于与该意图相对应的初始表达集合来生成附加表达。可以基于对应于意图的初始表达集合和附加表达来训练自然语言分类器。训练的自然语言分类器可以被实现为基于训练自然语言分类器的初始表达集合和附加表达来确定由检测到的查询表达的意图。
附图说明
图1是描绘根据本发明的实施例的解释管理系统的功能框图。
图2A是描绘根据本发明的实施例的解释管理系统的一方面的操作步骤的流程图。
图2B是根据本发明实施例的解释管理系统的一方面的操作步骤的流程图。
图3是描绘根据本发明的实施例的客户端设备和/或解释管理设备的框图。
图4描绘了根据本发明实施例的云计算环境。
图5描绘了根据本发明实施例的抽象模型层。
附图不一定按比例绘制。附图仅是示意性表示,并非意图描绘本发明的特定参数。附图仅旨在描绘本发明的典型实施例。在附图中,相同的标号表示相同的元件。
具体实施方式
本文公开了本发明的详细实施例,用于描述和说明所要求保护的结构和方法,其可以以各种形式实施,并且不旨在以任何方式穷举或限于所公开的实施例。在不脱离所公开的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。选择本文使用的术语是为了最好地解释一个或多个实施例的原理、实际应用或相对于当前技术的技术改进、或使本领域的普通技术人员能够理解本文公开的实施例。如上所述,可以省略众所周知的特征和技术的细节,以避免不必要地使本发明的实施例模糊。
在说明书中对“一个实施例”、“一个实施例”、“示例实施例”等的引用指示所描述的实施例可以包括一个或多个特定的特征、结构或特性,但是应为应当理解,这些特定的特征、结构或特性对于本发明的每个公开的实施例可以是共同的或可以不是共同的。而且,这样的短语本身不一定指任何一个特定的实施例。这样,当结合一个实施例描述一个或多个特定的特征、结构或特性时,与其他实施例的连接(如果适用),无论是否明确描述,都认为影响这种一个或多个特征、结构或特性在本领域技术人员的知识范围内。
聊天机器人的性能和有效性取决于对自然语言的理解,聊天机器人可以通过自然语言理解来确定(即,通过NLC)各种表达的意图。更高和更细粒度的理解和解释级别可以允许做出更准确的确定,从而使聊天机器人在与最终用户进行有意义的通信时具有更好的性能。
例如,来自最终用户的用户输入,包括请求、短语或问题,例如“我想更改我的系统密码”,“我忘记了我的系统密码,您可以将其发送给我吗?”和“我丢失了密码。我该如何恢复呢?”表达类似但需求略有不同的不同的意图。对表达的意图的有限理解或粗略解释可能会降低聊天机器人的有用性和实用性,导致聊天机器人将每个意图确定为仅与“密码”有关,从而降低了聊天机器人支持和促进与最终用户自然语言交流的能力。这样,由聊天机器人产生的关于用户输入的输出可能不太有意义、没有帮助和不被期望,并且可能仅与兼容表达的意图部分相关。对表达的意图的有限了解或细粒度的解释可能会增加聊天机器人的有用性和实用性,使聊天机器人能够确定与“密码更改”、“密码电子邮件恢复”和/或“密码恢复”相关的每个意图,从而提高了聊天机器人支持和促进与最终用户进行自然语言交流的能力。这样,由聊天机器人产生的关于用户输入的输出可能更有意义、有帮助和被期望,并且可能与各种表达的意图充分相关。
可以基于精心准备和策划的训练数据来开发NLC的自然语言理解程度。训练数据可以包括例如基于与历史或代表性表达的意图相对应的语料库的文本和/或语音的数据对象。训练数据可以被准备为包括例如所表达的意图的分类,其将语料库的各个表达与在NLC可以应用的域中与自然语言使用相关的意图的对应类或类别相关联。NLC可以执行“训练”阶段,在该阶段中,学习模型基于训练数据学习自然语言规则,以开发用于实现NLC的自然语言理解的机器表示模型。
可以基于训练数据(所述训练数据包括与特别表达的意图相对应的许多不同的、多样化的和扩展的表达),例如可以基于各种各样的语料库的文本和/或语音,来实现对特别表达的意图的高度自然语言理解。包括大量表达的训练数据可能是困难、费时和资源密集的,因为可能存在与最终用户可能想到的意图相对应的任何数量的这种表达。
例如,与意图改变密码相对应的表达可以包括例如自然语言请求、短语或诸如“我想改变我的系统的密码”、“我想修改密码”、“我想更改我的帐户密码”、“我需要为笔记本电脑插入新密码”等之类的问题。尽管如此,可能还有无数其他方式可以表达更改密码的意图。此外,个别最终用户的自然语言使用可能会影响意图的表达,这种意图的表达可能会随着时间的流逝而演进和发展,例如基于与文化影响、人口统计学、最终用户年龄、出处、词源和语言适应有关的因素(例如俚语)、以及发展等等。
因此,在本领域中需要一种方法,该方法有效地开发用于训练NLC的训练数据,以通过NLC对各种表达的意图产生高度的自然语言理解。
本发明的实施例涉及一种方法,该方法用于有效地开发用于训练NLC的训练数据,以通过NLC对各种表达的意图产生高度的自然语言理解。
在一方面,该方法可以被实现为有效地扩展包括与意图相对应的初始表达集合的初始训练数据,以生成包括与对应于意图的、不同的、多样化和扩展的表达对应的扩展集合的更新的训练数据,通过该更新的训练数据可以实现意图的NLC的高度自然语言理解。可以基于针对与该意图相对应的初始表达集合的初始训练数据来生成更新的训练数据,其中例如可以针对意图对初始表达集合进行分类、归类、分组或标记。
在各个方面,该方法可以包括:接收或获取包括与意图相对应的初始表达集合的初始训练数据;生成包括与对应于意图的、不同的、多样化和扩展的表达对应的扩展集合的更新的训练数据,其中表达的扩展集合是基于与意图对应的初始表达集合生成的,并基于更新后的训练数据对NLC进行训练,以使NLC对意图产生高度的自然语言理解。
有利地,本发明可以被实现为有效地扩展包括与意图相对应的初始表达集合的初始训练数据,以生成包括与对应于意图的、不同的、多样化和扩展的表达对应的扩展集合的更新的训练数据,通过该更新的训练数据,可以实现对意图的高度自然语言理解。可以实现本发明以降低难度,以及减少生成更新的训练数据所需的时间和资源成本,该更新的训练数据包括与对应于意图的、不同的、多样化和扩展的表达对应的扩展集合的更新的训练数据,通过该更新的训练数据可以实现意图的NLC的高度自然语言理解。特别地,可以基于初始训练数据来生成更新的训练数据,该初始训练数据包括与意图相对应的有限的和小的初始表达集合,该初始表达将仅允许相对于意图的低或有限程度的自然语言理解。
图1是描绘根据本发明的实施例的解释管理系统100的功能框图。解释管理系统100可以包括通过网络102互连的客户端设备110和解释管理设备130。尽管图1描绘了两个分立的设备,但是可以预期其他布置。例如,客户端设备110和/或解释管理设备130可以包括一个或多个集成或不同的设备。
在本发明的各种实施例中,网络102可以包括例如内联网、局域网(LAN)、个人局域网(PAN)、无线局域网(WLAN)、无线个人局域网(WPAN)、无线网状网络,诸如因特网的广域网(WAN)等。网络102可以包括有线、无线或光纤连接。通常,根据本发明的实施例,网络102可以包括用于支持客户端设备110和解释管理设备130之间的通信的连接和协议的任何组合。
在本发明的各种实施例中,客户端设备110和/或解释管理设备130可以包括计算平台,诸如可穿戴设备、可植入设备、移动或智能电话、平板计算机、膝上型计算机计算机,台式计算机、服务器(例如数据库服务器)、虚拟机等。在各个实施例中,客户端设备110和/或解释管理设备130可以另外包括能够通过诸如其他方式向另一设备发送数据和从另一设备接收数据的任何其他类型的计算平台、计算机系统或信息系统。在某些实施例中,客户端设备110和/或解释管理设备130可以包括诸如参考图3所描述的内部和外部硬件组件。在其他实施例中,客户端设备110和/或解释器可以可以在诸如参考图4和图5描述的云计算环境中实现。
在本发明的实施例中,客户端设备110可以包括例如托管客户端应用程序112的客户端计算平台。根据本发明的实施例,客户端设备110可以实现设备和技术的组合,诸如网络设备和设备设备驱动器,以支持客户端应用程序112的操作并提供实现客户端设备110与解释管理设备130之间的通信的平台。
客户端应用程序112可以包括例如诸如软件程序、包含在程序中的一个或多个子例程,应用程序编程接口等之类的应用程序或程序。在本发明的实施例中,客户端应用112可以在接收训练数据中实现。
在本发明的实施例中,训练数据可以包括例如对应于意图的自然语言表达。在实施例中,自然语言表达可以由术语词汇表示。在该实施例中,术语词汇可以是领域特定的,或者可以以其他方式对应于表达的意图的特定类或领域。术语词汇可以构成训练NLC的基础,以将最初未知的表达的意图与表达的意图的领域进行映射和关联。
例如,训练集合(即训练数据)TS可以包括自然语言表达,例如“我想更改密码”,即TS={“I want to change password(我想要更改密码)”}。训练集合TS可以包括术语V的词汇,包括术语“I(我)”,“want(想)”,“to(要)”,“change(更改)”和“password(密码)”,即V={“password(密码)”,“change(更改)”,“I(我)”,“want(想)”,“to(要)”}。为了本公开的目的,“训练数据”可以参考相应的训练集合。
对应于意图的表达(“表达的意图”)可以包括例如由包括字符串或句子集、单词和字母的文本的布置表示的自然语言表达,其可以传达或传递特定的愿望、情感、概念、想法等。表达的意图可以包括,例如,请求、短语、问题、文档、声明、感叹号、命令、话语等。表达的意图的类、领域、类别或分类法可以包括,例如,与相同答案、主题或总体意图相对应的一组相似或相关的自然语言表达。一类表达的意图可以相对于对应的意图进行标记或以其他方式关联,并且可以包括与意图相对应的稍微不同的表达。例如,一类表达的意图可以包括通常在特定域或领域中使用的自然语言表达。为了本公开的目的,“文本”和“术语”可以指代术语,例如词汇的单词或单词串(例如,句子或短语)。
在本发明的实施例中,训练数据可以包括例如“初始”训练数据,该“初始”训练数据包括与意图相对应的初始表达集合。初始训练数据可以由NLC开发管理者提供,例如,针对在训练NLC中应用的训练数据,负责管理NLC性能的人员。可以在执行训练阶段中实施初始训练数据,在该训练阶段中,学习模型基于训练数据学习自然语言规则,以基于与意图相对应的初始表达集合开发用于通过NLC实现自然语言理解的机器表达模型。
例如,可以基于包括英语词汇或英语词汇的至少一个子集的术语词汇来训练第一聊天机器人,因为这可能是有意义的或与聊天机器人希望了解的表达的意图的领域有关。可以基于包括整个英语词汇的术语词汇来训练第二聊天机器人,其中,可能希望聊天机器人理解广泛的知识领域。可以基于包括体育词汇的受限制的词汇训练第三聊天机器人,其中可能希望聊天机器人理解与体育有关的知识领域。
在本发明的实施例中,训练数据可以包括例如更新的训练数据。在该实施例中,更新的训练数据可以包括例如与初始训练数据的意图相对应的不同的、多样化和扩展的表达的扩展集合。
为了本公开的目的,“更新的训练数据”可以参考扩展的训练数据,反之亦然。此外,“初始训练数据”可以参考训练数据,该训练数据形成用于生成更新的训练数据的基础。
作为示例,NLC管理者可以通过编译具有共同意图的自然语言表达的组或类别来准备和策划初始训练数据。NLC管理者可以将初始训练数据输入到客户端应用112以用于与NLC的通信和训练。该组自然语言表达可以例如选自语料库或相对于语料库被识别。语料库和自然语言表达组可以是领域特定的(例如,与诸如体育之类的常见主题有关)。可以根据可以应用NLC的域来选择语料库和自然语言表达组。自然语言表达可以包括来自可以应用NLC的聊天机器人的最终用户或由可以应用NLC的聊天机器人的最终用户历史上表达的意图。
在本发明的实施例中,客户端应用程序112可以被实现为从终端用户接收与用户输入相对应的数据。在实施例中,用户输入可以包括例如由自由形式的文本和/或话语表达的意图。在该实施例中,用户输入可以包括例如用户反馈。在该实施例中,在执行训练阶段之后,根据本发明的实施例,在域中的训练的NLC的应用程序期间可以接收与用户输入相对应的数据。例如,用户输入可以由聊天机器人接收,可以通过该聊天机器人实现训练的NLC。由用户输入表达的意图可以包括与可以通过其训练NLC的训练数据的表达相对应的表达。在该实施例中,终端用户可以将用户输入传达给NLC,作为终端用户与训练的NLC之间自然语言通信的一部分。在该实施例中,如前所述,用户输入可以通过节点进行通信。
在本发明的实施例中,解释管理设备130可以包括例如托管解释管理程序140的计算平台。根据本发明的实施例,解释管理设备130可以实现诸如网络设备和网络驱动器之类的设备和技术的组合,以支持解释管理程序140的操作,并且来提供用于支持客户端设备110和解释管理设备130之间的通信的平台。
解释管理程序140可以包括例如应用程序或例如软件程序之类的程序、包含在程序中的一个或多个子例程、应用程序编程接口等。解释管理程序140可以与客户端应用112通信以接收训练数据和查询数据。解释管理程序140可以包括数据收发器模块142、认知训练数据扩展模块144、训练模块146和数据存储器148。
数据收发器模块142与客户端应用程序112通信。在本发明的实施例中,该通信可以包括从客户端应用程序112检索初始训练数据,诸如可以从NLC开发管理者接收的初始训练数据。在该实施例中,通信可以进一步包括将更新的训练数据发送到客户端应用程序112,例如如下面进一步详细描述的,可以由认知训练数据扩展模块144生成。数据收发器模块142可以将检索到的数据存储在数据存储器148中,以供以后检索和使用。根据本发明的实施例,客户端应用112可以将训练数据应用于训练NLC。
认知训练数据扩展模块144基于初始训练数据生成更新的训练数据。在该实施例中,更新的训练数据可以包括与初始训练数据的意图相对应的不同的、多样化的和扩展的表达的扩展集合,通过该扩展表达,可以提高意图的NLC的自然语言理解程度。在该实施例中,更新的训练数据可以包括扩展的表达集合和初始表达集合。认知训练数据扩展模块144可以包括并实现例如统计语言模型,该统计语言模型包括用于生成附加表达的机器学习算法。
通常,统计语言模型可以表示并在确定单词序列上的概率分布时实施。可以在各种文本挖掘和文本分析(即,包括与文本分类有关的那些)域中实现统计语言模型。在本发明的一个实施例中,统计语言模型可以包括例如单字组语言模型(例如,n元语法模型,其中n=1)。根据本发明的实施例,可以实现其他类型的统计语言模型以生成与意图相对应的附加表达。
例如,特定的统计语言模型可以包括例如术语词汇V={w1,w2,…,wM},文本文档的集合C={d1,d2,…,dN}和概率分布p(wk|w1,w2,…,wk-1)。在本发明的实施例中,在基于文本文档(C)的集合建立或生成术语词汇(V)的情况下,为术语词汇V的每个术语(例如wk),统计语言模型可以描述或以其他方式定义例如概率分布p(wk|w1,w2,…,wk-1)。
这样,给定对单词序列“w1,w2,…,wk-1,”的观察,p(wk|w1,w2,…,wk-1))描述了随后观察到单词“wk”在集合C(例如di)的任何文档中的概率。字母组合语言模型可以例如假设所有术语都独立出现或可以观察到。在这种情况下,p(wk|w1,w2,…,wk-1)=p(wk),其中Sum[p(wk)]=1。例如,单字组语言模型的估计可能是p(wk)=wk在C=c(wk)/|C|中的频率,其中c(wk)是术语出现的次数,例如C中的wk,并且|C|是C中的术语总数。
训练模块146基于训练数据和查询数据来训练NLC。在本发明的实施例中,训练数据(可以通过其训练NLC)可以包括例如对应于意图的初始表达集合和对应于意图的附加表达。附加表达可以包括由认知训练数据扩展模块144生成的那些。
图2A是描绘根据本发明的实施例的解释管理系统100的一方面的操作步骤的流程图。
在步骤S202中,数据收发器模块142从客户端应用程序112中检索初始训练数据。
在步骤S204中,认知训练数据扩展模块144基于初始训练数据生成更新后的训练数据。更新的训练数据可以包括与初始训练数据的意图相对应的不同的、多样化和扩展表达的扩展集合。
在本发明的实施例中,可以基于针对与意图相对应的初始表达集合的初始训练数据来生成更新的训练数据,其中例如可以针对意图对初始表达集合进行分类、归类、分组或标记。在该实施例中,例如,如先前所描述的,可以基于初始训练数据通过从术语词汇中的一个或多个术语推导来生成表达的表达集合中的表达的意图。
例如,可以基于初始训练数据TS来生成更新的训练数据TS'。初始训练数据TS可以包括初始表达集合,其中TS={text1,text2,…,textN}。更新的训练数据TS'可以包括扩展的表达集合,其中TS’={text1’,text2’,…,textP’},并且和P>>N。更新的训练数据TS'可以包括基数P,其可能大于初始训练数据TS的基数N。可以从初始训练集合TS导出生成扩展的训练集合TS'。例如,可以通过对初始训练集合TS的对应于text1的同义词进行置换来生成扩展训练集合的text1’。换句话说,可以通过将TS中的每个文本取为texti,并且通过置换texti的单词的同义词来生成附加的文本texti’,来基于TS来生成TS’。可能会生成TS',以包括超过TS的基数。可以执行同义词的置换以智能地选择置换过程中使用的同义词。
在本发明的实施例中,更新的训练数据TS'可以包括TS和TS'两者。可以通过对初始训练集合实施文本分类来生成扩展训练集合。在该实施例中,文本分类可以包括术语的初始词汇中的文本的解析和标记化。
例如,在初始训练集合中解析表达(例如,texti)可以包括实现自然语言解析器,该自然语言解析器是一种计算出句子的语法结构的程序,例如,哪些单词组在一起(作为“词组”)以及哪些词是动词的主语或宾语。在给定字符序列和定义的文档单位的情况下,对表达的标记化可能包括将其切成碎片(称为标记)的任务,也许同时丢掉某些字符(例如标点符号)。
在本发明的实施例中,可以基于初始训练集合的表达(例如,texti)来生成扩展训练集合。在该实施例中,可以执行解析和标记化以通过对初始训练集合的表达进行解析和标记化来生成扩展的训练集合的文本,以表示扩展的表达集,并基于解析和标记化,来选择术语词汇中的一个或多个术语,并从术语词汇的选定一个或多个术语中得出扩展训练集合的文本。在实施例中,选择的一个或多个术语可以包括与所表达的意图相对应的名词、形容词和动词。在该实施例中,可以在表达的解析和标记化中实现词性(POS)标记。例如,可以使用词性(POS)标记来解析和标记化TS中的每个术语(例如,textk)。解析和标记化可以例如通过应用诸如斯坦福CoreNLP的解析和标记化软件来执行。为了本公开的目的,“(一个或多个)导出的术语”可以指代一个或多个标记的、解析的和选择的术语,并且“导出(一个或多个)术语”可以指的是解析、标记和选择一个或多个术语的过程。
在本发明的实施例中,在导出术语之后,可以确定每个导出术语的同义词和缩写。例如,可以通过实现诸如WordNet之类的自然语言处理工具来确定每个术语的同义词和缩写。可以根据设计选择可以实施的特定自然语言处理工具。
在本发明的实施例中,可以对为每个术语确定的同义词和缩写进行置换。在该实施例中,可以通过确定的同义词和缩写的置换来生成和开发扩展的表达集合。例如,扩展的训练集合TS’可以包括附加表达,例如text'j,其可以关于初始训练集合TS的术语词汇中的一个或多个术语而生成。在该实施例中,导出的训练集合TS’可以相应地包括每个置换的同义词和缩写。在该实施例中,可以将导出的训练集合TS’可以被添加或以其他方式合并到训练数据中。
作为示例,初始训练数据TS可以包括与意图相对应的自然语言表达,例如“我想更改我系统密码”。也就是说,TS={“我想更改系统密码”}”。该意图可能与更改密码的愿望有关。可以对包括TS的名词、形容词和动词的文本进行解析和标记化,以确定并选择相应的同义词和缩写,以用于后续置换。在该示例中,经解析和标记化的文本可以包括“更改”、“密码”和“系统”。例如,“change(更改)”的同义词和缩写可以包括“modify”和“alter”;“密码”的同义词和缩写可以包括“watchword”,“passcode”和“pwd”;“系统”的同义词和缩写可以包括“设备”、“计算机”和“网站”。
在本发明的实施例中,导出的术语可以包括领域特定的文本、上下文特定的文本等。即,导出的术语可以包括与与初始训练数据TS相关联的意图特别相关的术语。如示例中那样,导出的术语可以包括与更改密码的意图特别相关的术语,因此可以基于“change(更改)”、“password(密码)”,“system(系统)”来生成。通常出现的术语(例如“want(想)”)不能标识或代表意图,因此导出术语可能不会基于此类术语生成。
因此,可以生成包括对应于训练数据的初始表达集合的附加表达的导出训练集合(例如,TS')。这样,在初始表达集合包括训练集合TS={'I want to change the passwordof my system(我想更改我的系统的密码)'}的情况下,导出的训练集合可以包括扩展的表达集合,例如TS'={“I want to change the password of my system(我要更改系统密码)”,“I want to alter the password of my system(我要更改系统密码)”,“I want tomodify the password of my system(我要更改系统密码)”,“I want to change the pwdof my system(我要更改系统密码)”,…}。有利地,对于该示例,基于单个用户请求(即,“Iwant to change the password of my system(我要更改系统密码)”),可以将初始表达集合的基数扩展为新训练集合的基数TS',即2x3x3=18。
在步骤S206中,认知训练数据扩展模块144检测意图特定和上下文特定的训练数据。如前所述,意图特定和上下文特定的训练数据可以包括例如初始和扩展表达集合的术语。
在本发明的实施例中,可以基于基于训练数据集TS生成的统计语言模型来检测表达集合的意图特定术语。在该实施例中,可以基于基于扩展的训练数据集TS’生成的统计语言模型来检测表达集合的意图特定术语。在该实施例中,统计语言模型可以分别包括例如训练数据集TS的初始表达集合和扩展的训练数据集TS’的附加表达。
通常,为了检测意图特定术语,可以解析、标记化和选择用于确定相关同义词和缩写的名词、形容词和动词,应仅包括那些真正识别或符合训练数据集TS意图的那些术语。这可以通过将来自扩展的训练数据集的短语的意图与训练数据集的对应短语(即,从中获得短语的短语)进行比较来执行。在上面的示例中,“want(想要)”无法识别意图,而“change(更改)”和“password(密码)”可以识别意图。此外,在某些条件下,不确定“所有”术语的同义词可能是有益的。相反,例如,仅应确定与意图(即,训练数据的)的上下文有关的那些内容,以减少语言模型中的噪声。在上面的示例中,“transform(变换)”是“change(改变)”的同义词,但是,找到它来表达IT上下文中的密码更改并不常见,也很不典型。
在本发明的实施例中,可以基于出现的比率来检测和提取意图特定术语(例如,表示意图特定表达),并根据其在训练数据集TS的初始表达集合中出现相对于在扩展训练数据集TS'中的其出现的相对频率,来计算或确定的。在该实施例中,可以基于训练数据集TS来生成第一字母组合语言模型LMts。在该实施例中,可以基于文档的更广泛的集合(例如,英语的一种代表(即,TS的语言))来生成第二字母组合语言模型LMgen。在该实施例中,第二字母组合语言模型可以包括代表并接近LMts意图的上下文的大量术语集合。
选择在LMts中具有最高出现频率的那些作为意图特定术语可以导致选择如上所述的诸如“want(想要)”之类的术语,这些术语通常在任何语言上下文中使用。也就是说,“want(想要)”可以出现在与更改密码有关的上下文中,以及与获取有关欧洲冠军联赛决赛选手信息的上下文中。作为示例,一个字母组合LM,LMgen可以由文档的更广泛的集合构成,例如,一个文档可以代表英语(TS的语言)。此外,例如,LMgen可以包括代表并接近于LM意图的上下文的大量术语,以便在意图是足球的情况下包括与体育有关的术语。
在本发明的实施例中,可以通过等式1来确定意图特定术语wk的出现率r(wk)。
r(wk)=fLMts(wk)/fLMgen(wk)
其中f(.)是术语在统计语言模型LM(例如LMts,LMgen)中的出现频率。在该实施例中,可以基于被确定为超过预定阈值的对应出现率r(.)来检测和提取(即,选择)每个意图特定术语(例如,表示意图特定表达)。
例如,对于词汇V的每个术语wk(例如,LMts和LMgen的),可以确定出现率r(wk)=fLMts(wk)/fLMgen(wk),其中f(.)是术语分别在LMts和LMgen中出现频率。语言的常见术语在TS和通用模型中可以具有可比的出现频率,而TS特定术语在TS中的出现频率往往比在通用模型中更高。在本发明的实施例中,可以选择具有超过预定阈值的发生率r(.)的每个意图特定术语。
换句话说,相对于通用语言模型中它们的出现频率,语言的常见术语(即,表达)倾向于在训练集合中具有可比较的出现频率。TS特定术语在TS中的频率往往比在通用模型中更高。因此,可以选择具有较高比率r(.)(例如,超过预定阈值)的意图特定术语。
在本发明的实施例中,检测意图特定训练数据(即,意图特定术语)可以包括,例如,确定受限术语集合T’={ist1,ist2,…,istY},其中“ist”是意图特定术语。受限术语集合T'可以包括,例如,训练数据TS的初始或扩展表达集合的表达,和/或扩展训练数据集TS'的表达。
在本发明的一个实施例中,可以基于每个术语相对于受限术语集合T’={ist1,ist2,…,istY}的意图特定术语ist的范式关系,来检测意图特定术语。范式关系中的术语在短语中可以互换(即它们在同一句法或语义类别中)。例如,范式关系中的术语可能包括星期一和星期二、猫和狗等等。通常,在统计语言模型中,LMgen是与意图相关的上下文的代表的情况下,基于范式关系检测意图特定术语可能特别有效。因此,对于每个意图特定术语istk,可以确定同义词集合Sk={s(k) 1,s(k) 2,…}。在该实施例中,对于每个意图特定术语istk,可以基于同义词集合Sk={s(k) 1,s(k) 2,…},生成与训练数据的初始表达集合相对应的附加表达。
在本发明的实施例中,检测意图特定的训练数据可以包括,例如,使用针对特定语言的现有知识库,诸如WordNet、在线词典等。所使用的特定的知识库的适当选择可以被选择为设计的问题。
在本发明的实施例中,可以基于针对每个意图特定术语istk的同义词的集合Sk={s(k) 1,s(k) 2,…}来检测上下文特定的训练数据。在该实施例中,检测上下文特定的训练数据可以包括,例如,针对每个意图特定术语减少同义词的集合Sk={s(k) 1,s(k) 2,…},以仅包括在意图的上下文中真正一起使用的那些。
在本发明的实施例中,可以基于例如同义词集合的术语之间的组合(syntagmatic)关系,来减少每个意图特定术语的同义词集合。通常,如果两个词在语言模型的短语中在一起出现的可能性很高,则它们具有组合(syntagmatic)关系。例如,基于语义关系和共现,术语可能会在一起出现的可能性很高。例如,术语“汽车”和“驱动器”具有组合关系。也就是说,可以基于它们是否与基于扩展的训练数据集TS’生成的统计语言模型LMgen中的至少一个istk具有组合关系,从每个Sk来检测上下文特定的训练数据。因此,可以基于来自客户端应用程序112的关于相对较小的良好选择的同义词集合(即,表达),其中P>>N,的训练数据来生成导出的训练集合。
在步骤S208中,训练模块146训练NLC以用于实施。
如前所述,训练NLC可以包括执行训练阶段以训练NLC。在本发明的实施例中,可以基于更新的训练数据来执行训练阶段,如先前所描述的,该更新的训练数据包括与初始训练数据的意图相对应的不同的、多样化和扩展表达的扩展集合。在实施例中,执行训练阶段可以包括基于意图特定的训练数据、上下文特定的训练数据或两者来训练NLC。意图和上下文特定的训练数据可以包括如参考步骤S206所描述的。在该实施例中,可以另外基于初始训练数据执行训练阶段。有利地,基于更新的训练数据执行训练阶段可以通过NLC实现高度的自然语言理解。根据本发明的实施例,随后可以例如由聊天机器人等来实现NLC。
图2B是描绘根据本发明的实施例的解释管理系统100的一方面的操作步骤的流程图。
在步骤S210,数据收发器模块142从客户端应用程序112接收查询数据。
在步骤S212,认知训练数据扩展模块144确定关于查询数据的有用性得分。
在本发明的一个实施例中,可以关于扩展训练数据TS'的各个表达来确定有用性得分。在该实施例中,可以基于NLC对所表达的意图的分类的准确性或正确性来确定有用性得分。在该实施例中,可以例如基于最终用户对分类的满意程度来确定准确性或正确性,这可以通过用户反馈和交互来表示。所表达的意图可以是例如用户输入请求ui,其可以从客户端应用程序112的最终用户接收。用户输入请求ui可以从聊天机器人的最终用户接收。在该实施例中,可以通过为TS’中的每个文本计算距离d(ui,text’k)来确定有用性得分。然后可以实现特定距离的值,例如以确定有用性得分,该有用性得分可以用于加权或增加TS'中文本(即,文本text’k接近ui)之间的关系。例如,这可以随时间识别TS’中最有用的文本。在该实施例中,可以例如通过将每个文本和用户输入表示为术语的向量并计算向量的内积d(a,b)=Sum(ai*bi)来为TS'中的每个文本的距离定义d(ui,text’k)。
在本发明的实施例中,可以基于查询数据来周期性地或连续地测量和改善扩展训练集合TS'的质量。在该实施例中,可以确定扩展训练集合的哪些表达减少或改善扩展训练集合的质量。
在本发明的实施例中,可以基于对应的有用性得分是否落在预定阈值以下来确定扩展训练集合的表达降低了扩展训练集合的质量。在该实施例中,可以从扩展训练集合中删除该表达。在实施例中,可以生成来自查询数据的表达并将其添加到扩展的训练集合中,例如关于步骤S204、S206和S208所描述的,以便训练NLC。
图3是描绘根据本发明的实施例的客户端设备110和/或解释管理设备130的框图。如图3所示,客户端设备110和/或解释管理设备130可以包括一个或多个处理器902、一个或多个计算机可读RAM 904、一个或多个计算机可读ROM 906、一个或多个计算机可读存储器介质908、设备驱动器912、读/写驱动器或接口914、网络适配器或接口916,都通过通信结构918互连。网络适配器916与网络930通信。通信结构918可以使用设计为在处理器(例如微处理器、通信和网络处理器等)、系统内存、外围设备以及系统中任何其他硬件组件之间传递数据和/或控制信息的任何体系结构来实现。
如图1所示,一个或多个操作系统910和一个或多个应用程序911(例如,驻留在解释管理设备130上的解释管理程序140)被存储在一个或多个计算机可读存储中介质908,以由一个或多个处理器902通过一个或多个相应的RAM 904(通常包括高速缓冲存储器)执行。在所示的实施例中,每个计算机可读存储介质908可以是内部硬盘驱动器的磁盘存储设备、CD-ROM、DVD、存储棒、磁带、磁盘、光盘、半导体存储设备(例如RAM、ROM、EPROM、闪存)或任何其他可存储计算机程序和数字信息的计算机可读有形存储设备。
客户端设备110和/或解释管理设备130还可以包括R/W驱动器或接口914,以从一个或多个便携式计算机可读存储介质926读取和写入。客户端设备110上的应用程序911和/或解释管理设备130可以存储在便携式计算机可读存储介质926中的一个或多个上,经由相应的R/W驱动器或接口914读取并加载到相应的计算机可读存储介质908中。客户端设备110和/或解释管理设备130还可以包括网络适配器或接口916,例如传输控制协议(TCP)/因特网协议(IP)适配器卡或无线通信适配器(例如使用正交频率分区多址(OFDMA)技术的4G无线通信适配器)。可以经由网络(例如,因特网、局域网或其他广域网或无线网络)和网络适配器或接口916将应用程序911从外部计算机或外部存储设备下载到计算设备。程序可以从网络适配器或接口916加载到计算机可读存储介质908上。网络可以包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。客户端设备110和/或解释管理设备130还可以包括显示屏920、键盘或小键盘922以及计算机鼠标或触摸板924。设备驱动器912与显示屏920进行接口以进行成像,与键盘或小键盘922、计算机鼠标或触摸板924和/或显示屏920接口,以进行压力感测字母数字字符输入和用户选择。设备驱动器912、R/W驱动器或接口914以及网络适配器或接口916可以包括硬件和软件(存储在计算机可读存储介质908和/或ROM 906上)。
解释管理设备130可以是独立的网络服务器,或者表示集成到一个或多个网络系统中的功能。通常,客户端设备110和/或解释管理设备130可以是膝上型计算机、台式计算机、专用计算机服务器或本领域已知的任何其他计算机系统。在某些实施例中,解释管理设备130表示当通过诸如LAN、WAN或两者的组合的网络访问时,利用集群计算机和组件来充当单个无缝资源池的计算机系统。对于数据中心和云计算应用程序,此实现可能是首选。通常,客户端设备110和/或解释管理设备130可以是任何可编程电子设备,或者可以是这些设备的任何组合。
本文描述的程序是基于在本发明的特定实施例中为其实现的应用来识别的。然而,应当理解,本文中任何特定的程序术语仅是为了方便使用,因此本发明不应限于仅在由此类术语标识和/或暗示的任何特定应用中使用。
在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
首先应当理解,尽管本公开包括关于云计算的详细描述,但其中记载的技术方案的实现却不限于云计算环境,而是能够结合现在已知或以后开发的任何其它类型的计算环境而实现。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:能够迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都能获取任意数量的计算能力。
可测量的服务:云系统通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作系统、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作系统或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作系统和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作系统、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包含互连节点网络的基础架构。
现在参考图4,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点10,本地计算设备例如可以是个人数字助理(PDA)或移动电话54A,台式电脑54B、笔记本电脑54C和/或汽车计算机系统54N。云计算节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图4显示的各类计算设备54A-N仅仅是示意性的,云计算节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。
现在参考图5,其中显示了云计算环境50(图4)提供的一组功能抽象层。首先应当理解,图5所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图所示,提供下列层和对应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机61;基于RISC(精简指令集计算机)体系结构的服务器62;服务器63;刀片服务器64;存储设备65;网络和网络组件66。软件组件的例子包括:网络应用服务器软件67以及数据库软件68。
虚拟层70提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器71、虚拟存储72、虚拟网络73(包括虚拟私有网络)、虚拟应用和操作系统74,以及虚拟客户端75。
在一个示例中,管理层80可以提供下述功能:资源供应功能81:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能82:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和发票。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能83:为消费者和系统管理员提供对云计算环境的访问。服务水平管理功能84:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能85:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层90提供云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航91;软件开发及生命周期管理92;虚拟教室的教学提供93;数据分析处理94;交易处理95;以及解释管理96。解释管理96可以包括根据本发明的实施例的使云计算环境能够执行所公开的方法的步骤的功能。
虽然已经参考本发明的某些示例性实施例示出和描述了本发明,但是本领域技术人员将理解,如所附权利要求书及其等同物所定义的本发明,在不脱离本发明的精神和范围的情况下,可以在形式和细节上进行各种改变。因此,本发明已经出于示例而非限制的目的通过示例的方式公开。

Claims (20)

1.一种用于训练与计算机系统的聊天界面相关联的自然语言分类器的计算机实现的方法,该方法包括:
接收训练数据集,所述训练数据集包括与意图相对应的初始表达集合;
生成与所述意图相对应的附加表达,其中,基于与所述意图相对应的所述初始表达集合来生成所述附加表达;
基于与所述意图相对应的所述初始表达集合和所述附加表达训练所述自然语言分类器;以及
由所述训练后的自然语言分类器基于所述自然语言分类器由其训练的所述初始表达集合和所述附加表达,确定由检测到的查询表达的意图。
2.如权利要求1所述的计算机实现的方法,还包括:
检测与所述意图相对应的意图特定表达,其中,所述意图特定表达包括与所述训练数据集合的意图特定术语具有范式关系的术语。
3.如权利要求1所述的计算机实现的方法,还包括:
检测与所述意图相对应的上下文特定表达,其中,所述上下文特定表达包括在组合关系的术语。
4.如权利要求1所述的计算机实现的方法,还包括:
检测与所述意图相对应的所述初始表达集合以及附加表达的意图特定和上下文特定的术语。
5.如权利要求1所述的计算机实现的方法,其中,生成与所述意图相对应的附加表达包括:对与所述意图相对应的所述初始表达集合的术语进行解析和标记化。
6.如权利要求5所述的计算机实现的方法,其中,对与所述意图相对应的所述初始表达集合的术语进行解析和标记化包括:对与所述意图相对应的所述初始表达集合的术语进行词性标记。
7.如权利要求1所述的计算机实现的方法,还包括:
确定所述生成的与所述意图相对应的附加表达的表达的有用性得分,其中,所述有用性得分是基于针对对应的用户输入请求的用户反馈来确定的。
8.一种用于训练与计算机系统的聊天界面相关联的自然语言分类器的计算机系统,该计算机系统包括:
一个或多个计算机处理器、一个或多个计算机可读存储介质以及存储在一个或多个计算机可读存储介质上以供一个或多个计算机处理器中的至少一个执行的程序指令,所述程序指令在通过一个或多个计算机处理器中的至少一个执行时,使所述计算机系统执行一种方法,包括:
接收训练数据集,所述训练数据集包括与意图相对应的初始表达集合;
生成与所述意图相对应的附加表达,其中,基于与所述意图相对应的所述初始表达集合来生成所述附加表达;
基于与所述意图相对应的所述初始表达集合和所述附加表达训练所述自然语言分类器;以及
由所述训练后的自然语言分类器基于所述自然语言分类器由其训练的所述初始表达集合和所述附加表达,确定由检测到的查询表达的意图。
9.如权利要求8所述的计算机系统,还包括:
检测与所述意图相对应的意图特定表达,其中,所述意图特定表达包括与所述训练数据集合的意图特定术语具有范式关系的术语。
10.如权利要求8所述的计算机系统,还包括:
检测与所述意图相对应的上下文特定表达,其中,所述上下文特定表达包括在组合关系的术语。
11.如权利要求8所述的计算机系统,还包括:
检测与所述意图相对应的所述初始表达集合以及附加表达的意图特定和上下文特定的术语。
12.如权利要求8所述的计算机系统,其中,生成与所述意图相对应的附加表达包括:对与所述意图相对应的所述初始表达集合的术语进行解析和标记化。
13.如权利要求12所述的计算机系统,其中,对与所述意图相对应的所述初始表达集合的术语进行解析和标记化包括:对与所述意图相对应的所述初始表达集合的术语进行词性标记。
14.如权利要求8所述的计算机系统,还包括:
确定所述生成的与所述意图相对应的附加表达的表达的有用性得分,其中,所述有用性得分是基于针对对应的用户输入请求的用户反馈来确定的。
15.一种用于训练与计算机系统的聊天界面相关联的自然语言分类器的计算机程序产品,所述计算机程序产品包括:
一个或多个计算机可读存储设备和存储在一个或多个计算机可读存储设备中的至少一个上以由计算机系统的至少一个或多个计算机处理器执行的程序指令,该程序指令在由一个或多个计算机处理器中的至少一个处理器执行时,使计算机系统执行一种方法,包括:
接收训练数据集,所述训练数据集包括与意图相对应的初始表达集合;
生成与所述意图相对应的附加表达,其中,基于与所述意图相对应的所述初始表达集合来生成所述附加表达;
基于与所述意图相对应的所述初始表达集合和所述附加表达训练所述自然语言分类器;以及
由所述训练后的自然语言分类器基于所述自然语言分类器由其训练的所述初始表达集合和所述附加表达,确定由检测到的查询表达的意图。
16.如权利要求15所述的计算机程序产品,还包括:
检测与所述意图相对应的意图特定表达,其中,所述意图特定表达包括与所述训练数据集合的意图特定术语具有范式关系的术语。
17.如权利要求15所述的计算机程序产品,还包括:
检测与所述意图相对应的上下文特定表达,其中,所述上下文特定表达包括在组合关系的术语。
18.如权利要求15所述的计算机程序产品,还包括:
检测与所述意图相对应的所述初始表达集合以及附加表达的意图特定和上下文特定的术语。
19.如权利要求15所述的计算机程序产品,其中,生成与所述意图相对应的附加表达包括:对与所述意图相对应的所述初始表达集合的术语进行解析和标记化。
20.如权利要求19所述的计算机程序产品,其中,对与所述意图相对应的所述初始表达集合的术语进行解析和标记化包括:对与所述意图相对应的所述初始表达集合的术语进行词性标记。
CN201980033219.2A 2018-05-24 2019-04-30 用于自然语言分类的训练数据扩展 Pending CN112136125A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/988,295 US10726204B2 (en) 2018-05-24 2018-05-24 Training data expansion for natural language classification
US15/988,295 2018-05-24
PCT/IB2019/053517 WO2019224629A1 (en) 2018-05-24 2019-04-30 Training data expansion for natural language classification

Publications (1)

Publication Number Publication Date
CN112136125A true CN112136125A (zh) 2020-12-25

Family

ID=68615304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980033219.2A Pending CN112136125A (zh) 2018-05-24 2019-04-30 用于自然语言分类的训练数据扩展

Country Status (5)

Country Link
US (1) US10726204B2 (zh)
JP (1) JP7412060B2 (zh)
CN (1) CN112136125A (zh)
DE (1) DE112019001533T5 (zh)
WO (1) WO2019224629A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113076080A (zh) * 2021-04-21 2021-07-06 百度在线网络技术(北京)有限公司 模型训练方法和装置、意图识别方法和装置
CN113946295A (zh) * 2021-10-29 2022-01-18 中国建设银行股份有限公司 权限控制方法及装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10747427B2 (en) * 2017-02-01 2020-08-18 Google Llc Keyboard automatic language identification and reconfiguration
US11545144B2 (en) * 2018-07-27 2023-01-03 Samsung Electronics Co., Ltd. System and method supporting context-specific language model
US11580179B2 (en) * 2018-09-24 2023-02-14 Salesforce.Com, Inc. Method and system for service agent assistance of article recommendations to a customer in an app session
US11184298B2 (en) * 2019-08-28 2021-11-23 International Business Machines Corporation Methods and systems for improving chatbot intent training by correlating user feedback provided subsequent to a failed response to an initial user intent
US11651250B2 (en) * 2019-11-20 2023-05-16 International Business Machines Corporation Automatically generated conversation output
CN111274824B (zh) * 2020-01-20 2023-05-05 文思海辉智科科技有限公司 自然语言处理方法、装置、计算机设备和存储介质
US10841251B1 (en) * 2020-02-11 2020-11-17 Moveworks, Inc. Multi-domain chatbot
US11361164B2 (en) * 2020-02-13 2022-06-14 Bank Of America Corporation Natural language platform for automated message processing
US11537918B2 (en) 2020-07-21 2022-12-27 Florida Power & Light Company Systems and methods for document similarity matching
US11907863B2 (en) * 2020-07-24 2024-02-20 International Business Machines Corporation Natural language enrichment using action explanations
US11900922B2 (en) * 2020-11-10 2024-02-13 International Business Machines Corporation Multilingual intent recognition
US20220245353A1 (en) * 2021-01-21 2022-08-04 Servicenow, Inc. System and method for entity labeling in a natural language understanding (nlu) framework
CN113094478B (zh) * 2021-06-10 2021-08-13 平安科技(深圳)有限公司 表情回复方法、装置、设备及存储介质
KR20230016794A (ko) * 2021-07-27 2023-02-03 네이버 주식회사 언어 모델을 이용한 데이터 생성 방법, 컴퓨터 장치, 및 컴퓨터 프로그램

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140207716A1 (en) * 2013-01-22 2014-07-24 Maluuba Inc. Natural language processing method and system
CN104850539A (zh) * 2015-05-28 2015-08-19 宁波薄言信息技术有限公司 一种自然语言理解方法及基于该方法的旅游问答系统
CN105786798A (zh) * 2016-02-25 2016-07-20 上海交通大学 一种人机交互中自然语言意图理解方法
US20170052947A1 (en) * 2015-08-19 2017-02-23 Xiaomi Inc. Methods and devices for training a classifier and recognizing a type of information
US20180025726A1 (en) * 2016-07-22 2018-01-25 International Business Machines Corporation Creating coordinated multi-chatbots using natural dialogues by means of knowledge base

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7231343B1 (en) * 2001-12-20 2007-06-12 Ianywhere Solutions, Inc. Synonyms mechanism for natural language systems
US7016849B2 (en) * 2002-03-25 2006-03-21 Sri International Method and apparatus for providing speech-driven routing between spoken language applications
US8818926B2 (en) 2009-09-29 2014-08-26 Richard Scot Wallace Method for personalizing chat bots
US20170039269A1 (en) * 2014-03-26 2017-02-09 Microsoft Technology Licensing, Llc Client intent in an integrated search environment
US10249207B2 (en) * 2016-01-19 2019-04-02 TheBeamer, LLC Educational teaching system and method utilizing interactive avatars with learning manager and authoring manager functions
US20170243107A1 (en) 2016-02-19 2017-08-24 Jack Mobile Inc. Interactive search engine
US9905248B2 (en) * 2016-02-29 2018-02-27 International Business Machines Corporation Inferring user intentions based on user conversation data and spatio-temporal data
JP2017167851A (ja) * 2016-03-16 2017-09-21 株式会社東芝 概念辞書作成装置、方法およびプログラム
US10417566B2 (en) * 2016-05-22 2019-09-17 Microsoft Technology Licensing, Llc Self-learning technique for training a PDA component and a simulated user component
US20180307676A1 (en) * 2017-04-19 2018-10-25 Nanorep Technologies Ltd. Systems, Devices, Components and Associated Computer Executable Code for Recognizing and Analyzing/Processing Modification Sentences within Human Language
US10796088B2 (en) * 2017-04-21 2020-10-06 International Business Machines Corporation Specifying a conversational computer agent and its outcome with a grammar
CN107688614B (zh) * 2017-08-04 2018-08-10 平安科技(深圳)有限公司 意图获取方法、电子装置及计算机可读存储介质
US10841249B2 (en) * 2017-10-02 2020-11-17 Samsung Electronics Co., Ltd. System and method for bot platform
US10553203B2 (en) * 2017-11-09 2020-02-04 International Business Machines Corporation Training data optimization for voice enablement of applications
US10540971B2 (en) * 2017-12-15 2020-01-21 Blue Jeans Network, Inc. System and methods for in-meeting group assistance using a virtual assistant
US10740566B2 (en) * 2018-03-23 2020-08-11 Servicenow, Inc. Method and system for automated intent mining, classification and disposition
US11030412B2 (en) * 2018-04-10 2021-06-08 Verizon Patent And Licensing Inc. System and method for chatbot conversation construction and management
US11157704B2 (en) * 2018-06-18 2021-10-26 DataChat.ai Constrained natural language processing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140207716A1 (en) * 2013-01-22 2014-07-24 Maluuba Inc. Natural language processing method and system
CN104850539A (zh) * 2015-05-28 2015-08-19 宁波薄言信息技术有限公司 一种自然语言理解方法及基于该方法的旅游问答系统
US20170052947A1 (en) * 2015-08-19 2017-02-23 Xiaomi Inc. Methods and devices for training a classifier and recognizing a type of information
CN105786798A (zh) * 2016-02-25 2016-07-20 上海交通大学 一种人机交互中自然语言意图理解方法
US20180025726A1 (en) * 2016-07-22 2018-01-25 International Business Machines Corporation Creating coordinated multi-chatbots using natural dialogues by means of knowledge base

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113076080A (zh) * 2021-04-21 2021-07-06 百度在线网络技术(北京)有限公司 模型训练方法和装置、意图识别方法和装置
CN113946295A (zh) * 2021-10-29 2022-01-18 中国建设银行股份有限公司 权限控制方法及装置

Also Published As

Publication number Publication date
US10726204B2 (en) 2020-07-28
WO2019224629A1 (en) 2019-11-28
JP2021524079A (ja) 2021-09-09
US20190361977A1 (en) 2019-11-28
DE112019001533T5 (de) 2020-12-10
JP7412060B2 (ja) 2024-01-12

Similar Documents

Publication Publication Date Title
US10726204B2 (en) Training data expansion for natural language classification
US10789552B2 (en) Question answering system-based generation of distractors using machine learning
US10929383B2 (en) Method and system for improving training data understanding in natural language processing
US11321371B2 (en) Query expansion using a graph of question and answer vocabulary
US11645470B2 (en) Automated testing of dialog systems
CN111563141B (zh) 用于处理输入问题以查询数据库的方法和系统
US11636376B2 (en) Active learning for concept disambiguation
US11416823B2 (en) Resolution and pipelining of helpdesk tickets needing resolutions from multiple groups
CN112100312A (zh) 从数据源中智能提取因果知识
US20180365226A1 (en) Determining context using weighted parsing scoring
CN110929523A (zh) 共指解析和实体链接
US11875113B2 (en) Semantic matching of job titles with limited contexts
US20220028374A1 (en) Voice response systems based on personalized vocabulary and user profiling - personalized linguistics ai engines
US10216719B2 (en) Relation extraction using QandA
US11704493B2 (en) Neural parser for snippets of dynamic virtual assistant conversation
WO2022048535A1 (en) Reasoning based natural language interpretation
US20230376537A1 (en) Multi-chunk relationship extraction and maximization of query answer coherence
US11074407B2 (en) Cognitive analysis and dictionary management
US20220188362A1 (en) Decentralized online multi-agent visual question answering
US20230267343A1 (en) Automated code-mixed natural language processing for artificial intelligence-based question answering techniques
US20230177077A1 (en) Enhancing input to conversational agents through feedback
US20230076089A1 (en) Question answering approach to semantic parsing of mathematical formulas
CN116894093A (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