CN110096577A - 从异常简档数据预测用户的意图 - Google Patents

从异常简档数据预测用户的意图 Download PDF

Info

Publication number
CN110096577A
CN110096577A CN201910070349.5A CN201910070349A CN110096577A CN 110096577 A CN110096577 A CN 110096577A CN 201910070349 A CN201910070349 A CN 201910070349A CN 110096577 A CN110096577 A CN 110096577A
Authority
CN
China
Prior art keywords
user
natural language
ads
disambiguation
input
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.)
Granted
Application number
CN201910070349.5A
Other languages
English (en)
Other versions
CN110096577B (zh
Inventor
M·卡尼姆
R·G·法尔瑞尔
J·A·古内尔斯
A·K·伊因加
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 CN110096577A publication Critical patent/CN110096577A/zh
Application granted granted Critical
Publication of CN110096577B publication Critical patent/CN110096577B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Machine Translation (AREA)

Abstract

本公开涉及从异常简档数据预测用户的意图。提供了用于在自动对话系统和客户端计算设备的用户之间进行自然语言对话的机制。自动对话系统经由客户端计算设备接收与来自用户的用户输入对应的自然语言文本,该自然语言文本具有自然语言文本的有歧义部分。自动对话系统分析与用户对应的用户简档信息,以识别用户简档信息中的异常并预测与该异常相关联的用户意图。自动对话系统基于预测的用户意图消除自然语言文本的有歧义部分的歧义,并基于消除歧义的自然语言文本生成对用户输入的响应,该响应被输出到客户端计算设备,从而进行自然语言对话。

Description

从异常简档数据预测用户的意图
技术领域
本申请一般而言涉及改进的数据处理装置和方法,并且更具体而 言涉及用于从异常简档数据预测用户的意图的机制。
背景技术
对话系统或会话代理(CA)是旨在与人交谈的计算机系统。对 话系统采用文本、语音、图形、触觉、手势和其它模式在输入和输出 通道上进行通信。对话系统有许多不同的体系架构。对话系统中包括 哪些部件集合以及那些部件如何划分责任因系统而异。
任何对话系统主要的都是对话管理器,它是管理对话的状态和对 话策略的部件。对话系统中的典型活动周期包含以下阶段。最初,用 户说话,并且系统的输入识别器/解码器将输入转换为纯文本,其中 输入识别器/解码器可以包括自动语音识别器(ASR)、手势识别器 或手写识别器等。通过自然语言处理(NLP)系统分析所生成的文本, 其中NLP系统可以包括用于执行适当的名称识别、词性标注、句法/ 语义解析等的逻辑。
语义信息由对话管理器分析,对话管理器保持对话的历史和状态 并管理会话的一般流程。通常,对话管理器联系具有具体任务领域的 知识的一个或多个任务管理器,以基于NLP系统操作对自然语言文 本执行各种任务,以执行特定于领域的动作。对话管理器使用输出生 成器生成输出。使用输出渲染器渲染输出,输出渲染器可以包括执行 文本到语音转换、渲染图形表示、输出文本响应等。
在诸如自动客户服务系统之类的、基于语音或文本的对话系统中, 用户通过以自然语言提供的口头话语或短文本消息与系统通信。一旦 接收到用户输入(说出的话语或文本输入),自动化系统就尝试处理 /分析用户话语,以将其精简到计算机可理解的形式。鉴于对话语的 这种明确解释,系统可以执行任务或产生响应,诸如对用户提出的问 题的回答。但是,一些用户话语、文本输入或其部分对于对话系统可 能是有歧义的。例如,口头或文本输入中的术语“它”对于“它”指的是 什么可能是有歧义的。作为这种引用模糊性的结果,对话系统可以忽 略或跳过用户输入的有歧义部分。这可以减少对话系统考虑的许多可能的解释,这进而导致潜在不准确或非优化的响应。这会导致用户方 面的沮丧,因为用户会感觉他们正在接收不准确的响应并且没有被正 确地听到。
发明内容
提供本发明内容是为了以简化的形式介绍一些概念,这些概念将 在本文的具体实施方式中进一步描述。本发明内容不旨在识别所要求 保护的主题的关键因素或必要特征,也不旨在用于限制所要求保护的 主题的范围。
在一个说明性实施例中,提供了一种在包括至少一个处理器和至 少一个存储器的数据处理系统中的方法,该至少一个存储器包括由至 少一个处理器执行以使至少一个处理器实现用于在自动对话系统和客 户端计算设备的用户之间进行自然语言对话的自动对话系统的指令。 该方法包括由自动对话系统经由客户端计算设备接收与来自用户的用户输入对应的自然语言文本,该自然语言文本具有自然语言文本的有 歧义部分。该方法还包括由自动对话系统分析与用户对应的用户简档 信息,以识别用户简档信息中的至少一个异常,并且由自动对话系统 预测与该至少一个异常相关联的至少一个用户意图。用户意图指示来 自用户的用户输入的潜在原因。该方法还包括由自动对话系统基于预 测出的至少一个用户意图消除自然语言文本的有歧义部分的歧义,以 生成与用户输入对应的消除歧义的自然语言文本。而且,该方法包括 由自动对话系统基于消除歧义的自然语言文本生成对用户输入的响应, 并且由自动对话系统向客户端计算设备输出响应,从而进行自然语言 对话。
在其它说明性实施例中,提供了一种包括具有计算机可读程序的 计算机可用或可读介质的计算机程序产品。当在计算设备上执行时, 计算机可读程序使计算设备执行以上关于方法说明性实施例概述的操 作中的各种操作及其组合。
在又一个说明性实施例中,提供了一种系统/装置。该系统/装置 可以包括一个或多个处理器和耦合到一个或多个处理器的存储器。存 储器可以包括指令,当由一个或多个处理器执行时,所述指令使得一 个或多个处理器执行以上关于方法说明性实施例概述的操作中的各种 操作及其组合。
本发明的这些和其它特征及优点将在以下对本发明的示例实施例 的详细描述中描述或者鉴于以下对本发明的示例实施例的详细描述, 将对本领域普通技术人员变得显而易见。
附图说明
当结合附图阅读时,通过参考说明性实施例的以下详细描述,将 最好地理解本发明以及优选使用模式及其进一步的目的和优点,其中:
图1是图示根据一个说明性实施例的、用于用户自动对话系统 (ADS)交互的信息流的示例图;
图2是图示根据一个说明性实施例的、用于用户简档的变量的异 常改变的基于模糊逻辑的权重确定的示例图;
图3是概述根据一个说明性实施例的、响应于对用户简档信息的 更新的异常检测和意图识别引擎及意图加权引擎的示例操作的流程图;
图4是概述根据一个说明性实施例的、用于消除用户输入的歧义 的示例操作的流程图;
图5是概述根据一个说明性实施例的、用于基于根据用户简档信 息中的异常/意图检测确定的权重来执行引用消除歧义的示例操作的 流程图;
图6是为了与用户执行对话而实现请求处理流水线的ADS的一 个说明性实施例的示例图;
图7是其中实现了说明性实施例的各方面的示例数据处理系统的 框图;
图8是图示根据一个说明性实施例的ADS和认知系统流水线的 元件的交互的示例图;
图9描绘了根据本发明一个说明性实施例的、用于基于数量的改 变生成用于响应的定制信息的示例处理;
图10描绘了根据本发明一个说明性实施例的、用于确定将定制 信息用于响应多长时间的示例处理;
图11描绘了根据本发明一个说明性实施例的、用于基于数量的 改变生成用于响应的定制信息的示例处理;
图12描绘了根据本发明一个说明性实施例的、用于基于信息的 改变生成用于响应的定制信息的示例处理;以及
图13描绘了根据本发明一个说明性实施例的、用于确定将定制 信息用于响应多长时间的示例处理。
具体实施方式
说明性实施例提供了用于从异常用户简档数据预测用户的意图并 利用这种预测通过解决用户交互中的歧义来改进对话系统操作的机制。 意图是与对话系统交换的话语(无论是文本的还是听觉的)背后的目 的/目标/原因。例如,意图可以表达用户是否想要对话系统针对某个 引用量检查某个变量的值,或者检索变量的量或解释变量。如上所述, 在对话系统中,一些用户语音话语、文本输入或其部分对于对话系统 可以是有歧义的,并且可以降低所生成的响应的准确性,从而导致用 户沮丧。但是,确定用户的可能意图(例如,对账单的抱怨、询问费 率增加等)可以帮助解决这种歧义。因此,具有用于在自然语言对话中预测用户的可能意图的机制将是有益的。
例如,用户可以联系自动客户服务系统,其意图是获得关于某个 事物的信息、修理某个事物、对某个事物抱怨或者很多其它可能的原 因。说明性实施例解决的问题是,当用户在与自动客户服务系统的对 话会话期间与对话系统交互时,自动客户服务系统是否可以分析关于 用户的信息并尝试预测用户可能联系自动客户服务系统的原因,例如, 基于用户简档、最近的账单信息、最近呈现给用户的信息等。而且, 一旦确定了用户联系自动客户服务系统的原因(意图),问题就变为 在尝试理解对话会话期间的用户语音话语或文本输入的同时自动客户 服务系统是否可以从这种确定或预测中受益。
说明性实施例提供用于基于存储在用户简档中的数据中发现的异 常来预测用户的意图并解决这种异常的机制。本文的术语“用户简档” 指的是存储与特定识别出的用户相关的信息的任何数据结构。用户简 档可以是单个数据结构,或者可以是存储在同一计算系统中或分布在 多个计算系统上的多个数据结构。在一些说明性实施例中,用户简档 可以包括与使用这些不同数据结构实现单独目的(例如,一个数据结 构用于开账单目的、一个数据结构用于客户服务目的、一个数据结构 用于计算服务配置目的等)的多个不同系统相关联的多个不同数据结 构。与用户相关联的各种信息,无论是在单个数据结构中提供还是在 相同或不同计算系统中的多个数据结构中提供,在本文中都将被称为 “用户简档”。
基于预测出的意图,说明性实施例的机制选择对话中的用户语音 话语或文本输入的表示,其消除了用户输入中可能被认为是有歧义的 任何部分的歧义。例如,词消除歧义、引用消除歧义、主题消除歧义 和解析消除歧义是可以基于从与用户的简档相关联的异常识别出的用 户的预测意图来执行的所有类型的消除歧义。基于异常的意图预测以 消除用户输入的歧义导致由客户服务系统提供的更准确的响应,并且 导致与用户的更有益的交互,从而减轻用户的沮丧。例如,在说明性 实施例的这种机制之前,如果用户要提供“它为什么这么高?”的用户 输入,这是有歧义的,因为系统可能无法确定术语“它”是指什么,那 么系统可以针对未被识别出的输入以固定的预定义响应进行响应,例 如,“对不起,我不明白。如果您对帐单有疑问,请按1。如果您对 服务有疑问,请按2。”
利用说明性实施例的机制,说明性实施例可以预测用户的意图是 询问他们的账单并且因此通过基于预测出的意图提供直接回答来更智 能地响应,而不是要求用户经历预定义的提示和交互层以达到其输入 的目的,例如,被呈现相同问题的说明性实施例的机制可以预测用户 打算询问他们的账单,并且还可以确定他们的用户简档中存在示出由 于促销期限到期而导致其账单增加的异常。因此,说明性实施例可以 作出响应“上个月您的12个月促销折扣期结束,这就是为什么您的最 新结算单高于以往的原因。”因此,用户感觉他们的输入已被准确理 解并且提供了即时且准确的响应。
出于本描述的目的,将假设说明性实施例在用于提供自动或半自 动客户服务系统的对话系统中实现。这种对话系统可以利用用户输入 的认知处理,诸如执行自然语言问答、认知信息检索等。应当认识到 的是,客户服务系统仅仅是对话系统的一个示例,利用该对话系统, 可以利用说明性实施例的机制,因此,说明性实施例不限于此。相反, 说明性实施例可以用任何基于文本的对话系统或从语音处理文本的对 话系统来实现。对话系统的示例包括患者医疗诊断辅助系统、患者治 疗推荐系统、销售指导系统、技术支持系统、培训或教育系统、聊天 机器人、各种领域中的各种类型的决策支持系统,或任何其它对话系统、基于电话的口头对话系统、基于车载的对话系统、智能会议室对 话系统等。
而且,将假设对话系统是文本对话系统,诸如可以经由聊天窗口 或其它基于文本的用户界面提供的,用于提交和交换与对话系统的文 本通信的对话系统,然后对话系统处理用户文本输入并生成响应或以 其它方式联系人类代表以获得附加帮助。应当认识到的是,这仅仅是 个示例,并且例如从用户到对话系统的其它输入(诸如可以通过语音 到文本转换被转换为文本格式的口头话语或语音输入)可以在不脱离 本发明的精神和范围的情况下使用。
为了说明根据一个说明性实施例的为客户服务配置的对话系统的 操作,考虑以下场景,其图示了用户和与虚构公司ABC Wireless公 司相关联的客户服务系统之间的对话交互。客户John Smith与ABC Wireless公司客户服务部门联系,诸如通过来自其web浏览器的聊 天窗口或经由与ABC Wireless公司相关联的网站的网站界面。当自 动对话系统从John Smith接收到消息发起请求时,自动对话系统 (ADS)从John Smith的用户简档中检索信息(该用户简档同样可 以是单个数据结构或者同一计算系统中或跨计算系统分布的多个数据 结构)并分析这个信息,例如,使用统计分析、模式分析、趋势分析 等。ADS通过此类分析确定John Smith的账单在过去6个月内约为 60美元,但在上个月的结算单中突然增加到105美元。由ADS执行 的进一步分析表明,客户曾经受益于电视服务订阅的45美元折扣的1年促销节省,但促销期限已经结束。例如,可以通过查看在指定的 时间段存在于用户简档信息中的变量发生的变化来识别这些异常。可 以通过将规则应用于通过分析用户简档信息而识别出的各种统计数据、 模式、趋势等来识别这种异常。在这个场景下,由于促销期限结束, 因此客户的账单在上个月有所增加。
说明性实施例的ADS可以应用关于可接受的偏差的规则,可以 利用过去关于相同或不同用户的类似情况的观察以及与过去用户对话 的原因(诸如每月账单的突然改变、移动到新地址等)的对应性,以 确定客户联系客户服务系统的可能原因以及对应的置信度值的列表, 以对可能原因的列表进行排名。例如,ADS可以确定处于类似情况 (即,在他们的用户简档中具有历史数据、统计数据等的类似模式) 的80%的客户联系了客户服务系统以询问为什么每月账单增加。而 且,ADS可以确定处于类似情况的55%的客户联系了客户服务系统, 因为一旦他们搬到新地址,他们通常就会遇到需要纠正其服务的技术 问题。
因此,在这个示例中存在两个可能的意图,即,确定每月账单增 加的原因和报告关于服务的技术问题。给定意图还可以涉及一个或多 个变量的改变。创建相对排名,其中每个用户意图具有该用户意图将 成为与ADS的用户对话的查询或其它部分的原因的可能性或概率。 然后利用这两个可能的用户意图及其可能性的相对排名来生成对用户 输入的响应。例如,可以选择和使用排名最高的用户意图候选。可替 代地,可以选择具有等于或高于阈值的排名的所有可能意图用于潜在 的使用,并且可以向用户呈现替代响应以供考虑。
而且,在一些情况下,在与变量的权重值相乘之后,可以使用意 图的可能性,如下文所讨论的,以基于它们与识别出的可能意图的相 关性重新排名其对用户输入的解释的消除歧义的版本,以及因此基于 解释的这些消除歧义的版本的处理生成的响应。解释可以被定义为自 然语言输入的明确表示。解释可以用各种表示语言表达,包括但不限 于谓词逻辑、命题逻辑、知识图、语义网络、数学函数等。可以基于 对用户输入的连续分析动态地修改相对排名,其中用户输入的连续分 析提供其中一个意图是正确意图的进一步证据。例如,如果ADS以 不适当的响应进行响应,那么用户可以用后续自然语言文本输入进行 响应,该文本输入可以被处理并添加到与ADS的对话的上下文中, 并且可以被用于进一步定义可能的意图中的哪一个是用户拥有的意图, 从而增加那个意图的相对排名/权重。
基于所确定的可能意图以及可能地,对最高排名意图的选择,可 以消除用户输入中的歧义。例如,如果用户的原始文本输入是“它为 什么这么高?”类型的自然语言问题,那么不清楚术语“它”所指的是 什么,因此这是用户输入中的歧义点。通过处理用户简档,以及可选 地与提问用户的用户简档具有类似历史或统计数据、数据的模式或趋 势等的其他用户的用户简档,ADS可以确定存在两个可能的逻辑值, 其中“它”指的是“账单”或“费率”。
可以利用模糊逻辑机制来确定每个可能意图中的每个变量的权重 值,如下所述,以生成与可能意图相关联的相对排名。基于这个相对 排名,可以选择最终意图并用于消除原始用户输入的歧义,例如,来 自用户的自然语言文本输入可以被消除歧义为“为什么我的账单这么 高?”。然后消除歧义的用户输入可以使用自然语言处理(NLP)机 制、通过问答(QA)系统询问问题等来处理。例如,现在预测用户 的意图是询问他们最近的账单,QA系统可以通过用“你的12个月 的折扣期于上个月结束。”类型的回答作为响应来处理消除歧义的输 入问题“为什么我的账单这么高?”。
因此,说明性实施例提供了用于分析用户简档的信息中的异常以 预测用户可能联系自动对话系统(ADS)(诸如客户服务系统)的原 因的机制。这些异常可以采取许多不同的形式,这取决于说明性实施 例的实现的特定领域以及期望的实现本身,例如,寻找指示异常的什 么趋势、因素、统计度量等。在一些说明性实施例中,通过识别指示 用户简档中可能是非预期或不寻常的某个事物的一个或多个变量的改 变(例如,满足或超过确定的阈值的一个或多个变量的改变)来识别 异常。应当认识到的是,可以使用与多个变量的改变相关联的规则来 识别异常,例如,如果与上个月相比用户的总账单增加至少20%, 并且用户的费率在过去15天内至少增加了25%,那么可以识别出异 常。
在一些情况下,可以执行对用户简档的周期性、连续或基于事件 的评估,以在接收用户输入之前识别异常。即,在一些说明性实施例 中,当新数据被添加到用户的简档时,例如,生成和/或接收新的每 月账单,用于关于新添加的数据评估用户简档以识别异常的处理可以 被自动执行。如果识别出异常,那么可以利用本文所阐述的用于确定 异常的相对排名或权重的操作,例如,使用模糊逻辑。识别出的异常 和对应的排名/权重可以与用户简档相关联地存储在异常数据结构中, 以供以后用户在用用户输入联系ADS时使用。
关于用户意图的预测被用于减少对对ADS的用户输入的理解的 歧义。例如,预测的相对排名/权重可以用于通过执行语义解析并以 利用其相应的权重(在本文中也称为置信度值)排名的次序插入用于 自然语言处理的替代入口点来消除自然语言用户输入中有歧义的术语 的歧义。
例如,利用上面的前一示例,当完成对用户话语的分析时,存在 对用户输入的两种可能解释。每种解释都有一个置信度值。置信度值 确定相对排名。例如,单词“是”可以指示右侧的变量“高”以置信度 0.7等同于左侧的变量“它”。这可以基于各种自然语言关系提取模型, 例如统计或概率或神经网络或基于模式的模型。对于统计模型,诸如 最大熵,单词“是”的左侧和右侧的各种术语的特征和单词“是”本身 (例如,可以是“都是”或“等于”)是在很多示例中用于训练模型的特 征。在这种训练结束时,存在一种分类器,其将输入中的标记或单词 的各种特征作为输入,并且当各种特征是陈述(presentation)时建 议实体之间的关系,但是具有置信度。在解决歧义时置信度值被维持 和更新。因此,例如,作为引用,“它”可以被解析为“账单”,然后话 语“账单高”导致指示“账单”与“高”的关系中的焦点的关系提取。这种 解释的置信度是值0.7。
在一个说明性实施例中,可以使用最高排名/加权意图预测来消 除用户输入的有歧义术语的歧义,从而生成由ADS,例如通过NLP 处理的用户输入的消除歧义的版本。语义解析以置信度C生成解释。 给定解释,这可以直接映射到实际计算问题的回答或执行任务的函数 的入口点。因此,入口点中的置信度也是C。然后,可以将解释与每 个可能的意图匹配(相关),每个可能的意图具有概率P。匹配的意 图可以具有k个定性变量,每个变量具有权重Wk。因此,入口点置 信度是C,并且模糊逻辑权重是P*Wk1*Wk2*...Wkn,其中k 是与意图相关联的每个定性变量的索引。重新排名函数被用于重新排 序入口点。存在权重w1和w2,以确定入口点置信度(EPC)的相 对重要性以及意图的可能性和意图中的各个变量的模糊逻辑权重的组 合。F(x)=w1*EPC+w2*FLW,其中FLW是意图的可能性P与 各种定性变量的模糊逻辑权重Wk的乘积。
在一些说明性实施例中,可以通过ADS生成和评估用户输入文 本的多个消除歧义的版本,并且可以根据其对应的排名/权重连同其 它由NLP实现的证据权重和置信度评分机制来对对应的候选回答/响 应进行加权。例如,可以生成用户输入文本的多个不同版本作为用户 输入文本的替代消除歧义的版本,例如,用户输入文本“它为什么这 么高?”的一个版本可以是“为什么我的账单这么高?”和“为什么我的 费率这么高?”。可以由ADS评估这两个消除歧义的版本,并且可以 基于响应的组合的相对排名(例如,基于与回答/响应相关联的相对 置信度得分)来选择适当的响应。而且,可以生成并组合用于两个替 代版本的单独响应,以提供对用户输入的组合响应。例如,对“为什 么我的账单这么高?”的响应可能是“您的12个月促销期已到期”,而 对“为什么我的费率这么高?”的响应可以是“上个月优惠费率有所增 加”。组合响应可以是“您的12个月促销期已到期并且上个月的优惠 费率有所增加”。
作为消除歧义操作的一部分,在一个说明性实施例中,给定用户 输入文本,例如“它为什么这么高?”,使用关系模式对文本进行过滤 以获得引用,例如,模式可以是类型“是<对象><值>”,其指示与<对 象>的关系是与诸如“它”之类的有歧义术语的潜在匹配。用户输入文 本中的无界有歧义术语被识别,例如,无界代词引用,诸如“它”。对 于关系模式,模式匹配与否导致置信度为1或0。
基于用户输入文本的上下文生成潜在引用的集合,其可以涉及在 与ADS对话期间先前提到的元素、关于指示上下文元素的领域的一 般信息等。例如,在上下文(环境、对话、GUI)等(“Joe”、“到期 日”、“账单”、“费率”)中。在这个上下文中存在变量,例如,在这 个示例中为“到期日”、“账单”和“费率”。给定上下文和上下文中的变 量,可以将无界变量映射到这些变量中的特定变量,例如“账单”、 “费率”或“到期日”。然后使用模式信息过滤潜在引用的这个集合,例 如,变量“账单”可以是具有定性值(例如,“低”到“中”到“高”)的数字,或者“到期日”不能是“高”。因此,在这种情况下,可以将经过滤 的潜在引用集合简化为“账单”和“费率”的子集。
因此,利用说明性实施例,诸如“我的支付”之类的后照应 (anaphoricreference)可以有可能被解析为“用户每月支付”,因为用 户可能关于他们的每月支付的增加正在联系ADS。用户输入通常在 语法方面不太正式,或者可能包含印刷错误。有时用户输入只是不包 含确定用户输入的主语的目的所需的所有情况的细节。当存在歧义时, 说明性实施例的意图预测机制可以被用于对用户输入的可能解释进行 排名并根据最可能的场景来响应用户。
根据一个说明性实施例,该机制实现四个主要操作。在第一操作 中,识别发起对话会话的用户的(一个或多个)用户简档中的异常, 从而识别用户联系ADS的可能原因的列表。这可以在用户发起与 ADS的对话会话之前或者响应于用户发起与ADS的对话会话而进行。 例如,可以为用户的各种参数定义阈值,其中参数可以指示用户联系 ADS的潜在原因,例如,客户的费率(例如,收费率、使用费率, 利率等)在过去的y(例如,15)天内已经增加/减少至少x(例如, 30%)。这些阈值的定义可以基于功能规则,其包括各种因素,包括 时间、金钱、数据速率、统计度量或者指示用户联系ADS的潜在原 因的用于特定领域的任何其它适用的定量或定性因素。而且,这种阈 值可以基于其中识别出类似异常的其他用户简档的分析以及被确定为 在这些其他用户联系ADS的情况下适用的特定阈值。在一些说明性实施例中,阈值可以由主题专家(SME)基于他们对领域的知识以 及哪些因素、因素的改变以及因素的这些改变的强度/量值指示异常 来定义。
在一些说明性实施例中,阈值的确定可以涉及机器学习处理,其 中ADS基于用户对来自ADS的自动生成的响应的后续响应来确定用 户的最高排名的预测意图是否实际上是用户的意图。如果预测的意图 是正确的,那么可以确定正确地指定了对应的阈值。如果预测的意图 是不正确的,那么可以调整阈值以降低未来在类似情况下该预测意图 的排名,例如,可以增加/减小阈值,以减少这种异常将在类似情况 下上升到最高排名的可能性。
给定检测到的异常生成可能意图。对于这个操作,利用指定用户 输入的潜在原因的意图模式,例如,如果确定用户的简档数据中的异 常是费率增加,那么用户可以发起与ADS的联系以询问费率规则、 增加费率的政策、费率大幅增加的原因等。可以通过从储存库检索与 对应异常相关联的规则或模式基于检测到的异常来确定用户联系 ADS的原因的确定。储存库中指定的特定规则或模式可以由主题专 家(SME)定义,可以通过ADS对用户输入的训练和/或操作随时间 进行机器学习,或者基于SME的和基于机器学习的机制的任意合适 组合。
在一些说明性实施例中,作为说明性实施例的第二主要操作,导 致异常的识别的值的差异的强度或量值(例如,如果用户的费率从每 月20美元增加到100美元/月,那么强度是80美元)可以被映射到 可以被表示为强度值的离散的集合或分类(诸如“低”、“中”和“高”)。 可以应用基于模糊逻辑的方法来获得数字权重,该数字权重稍后可以 用于对可能的对应意图进行排名,以用于消除用户输入的自然语言处 理(NLP)的歧义。
在第三主要操作中,说明性实施例的机制根据其对应的意图应用 用于消除歧义的权重。可以使用加权的意图来执行各种类型的消除歧 义,包括但不限于词消除歧义、引用消除歧义、主题消除歧义和解析 消除歧义。关于词消除歧义,意图预测可以被用于改变与上下文中的 词典相关联的概率。例如,如果用户抱怨他们的“bill”,那么这个词 的感觉比“昨天在国会提出的bill”中的“bill”更有可能。ADS可以对 两者都有响应策略/对话,并且可以利用意图预测来协助区分词/短语 的多个潜在正确用法。
关于引用消除歧义,在给出含糊的问题或陈述(例如,“I don’t like yourfees”)的情况下,术语“fees”可以被实例化为用户最可能抱 怨的特定费用。这可以是一般的实例化,例如,人们不喜欢这种费用, 或者它可能是来自用户数据的异常。说明性实施例可以通过基于用户 简档中以及其他用户简档中的异常评估各种意图来评估这各种可能性, 如上所述。类似地,可以使用说明性实施例的机制来消除诸如“it (它)”、“she(她)”、“he(他)”、首字母缩略词等的后照应以及 其它有歧义的引用。
关于主题消除歧义,给定可能的主题,诸如关于家庭电话与移动 电话的陈述,由于根据在用户简档信息中找到的异常确定的预测意图, 一个主题可以是更可能的。例如,如果用户提供“我的最新账单上涨 了”的用户输入,那么说明性实施例的机制可以通过确定用户简档中 指示用户的移动电话账单的异常在过去一个月或其它预定时间段内已 增加或者用户的简档指示确定时段的折扣率已经结束来消除这个用户 输入的歧义。而且,说明性实施例可以从其他用户简档的分析确定用 户一般正在传达关于移动电话相关账单的抱怨。因此,说明性实施例 可以被用于消除引用用户的移动电话账单的用户输入的歧义并且可以 生成对应的响应,诸如“你的意思是关于你的移动电话的最新账单? 遗憾的是,由于你的移动电话的折扣率已经在上个月结束,因此费率 有所上升。”
关于解析消除歧义,给定捕获句法关系的可能句法分析树,一个 解析可以是更可能,因为预测的意图匹配用户输入的一个句法分析而 不是另一个句法分析。例如,如果用户输入是有歧义的,例如,“Bill now”可能指“Bill”这个人(名词)或者“开账单”过程(动词)。如果 用户的意图指示用户可能询问他们的账单,那么解析消除歧义可以选 择“账单”(名词)而不是“开账单”(动词)。
一旦使用一种或多种不同类型的消除歧义来消除用户的输入的歧 义,就通过自然语言处理(NLP)机制等处理消除歧义的输出,以生 成(一个或多个)候选响应,对(一个或多个)候选响应进行排名, 并选择一个或多个候选响应作为对用户输入的响应以供输出。在一个 说明性实施例中,消除歧义的输出可以包括基于与在用户简档中识别 出的异常相关联的预测意图的相对排名而选择的用户输入的单个消除 歧义的模型。在另一个说明性实施例中,消除歧义的输出可以包括用 户输入的多个不同的消除歧义的版本,每个版本与不同的可能的预测 意图对应,其中不同的消除歧义的版本,和/或由NLP机制生成的它 们的相关联的(一个或多个)候选响应,可以根据与预测意图相关联 的对应权重来加权。这些权重可以与由NLP机制生成的其它权重组 合,以生成针对特定响应的总体权重或置信度值,例如,认知问答 (QA)系统可以基于证据分析来给回答加权,以生成置信度得分, 并且这个置信度得分可以进一步通过与预测意图相关联的权重值加权 或受其影响。
基于排名的响应列表,可以选择最终响应并且将其作为响应于用 户输入的输出返回给用户。在一些情况下,可以输出具有资格的多个 响应,例如,“如果您询问您的账单,那么您的账单增加的原因是......” 和“如果您询问您的费率,那么您的费率增加的原因是因为......”。因 此,由自动对话系统生成的响应更有可能是对用户有歧义的输入的准确响应,而无需请求用户进一步澄清。
在更详细地开始讨论说明性实施例的各个方面之前,首先应当认 识到的是,贯穿本描述,术语“机制”将用于指执行各种操作、功能等 的本发明的元件。如本文使用的术语“机制”可以是装置、过程或计算 机程序产品形式的说明性实施例的功能或方面的实现。在过程的情况 下,过程由一个或多个设备、装置、计算机、数据处理系统等实现。 在计算机程序产品的情况下,由体现在计算机程序产品中或计算机程 序产品上的计算机代码或指令表示的逻辑由一个或多个硬件设备执行, 以便实现与具体“机制”相关联的功能或执行与具体“机制”相关联的操 作。因此,本文描述的机制可以被实现为专用硬件、在通用硬件上执 行的软件、存储在介质上以使得指令易于由专用或通用硬件执行的软 件指令、用于执行功能的过程或方法,或任何上述的组合。
本描述和权利要求可以关于说明性实施例的特定特征和元素使用 术语“一个”、“至少一个”和“一个或多个”。应当认识到的是,这些术 语和短语旨在表明在特定的说明性实施例中存在至少一个特定特征或 元素,但是也可以存在多于一个。即,这些术语/短语不旨在将描述 或权利要求限制为存在单个特征/元素或者要求存在多个这样的特征/ 元素。相反,这些术语/短语仅要求至少单个特征/元素,并且多个这 种特征/元素的可能性在描述和权利要求的范围内。
而且,应当认识到的是,如果在本文中关于描述本发明的实施例 和特征而使用,那么术语“引擎”的使用不旨在限制用于实现和/或执 行可归因于引擎和/或由引擎执行的动作、步骤、处理等的任何特定 实现。引擎可以是但不限于执行指定功能的软件、硬件和/或固件或 其任意组合,包括但不限于通用和/或专用处理器的任何使用与加载 或存储在机器可读存储器中并由处理器执行的适当软件的组合。另外, 除非另有说明,否则与特定引擎相关联的任何名称是为了便于引用, 而并不旨在限制于具体实现。此外,归因于引擎的任何功能可以由多 个引擎同等地执行、结合到相同或不同类型的另一个引擎的功能中和 /或与其组合,或者跨各种配置的一个或多个引擎分布。
此外,应当认识到的是,以下描述使用用于说明性实施例的各种 元件的多个各种示例来进一步说明说明性实施例的示例实现并且有助 于理解说明性实施例的机制。这些示例旨在是非限制性的,而并非穷 举实现说明性实施例的机制的各种可能性。鉴于本说明书,对于本领 域普通技术人员来说显而易见的是,存在用于这各种元件的许多其它 替代实现,其可以在不脱离本发明的精神和范围的情况下作为本文提 供的示例的补充或者替代本文提供的示例被使用。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产 品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明 的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用 的指令的有形设备。计算机可读存储介质例如可以是――但不限 于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导 体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具 体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取 存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器 (EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩 盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软 盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、 以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被 解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通 过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下 载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广 域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括 铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关 计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网 络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指 令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集 架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、 状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码 或目标代码,所述编程语言包括面向对象的编程语言—诸如Java、 Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类 似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、 部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用 户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务 器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种 类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机, 或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因 特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态 信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算 机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序 产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程 图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可 以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或 其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些 指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生 了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装 置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中, 这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方 式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其 包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的 各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处 理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或 其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使 得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实 现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、 方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点 上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的 一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现 规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所 标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连 续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序 执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中 的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬 件与计算机指令的组合来实现。如上所述,本发明提供了用于根据在 用户简档信息中找到的异常来预测用户意图并使用预测的意图来消除 用户的有歧义输入的歧义并提供适当响应的机制。说明性实施例的机 制可以与任何自然语言处理或基于认知的自动对话系统一起使用或者 可以集成在其中,以便处理来自用户的自然语言输入(其可以是口头 的或文本的),并且考虑到用户的预测意图而提供适当的响应,以消 除用户输入的歧义。
图1是图示根据一个说明性实施例的、用于用户自动对话系统 (ADS)交互的信息流的示例图。如图1中所示,用户110可以访问 ADS,诸如经由工作站、音频捕获设备、智能扬声器系统或能够以口 头或文本格式接收自然语言用户输入的任何计算设备。在口头输入的 情况下,可以使用语音到文本转换机制将口头输入转换为文本格式。 可以将用户110输入的文本表示提供给语义解析器120以进行进一步 处理。而且,用户110的身份可以例如经由用户110的登录处理、经 由用户110对来自ADS对用户110识别他/她自己的询问的响应、经 由基于与用户110用于访问ADS的设备相关联的设备标识符的自动 识别,或用于识别用户110的任何其它合适的机制。
基于用户110的身份,ADS可以为用户110检索对应的用户简 档信息130。在所描绘的示例中,响应于用户110访问ADS,异常检 测和意图识别引擎140分析用户简档中的信息,以识别用户简档信息 中的异常。可以通过评估用户简档信息130中的变量的值以及在特定的预定时间段内变量值的改变的差异、统计度量、趋势或其它类型的 分析来检测这种异常。而且,阈值、规则等可以应用于与变量、改变 等相关联的值,以确定是否存在异常以及异常的强度/量值。
基于在用户简档130中识别出的改变,异常检测和意图识别引擎 140识别与满足在任何应用的规则中阐述的阈值和标准的改变相关联 的对应意图。此类阈值的定义可以基于包括各种因素的功能规则,其 中因素包括时间、金钱、数据速率、统计度量或指示用户联系ADS 的潜在原因的特定领域的任何其它适用的定量或定性因素,该定义可 以基于分析其中识别出类似异常的其他用户简档以及被确定在这些其 他用户联系ADS的那些情况下适用的特定阈值等。阈值可以由SME 手动定义,或者自动定义,诸如通过机器学习处理。
通过应用指定用户输入的潜在原因的意图模式来生成给定检测到 的异常的可能意图,例如,如果确定用户的简档数据中的异常是费率 增加,那么用户可以发起与ADS的联系以询问费率规则、增加费率 的政策、费率大幅增加的原因等。用户联系ADS的原因的确定可以 基于检测到的异常通过从与异常检测和意图识别引擎140相关联的储 存库142检索与对应异常相关联的规则或模式来确定。储存库中指定 的特定规则或模式可以由主题专家(SME)定义,可以通过ADS对 用户输入的训练和/或操作随时间进行机器学习,或者基于SME的和 基于机器学习的机制的任意合适组合。因此,例如,规则可以指定如 果在15天内用户的费率变化超过30%,那么用户与ADS通信的可 能意图是询问关于他们的费率增加、设置其费率的政策或与其账户关 联的费率规则。最初,对于给定的改变强度存在多个可能的意图,每 个意图具有同等的可能性。例如,有人可能会问为什么费率这么高, 以至于抱怨费率这么高。这形成了每个意图的先验可能性。但是,随 着时间的推移,可能会有关于用户生成哪种意图的其它数据。例如, 随着时间的推移,说明性实施例的系统可以获知用户更有可能询问他 们的账单改变的原因而不是抱怨改变。
可以将识别出的用户的可能意图输出到解析器120,解析器120 解析用户的输入,例如“它为什么这么高?”,并使用可能的意图来生 成自然语言用户输入的替代解释,例如,原因(账单(高))或原因 (费率(高))。如前面所提到的,排名基于三件事:询问账单原因 的可能性(与意图的相关性)、账单的改变强度(模糊逻辑值)以及 解析的置信度(解析器获得原因(账单(高))正确的解释的可能 性)。这些解释也可以被映射到与系统可以执行的计算对应的入口点 (我的账单是什么,然后可以映射到返回账单值的路由)或系统可以 生成的回答。在许多情况下,解释和入口点之间的这种对齐是完美的, 并且系统可以简单地响应,但是在其它情况下,系统可能必须被构造 为尽管解释和入口点之间仅部分对齐但也操作。例如,系统可以知道 用户询问他们的账单,但是如果系统没有正确地确定用户询问其值,那么对话系统可以呈现用户界面,用户可以通过该用户界面阐明用户 的意图。通过具有解释的相对排名来实现这种类型的部分对齐。如果 一个解释与入口点不能良好匹配,那么可以使用另一个解释。
例如,可以在所描绘的示例中生成“费率”和“账单”的可能性。在 一些说明性实施例中,这基本上生成用户的自然语言输入的替代消除 歧义的版本,例如,“为什么我的费率这么高?”和“为什么我的账单 这么高?”。用户的自然语言输入的替代版本可以被输出到意图排名/ 消除歧义引擎160。
与识别出的异常对应的变量的改变强度可以由异常检测和意图识 别引擎140输出到异常/意图加权引擎150。异常/意图加权引擎150 可以将模糊逻辑应用于改变强度,以生成对应的权重值。例如,模糊 逻辑可以评估异常,以将它们分类为具有对应权重值的强度值集合的 不同分类,例如低、中、高,或者可以基于异常改变强度值的预定函 数来计算权重值。因此,例如,在所描绘的示例中,由异常/意图加 权引擎150针对识别出的与由异常检测和意图识别引擎140识别出的 用户简档信息130中的变量的改变对应的“费率”和“账单”意图生成权 重。
由异常/意图加权引擎150生成的权重被输出到意图排名/消除歧 义引擎160。意图排名/消除歧义引擎160对用户输入的替代逻辑入口 点或替代消除歧义版本进行操作,以生成消除歧义输出,该输出被输 出到ADS响应生成器170,ADS响应生成器170可以包括自然语言 处理(NLP)以生成对消除歧义的输出的响应。意图排序/消除歧义 引擎160可以基于加权的可能意图应用如前面所讨论的各种类型的消 除歧义。在一些说明性实施例中,消除歧义的输出可以包括基于替代 的相对排名/权重来选择用户输入的替代逻辑入口点或替代消除歧义 版本之一。在一些说明性实施例中,消除歧义的输出可以包括用户输 入的各种替代逻辑入口点/消除歧义的版本以及它们对应的权重值。
一旦用户的输入被意图排名/消除歧义引擎160消除歧义以生成 消除歧义的输出,消除歧义的输出就由ADS响应生成器170的自然 语言处理(NLP)机制、认知机制等处理,以生成(一个或多个)候 选响应,对(一个或多个)候选响应进行排名,并选择一个或多个候选响应作为对用户输入的响应以进行输出。在一个说明性实施例中, 消除歧义的输出可以包括基于与在用户简档中识别出的异常相关联的 预测意图的相对排名而选择的用户输入的单个消除歧义版本。在另一 个说明性实施例中,消除歧义的输出可以包括用户输入的多个不同的 消除歧义的版本,每个版本与不同的可能的预测意图对应,其中不同 的消除歧义的版本,和/或由NLP机制生成的它们相关联的(一个或 多个)候选响应,可以根据与预测意图相关联的对应权重来加权。这 些权重可以与NLP机制生成的其它权重组合,以生成针对特定响应 的总体权重或置信度值,例如,认知问答(QA)系统可以基于证据 分析来给回答加权,以生成置信度得分,并且这个置信度得分可以进 一步通过与预测意图相关联的权重值加权或受其影响。
基于经排名的响应列表,可以响应于用户输入而选择最终响应并 且将其作为输出返回给用户。在一些情况下,可以如上面所讨论的那 样输出具有资格的多个响应。可以将响应作为对用户的原始输入的响 应提供回用户110。因此,例如,响应于用户输入“它为什么这么 高?”,ADS可以基于用户的简档信息130中的异常来预测用户询问 他们的账单或者他们的费率。基于与用户简档信息130中的账单和费 率信息相关联的变量的改变的强度,相对较高的权重可以与“账单”相 关联而不是与“费率”相关联,因此,可以确定用户最有可能询问他们 的账单。
结果是意图排名/消除歧义引擎160将用户输入消除歧义为“为什 么我的账单这么高?”然后将其输入到ADS响应生成器170,ADS响 应生成器170对消除歧义的用户输入进行操作以生成响应。在这种情 况下,通过用户简档信息130的NLP分析,可以确定用户的账单已 经增加,因为用户的促销折扣已经到期。因此,生成“您的12个月促 销折扣期限已于上个月到期”的响应并将其返回给用户。因此,从对 话的角度来看,用户问“它为什么这么高?”并且ADS响应“您的12 个月促销折扣期限已于上个月到期”,这是更自然的对话响应,其基 于计算机生成的用户意图的预测而生成,该预测是基于用户的简档信 息中识别出的异常。
图2是图示根据一个说明性实施例的、用于用户简档的变量的异 常改变的基于模糊逻辑的权重确定的示例图。如上面所提到的,异常 意图加权引擎150可以利用模糊逻辑等来评估用户简档信息中的变量 的改变强度,以确定与那个改变相关联的对应意图相关联的权重值。 模糊逻辑是一种多值逻辑的形式,其中变量的真值可以是0到1之间 的任何实数。模糊逻辑被用于处理部分真的概念,其中真值可以在完 全真和完全假之间的范围内。在本上下文中,模糊逻辑用于评估在用 户简档信息中发现的异常是用户与ADS通信的原因或意图的确定性 级别。
如图2中所示,一旦执行了异常检测并且通过识别用户简档中满 足或超过一个或多个阈值的变量的改变识别出对应的意图,就将改变 强度或量值输入到模糊逻辑模型或认知系统模型,该模型对改变强度 进行分类并将权重值与改变强度相关联。例如,可以定义将不同的改 变强度范围与不同的模糊逻辑权重值相关联的模糊逻辑函数,例如, 对于落入“低”分类内的改变强度范围,相关联的模糊逻辑权重值可以 是0.2,而对于“高”分类,相关联的模糊逻辑权重值可以是0.8。可以 基于由特定实现的特定模糊逻辑所采用的函数来确定特定值。在一些 情况下,还可以指定用于特定分类的固定权重。在所描绘的示例中,给定客户的每月账单金额的变量,可以通过给定时间段内的最低账单 金额与给定时间内的最高账单金额之间的差异来确定改变强度,在这 个情况下是80美元。这个改变强度可以沿着表示模糊逻辑函数或模 型的图的x轴映射,并且可以检索y轴上的对应权重值。在这个示例 中,模糊逻辑权重被确定为0.8,即,改变强度落入“高”分类内,这 意味着与异常相关联的意图很可能是用户(客户)与ADS通信或将 与ADS通信的原因。
如图1中所示,可以为与在用户简档信息130中找到的异常相关 联的每个改变强度生成模糊逻辑权重值,并将其提供给意图排名/消 除歧义引擎160。然后意图排名/消除歧义引擎160可以对对应的意图 进行排名并生成原始用户输入的消除歧义以供ADS响应生成器170 处理,ADS响应生成器170可以采用自然语言处理、认知处理等来 生成对用户输入的响应。
虽然图1的以上描述假设异常检测和意图识别引擎140响应于用 户访问ADS而动态地识别用户简档信息130中的异常,但是本发明 不限于此。更确切地说,响应于对用户简档信息130执行更新,可以 对用户简档信息130执行引擎140和150的操作。这些更新可以是连 续的、周期性的,或者响应于给定事件而执行。
例如,在客户服务系统环境中,客户通常与ADS通信以讨论他 们的账单并获得他们的服务/产品的帮助。因此,例如,当用户简档 信息的源(诸如公司计费系统)生成新的用户简档信息(例如,新的 每月账单)时,该信息被添加到用户简档信息130。这可以触发引擎140和150评估新添加的信息以确定它是否在用户简档信息130中引 入了任何新的异常的操作。再次,这可以涉及应用阈值、规则等,用 于基于用户简档信息130中变量值的改变来检测异常并将这些改变与 不同的意图相关联。然后,异常/意图加权引擎150可以对改变强度 进行分类并将权重值指派给异常/意图,然后将其与用户简档信息130 相关联地存储。因此,当用户随后访问ADS时,不是必须动态地执 行对用户简档信息130的分析,而是异常检测和意图识别引擎140可 以简单地从用户简档信息130中检索存储的异常/意图和对应的权重 信息,并利用这种先前识别出的异常/意图信息来执行先前上面针对 排名和消除歧义描述的操作。
图3是概述根据一个说明性实施例的、响应于对用户简档信息的 更新的图1的引擎140和150的示例操作的流程图。如图3中所示, 当接收到新的用户数据以包括在用户简档信息中时,例如,由计费系 统或其它用户简档信息数据源生成新的每月账单,操作开始(步骤 310)。更新用户简档信息(步骤320),并且将异常检测分析、规 则和阈值应用于用户简档信息,以确定是否发现任何异常(步骤 330)。如果没有发现异常(步骤340),即,没有新用户数据产生 满足或超过阈值或满足规则标准的任何变量或变量组合的改变,那么 操作终止。如果发现异常(步骤340),那么将模糊逻辑、认知逻辑 等应用于变量的改变强度,以生成与异常及其相关联的意图相关联的 权重值(步骤350)。然后将异常/意图信息和对应的权重值存储在用 户简档信息中,以便稍后在用户用有歧义的用户输入与ADS通信时 进行检索(步骤360)。然后操作终止。
图4是概述根据一个说明性实施例的、用于消除用户输入的歧义 的示例操作的流程图。无论异常检测和意图识别是动态地还是先验地 响应于对用户简档的更新而执行,都可以执行图4的操作。如图4中 所示,响应于用户访问自动对话系统(ADS)并提供用户输入(例如, 说出的话语或文本输入)(步骤410),ADS检索对应用户的用户简 档并且确定用户简档信息中是否存在任何异常(步骤420)。确定用 户简档信息中是否存在异常可以先验地执行(诸如当新用户数据如上 面在图3的上下文中所描述的那样被用于更新用户简档时),或者可 以在步骤410中响应于用户访问ADS而被动态地执行。因此,取决 于实现,步骤420可以涉及执行用户简档信息的实际分析以识别用户 简档信息中的变量的显著改变(例如,满足或超过阈值或者满足异常 检测规则的标准的改变),或者可以涉及从用户简档信息中检索从用 户简档信息的先验分析生成的先前异常/意图及其对应权重的列表。
如果不存在异常(步骤430),那么经由NLP系统或认知系统 (例如,问答(QA)系统)使用常规自然语言处理(NLP)和/或认 知操作来处理用户输入,以生成对用户输入的响应(步骤440),并 将生成的响应返回给用户(步骤450)。如果存在异常(步骤430), 那么确定与异常相关联的意图并计算异常/意图的对应权重(步骤 460)。如上所述,可以通过应用基于一个或多个在用户简档信息中 阐述的变量值中检测到的改变、统计度量,趋势等将意图与异常相关 联的规则来确定意图。可以使用模糊逻辑、认知评估等来计算与这种 异常/意图相关联的权重。
然后基于计算出的权重将消除歧义操作应用于用户输入,以解决 引用(步骤470)。应当认识到的是,虽然图4将消除歧义描述为针 对引用消除歧义,但是也可以执行用户输入的其它类型的消除歧义, 包括但不限于词义消除歧义、主题消除歧义和解析消除歧义,如上文 先前所提到的。
语义解析器还可以处理涉及有歧义词的输入,例如“bill”。Bill 可以是名词(国会中的法案)、动词(“支付账单”)或先验名词 (prior noun)(William的缩写版)。当处理输入时,可以存在与 每个词义对应的多个解释,每个解释具有概率C。然后,将解释与意 图的可能性L相匹配并且乘以权重值Wk。
语义解析器还可以将输入处理成解析树,诸如组成或短语结构解 析或依赖关系解析。解析中的节点的标签(其句法类别-名词、专 有名词、动词等)或其附件(有资格的东西是bill)可能是有歧义的。 在这种情况下,解析器将输出多个与输入匹配的句法分析,每个句法 分析具有解析得分(0到1)。句法分析被用于生成给定的解释(来 自语义解析器的输出),从而生成解析得分。
将语义解析应用于消除歧义的用户输入,并且以利用相应置信度 值排名的次序提取替代入口点(步骤480)。然后使用重新排名函数 对入口点进行重新排名(步骤490)。例如,重新排名函数可以使用 用户输入的自然语言处理和与入口点对应的改变强度的给定类别或分 类的模糊逻辑权重来评估入口点置信度的组合。示例重新排名函数可 以是Franking=(w1*EPC)+(w2*FLW)类型,其中EPC是使用 自然语言处理方法计算的入口点置信度值,FLW是改变强度的给定 类别或分类的模糊逻辑权重,w1是重新排名函数中EPC的权重,并 且w2是重新排名函数中FLW的权重。
通过对入口点执行函数,直接生成响应。例如,如果用户询问当 前的每月帐单,那么系统可以将其映射到入口点 get_amount(variable,period,point)并将variable设置为“bill”,将 period设置为“month”并将point设置为“current”。然后存在执行的 代码或构造的查询,其运行以在目标计算机系统中实际检索每月帐单 的当前值。
基于在步骤460和470中确定的消除歧义操作和权重,涵盖在步 骤480中生成的替代入口点的用户输入的重新排名的入口点由NLP 和/或认知响应生成操作使用(步骤440),以生成对用户输入的响应, 然后输出该响应(步骤450)并且操作终止。
图5是概述根据一个说明性实施例的、用于基于根据用户简档信 息中的异常/意图检测确定的权重来执行引用消除歧义的示例操作的 流程图。例如,图5中概述的操作可以作为图4的步骤470中的操作 的一部分来执行,以解决用户输入中的引用,从而基于用户简档信息 中识别出的异常消除用户输入的歧义。
如图5中所示,操作通过应用一个或多个关系模式来过滤用户输 入中的引用开始(步骤510)。例如,关系模式可以是指示关系的类 型“是<对象><值>”。可以使用基于规则的模式匹配来执行步骤510 中的操作,但是也可以使用统计模型来完成。用户输入的匹配模式的 一部分,例如“它为什么这么高?”指示“它”是个事物,因为它匹配< 对象>而“它”具有<值>,例如“高”,但没有性别。这将可以匹配术语 “它”的“事物”类型的列表从人类、变量等缩小到仅仅变量。
在过滤掉引用之后,识别无界的引用,例如,代词引用“它”被识 别为无界引用,因为在这个用户输入之前没有交谈(步骤520)。然 后构建潜在引用的集合(步骤530)。例如,可以利用与用户输入的 上下文相关联的元素,例如领域、环境、对话、GUI等。例如,可 以确定各种元素(诸如“Joe”、“到期日”、“账单”、“费率”等)可以 包括在潜在引用的列表中。但是,鉴于在步骤510中确定引用“它”是 “事物”,潜在引用的列表被减少为变量(例如“账单”、“费率”和“到 期日”)的列表。
然后使用识别不同潜在引用的属性的模式信息过滤潜在引用集合 中的引用(步骤540)。例如,模式可以声明变量“账单”可以是具有 定性值的数字(例如,“低”到“中”到“高”)并且“到期日”可以是“高”。 因此,潜在引用集变成“账单”和“费率”。
此后,为了消除用户输入中的引用的歧义,根据它们的权重(例 如,模糊逻辑权重值)对该潜在引用的集合进行排名(步骤550)。 例如,如果与潜在引用“账单”相关联的变量的值或改变强度异常高, 那么潜在引用“账单”更可能与无界引用“它”匹配。因此,可以选择最 高排名的潜在引用“账单”来消除用户输入的歧义,例如,将“它为什 么这么高?”消除歧义为“为什么我的账单这么高?”。应当认识到的 是,可以与其排名和权重相关联地维护所有潜在引用,以便在从用户 接收到附加信息时,可以动态地更新这个相对排名,并且可以选择不 同的潜在引用以生成更准确的响应。
如先前关于图4所提到的,一旦消除了用户输入的歧义,诸如通 过执行如上面参考图5所述的操作,应用语义解析,以按照利用相应 置信度值排名的次序提取替代入口点(步骤480)并对入口点重新进 行排名(步骤490)。这个信息被提供给NLP或认知系统以生成输 出给用户的适当响应(步骤440和450)。
因此,利用说明性实施例的机制,在用户简档信息中发现的异常 被用于消除来自用户的自然语言输入的部分的歧义,以便通过自动对 话系统(ADS)确定对用户输入的适当响应。消除歧义使用用户意图 的预测,诸如基于在用户的简档信息中找到的异常的改变强度/量值 以及基于模糊逻辑或基于认知逻辑的分类或这些改变强度/量值的加 权。基于预测的意图,通过修改用户输入中的无界或有歧义的引用以 指向与预测的意图对应的元素来消除用户输入的有歧义部分的歧义。 然后,使用自然语言处理和/或认知处理操作来评估用户输入的(一 个或多个)消除歧义的版本,以生成假设预测意图的适当响应。然后, 生成的响应作为对其输入的响应输出给用户。当用户提供多个输入时, 可以动态地调整意图的预测以反映接收到的新信息,从而随着获得更 多上下文信息而改善预测的意图。这导致用户和自动对话系统之间更 自然和令人满意的对话。
如从以上描述中显而易见的,说明性实施例可以在许多不同类型 的数据处理环境中被使用。为了提供说明性实施例的具体元素和功能 的描述的上下文,下文提供图6-8作为其中可以实现说明性实施例的 各方面的示例环境。应当认识到的是,图6-8仅仅是示例,并非旨在 断言或暗示关于其中可以实现本发明的方面或实施例的环境的任何限 制。在不脱离本发明的精神和范围的情况下,可以对所描绘的环境进 行许多修改。
图6-8针对描述示例自动对话系统(ADS),其实现请求处理流 水线(诸如问答(QA)流水线(也称为问题/回答流水线或问题和回 答流水线)),例如,请求处理方法,以及利用其实现说明性实施例 的机制的请求处理计算机程序产品。具有QA流水线的认知系统提供用于评估用户输入并基于深度学习和来自电子文档的一个或多个语料 库集和结构化/非结构化收集数据的证据的评估来生成适当响应的能 力。ADS执行操作,以经由计算设备以模仿人类交互的方式与用户 进行自然语言对话,但使用自动计算机化机制。从用户接收的请求 (例如,口头或文本用户输入)可以被提供或转换为结构或非结构化 请求消息、自然语言问题或用于请求要由ADS执行的操作的任何其 它合适格式。根据说明性实施例,ADS基于由用户简档信息中的异 常所指示的意图的预测来消除用户输入的歧义,并将消除歧义的用户 输入提供给认知系统以用于评估和生成适当的响应。
应当认识到的是,虽然图6-8中所示的说明性实施例假设认知系 统实现,但是在不脱离本发明的精神和范围的情况下,可以关于能够 生成对来自用户的口头或文本输入的自动响应的任何基于自然语言处 理(NLP)的机制来实现说明性实施例。而且,假设认知系统实现, 应当认识到的是,认知系统虽然在下文的示例中被示为具有单个请求 处理流水线,但实际上可以具有多个请求处理流水线。每个请求处理 流水线可以被单独训练和/或被配置为处理与不同领域相关联的请求, 或者被配置为对输入请求(或使用QA流水线的实现中的问题)执行 相同或不同的分析,这取决于期望的实现。例如,在一些情况下,可 以训练第一请求处理流水线以对针对客户服务用户账户的输入请求进 行操作,同时可以训练另一个请求处理流水线以回答针对服务修复请 求的输入请求。在其它情况下,例如,请求处理流水线可以被配置为 提供不同类型的认知功能或支持不同类型的ADS应用,诸如一个请 求处理流水线用于客户服务,而另一个请求处理流水线被配置为用于 医疗处理建议,以及另一个请求处理流水线被配置为用于金融投资组 合问题。
而且,每个请求处理流水线可以具有它们对其摄取和操作的自己 的相关联的语料库或语料库集,例如在上述示例中,一个语料库用于 血液病领域文档,而另一个语料库用于癌症诊断领域相关文档。在一 些情况下,请求处理流水线可以各自在输入问题的相同领域上操作, 但是可以具有不同的配置,例如,不同的注释器或经过不同训练的注 释器,使得生成不同的分析和潜在的回答。认知系统可以提供用于将 输入请求/问题路由到适当的请求处理流水线(诸如基于输入请求的 确定领域)、组合和评估通过由多个请求处理流水线执行的处理生成 的最终结果的附加逻辑,以及促进利用多个请求处理流水线的其它控 制和交互逻辑。
如上所述,可以利用说明性实施例的机制的一种类型的请求处理 流水线是问答(QA)流水线。以下对本发明的示例实施例的描述将 利用QA流水线作为请求处理流水线的示例,该流水线可以被扩充以 包括根据ADS的一个或多个说明性实施例的机制。应当认识到的是, 虽然将在实现对输入问题进行操作的一个或多个QA流水线的认知系 统的上下文中描述本发明,但是说明性实施例不限于此。更确切地说, 说明性实施例的机制可以对未被提出为“问题”但是被格式化为对认知 系统的请求的请求进行操作,以使用相关联的语料库或语料库集以及 用于配置认知系统的具体配置信息对指定的输入数据集执行认知操作。 例如,认知系统可能会接收到“告诉我什么使它变高”等的请求,而不 是问自然语言问题“它为什么这么高?”。应当认识到的是,QA系统 流水线的机制可以在只需稍作修改的情况下以与输入自然语言问题类 似的方式对请求进行操作。实际上,在一些情况下,如果对于特定实 现期望的话,那么可以将请求转换为自然语言问题以供QA系统流水 线处理。
说明性实施例提供了自动对话系统(ADS),该系统与认知系统 及其对应的一个或多个QA流水线或请求处理流水线一起操作并且可 以与其集成。ADS接收用户输入,诸如通过语音到文本转换工具转 换为文本的语音输入,或者由用户经由用户界面(例如聊天窗口、即 时消息应用、电子邮件应用等)直接输入的文本。ADS处理用户输 入并生成响应,以便在ADS和用户之间进行模拟用户说话或与另一 个人通信的自然语言对话。根据说明性实施例,ADS通过基于检测 到的用户简档信息中的异常来消除这些歧义,基于检测到的异常预测 意图,并且选择用户输入的消除歧义以供通过自然语言处理机制和/ 或认知处理机制进一步处理来适应用户输入中的歧义。例如,具有带 有歧义术语或自然语言内容的一部分的问题的用户输入可以基于用户 的预测意图来消除歧义,并且可以将消除歧义的问题传递给认知系统 以进行处理,以生成对问题的回答。然后可以经由ADS将回答提供 给用户。
由于说明性实施例可以利用QA系统和流水线来协助与用户进行 自然语言对话,因此在描述说明性实施例的机制如何被集成在实现 QA流水线的认知系统和请求处理流水线或QA流水线机制并对其扩 充之前,重要的是首先了解如何实现在这种认知系统中认知系统和问 答创建。应当认识到的是,图6-8中描述的机制仅仅是示例,并非旨 在陈述或暗示关于实现说明性实施例的认知系统机制的类型的任何限 制。在不脱离本发明的精神和范围的情况下,可以在本发明的各种实 施例中实现对图6-8中所示的示例认知系统的许多修改。
作为概述,认知系统是专用计算机系统或计算机系统的集合,其 配置有硬件和/或软件逻辑(与软件在其上执行的硬件逻辑相结合), 以模仿人类认知功能。这些认知系统将类似人类的特点应用于传达和 操纵思想,当与数字计算的固有优势相结合时,可以以高准确度和弹 性大规模地解决问题。认知系统执行一个或多个计算机实现的认知操 作,其近似人类思维过程以及使人和机器能够以更自然的方式进行交 互,从而扩展和放大人类的专业知识和认知。例如,认知系统包括人 工智能逻辑(诸如基于自然语言处理(NLP)的逻辑),以及机器学 习逻辑(其可以作为专用硬件、在硬件上执行的软件或者专用硬件和 在硬件上执行的软件的任意组合提供)。认知系统的逻辑实现(一个 或多个)认知操作,其示例包括但不限于问题回答、语料库中内容的 不同部分内的相关概念的识别、智能搜索算法(诸如互联网网页搜索, 例如,医学诊断和治疗建议,以及其它类型的推荐生成,例如,特定用户感兴趣的项目、潜在的新联系人推荐等)。
IBM WatsonTM是一种这样的认知系统的示例,其可以处理人类 可读的语言并且以比人类快得多的速度和在更大规模上以类似人类的 高准确度识别文本段落之间的推断。一般而言,这种认知系统能够执 行以下功能:
·导航人类语言和理解的复杂性
·摄取并处理大量的结构化和非结构化数据
·生成并评估假设
·加权和评估仅基于相关证据的响应
·提供特定于情况的建议、见解和指导
·通过机器学习处理来利用每次迭代和交互改进知识并学习
·使得在影响点能够做出决策(上下文指导)
·与任务成比例的缩放
·扩展和放大人类的专业知识和认知
·从自然语言中识别出共鸣、类似人类的属性和特质
·从自然语言中删除各种特定于语言的或不可知的属性
·来自数据点(图像、文本、语音)的高度相关回忆(记忆和回 忆)
·利用基于经验模仿人类认知的情境意识进行预测和感知
·基于自然语言和具体证据回答问题
在一个方面,认知系统提供了用于使用问答流水线或系统(QA 系统)来回答对这些认知系统提出的问题的机制和/或处理可以或可 以不作为自然语言问题提出的请求。QA流水线或系统是在数据处理 硬件上执行的人工智能应用,其回答与以自然语言呈现的给定主题领 域有关的问题。QA流水线接收来自各种源的输入,包括通过网络的 输入、电子文档或其它数据的语料库、来自内容创建者的数据、来自 一个或多个内容用户的信息,以及来自其它可能的输入源的其它此类 输入。数据存储设备存储数据的语料库。内容创建者在文档中创建内 容,以作为数据的语料库的一部分与QA流水线一起使用。文档可以 包括用在QA系统中的任何文件、文本、文章或数据源。例如,QA 流水线访问关于领域或主题区的知识体系,例如,金融领域、医学领 域、法律领域等,其中知识的主体(知识库)可以以各种配置来组织。 例如,特定于领域的信息的结构化储存库(诸如本体)或与领域相关 的非结构化数据,或关于领域的自然语言文档的集合。
内容用户向实现QA流水线的认知系统输入问题。然后,QA流 水线通过评估文档、文档的章节、语料库中数据的部分等来使用数据 的语料库中的内容回答输入的问题。当处理评估文档的给定章节以获 得语义内容时,处理可以使用各种约定从QA流水线查询这种文档, 例如,将查询作为格式良好的问题发送到QA流水线,然后由QA流 水线解释,并且提供包含对问题的一个或多个回答的响应。语义内容 是基于记号(诸如词、短语、记号(sign)和符号(symbol))之间 的关系以及记号代表什么、它们的外延或内涵的内容。换句话说,语义内容是解释表达的内容,诸如通过使用自然语言处理解释。
如下文将更详细描述的,QA流水线接收输入的问题、解析问题 以提取问题的主要特征、使用提取出的特征来制定查询,然后将那些 查询应用于数据的语料库。基于将查询应用于数据的语料库,QA流 水线通过跨数据的语料库查看数据语料库中具有包含对输入问题的有 价值的响应的某种可能的部分来生成一组假设或输入问题的候选回答。 然后,QA流水线使用各种推理算法(reasoning algorithm)对输入 问题的语言和在应用查询期间找到的数据语料库的每个部分中使用的 语言进行深入分析。可以应用数百甚至数千个推理算法,每个推理算 法执行不同的分析,例如比较、自然语言分析、词汇分析等,并生成得分。例如,一些推理算法可以查看输入问题的语言中的术语和同义 词与数据语料库的找到的部分的匹配。其它推理算法可以查看语言中 的时间或空间特征,而其它推理算法可以评估数据语料库的部分的源 并评估其真实性。
从各种推理算法获得的得分指示基于该推理算法的具体焦点区域 由输入问题推断出潜在响应的程度。然后对照统计模型对每个得到的 得分进行加权。统计模型捕获推理算法在QA流水线的训练期间在特 定领域的两个相似段落之间建立推断时执行得多好。统计模型被用于 总结关于通过问题推断潜在响应(即,候选回答)的证据QA流水线 具有的置信度水平。对于每个候选回答重复这个处理,直到QA流水 线识别出表现得明显强于其它回答的候选回答,从而为输入问题生成 最终回答或排名的回答集。
图6是采用为了执行与用户的对话而实现请求处理流水线608的 认知系统600的ADS的一个说明性实施例的示例图,在一些实施例 中,该流水线可以是问答(QA)流水线。出于本描述的目的,将假 设请求处理流水线608被实现为QA流水线,该QA流水线对以输入 问题的形式的结构化和/或非结构化请求进行操作。在美国专利申请 公开No.2011/0125734中描述了可以结合本文描述的原理使用的问题 处理操作的一个示例,该申请通过引用整体并入本文。
ADS 620及在它与其一起操作或集成的其对应认知系统600在连 接到计算机网络602的一个或多个计算设备104A-D(包括一个或多 个处理器和一个或多个存储器,以及可能的本领域一般已知的任何其 它计算设备元件,包括总线、存储设备、通信接口等)上实现。仅出 于说明的目的,图6描绘了ADS 620和仅在计算设备604A上实现的 认知系统600,但是如上所述,认知系统600可以分布在多个计算设 备上,诸如多个计算设备604A-D。网络602包括可以作为服务器计 算设备操作的多个计算设备604A-D,以及可以作为客户端计算设备 操作的610-612,它们彼此通信并且经由一个或多个有线和/或无线数 据通信链路与其它设备或部件通信,其中每个通信链路包括导线、路 由器、开关、发送器、接收器等中的一个或多个。在一些说明性实施 例中,ADS 620、认知系统600和网络602在用户和ADS 620之间的 自然语言对话中经由它们相应的计算设备610-612为一个或多个认知 系统用户启用问题处理和应答生成(QA)功能,其中认知系统600 用于为ADS 620的响应生成提供回答。在其它实施例中,认知系统 600和网络602可以提供其它类型的认知操作,包括但不限于请求处 理和认知响应生成,取决于期望的实现,这可以采取许多不同的形式, 例如认知信息检索、用户的训练/指示、数据的认知评估等。认知系 统600的其它实施例可以与除本文描述的那些之外的部件、系统、子 系统和/或设备一起使用。
ADS 620被配置为经由网络602从客户端计算设备610、612接 收用户输入,其中用户输入可以是自然语言问题、自然语言请求等。 用户输入可以以以下形式呈现:自然语言问题、对信息的自然语言请 求、执行认知操作的自然语言请求等,并且可以被提供为转换成自然 语言文本的语音输入、直接自然语言文本等。与用户输入对应的自然 语言文本可以由ADS 620和/或认知系统600的自然语言处理(NLP) 逻辑处理,以提取自然语言文本的特征并评估这些特征。例如,如前 所述,根据说明性实施例,可以识别自然语言文本的有歧义部分,诸 如经由语义解析器622。
ADS 620包括对用户简档数据库630中的用户简档信息进行操作 的逻辑624-628,用户简档数据库630可以是ADS 620的一部分、耦 合到网络602的单独数据库、跨可经由网络602访问的多个计算设备 分布等。例如,异常检测和意图识别引擎624可以对用户简档信息进 行操作,以基于在预定时间段内用户简档信息的变量值的改变、这些 值的统计度量、这些值的趋势等来识别异常。这种异常检测可以包括 应用异常发现规则,这些规则评估用户简档信息的各种标准,其中标 准指示用户简档信息中是否存在异常。
异常检测和意图识别引擎624将异常与预测的用户意图相关。同 样,可以定义将意图与异常关联的规则,其指示特定类型的异常指示 什么用户意图,例如,如果用户的账单在上一个计费周期中增加了 30%,那么用户意图可以是询问账单增加、询问开账单政策或询问开 账单规则。
异常/意图加权引擎626基于对异常识别有贡献的变量的改变强 度的分类来生成识别出的用户意图/异常的权重值。如上所述,模糊 逻辑或认知过程可以被用于评估改变强度并将它们分类为具有相关联 权重值的对应类别或分类。然后,权重值可以被意图排名/消除歧义 引擎628用来执行用户输入的有歧义部分的意图排名和消除歧义。然 后可以将消除歧义的用户输入提供给认知系统600以供经由流水线 608进行处理,以生成对消除歧义的用户输入的一个或多个候选响应, 响应作为与用户的持续对话的一部分经由服务器604A、网络602和 用户的客户端计算设备610返回到ADS 620以呈现给用户。
认知系统600接收消除歧义的用户输入,其可以基于单个所选择 的用户意图和用户输入的对应替代版本,或者可以包括与不同用户意 图相关联并且具有关联的权重值的多个不同替代版本,并且基于从电 子文档106的语料库或语料库集、认知系统用户和/或可以提供用于 处理用户查询和请求的其它数据和其它可能的信息源获得的信息来处 理消除歧义的用户输入。在一个实施例中,认知系统600的一些或全 部输入被路由通过网络602。网络602上的各种计算设备604A-D包 括用于内容创建者和认知系统用户的接入点。计算设备604A-D中的 一些包括用于存储数据的语料库或语料库集606的数据库的设备(为了说明的目的,其在图6中被示为单独的实体)。还可以在一个或多 个其它网络附连的存储设备上、在一个或多个数据库中或图6中未明 确示出的其它计算设备上提供数据的语料库或语料库集606的部分。 在各种实施例中,网络602包括本地网络连接和远程连接,使得认知 系统600可以在任何尺寸(包括本地和全球)的环境(例如,互联网) 中操作。
在一个实施例中,内容创建者在数据的语料库或语料库集606的 文档中创建内容,以作为数据的语料库的一部分与认知系统600一起 使用。文档包括在认知系统600中使用的任何文件、文本、文章或数 据源。ADS 620用户经由网络连接或到网络602的互联网连接访问 ADS 620,从而访问认知系统600,并且如果需要,就向ADS 620输 入由ADS 620消除歧义并由认知系统100处理的问题/请求,以便基 于数据的语料库或语料库集606中的内容回答输入问题/处理请求。 在一个实施例中,使用自然语言形成问题/请求并且,如果必要的话, 由ADS 620将其消除歧义为自然语言用户输入的替代形式,其中基 于检测到的用户简档信息中的异常和对应的用户意图来消除有歧义部 分的歧义。在用户输入中没有识别出有歧义部分的情况下,自然语言 问题/请求可以被传递到认知系统600以进行处理。
认知系统600经由流水线608解析和解释问题/请求,并且向 ADS 620提供响应,ADS 620进而制定自然语言响应并经由其计算设 备(例如,ADS用户客户端计算110)向ADS用户输出自然语言响 应,其中响应可以包含对提出的问题的一个或多个回答、对请求的响应、处理请求的结果等。在一些实施例中,认知系统600向ADS 620 并且因此最终向用户提供在候选回答/响应的排名列表中的响应,而 在其它说明性实施例中,认知系统600提供单个最终回答/响应或最 终回答/答复与其它候选回答/响应的排名列表的组合。
认知系统600实现流水线608,其包括用于基于从数据的语料库 或语料库集606获得的信息处理输入问题/请求的多个阶段。流水线 608基于输入问题/请求和数据的语料库或语料库集606的处理生成针 对输入问题或请求的回答/响应。将在下文中参考图8更详细地描述 流水线608。
在一些说明性实施例中,认知系统600可以是可从International BusinessMachines Corporation,Armonk,New York获得的IBM WatsonTM认知系统,其利用下文描述的说明性实施例的机制来增强。 IBM WatsonTM认知系统的流水线接收输入问题或请求,然后解析该 输入问题或请求以提取问题/请求的主要特征,然后将该主要特征用 于制定应用于数据的语料库或语料库集606的查询。基于对数据的语 料库或语料库集606应用查询,通过从数据的语料库或语料库集606 查找数据的语料库或语料库集606中具有包含对输入问题/响应(以 下假设为输入问题)的有价值的响应的某种可能的部分(以下简称为 语料库106)来生成对输入问题/请求的假设集合或候选回答/响应。 然后,IBM WatsonTM认知系统的流水线608使用各种推理算法对输 入问题的语言和在查询的应用期间找到的语料库606的每个部分中使 用的语言执行深入分析。
然后,对照统计模型对从各种推理算法获得的得分进行加权,该 统计模型总结了IBM WatsonTM认知系统600的流水线108在这个示 例中关于由问题推断潜在候选回答的证据具有的置信度水平。对于每 个候选回答重复这个处理,以生成候选回答/响应的排名列表,然后 可以将其呈现给提交输入问题的用户,例如,客户端计算设备110的 用户,或者从列表中选择最终回答并经由ADS 620呈现给用户。关 于IBM WatsonTM认知系统600的流水线608的更多信息可以例如从 IBM公司网站、IBM红皮书等获得。例如,关于IBM WatsonTM认 知系统的流水线的信息可以在Yuan等人的“Watson and Healthcare” (IBMdeveloperWorks,2011)以及Rob High的“The Era of Cognitive Systems:An InsideLook at IBM Watson and How it Works”(IBM红皮书,2012)中找到。
在本发明的上下文中,ADS 620及其对应的认知系统600可以提 供认知功能,用于帮助对自然语言用户输入作出响应,以便提供客户 服务对话以帮助客户解决他们关于产品或服务可能遇到的问题。基于 客户服务的ADS 620和对应的认知系统600可以被具体地配置为用 于其所部署的特定领域,例如,如果ADS 620将用于辅助公用事业 公司的客户,那么ADS 620可以被配置为对针对与此类公用事业相 关联的账户、服务和产品的请求/问题进行操作。ADS 620被扩充为 包括逻辑、数据结构和配置,以基于检测到的用户简档信息中的异常 和与此类异常相关联的对应用户意图来执行自然语言用户输入的歧义 消除。而且,ADS 620被扩充为包括逻辑、数据结构和配置,以基于 预定时间段内用户简档信息中的变量的改变强度来执行用于对各种用 户意图进行加权的操作,基于加权对这些用户意图进行排名,并基于 排名和加权的用户意图以及与这些用户意图相关联的对应替代文本消除用户输入的歧义。
如上所述,说明性实施例的机制植根于计算机技术领域,并且使 用存在于这种计算或数据处理系统中的逻辑来实现。这些计算或数据 处理系统或者通过硬件、软件或者硬件和软件的组合来具体配置,以 实现上述各种操作。照此,提供图7作为其中可以实现本发明的各方 面的一种类型的数据处理系统的示例。许多其它类型的数据处理系统 可以同样被配置为具体地实现说明性实施例的机制。
图7是其中实现说明性实施例的各方面的示例数据处理系统的框 图。数据处理系统700是计算机的示例,诸如图6中的服务器604, 其中定位了实现本发明的说明性实施例的处理的计算机可用代码或指 令。在一个说明性实施例中,图7表示服务器计算设备,诸如服务器 704,其实现ADS 620以及被扩充以包括下文描述的说明性实施例的 附加机制的对应的认知系统600和QA系统流水线608。
在所描绘的示例中,数据处理系统700采用包括北桥和存储器控 制器集线器(NB/MCH)702以及南桥和输入/输出(I/O)控制器集 线器(SB/ICH)704的集线器体系架构。处理单元706、主存储器 708和图形处理器710连接到NB/MCH 702。图形处理器710通过加 速图形端口(AGP)连接到NB/MCH 702。
在所描绘的示例中,局域网(LAN)适配器712连接到SB/ICH 704。音频适配器716、键盘和鼠标适配器720、调制解调器722、只 读存储器(ROM)724、硬盘驱动器(HDD)726、CD-ROM驱动器 730、通用串行总线(USB)端口和其它通信端口732以及PCI/PCIe 设备734通过总线738和总线740连接到SB/ICH 704。PCI/PCIe设 备可以包括例如以太网适配器、插件卡和用于笔记本计算机的PC卡。 PCI使用卡总线控制器,而PCIe则不使用。ROM 724可以是例如闪 存基本输入/输出系统(BIOS)。
HDD 726和CD-ROM驱动器730通过总线740连接到SB/ICH 704。HDD 726和CD-ROM驱动器730可以使用例如集成驱动电子 设备(IDE)或串行高级技术附件(SATA)接口。超级I/O(SIO) 设备736连接到SB/ICH 704。
操作系统在处理单元706上运行。操作系统协调并提供对图7中 的数据处理系统700内的各种部件的控制。作为客户端,操作系统是 商业上可用的操作系统,诸如面向对象的 编程系统(诸如JavaTM编程系统)可以与操作系统结合运行,并从 在数据处理系统700上执行的JavaTM程序或应用提供对操作系统的调用。
作为服务器,数据处理系统700可以是例如运行高级交互执行 (AIX)操作系统或操作系统的eServerTM 计算机系统。数据处理系统700可以是对称多处理器(SMP)系统, 其包括处理单元706中的多个处理器。可替代地,可以采用单个处理 器系统。
用于操作系统、面向对象的编程系统和应用或程序的指令位于诸 如HDD 726之类的存储设备上,并且被加载到主存储器708中以供 处理单元706执行。用于本发明的说明性实施例的处理由处理单元 706使用计算机可用程序代码执行,该计算机可用程序代码位于例如 诸如主存储器708、ROM 724之类的存储器中,或者例如一个或多 个外围设备726和730中。
诸如图7中所示的总线738或总线740之类的总线系统由一条或 多条总线组成。当然,总线系统可以使用任何类型的通信架构或体系 架构来实现,该通信架构或体系架构提供数据在附连到架构或体系架 构的不同部件或设备之间的传送。通信单元(诸如图7的调制解调器 722或网络适配器712)包括用于发送和接收数据的一个或多个设备。 存储器可以是例如主存储器708、ROM 724或诸如在图7中的 NB/MCH 702中找到的高速缓存。
本领域普通技术人员将认识到的是,图6和7中描绘的硬件可以 取决于实现而变化。除了图6和7中所示的硬件之外或代替图6和7 中所示的硬件,还可以使用其它内部硬件或外围设备,诸如闪存、等 效的非易失性存储器或光盘驱动器等。而且,在不脱离本发明的精神 和范围的情况下,除了前面提到的SMP系统之外,说明性实施例的 处理还可以应用于多处理器数据处理系统。
而且,数据处理系统700可以采用多种不同数据处理系统中的任 何一种的形式,包括客户端计算设备、服务器计算设备、平板计算机、 膝上型计算机、电话或其它通信设备、个人数字助理(PDA)等。在 一些说明性示例中,数据处理系统700可以是便携式计算设备,例如 其配置有闪存以提供例如用于存储操作系统文件和/或用户生成的数 据的非易失性存储器。本质上,数据处理系统700可以是任何已知的 或以后开发的数据处理系统,而没有体系架构的限制。
图8是图示根据一个说明性实施例的ADS和认知系统流水线的 元件的交互的示例图。应当认识到的是,图8中所示的QA流水线的 阶段被实现为一个或多个软件引擎、部件等,这些被配置有用于实现 归因于特定阶段的功能的逻辑。每个阶段使用一个或多个这样的软件 引擎、部件等来实现。软件引擎、部件等在一个或多个数据处理系统 或设备的一个或多个处理器上执行,并利用或操作存储在一个或多个 数据处理系统上的一个或多个数据存储设备、存储器等中的数据。
如图8中所示,QA流水线800包括多个阶段810-880,认知系 统通过这些阶段进行操作,以分析输入问题并生成最终响应。在初始 问题输入阶段810中,QA流水线800接收以自然语言格式呈现的输 入问题,诸如由用户作为自然语言用户输入的一部分提交给ADS620 的问题的消除歧义的版本。即,用户经由用户界面输入用户希望获得 对其的回答的输入问题,例如“它为什么这么高?”。响应于接收到输 入问题,ADS 620可以执行如前所述的操作,以消除用户输入的有歧 义部分(例如,在这个示例中的术语“它”)的歧义,并且将消除歧义 的用户输入作为消除歧义的问题提供给QA流水线800,例如“我的 账单为什么这么高?”。
在阶段810中,流水线800接收消除歧义的用户输入(问题)或 原始用户输入(如果不需要消除歧义的话),阶段810可以执行用户 输入的一些初始分析,以供问题和主题分析阶段820使用。QA流水 线800的下一阶段(即,问题和主题分析阶段820)使用自然语言处 理(NLP)技术解析输入问题,以从输入问题中提取主要特征,并根 据类型(例如,名称、日期或多个其它定义的主题中的任何一个)对 主要特征进行分类。例如,在“谁是华盛顿最亲密的顾问?”类型的问 题中,术语“谁”可以与用于“人”的、指示正在寻找某人的身份的主题 相关联,“华盛顿”可以被识别为与该问题相关联的人的正确名称, “最亲密”可以被识别为指示接近性或关系的词,并且“顾问”可以指示 名词或其它语言主题。
此外,提取出的主要特征包括关键词和短语,其被分类为问题特 点,诸如问题的焦点、问题的词汇回答类型(LAT)等。如本文所提 到的,词汇回答类型(LAT)是输入问题中指示回答类型的词或从中 推断出的词,而与向那个词指派语义无关。例如,在“在16世纪发明 了什么机动以加速游戏并涉及两块相同颜色?”的问题中,LAT是字 符串“机动”。问题的焦点是问题的一部分,如果该部分被回答取代, 那么问题就是独立的陈述。例如,在“什么药物已被证明可以减轻 ADD症状并且副作用相对较少?”的问题中,焦点是“药物”,因为如果这个词被回答取代,例如回答“Adderall”可以被用来取代术语“药 物”以生成句子“Adderall已被证明可以减轻ADD症状并且副作用相 对较少。”焦点经常但并非总是包含LAT。另一方面,在许多情况下, 不可能从焦点中推断出有意义的LAT。
再次参考图8,然后在问题分解阶段830期间使用识别出的主要 特征将问题分解为应用于数据/信息的语料库集845的一个或多个查 询,以便生成一个或多个假设。查询以任何已知或以后开发的查询语 言(诸如结构查询语言(SQL)等)生成。查询被应用于存储关于构 成数据/信息的语料库集845的电子文本、文档、文章、网站等的信 息的一个或多个数据库。即,这些各种源本身、源的不同集合等表示 语料库集845内的不同语料库847。取决于具体实现,可以基于各种 标准为文档的不同集合定义不同的语料库集845。例如,可以针对不 同的主题、主题类别、信息源等建立不同的语料库集。作为一个示例, 第一语料库可以与医疗保健文档相关联,而第二语料库可以与财务文 档相关联。可替代地,一个语料库可以是由美国能源部发布的文档, 而另一个语料库可以是IBM红皮书文档。具有某个类似属性的内容 的任何集合可以被认为是语料库集845内的语料库847。
查询被应用于存储关于电子文本、文档、文章、网站等的信息的 一个或多个数据库,其构成数据/信息的语料库,例如图6中的数据 的语料库606。在假设生成阶段840将查询应用于数据/信息的语料库, 以生成识别用于回答输入问题的潜在假设的结果,然后可以对结果进 行评估。即,查询的应用导致提取数据/信息的语料库中与特定查询 的标准匹配的部分。然后在假设生成阶段840期间分析和使用语料库 的这些部分,以生成用于回答输入问题的假设。这些假设在本文中也 称为输入问题的“候选回答”。对于任何输入问题,在这个阶段840, 可以存在生成的数百个可能需要评估的假设或候选回答。
然后,在阶段850中,QA流水线800对输入问题的语言和每个 假设或“候选回答”的语言进行深入分析和比较,并且执行证据评分, 以评估特定假设是输入问题的正确回答的可能性。如上面所提到的, 这涉及使用多个推理算法,每个推理算法对输入问题的语言和/或语 料库的内容执行单独类型的分析,这种分析提供支持或不支持假设的 证据。每个推理算法基于其执行的分析生成得分,该得分指示数据/ 信息的语料库中通过应用查询所提取的各个部分的相关性的测量以及 对应假设的正确性的测量,即,对假设的置信度的测量。取决于正被 执行的特定分析,存在生成这种得分的各种方式。但是,一般而言, 这些算法寻找指示感兴趣的术语、短语或模式的文本的特定术语、短 语或模式,并确定匹配程度,其中较高匹配程度被给予比较低匹配程 度相对较高的得分。
因此,例如,算法可以被配置为从输入问题中查找确切的术语或 输入问题中那个术语的同义词,例如术语“movie”的确切术语或同义 词,并基于这些确切术语或同义词的使用频率生成得分。在这种情况 下,确切匹配将被给予最高得分,而同义词可以基于同义词的相对排 名给予较低得分,如可以由主题专家(具有所使用的特定领域和术语 的知识的人)指定或者根据该同义词在与领域对应的语料库中的使用 频率自动确定。因此,例如,语料库的内容中的术语“movie”的确切 匹配(也称为证据或证据段落)被给予最高得分。movie的同义词 (诸如“motion picture”)可以被给予较低的得分,但仍然高于“film” 或“moving picture show”类型的同义词。可以编译每个证据段落的确 切匹配和同义词的实例,并且在定量函数中用于生成证据段落与输入 问题的匹配程度的得分。
因此,例如,对“What was the first movie?”的输入问题的假设 或候选回答是“The Horse in Motion”。如果证据段落包含语句“The first motion picture ever madewas‘The Horse in Motion’in 1878by Eadweard Muybridge.It was a movie of ahorse running”并且算法 在寻找与输入问题的焦点(即,“movie”)的确切匹配或同义词,那 么在证据段落的第二句中找到确切匹配“movie”并且在证据段落的第 一句中找到“movie”的高得分同义词(即,“motion picture”)。这可 以与对证据段落的进一步分析相结合,以识别候选回答的文本也存在 于证据段落(即,“The Horse in Motion”)中。这些因素可以结合起 来,以给予这一证据段落相对高的得分,因为用于候选回答“The Horse inMotion”的支持证据是正确回答。
应当认识到的是,这仅仅是可以如何执行评分的一个简单示例。 在不脱离本发明的精神和范围的情况下,可以使用各种复杂度的许多 其它算法来为候选回答和证据生成得分。根据本发明的一些说明性实 施例,输入到流水线800的消除歧义的用户输入实际上可以包括具有 由ADS 620生成的相关联权重的用户输入的多个不同的消除歧义的 版本。照此,权重可以在对针对不同的消除歧义的版本的候选回答进 行评分时应用,以便在生成候选回答的排名列表时相对于另一个版本 对一个版本的候选回答进行加权。因此,排名列表可以包括针对用户 输入的多个不同的消除歧义的版本生成的候选回答,并且可以相对于 彼此进行排名,其中排名至少部分地基于由如ADS 620生成的不同 的消除歧义的版本的相对权重,例如,如果一个消除歧义的版本是 “为什么我的账单这么高?”并且候选回答为“联邦税增加”并且权重为 0.8,另一个消除歧义的版本是“为什么我的费率这么高?”并且具有 权重为0.5的候选回答“你的12个月的促销折扣已经到期”,那么这 些回答可以使用它们相应的权重0.8和0.5相对于彼此进行排名,以 便生成候选回答的排名列表。
在合成阶段860中,将由各种推理算法生成的大量得分合成为用 于各种假设的置信度得分或置信度测度。这个处理涉及将权重应用于 各种得分,其中权重已经通过由QA流水线800采用的统计模型的训 练确定和/或被动态更新。例如,用于由识别确切匹配的术语和同义 词的算法生成的得分的权重可以被设置为相对高于评估证据段落的发 布日期的其它算法。权重本身可以由主题专家指定或通过机器学习处 理学习,其中机器学习处理评估特征证据段落的重要性及其对总体候 选回答生成的相对重要性。
根据通过QA流水线800的训练生成的统计模型来处理加权的得 分,该统计模型识别可以组合这些得分以生成用于各个假设或候选回 答的置信度得分或测量的方式。这个置信度得分或测量总结关于通过 输入问题推断出候选回答的证据(即,候选回答是输入问题的正确回 答)QA流水线800具有的置信度水平。
所得到的置信度得分或测量由最终置信度合并和排名阶段870处 理,该阶段将置信度得分与测量相互比较,将它们与预定阈值进行比 较,或者对置信度得分执行任何其它分析,以确定哪些假设/候选回 答最有可能是输入问题的正确回答。根据这些比较对假设/候选回答 进行排名,以生成假设/候选回答(下文中简称为“候选回答”)的排 名列表。从候选回答的排名列表中,在阶段880,生成最终回答和置 信度得分,或候选回答和置信度得分的最终集合,并将其输出到 ADS 620,用于制定对用户输入的响应。然后生成响应并诸如经由其 对应的客户端计算设备输出给提交用户输入的用户,即,对用户的有 歧义问题的回答的自然语言输出。
因此,说明性实施例提供了用于基于用户意图的预测来消除来自 用户的自然语言输入的歧义的机制。用户意图的预测是基于用户简档 信息中检测到的异常和对这种异常的强度的基于模糊逻辑的评估分类。 然后可以经由自然语言处理机制处理消除歧义的自然语言输入,以生 成对消除歧义的自然语言输入的响应。
除了关于消除有歧义自然语言输入的歧义以用于自动对话系统 (ADS)的问题之外,在计算机化环境中提供更紧密近似人类之间的 自然语言对话的用户友好的ADS的其它关键方面是确定如何基于经 由对话会话与ADS交谈的特定用户个性化由ADS生成的响应。本发 明的一些说明性实施例的一个方面是进一步分析各个用户的用户简档 信息,以向ADS提供信息,以允许ADS个性化各个用户的响应。考 虑这样一种情况,其中用户Ann被公司收取ADS与之相关联的产品 或服务(例如,互联网或电话访问、电力、燃气、石油、保险、清洁和维护等)的费率。Ann的费率最近上涨了30%。如上所述,Ann 的费率上涨如此大的事实可以被ADS用来改善向她提供的回答。 ADS意识到她可能会在不久的将来询问她的费率增加。可以针对特 定用户定制这个阈值改变量,而不是对所有用户一般化的阈值改变量。 因此,ADS调谐与ADS相关联的NLP和/或认知系统,以识别与费 率增加相关的词汇和短语。此外,对费率增加的解释可以特定于特定 用户并且提供给NLP和/或认知系统以用于定制响应。以这种方式, 可以定制NLP和/或认知系统以处理Ann的具体费率问题。
如上所述,问题之一是如何确定用户简档何时具有将受益于定制 的消除歧义和定制的响应生成的异常。一种方式是查看具体阈值改变 并改变具体用户遇到的量值。例如,如果变量的量(诸如费率)上涨 了超过自定制阈值的量(例如30%),那么用户简档中那个变量的 改变的量被确定为异常,并且定制的消除歧义和响应定制发生。
可以以针对特定用户定制阈值量的方式确定改变的阈值量(例如 30%)。在一个说明性实施例中,可以评估关于多个用户以及关于具 体用户的ADS随时间的行为,以识别关于用户对其用户简档信息中 变量的改变的反应方式的用户行为中的统计值、模式或趋势。例如, 当确定用户简档的变量的不同改变量时,可以随时间跟踪和评估用户 和具体用户的行为模式。例如,在一些情况下,变量(例如,费率) 的小改变(例如,4%的改变)可能不足以触发与用户的太多附加对 话会话,诸如用户引用变量的改变的对话会话,例如,询问有关其费 率改变的问题。对于这种费率增加,可能没有必要消除歧义和定制的 响应。但是,大的费率改变(诸如30%)可能足以触发与用户的附 加对话,其中ADS必须对来自用户的关于费率改变的问题作出响应。
ADS可以分析多个用户的用户简档信息以及与这些用户进行的 对话,以确定表示ADS遇到关于改变的用户对话的显著增加的阈值 的改变量。然后可以基于这个确定来设置阈值水平。例如,用户简档 可以由图6中的异常检测和意图识别引擎624周期性地或连续地监视 变量的改变和/或可以响应于ADS 620和用户之间的对话会话经由例 如用户客户端计算设备610来评估。监视将用户对话会话与用户简档 中检测到的变量的改变关联起来。在检测到的变量改变的预定时间段 内确定要由用户发起的用户对话会话被认为潜在地与变量的改变相关 联。而且,可以诸如经由自然语言处理来分析用户发起的对话会话的 内容,以将用户发起的对话会话的内容中的术语/短语与作为改变的 主语的特定变量关联起来。
例如,响应于用户发起与ADS 620的对话会话,异常检测和意 图识别引擎624可以分析用户简档数据库630中的用户简档,以识别 变量的改变并将这些改变与用户的对话会话相关联。而且,如上面所 讨论的,可以识别对话会话的内容中对改变的引用,诸如经由自然语 言处理等,以进一步识别用户对话会话与变量的特定改变相关。还可 以监视每个改变的强度,以将变量中的特定改变、改变的强度和用户 对话会话的发起相关,从而表示关于变量的特定改变的用户行为的模 式。这可以针对变量的各种不同改变以及用户简档中相同或不同变量 的改变的不同强度来完成。因此,特定用户的行为模式随着时间的推 移发展,其表示那个用户如何对不同变量的不同水平的改变作出响应, 例如,对于变量的小改变,用户可能不在预定时间段内发起对话会话, 但是对于变量的较大改变,用户可以始终在检测到改变的具体时间段 内发起对话。
可以对多个用户进行这种监视,以生成多个用户的关于他们的对 话会话的模式或趋势。这种模式或趋势可以被用作设置用于为所有用 户发起消除歧义和定制响应生成的阈值的基线。在一些说明性实施例 中,可以为每个个体用户定制这种基线,或缺省阈值。例如,如果对 于特定实现期望的话,那么具体用户的具体行为模式可以用于其中具 体用户已经证明了发起与ADS的对话会话的历史的变量改变。对于 用户未证明发起对话会话的历史的变量,可以使用缺省阈值。
因此,例如,经由关于用户简档中的变量的改变的用户发起的对 话会话的行为模式分析,可以确定一般而言用户将响应于用户费率增 加25%并且总账单增加30%而发起与ADS 600的用户对话。但是, 即使在费率增加25%时,该特定用户也可能不会发起与ADS600的 对话,而响应于账单仅增加20%而发起与ADS 600的对话。因此, 对于这个特定用户,例如Ann,可以将变量“费率”的阈值改变值设 置为与多个用户的整体用户行为模式设置对应的25%,并且可以将 变量“账单”的阈值设置为仅20%,因为Ann更关心她的账单增加而 不是她的费率增加。因此,Ann更有可能发起与ADS 600的对话会 话以讨论她的账单而不是讨论她的费率。
而且,可以关于用户发起的与ADS 620的对话会话的历史日志 来进行监视,该历史日志可以存储在用户简档数据库630的对应用户 简档中或者存储在与用户简档相关联的另一个数据结构中。可以分析 历史日志数据结构,以识别用户发起的对话会话的出现以及这种对话 会话的内容中存在的可以与用户简档中的特定变量关联的关键术语/ 短语。指定用户发起对话会话的定时和用户简档中的变量改变的定时 的时间戳或其它元数据可以被用于将用户发起的对话会话与变量的改 变相关。因此,异常检测和意图识别引擎624可以包括识别用户的历 史数据中的模式的另外的逻辑,该逻辑识别变量的过去的改变和对应 的先前发起的对话会话,或者缺少这种改变和对话会话。
此外,异常检测和意图识别引擎624的逻辑还可以分析用户的历 史日志数据结构,以确定用户多频繁地发起与ADS 600的对话会话 以讨论特定变量(例如,用户的费率)的改变。用户发起这种对话的 次数指示用户对那个特定变量以及那个变量的改变设置的重要性。因 此,当确定如何消除用户在对话会话中提交的自然语言问题或陈述的 歧义时,用户先前发起的关于那个变量的改变的对话的次数可以被用 于定义与那个变量的改变相关联的权重,如上面先前所讨论的。
基于与用户简档中的变量的改变相关联的定制阈值和加权,响应 于这种消除歧义而由ADS 600生成的结果所得的消除歧义和对应响 应实际上是为用户定制的。即,对于每个个体用户,可以基于对所有 用户执行的行为模式分析以及针对该特定用户的行为模式分析来设置 阈值,其中针对该特定用户采用从两种行为模式分析生成的阈值的组 合。而且,变量的特定改变的权重可以基于特定用户的对话会话的历 史分析,因此,当基于用户的定制阈值发起消除歧义时,基于从与这 个特定用户对应的历史分析中识别出的特定权重,针对用户定制 ADS 600的消除歧义和结果所得的响应。
图9是概述根据一个说明性实施例的、用于定制变量的改变的阈 值以及基于自定义阈值和自定义权重来定制ADS的消除歧义和响应 的示例操作的流程图。如图9中所示,操作开始于ADS监视多个用 户的用户简档以获得变量的改变(步骤901)。确定关于响应于变量 的这些改变而发起对话会话的用户行为模式(步骤902)。为在行为 模式中指示对话会话存在显著增加的每个变量确定阈值改变量(步骤 903)。可以基于行为模式的统计分析来确定“显著”增加,并且指示 变量的改变量,其中由用户引用变量的改变而发起的对话会话的数量 增加至少预定量(例如,增加20%)。
对于每个个体用户,分析那个用户的历史对话会话信息,以确定 那个用户发起与ADS的对话会话的具体变量改变(步骤904)。然 后,对于与用户简档相关联的每个变量,生成那个变量的改变量的阈 值,该阈值是这样的值,如果改变量满足或超过该阈值,那么执行消 除歧义和定制响应,如上所述(步骤905)。对于用户过去没有针对 其先前发起过对话会话的变量,如在历史对话会话信息中所指示的, 可以基于跨多个用户执行的行为模式分析来利用缺省阈值(步骤 906)。
可以对与用户简档相关联的历史对话会话信息执行过去用户的对 话会话的历史分析,从而识别与变量的改变相关联的权重(步骤 907)。如上所述,例如,这种权重可以基于特定用户响应于特定变 量的改变而在过去发起对话会话的次数。
对于用户简档中的每个变量,存储对应的阈值和权重(步骤 908),并且使用存储的阈值监视变量的改变,以发起消除歧义和定 制(步骤909)。消除歧义可以至少部分地对于针对检测到的变量改 变而存储在用户简档中的相关联权重执行(步骤910),并且操作终止。
因此,除了先前描述的消除歧义机制之外,ADS 600还可以查看 各个用户简档以做出定制决策。例如,如果第一用户Ann比第二用 户Lisa更少进行费率查询,那么ADS 600更倾向于为Lisa而不是为 Ann添加定制。因此,说明性实施例的ADS 600的机制可以识别由用户发起的对话会话的历史,并确定用户在预定时间段内多频繁地联 系ADS的相对测量。用户的简档可以维护历史数据结构,该历史数 据结构存储关于在预定时间段内与用户进行的各种对话会话的信息。 基于在预定时间段期间发起对话会话的频率,可以生成阈值和加权值, 以用于确定由ADS 600执行的消除歧义和定制是否将对特定的用户 采用。
还可以以定制方式为特定用户确定执行定制的时间长度。例如, 假设用户Ann很可能在她发现费率增加之后不久(例如,在发生费 率的实际改变的2周内)就其费率增加进行询问。她不太可能在发现 改变后7个月(即,发生费率改变后7个月)这样做。定制持续的时 间长度可以由ADS 600通过检查用户的过去行为(即,与用户简档 相关联地存储的历史对话会话信息)来确定,以查看在特定变量(例 如,费率)改变之后对话会话的增加持续多长时间。
即,可以再次分析和识别对话会话的历史以及具有用户简档中的 变量的识别出的改变的这种对话会话的模式。基于这些模式,可以确 定用户关于变量改变的行为并确定用于定制的对应时间段。例如,分 析可以基于对话会话及其内容与变量的特定改变的相关性来确定时间 段,以确定变量发生改变与发起与ADS 600的关于检测到的变量改 变的对话会话之间的最长时间段。然后可以使用最长时间段来确定如 前所述的基于用户意图的消除歧义和定制可以多长时间对变量的特定 改变采用。例如,如果在时间点1检测到变量的改变,并且变量的改 变与用户发起与ADS 600的对话会话以讨论变量的改变之间发生的最长的时间经过(时间阈值)是4周,然后可以执行基于用户意图的 消除歧义和定制,直到时间点1之后大约4周的时间点2。
在确定的用于发起关于变量的特定改变的对话会话的最长经过时 间段之后,用户不太可能发起关于变量的那个改变的对话会话,因此, 可以在那个时间点之后停止消除歧义和定制。因此,ADS 600将仅在 有限的时间内保留消除歧义和定制信息。例如,如果Ann几周后没 有询问过费率改变,那么她不太可能会问费率改变,因为它发生在不 久前。因此,计算机化的ADS 600可以在超过时间阈值的时段经过 之后停止使用消除歧义和定制信息来响应用户发起的对话会话中的问 题或陈述。
应当认识到的是,除了上面讨论的历史分析之外或代替上面讨论 的历史分析,可以以各种方式确定时间阈值。例如,ADS 600可以分 析过去的用户作为整体(即,跨多个用户)已多长时间继续经由与 ADS 600的对话会话询问变量的改变。假定过去的客户倾向于在费率 改变的第一个月内询问关于费率改变的问题。一个月后,客户不太可 能询问有关费率改变的问题。在这种情况下,可以选择一个月的时间 阈值。另一种方法是具体考虑特定用户(例如Ann)如何对费率改 变作出响应。例如,假定Ann可能会有两个月(即,比普通人更长 的时间段)询问关于改变的问题。在这种情况下,ADS 600可以专门 为Ann选择两个月的较长时间阈值。
在还有另一种方法中,在为变量的改变设置特定时间阈值时,考 虑个体用户和整体用户。例如,ADS 600可以既考虑Ann如何对过 去的费率改变作出响应又考虑其他客户如何对过去的费率改变作出响 应,以确定适当的时间阈值。如果没有关于Ann如何对费率改变作 出响应的足够数据以预测未来的问题,那么(除了Ann自己的过去 的问题之外还)建议考虑来自其他人的过去问题以确定时间阈值。在 最一般的情况下,ADS 600既考虑Ann的问题,也考虑来自其他人 的问题。ADS 600可以基于Ann过去的问题提供多少信息来为Ann的问题指派更高的权重。如果Ann的过去的问题中有很多数据,那 么系统将给予Ann的问题多得多的权重,并且对来自其他人的问题 指派较小的权重。如果Ann的过去的问题的数据很少,那么ADS 600将为来自其他人的问题指派显著更高的权重。
在一些情况下,与实体相关联的信息可以不是数字量。例如,如 前面所讨论的,信息可以包含在文本文档中。在这种情况下,重要的 是要测量文本文档的相似程度。当计算机化的ADS 600确定与实体 相关联的文本文档中存在显著改变时,ADS 600为关于该实体的未来 问题生成定制信息。为了确定文本文档中是否发生了显著改变,可以 使用几种技术,包括但不限于Levenshtein距离。
作为另一个示例,合同或政策可以与实体相关联。当合同或政策 发生显著改变时,计算机化的ADS 600可以生成在预测未来的问题 时解释合同或政策中的差异的定制信息。ADS 600还可以调谐NLP 和/或认知系统,以预测关于合同或策略的改变的问题和对话。
与实体相关联的信息不必是文本的。它可以是各种不同格式的二 进制数据。为了定量地计算与实体相关联的不同信息之间的差异,可 以提供函数以定量地确定与实体相关联的不同信息之间的差异。
图10是概述根据一个说明性实施例的、基于定制时间阈值由 ADS进行消除歧义和定制响应生成的示例操作的流程图。如图10中 所示,操作开始于ADS监视多个用户的用户简档以获得变量的改变 (步骤1001)。确定关于响应于变量的这些改变而发起对话会话的用户行为模式(步骤1002)。确定在行为模式中发起对话会话的每 个变量的时间阈值(步骤1003)。
对于每个个体用户,分析那个用户的历史对话会话信息,以确定 用户发起对话会话的具体时间段(步骤1004)。然后,对于与用户 简档相关联的每个变量,生成时间阈值,该时间阈值是指示从检测到 具有显著改变量的变量的改变开始到由ADS发起消除歧义和定制响 应的时间段的值,在此期间如上所述执行消除歧义和定制响应(步骤 1005)。对于用户过去没有发起过对话会话的变量,如历史对话会话 信息中所指示的,可以基于跨多个用户执行的行为模式分析来利用缺 省时间阈值(步骤1006)。
对于用户简档中的每个变量,存储对应的时间阈值(步骤 1007),并且使用存储的阈值监视变量的改变,以在与时间阈值对应 的时间段内发起消除歧义和定制(步骤1008)。对于检测到的变量 的改变,在存储在用户简档中的时间阈值中指定的时间段内可以执行消除歧义(步骤1009),并且操作终止。
因此,除了关于消除对自动对话系统(ADS)的有歧义的用户输 入的歧义之外,在计算机化环境中提供更紧密近似人类之间的自然语 言对话的用户友好的ADS的其它关键方面是确定如何基于谁在使用 它们来个性化系统。本发明的一些说明性实施例的一个方面是查看各 个用户的用户简档信息,以提供信息来允许ADS个性化针对各个用 户的响应。考虑这样一种情况,其中用户Ann被公司收取ADS与之 相关联的产品或服务(例如,互联网或电话访问、电力、燃气、石油、 保险、清洁和维护等)的费率。Ann的费率最近上涨了30%。如上 所述,Ann的费率上涨如此大的事实可以被ADS用来改善向她提供 的回答。ADS意识到她可能会在不久的将来询问她的费率增加。因 此,ADS调谐与ADS相关联的NLP和/或认知系统以识别与速率增 加相关的词汇和短语。此外,对费率增加的解释可以提供给NLP和/ 或认知系统。以这种方式,NLP和/或认知系统将被定制为处理Ann 的费率问题。
如上所述,问题之一是如何确定用户简档何时具有将受益于定制 的异常。一种方式是查看费率改变及其量值。如果费率上涨超过阈值 (例如30%)的量,那么确定用户简档是异常的,并且进行定制。 还必须确定阈值(例如,30%)。一种方式是查看ADS随时间的行为。小费率改变(例如,4%)可能不会触发来自用户的太多附加问 题。对于这种费率增加,将不需要定制的响应。较大的费率改变(诸 如30%)将足以触发来自用户的附加问题。ADS查看需要多少费率 改变来触发显著更多的问题,并基于这个确定来设置阈值水平。
除了先前描述的消除歧义机制之外,ADS还可以查看各个用户 简档以做出定制决策。例如,如果Ann比Lisa更少进行费率查询, 那么ADS更倾向于为Lisa而不是为Ann添加定制。
定制将被使用的时间长度也是关键因素。Ann有可能在她发现 费率增加之后不久就其费率增加进行询问。她不太可能在发现它之后 7个月这样做。定制持续的时间长度可以通过系统检查过去的行为以 查看在费率改变之后问题持续增加多长时间来确定。
图11描绘了根据本发明的一个说明性实施例的、用于基于数量 的改变生成用于响应的定制信息的示例处理。在步骤1101中,计算 机化的自动对话系统监视与实体相关联的信息,其中实体被广义地定 义为具有独特和独立存在的事物。例如,实体可以是访问计算机化的 自动对话系统(ADS)(诸如图6中的ADS 620)的人和/或客户, 其中ADS提供为实体定制的信息。实体也可以是客户端计算设备, 诸如图6中描绘的客户端610。实体还可以是与一个或多个人对应的 账户或者在本发明的说明性实施例的上下文中的各种其它事物。作为 示例,计算机化的ADS可能代表提供产品或服务p1的公司操作。实 体可以是使用产品或服务的客户(例如,Ann)。被监视的信息包括Ann的使用产品或服务的费率。
在步骤1102中,计算机化的ADS确定数量已经改变超过阈值的 量。数量的这种改变可以是增加或减少。在这种情况下,数量可以是 Ann使用产品或服务的费率。由于Ann的费率的显著改变,她将联 系计算机化的ADS以询问改变的可能性增加。为了预测这一点,在步骤1103中计算机化的ADS生成信息以帮助回答关于费率改变的问 题。例如,计算机化的ADS可以生成解释Ann的费率改变的原因的 信息,以预测她可能在不久的将来询问的问题。计算机化的ADS还 可以调谐其NLP和/或认知系统能力,以预期与速率增加相关的问题 和对话。
问题之一是如何确定在步骤1102中使用的阈值。存在若干可能 性。ADS可以查看过去的客户如何对费率改变作出响应。假定过去 的客户倾向于在他们的费率上涨超过15%时提问。如果费率上涨不 到15%,那么客户倾向于问较少的问题。在这种情况下,与15%的 费率增加对应的阈值可能是个不错的选择。
另一种方法是具体考虑Ann如何对费率改变作出响应。例如, 假定Ann有可能询问关于比普通人更小的费率改变的问题。那么为 Ann设置较低的阈值可能会更好。例如,与用于普通人的15%阈值 相比,10%的费率增加可能对Ann是更好的阈值选择。
另一种方法是考虑Ann如何对过去的费率改变作出响应以及其 他客户如何对过去的费率改变作出响应,以确定适当的阈值。如果关 于Ann如何对费率改变作出响应的数据不足以预测未来的问题,那 么建议(除了Ann自己过去的问题之外还)考虑来自其他人的过去 的问题以确定阈值。在最一般的情况下,ADS既考虑Ann的问题, 也考虑来自其他人的问题。ADS基于Ann过去的问题提供多少信息 来为Ann的问题指派更高的权重。如果Ann的过去的问题中有很多 数据,那么ADS将给予Ann的问题多得多的权重,并且对来自其他 人的问题指派较小的权重。如果来自Ann的过去的问题的数据很少, 那么ADS将为来自其他人的问题指派显著更高的权重。
ADS常常仅在有限的时间量内保留定制的信息。如果Ann在几 周后没有询问过费率改变,那么她不太可能会问费率改变,因为它发 生在不久前。因此,计算机化的ADS可以在超过时间阈值的时段经 过之后停止使用定制信息来回答问题。
问题之一是如何确定时间阈值。存在几种可能性。ADS可以查 看过去的客户已多长时间继续询问费率改变。假设过去的客户倾向于 在费率改变的第一个月内询问有关费率改变的问题。一个月后,客户 不太可能询问有关费率改变的问题。在这种情况下,一个月的时间阈 值可能是个不错的选择。
另一种方法是具体考虑Ann如何对费率改变作出响应。例如, 假定Ann可能会有两个月(即,比普通人更长的时间段)询问关于 改变的问题。那么对于Ann,具有两个月的较长时间阈值可能会更 好。
另一种方法是同时考虑Ann如何对过去的费率改变作出响应以 及其他客户如何对过去的费率改变作出响应,以确定适当的时间阈值。 如果关于Ann如何对费率改变作出响应没有足够的数据来预测未来 的问题,那么建议(除了Ann自己过去的问题之外还)考虑来自其 他人的过去的问题,以确定时间阈值。在最一般的情况下,ADS既 考虑Ann的问题,也考虑来自其他人的问题。ADS基于Ann过去的 问题提供多少信息来为Ann的问题指派更高的权重。如果Ann的过 去的问题中有很多数据,那么系统将给予Ann的问题多得多的权重,并且对来自其他人的问题指派较小的权重。如果来自Ann的过去的 问题的数据很少,那么ADS将为来自其他人的问题指派显著更高的 权重。
在一些情况下,与实体相关联的信息可以不是数字量。例如,如 前面所讨论的,信息可以包含在文本文档中。在这种情况下,重要的 是要测量文本文档的相似程度。当计算机化的ADS确定与实体相关 联的文本文档中存在显著改变时,ADS为关于该实体的未来问题生 成定制信息。为了确定文本文档中是否发生了显著改变,可以使用几 种技术,包括但不限于Levenshtein距离。
作为另一个示例,合同或策略可以与实体相关联。当合同或政策 发生显著改变时,计算机化的ADS可以生成在预测未来的问题时解 释合同或政策中的差异的定制信息。ADS还可以调谐NLP和/或认知 系统,以预测关于合同或策略的改变的问题和对话。
与实体相关联的信息不必是文本的。它可以是各种不同格式的二 进制数据。为了定量地计算与实体相关联的不同信息之间的差异,可 以提供函数以定量地确定与实体相关联的不同信息之间的差异。
图12描绘了根据本发明一个说明性实施例的、用于基于信息的 改变生成针对响应的定制信息的示例处理。在步骤1201中,提供定 量地确定可能与实体相关联的不同信息之间的差异的函数。例如,如 果与实体相关联的信息由文本组成,那么该函数可以计算不同信息之 间的Levenshtein距离。本发明的说明性实施例也可以使用各种其它 函数。
在步骤1202中,计算机化的ADS监视与实体相关联的信息。例 如,文本文档可以与实体相关联。在步骤1203中,计算机化的ADS 确定与实体相关联的信息已经显著改变。这可以通过将步骤1201中 提供的函数应用于与实体相关联的信息并测试函数值是否已经改变超 过阈值的量来确定。函数值的这种改变可以是增加或减少。由于与实 体相关联的信息发生显著改变,因此计算机化的ADS将被问及改变 的可能性增加。为了预测这一点,在步骤1204中计算机化的ADS生 成信息以帮助回答关于信息改变的问题。例如,计算机化的ADS可以生成解释信息改变的原因的信息,以预测可能在不久的将来被询问 的问题。ADS还可以调谐NLP和/或认知系统,以预测关于信息改变 的问题和对话。
问题之一是如何确定在步骤1203中使用的阈值。存在几种可能 性。ADS可以查看过去的问题(或对话)如何响应于与实体相关联 的信息改变而改变。假定如果与实体相关联的信息改变超过15%, 那么会询问更多问题(或发送其它对话)。如果与实体相关联的信息 改变小于15%,那么问题(或其它对话)不会显著增加。在这种情 况下,与15%改变对应的阈值可能是个不错的选择。
可以通过考虑若干实体e1、e2、...、en的改变并且对于这些实 体中的任何一个的信息改变使用相同的阈值来确定阈值。
另一种方法是为具体实体定制阈值。例如,可以通过考虑当与 e1相关联的信息改变时问题(或对话)的过去改变来确定实体e1的 阈值。虽然如果有大量数据可用于与e1相关联的信息的改变则为具 体实体e1定制阈值效果良好,但是当可用于与e1关联的信息的改变 的数据量不足时,它不能正常工作。另一种方法是通过考虑与e1相 关联的信息的过去改变以及与其它实体相关联的信息的过去改变来为 e1指派阈值。如果关于与e1相关联的信息的改变存在大量数据,那 么在确定e1的阈值时更多地对该数据进行加权。如果关于与e1相关 联的信息的改变的数据很少,那么关于与其它实体相关联的信息的改 变的数据被更多地加权。
系统常常仅在有限的时间量内保留定制的信息。因此,计算机化 的ADS可以在超过时间阈值的时段经过之后停止使用定制信息来回 答问题。问题之一是如何确定时间阈值。存在几种可能性。ADS可 以查看关于对信息的显著改变倾向于询问问题(或其它对话)多长时 间的过去的数据。假定关于对信息的显著改变的问题(或其它对话) 倾向于在改变的第一个月内被询问。一个月后,这些问题(或其它对 话)很少见。在这种情况下,一个月的时间阈值可能是个不错的选择。
可以通过考虑若干实体e1、e2、...、en的改变并且对于这些实 体中的任何一个的信息改变使用相同的时间阈值来确定时间阈值。
另一种方法是为具体实体定制时间阈值。例如,当与e1相关联 的信息改变时,可以通过考虑问题(或其它对话)的过去改变来确定 实体e1的时间阈值。
虽然如果有大量数据可用于与e1相关联的信息的改变则为具体 实体e1定制时间阈值效果良好,但是当可用于与e1关联的信息的改 变的数据量不足时,它不能正常工作。另一种方法是通过考虑与e1 相关联的信息的过去改变以及与其它实体相关联的信息的过去改变来 为e1指派时间阈值。如果关于与e1相关联的信息的改变存在大量数 据,那么在确定e1的时间阈值时更多地对该数据进行加权。如果关 于与e1相关联的信息的改变的数据很少,那么关于与其它实体相关 联的信息的改变的数据被更多地加权。
图13描绘了根据本发明一个说明性实施例的、用于确定将定制 信息用于响应多长时间的示例处理。
在步骤1301中,定义重要事件。例如,在管理公司对产品或服 务的费率的系统中,重要事件可以被定义为客户的费率增加至少 15%。在步骤1302中,计算机化的ADS确定重要事件已经发生。例 如,ADS可以监视客户的费率。在这样做时,ADS可以确定Ann的 费率增加了18%,这包括重要事件。在步骤1303中,计算机化的 ADS生成定制的响应信息。例如,定制的响应信息可以包括对费率 增加的原因的解释。计算机化的ADS还可以调谐其NLP和/或认知 系统能力,以预期与费率增加相关的问题和对话。
在步骤1304中,计算机化的ADS在经过时间阈值之后停止使用 定制的响应信息。
问题之一是如何确定时间阈值。存在几种可能性。ADS可以查 看关于重要事件倾向于询问问题(或其它对话)多长时间的过去的数 据。假定关于重要事件的问题(或其它对话)倾向于在改变的第一个 月内被询问。一个月后,这些问题很少见。在这种情况下,一个月的 时间阈值可能是个不错的选择。
可以通过考虑针对若干实体e1、e2、...、en的重要事件并且对 于这些实体中的任何一个对于重要事件使用相同的时间阈值来确定时 间阈值。
另一种方法是为具体实体定制时间阈值。例如,实体e1的时间 阈值可以通过考虑当针对e1的重要事件发生时问题(和其它对话) 的过去改变来确定。
虽然如果有大量数据可用于针对具体实体e1发生的事件则为该 e1定制时间阈值效果良好,但是当可用于针对e1发生的事件的数据 量不足时,它不能正常工作。另一种方法是通过考虑针对e1以及针 对其它实体发生的事件来为e1指派时间阈值。如果关于针对e1发生 的事件存在大量数据,那么在确定e1的时间阈值时,该数据被更多 地加权。如果关于针对e1发生的事件的数据很少,那么关于针对其 它实体发生的事件的数据被更多地加权。
如上所述,应当认识到的是,说明性实施例可以采用完全硬件实 施例、完全软件实施例或包含硬件和软件元素两者的实施例的形式。 在一个示例实施例中,说明性实施例的机制以软件或程序代码实现, 其包括但不限于固件、驻留软件、微代码等。
适于存储和/或执行程序代码的数据处理系统将包括至少一个处 理器,其直接或通过例如通信总线(诸如系统总线)间接耦合到存储 器元件。存储器元件可以包括在程序代码的实际执行期间采用的本地 存储器、大容量存储装置和高速缓存存储器,高速缓存存储器提供至 少一些程序代码的临时存储,以便减少在执行期间必须从大容量存储 装置检索代码的次数。存储器可以是各种类型,包括但不限于ROM、 PROM、EPROM、EEPROM、DRAM、SRAM、闪存、固态存储器 等。
输入/输出或I/O设备(包括但不限于键盘、显示器、定点设备 等)可以直接或通过中间有线或无线I/O接口和/或控制器等耦合到 系统。I/O设备可以采用除常规键盘、显示器、定点设备等之外的许 多不同形式,诸如例如通过有线或无线连接耦合的通信设备,其中通 信设备包括但不限于智能电话、平板计算机、触摸屏设备、语音识别 设备等。任何已知的或以后开发的I/O设备都旨在落入说明性实施例 的范围内。
网络适配器也可以耦合到系统,以使数据处理系统能够通过中间 私有或公共网络耦合到其它数据处理系统或者远程打印机或存储设备。 调制解调器、电缆调制解调器和以太网卡只是当前可用于有线通信的 网络适配器类型中的一小部分。还可以使用基于无线通信的网络适配 器,包括但不限于802.11a/b/g/n无线通信适配器、蓝牙无线适配器等。任何已知的或以后开发的网络适配器都在本发明的精神和范围内。
已经出于说明和描述的目的给出了对本发明的描述,并且本描述 不旨在是详尽的或将本发明限于所公开的形式。在不脱离所描述的实 施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人 员来说是显而易见的。选择和描述实施例是为了最好地解释本发明的 原理、实际应用,并且使本领域其他普通技术人员能够理解本发明的 各种实施例,其具有适于预期的特定用途的各种修改。选择本文使用 的术语是为了最好地解释实施例的原理、实际应用或对市场中发现的 技术的技术改进,或者使本领域其他普通技术人员能够理解本文公开 的实施例。

Claims (13)

1.一种在包括至少一个处理器和至少一个存储器的数据处理系统中的方法,所述至少一个存储器包括由所述至少一个处理器执行以使所述至少一个处理器实现自动对话系统的指令,所述自动对话系统用于在自动对话系统和客户端计算设备的用户之间进行自然语言对话,其中所述方法包括:
由自动对话系统经由客户端计算设备接收与来自用户的用户输入对应的自然语言文本,所述自然语言文本具有自然语言文本的有歧义部分;
由自动对话系统分析与用户对应的用户简档信息,以识别用户简档信息中的至少一个异常;
由自动对话系统预测与所述至少一个异常相关联的至少一个用户意图,其中所述用户意图指示来自用户的用户输入的潜在原因;
由自动对话系统基于预测出的至少一个用户意图消除自然语言文本的有歧义部分的歧义,以生成与用户输入对应的消除歧义的自然语言文本;
由自动对话系统基于消除歧义的自然语言文本生成对用户输入的响应;以及
由自动对话系统向客户端计算设备输出响应,从而进行自然语言对话。
2.如权利要求1所述的方法,其中消除自然语言文本的有歧义部分的歧义包括基于所述至少一个用户意图的预测进行词消除歧义、参考消除歧义、主题消除歧义或解析消除歧义中的至少一个。
3.如权利要求1所述的方法,其中分析与用户对应的用户简档信息以识别用户简档信息中的至少一个异常包括:识别在预定时间段内用户简档信息中的、指示用户简档信息的至少一个变量的异常改变的统计、模式或趋势,并确定指示所述至少一个变量的异常改变的原因的相关因素。
4.如权利要求3所述的方法,其中通过将预定义的规则应用于在预定时间段内用户简档信息中的统计、模式或趋势来识别所述至少一个异常,并且其中所述预定义的规则中的每一个指定对应的阈值改变量,所述对应的阈值改变量指示用户简档信息的至少一个变量中的对应变量的异常。
5.如权利要求4所述的方法,其中在预定义的规则中指定的阈值改变量是基于其他用户对由自动对话系统针对其它对话会话中的对应变量生成的对话的响应通过机器学习处理自动学习的。
6.如权利要求1所述的方法,其中分析与用户对应的用户简档信息以识别用户简档信息中的至少一个异常还包括:
确定所述至少一个异常的强度;以及
通过自动对话系统的模糊逻辑将所述至少一个异常的强度映射到强度分类,其中所述自动对话系统基于所述至少一个异常的强度到强度分类的映射来预测与所述至少一个异常相关联的至少一个用户意图。
7.如权利要求6所述的方法,其中将所述至少一个异常的强度映射到强度分类包括生成与强度分类对应的概率值,并且其中预测与所述至少一个异常相关联的至少一个用户意图包括选择具有最高概率值的用户意图以用于消除自然语言文本的有歧义部分的歧义。
8.如权利要求1所述的方法,其中基于预测出的至少一个用户意图消除自然语言文本的有歧义部分的歧义包括:
为所述至少一个用户意图中的每一个生成其中有歧义部分被消除歧义的自然语言文本的对应的消除歧义的版本,其中对于所述至少一个用户意图中的不同用户意图,不同的消除歧义的版本利用有歧义部分的不同消除歧义来生成;
基于与对应的至少一个用户意图相关联的权重值,对与自然语言文本的消除歧义的版本中的每一个相关联的置信度得分进行加权;以及
基于消除歧义的版本中的每一个的加权的置信度得分来选择自然语言文本的消除歧义的版本。
9.如权利要求8所述的方法,其中对置信度得分进行加权还包括基于与至少一个意图对应的改变的强度和自然语言文本的解析的置信度来对置信度得分进行加权。
10.如权利要求1所述的方法,其中,在接收自然语言文本之前,执行分析与用户对应的用户简档信息以识别用户简档信息中的至少一个异常并预测与所述至少一个异常相关联的至少一个用户意图,并且与用户简档信息相关联地存储所述至少一个异常的识别以及对应的预测出的至少一个用户意图。
11.一种包括其中存储有计算机可读程序的计算机可读存储介质的计算机程序产品,其中计算机可读程序在计算设备上被执行时使计算设备实现用于在自动对话系统和客户端计算设备的用户之间进行自然语言对话的自动对话系统,其中所述自动对话系统操作来实现如权利要求1至10中任一项所述的方法。
12.一种装置,包括:
处理器;以及
耦合到处理器的存储器,其中存储器包括指令,所述指令在由处理器执行时使处理器实现用于在自动对话系统和客户端计算设备的用户之间进行自然语言对话的自动对话系统,其中所述自动对话系统操作来实现如权利要求1至10中任一项所述的方法。
13.一种在包括至少一个处理器和至少一个存储器的数据处理系统中的自动对话系统,所述至少一个存储器包括由所述至少一个处理器执行以使所述至少一个处理器实现用于在自动对话系统和客户端计算设备的用户之间进行自然语言对话的自动对话系统的指令,其中所述自动对话系统包括用于执行如权利要求1至10中任一项所述的方法的各个步骤的装置。
CN201910070349.5A 2018-01-31 2019-01-25 数据处理系统中的方法、程序产品、装置和系统 Active CN110096577B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/884,887 US10430447B2 (en) 2018-01-31 2018-01-31 Predicting intent of a user from anomalous profile data
US15/884,887 2018-01-31

Publications (2)

Publication Number Publication Date
CN110096577A true CN110096577A (zh) 2019-08-06
CN110096577B CN110096577B (zh) 2023-05-30

Family

ID=67393482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910070349.5A Active CN110096577B (zh) 2018-01-31 2019-01-25 数据处理系统中的方法、程序产品、装置和系统

Country Status (2)

Country Link
US (3) US10430447B2 (zh)
CN (1) CN110096577B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110502624A (zh) * 2019-08-13 2019-11-26 出门问问(武汉)信息科技有限公司 一种对话处理方法及电子设备
CN110929105A (zh) * 2019-11-28 2020-03-27 杭州云徙科技有限公司 一种基于大数据技术的用户id关联方法
CN111985249A (zh) * 2020-09-03 2020-11-24 贝壳技术有限公司 语义分析方法、装置、计算机可读存储介质及电子设备
CN112131364A (zh) * 2020-09-22 2020-12-25 沈阳东软智能医疗科技研究院有限公司 问答方法、装置、电子设备和存储介质
WO2021082353A1 (zh) * 2019-10-28 2021-05-06 竹间智能科技(上海)有限公司 一种语义识别方法及其设备

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014182820A2 (en) * 2013-05-07 2014-11-13 Haley Paul V System for knowledge acquisition
US11973784B1 (en) * 2017-11-27 2024-04-30 Lacework, Inc. Natural language interface for an anomaly detection framework
US11770398B1 (en) * 2017-11-27 2023-09-26 Lacework, Inc. Guided anomaly detection framework
US10617959B2 (en) * 2018-01-18 2020-04-14 Moveworks, Inc. Method and system for training a chatbot
US10741176B2 (en) 2018-01-31 2020-08-11 International Business Machines Corporation Customizing responses to users in automated dialogue systems
US10430447B2 (en) 2018-01-31 2019-10-01 International Business Machines Corporation Predicting intent of a user from anomalous profile data
CN110580335B (zh) * 2018-06-07 2023-05-26 阿里巴巴集团控股有限公司 用户意图的确定方法及装置
US11488110B2 (en) * 2018-06-18 2022-11-01 Adp, Inc. Targeting delivery of recruiting messages
WO2020036190A1 (ja) * 2018-08-15 2020-02-20 日本電信電話株式会社 要点抽出装置、要点抽出方法、及びプログラム
US11106869B1 (en) * 2018-08-23 2021-08-31 Walgreen Co. Facilitating pharmacy customer orders through natural language processing
US11289082B1 (en) * 2019-11-07 2022-03-29 Amazon Technologies, Inc. Speech processing output personalization
US11763090B2 (en) * 2019-11-11 2023-09-19 Salesforce, Inc. Predicting user intent for online system actions through natural language inference-based machine learning model
US11769013B2 (en) 2019-11-11 2023-09-26 Salesforce, Inc. Machine learning based tenant-specific chatbots for performing actions in a multi-tenant system
CN111538820A (zh) * 2020-04-10 2020-08-14 出门问问信息科技有限公司 一种异常答复处理、装置以及计算机可读存储介质
US10798031B1 (en) * 2020-04-13 2020-10-06 Moveworks, Inc. Generic disambiguation
CN113761138B (zh) * 2020-06-02 2024-02-02 阿里巴巴集团控股有限公司 对话系统、方法、装置、电子设备及计算机可读存储介质
US11790181B2 (en) 2020-08-19 2023-10-17 International Business Machines Corporation Extractive structured prediction in interactive systems
GB2598558A (en) * 2020-08-27 2022-03-09 Arm Cloud Tech Inc A conversational flow apparatus and technique
CN111930921B (zh) * 2020-10-10 2021-01-22 南京福佑在线电子商务有限公司 意图预测的方法及装置
US11930097B2 (en) 2020-10-14 2024-03-12 Ttec Holdings, Inc. Integrated orchestration of intelligent systems
US11776534B1 (en) * 2020-12-08 2023-10-03 Amazon Technologies, Inc. Natural language understanding intent adjustment
CN112632989B (zh) * 2020-12-29 2023-11-03 中国农业银行股份有限公司 一种合同文本中风险信息的提示方法、装置及设备
US20220284059A1 (en) * 2021-03-04 2022-09-08 International Business Machines Corporation Measuring quality of a chatbot response
US11763803B1 (en) * 2021-07-28 2023-09-19 Asapp, Inc. System, method, and computer program for extracting utterances corresponding to a user problem statement in a conversation between a human agent and a user
US11922357B2 (en) 2021-10-07 2024-03-05 Charter Communications Operating, Llc System and method for identifying and handling data quality anomalies
US20230342397A1 (en) * 2022-04-22 2023-10-26 International Business Machines Corporation Techniques for predicting a personalized url document to assist a conversation
CN114691852B (zh) * 2022-06-01 2022-08-12 阿里巴巴达摩院(杭州)科技有限公司 人机对话系统及方法
US20240031255A1 (en) * 2022-07-20 2024-01-25 Cisco Technology, Inc. User lifecycle journey and asset data based bot skill selection
US20240064239A1 (en) * 2022-08-16 2024-02-22 Twilio Inc. Pipeline flow management for calls
CN115599891B (zh) * 2022-11-29 2023-03-21 支付宝(杭州)信息技术有限公司 一种确定异常对话数据方法、装置、设备及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100114887A1 (en) * 2008-10-17 2010-05-06 Google Inc. Textual Disambiguation Using Social Connections
US8086462B1 (en) * 2004-09-09 2011-12-27 At&T Intellectual Property Ii, L.P. Automatic detection, summarization and reporting of business intelligence highlights from automated dialog systems
US20120197732A1 (en) * 2011-01-31 2012-08-02 Microsoft Corporation Action-aware intent-based behavior targeting
CN105095357A (zh) * 2015-06-24 2015-11-25 百度在线网络技术(北京)有限公司 一种用于咨询数据处理的方法和装置
CN106328166A (zh) * 2016-08-31 2017-01-11 上海交通大学 人机对话异常检测系统及方法
CN107633042A (zh) * 2012-07-20 2018-01-26 韦韦欧股份有限公司 在对话交互系统中推断搜索输入中的用户意图的方法和系统

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5541836A (en) 1991-12-30 1996-07-30 At&T Corp. Word disambiguation apparatus and methods
US7644054B2 (en) 2005-11-23 2010-01-05 Veveo, Inc. System and method for finding desired results by incremental search using an ambiguous keypad with the input containing orthographic and typographic errors
DE102006055864A1 (de) 2006-11-22 2008-05-29 Deutsche Telekom Ag Verfahren zur Dialoganpassung und Dialogsystem zur Durchführung
ATE555433T1 (de) 2007-04-26 2012-05-15 Ford Global Tech Llc Emotives beratungssystem und verfahren
US20100011488A1 (en) * 2008-07-21 2010-01-21 John Sutton Sweatband and sun protective headgear apparatus
US20110125734A1 (en) 2009-11-23 2011-05-26 International Business Machines Corporation Questions and answers generation
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9092801B2 (en) 2011-09-23 2015-07-28 24/7 Customer, Inc. Customer journey prediction and resolution
US20140074589A1 (en) 2012-09-02 2014-03-13 Aaron David NIELSEN System and method for the selection and delivery of a customized consumer offer or engagement dialog by a live customer service representative in communication with a consumer
US9235978B1 (en) 2013-01-16 2016-01-12 Domo, Inc. Automated suggested alerts based on natural language and user profile analysis
US9292254B2 (en) 2013-05-15 2016-03-22 Maluuba Inc. Interactive user interface for an intelligent assistant
US10579396B2 (en) * 2014-04-09 2020-03-03 Nice-Systems Ltd. System and automated method for configuring a predictive model and deploying it on a target platform
US9319522B1 (en) 2014-04-28 2016-04-19 West Corporation Applying user preferences, behavioral patterns and/or environmental factors to an automated customer support application
US20160005049A1 (en) 2014-07-02 2016-01-07 Verizon Patent And Licensing Inc. Predicting a likelihood of customer service interactions
US9836452B2 (en) * 2014-12-30 2017-12-05 Microsoft Technology Licensing, Llc Discriminating ambiguous expressions to enhance user experience
EP3262815B1 (en) * 2015-02-24 2020-10-14 Cisco Technology, Inc. System and method for securing an enterprise computing environment
US9699205B2 (en) * 2015-08-31 2017-07-04 Splunk Inc. Network security system
US20170140387A1 (en) 2015-11-16 2017-05-18 At&T Intellectual Property I, L.P. Method and apparatus to provide proactive customer care
US20180068031A1 (en) 2016-08-16 2018-03-08 Ebay Inc. Enhancing user queries using implicit indicators
US11004131B2 (en) 2016-10-16 2021-05-11 Ebay Inc. Intelligent online personal assistant with multi-turn dialog based on visual search
US10741176B2 (en) 2018-01-31 2020-08-11 International Business Machines Corporation Customizing responses to users in automated dialogue systems
US10430447B2 (en) 2018-01-31 2019-10-01 International Business Machines Corporation Predicting intent of a user from anomalous profile data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086462B1 (en) * 2004-09-09 2011-12-27 At&T Intellectual Property Ii, L.P. Automatic detection, summarization and reporting of business intelligence highlights from automated dialog systems
US20100114887A1 (en) * 2008-10-17 2010-05-06 Google Inc. Textual Disambiguation Using Social Connections
US20120197732A1 (en) * 2011-01-31 2012-08-02 Microsoft Corporation Action-aware intent-based behavior targeting
CN107633042A (zh) * 2012-07-20 2018-01-26 韦韦欧股份有限公司 在对话交互系统中推断搜索输入中的用户意图的方法和系统
CN105095357A (zh) * 2015-06-24 2015-11-25 百度在线网络技术(北京)有限公司 一种用于咨询数据处理的方法和装置
CN106328166A (zh) * 2016-08-31 2017-01-11 上海交通大学 人机对话异常检测系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ROB HIGH: "The Era of Cognitive Systems:An Inside Look at IBM Watson and How it works", 《IBM CORPORATION REDBOOKS》 *
崔婉秋等: "基于用户意图理解的社交网络跨媒体搜索与挖掘", 《智能系统学报》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110502624A (zh) * 2019-08-13 2019-11-26 出门问问(武汉)信息科技有限公司 一种对话处理方法及电子设备
WO2021082353A1 (zh) * 2019-10-28 2021-05-06 竹间智能科技(上海)有限公司 一种语义识别方法及其设备
CN110929105A (zh) * 2019-11-28 2020-03-27 杭州云徙科技有限公司 一种基于大数据技术的用户id关联方法
CN110929105B (zh) * 2019-11-28 2022-11-29 广东云徙智能科技有限公司 一种基于大数据技术的用户id关联方法
CN111985249A (zh) * 2020-09-03 2020-11-24 贝壳技术有限公司 语义分析方法、装置、计算机可读存储介质及电子设备
CN112131364A (zh) * 2020-09-22 2020-12-25 沈阳东软智能医疗科技研究院有限公司 问答方法、装置、电子设备和存储介质
CN112131364B (zh) * 2020-09-22 2024-03-26 沈阳东软智能医疗科技研究院有限公司 问答方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN110096577B (zh) 2023-05-30
US20200133966A1 (en) 2020-04-30
US10430447B2 (en) 2019-10-01
US20190384784A1 (en) 2019-12-19
US20190236204A1 (en) 2019-08-01
US10572517B2 (en) 2020-02-25
US10909152B2 (en) 2021-02-02

Similar Documents

Publication Publication Date Title
CN110096577A (zh) 从异常简档数据预测用户的意图
US10891956B2 (en) Customizing responses to users in automated dialogue systems
Poongodi et al. Chat-bot-based natural language interface for blogs and information networks
US10705796B1 (en) Methods, systems, and computer program product for implementing real-time or near real-time classification of digital data
US20200019561A1 (en) Methods, systems, and computer program product for implementing real-time classification and recommendations
US20210272040A1 (en) Systems and methods for language and speech processing with artificial intelligence
US11144718B2 (en) Adaptable processing components
US9460155B2 (en) Method and system of continuous contextual user engagement
US10467122B1 (en) Methods, systems, and computer program product for capturing and classification of real-time data and performing post-classification tasks
Thorne Chatbots for troubleshooting: A survey
JP7297458B2 (ja) 対話コンテンツ作成支援方法
US11563852B1 (en) System and method for identifying complaints in interactive communications and providing feedback in real-time
El-Ansari et al. Sentiment analysis for personalized chatbots in e-commerce applications
Sharma et al. Supervised Machine Learning Method for Ontology-based Financial Decisions in the Stock Market
Wu et al. MARMOT: A deep learning framework for constructing multimodal representations for vision-and-language tasks
Singh et al. Towards improving e-commerce customer review analysis for sentiment detection
Yadav et al. A novel automated depression detection technique using text transcript
Sathyendra et al. Helping users understand privacy notices with automated query answering functionality: An exploratory study
KR102507809B1 (ko) 공감대 형성을 통한 심리 치료용 인공지능 대화 시스템
Ortiz-Garces et al. Optimizing Chatbot Effectiveness through Advanced Syntactic Analysis: A Comprehensive Study in Natural Language Processing
US20240095445A1 (en) Systems and methods for language modeling with textual clincal data
US20220083570A1 (en) Enhanced data driven intelligent cloud advisor system
CN114138954A (zh) 用户咨询问题推荐方法、系统、计算机设备及存储介质
Appiahene et al. Understanding the Uses, Approaches and Applications of Sentiment Analysis
Zishumba Sentiment Analysis Based on Social Media Data

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