CN115408502A - 在同步会议中认知学习以生成模拟现场代理动作的脚本 - Google Patents
在同步会议中认知学习以生成模拟现场代理动作的脚本 Download PDFInfo
- Publication number
- CN115408502A CN115408502A CN202210577685.0A CN202210577685A CN115408502A CN 115408502 A CN115408502 A CN 115408502A CN 202210577685 A CN202210577685 A CN 202210577685A CN 115408502 A CN115408502 A CN 115408502A
- Authority
- CN
- China
- Prior art keywords
- computer
- query
- processor
- scs
- script
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/403—Arrangements for multi-party communication, e.g. for conferences
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1822—Conducting the conference, e.g. admission, detection, selection or grouping of participants, correlating users to one or more conference sessions, prioritising transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
- H04L65/4015—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明的实施例涉及对在同步会议系统(SCS)上电子地接收的查询做出响应的计算机实现的方法。计算机实现的方法的非限制性实例包括至少部分基于查询,使用SCS的处理器生成具有一个或多个脚本计算机指令的脚本。所述处理器用于执行所述脚本计算机指令以生成脚本计算机指令结果,其中,所述脚本计算机指令结果包括响应于所述查询的查询响应信息。至少部分地基于所述查询和所述查询响应信息,使用所述处理器生成响应于所述查询的查询响应。
Description
背景技术
本发明总体上涉及联网通信系统中的可编程计算机。更具体地,本发明涉及计算系统、计算机实现的方法、和计算机程序产品,这些计算系统、计算机实现的方法、和计算机程序产品通过提供会话代理来减少同步会议系统(例如,“在线聊天”系统)中的现场代理工作负荷,该会话代理被配置和安排成除其他外认知地学习生成脚本(例如,一组计算机指令),这些脚本当被执行时自动模拟所选择的现场代理动作。
术语“同步会议系统”(SCS)描述了在交互式计算网络(例如,互联网)中广泛使用的一类基于计算机的通信技术,以使得两个或更多个用户能够实时地彼此通信。具体地,用户通过SCS的同步会议应用或计算机程序向另用户发送消息(例如,自然语言文本数据)。后一用户理想地在短时间段(例如,几秒或几分钟)内对消息作出响应。由此,SCS技术促进其中电子消息在至少两个用户之间来回传递的对话。
通过SCS交换的消息通常包含文本数据。然而,一些SCS技术允许交换其他类型的多介质内容(例如,音频/视频)。消息通常长度较短,但是在某些上下文中(例如,问题/答案交换)较长的消息可能是合适的。通常,作为同一会话的一部分的多个消息在所谓的SCS会话中交换,该SCS会话有利地将相关消息分组在一起并提供上下文。消息经常在用户的本地计算机显示器的图形用户界面(GUI)的窗口内显示给每个用户。
SCS技术可被实现为在线电子商务设置中的客户服务工具,其中希望允许访问商家的网站的在线客户立即发起与商家的在线交谈/聊天。在传统的客户服务SCS会话中,客户是一个用户,并且商家的代表可以是另一个用户。在客户服务SCS的一些实现方式中,商家代表可以是人,其也称为“现场代理”。在客户服务SCS的一些实现方式中,商家代表可以是计算机实现的代理,其也被称为“会话代理”(CA)或“聊天机器人”。一般而言,CA可被定义为被配置为使用相干结构与人类通信的计算机系统。CA系统可采用各种通信机制,包括例如文本、语音、图形、触觉、手势等,用于在输入和输出信道两者上进行通信。CA系统还采用不同形式的自然语言处理(NLP),NLP是涉及使用语言的计算机与人之间的交互的计算机科学、人工智能和计算语言学的领域。
CA-运行SCS会话可以是非常响应的并且比现场代理运行SCS会话快得多。然而,在实现CA-运行SCS会话的挑战之一是使得SCS计算机能够从自然语言(NL)输入以及NL输出的有效和高效生成中导出含义。已知的CA-运行SCS会话是“基于规则的”,这表示CA-运行SCS会话基于已经确定并且明确编码成CA的各种规则选择响应。基于规则的系统最适合于存在较低数据量、传入数据相对稳定、并且相应的规则相对简单的情形。作为示例,公司使用基于规则的系统用于花费批准,并且相关规则可以包括要求不同级别的管理批准的不同定义的美元阈值。
现场代理运行SCS会话具有以下益处:现场代理能够在盒子之外思考;不限于处理预编程的信息;并且可以理解并提供与商家的商业有关的任何客户问题的回答。然而,由于在现场代理运行的SCS会话中大量涉及人力资源,因此对现场代理同时处理多个并发会话的能力存在限制。此外,由于客户查询的类型变得越来越简单、常见、单伪和/或重复,具有现场代理的商家和/或客户对客户查询作出响应的价值减小。
发明内容
本发明的实施例针对一种对在同步会议系统(SCS)上电子地接收到的查询做出响应的计算机实现的方法。计算机实现的方法的非限制性实例包括至少部分基于查询,使用SCS的处理器生成具有一个或多个脚本计算机指令的脚本。处理器执行脚本计算机指令以生成脚本计算机指令结果,其中,脚本计算机指令结果包括响应于查询的查询响应信息。至少部分地基于查询和查询响应信息,处理器生成响应于查询的查询响应。
在本发明的一些方面中,本发明的上述实施例可以进一步包括被配置成用于当由该处理器执行时模拟现场代理处理器控制动作的该一个或多个脚本计算机指令。现场代理处理器控制动作包括现场代理尝试利用处理器生成查询响应信息期间可以由现场代理采取的处理器控制动作。
在本发明的一些方面中,本发明的上述实施例可以进一步包括使用该处理器来生成该查询响应的操作进一步至少部分地基于该一个或多个脚本计算机指令。
本发明先前描述的实施例的技术效果和益处包括使用SCS的处理器来生成脚本,其中,这些脚本模拟所选择的现场代理操作。根据本发明的方面,所选择的现场代理操作包括简单、重复的现场代理操作,其可以以释放现场代理的时间的方式被自动化,使得它们可以集中于更复杂的任务,并且不必把现场代理时间专用于解决由用户提交的简单、重复的请求。
在本发明的某些方面,本发明的上述实施例可以进一步包括该处理器被配置成包括被训练成用于执行第一任务的第一模型,该第一任务包括至少部分地基于该查询来生成该脚本。
在本发明的某些方面,本发明的上述实施例可以进一步包括该处理器被进一步配置成包括被训练成用于执行第二任务的第二模型,该第二任务包括至少部分地基于该查询和该查询响应信息来生成该查询响应。
在本发明的一些方面中,本发明的上述实施例可以进一步包括将该第二任务配置成进一步包括至少部分地基于该查询、该一个或多个脚本计算机指令以及该查询响应信息来生成该查询响应。
本发明的先前描述的实施例的额外的技术效果和益处包括使用SCS的处理器执行已经训练用于生成脚本的模型,其中,脚本模拟所选择的现场代理操作。在本发明的各方面中,训练第一模型以生成脚本,并且训练第二模型以基于查询、脚本和查询响应信息中的至少两个生成查询响应。本发明的实施例的技术效果和益处包括配置本发明的实施例以有益地利用标记的数据来训练第一和第二模型。然而,由于本发明的实施例聚焦于训练模型以执行有条件但不过于复杂的现场代理任务,所以标记的数据量不需要很高(例如,每个模型执行的每个整体任务大约1000个对话)。如本文所使用的,术语“有条件的”表示被建模的现场代理操作基于(或“归因”于)通过SCS会话提供给现场代理(例如,由其他聊天参与者)的信息。本发明的一些实施例可以利用预先训练的模型(其示例在本文中随后描述),该预先训练的模型可以以微调的方式在标记的数据上进一步训练,使得它们在上述第一和第二模型任务学习很好地执行。根据本发明的各方面,这可以通过使用小得多的标记的数据大小(例如,每个模型执行的每个整体任务大约10个会话)来实现。根据本发明的各方面,由第一和第二模型实现的所选现场代理操作包括简单、重复的现场代理操作,这些现场代理操作可以以释放现场代理的时间的方式被自动化,从而它们可以集中在更复杂的任务上,并且不必将现场代理时间专用于解决由用户提交的简单、重复的请求。
本发明的实施例还涉及具有与上述计算机实现的方法基本上相同的特征、技术效果、和技术益处的计算机系统和计算机程序产品。
通过本文描述的技术实现另外的特征和优点。本文详细描述其他实施例和方面。为了更好的理解,参考说明书和附图。
附图说明
在说明书结尾处的权利要求书中特别指出并清楚地要求保护被视为实施例的主题。根据以下结合附图的详细描述,实施例的前述和其他特征和优点将变得显而易见,其中:
图1示出了展示能够实施本发明的实施例的同步会议系统(SCS)的框图;
图2示出了可以用于实现本发明的各方面的编码器-解码器架构;
图3示出了根据本发明的实施例的说明计算机实施的方法的流程图;
图4示出了根据本发明的实施例的可以在SCS会话期间交换的消息的示例的框图;
图5A示出了说明可以用于实现本发明的各方面的语言模型的细节的框图;
图5B示出了说明可以用于实现本发明的各方面的消息提取引擎的细节的框图;
图5C示出了说明可以用于实现本发明的多个方面的另一种语言模型的细节的框图;
图5D示出了说明图5A中所示的语言模型的附加细节的框图;
图6A示出了可以用于实现本发明的各方面的机器学习系统;
图6B示出了根据本发明的各方面的可以用于训练本文描述和展示的不同模型的训练数据的实例;
图7示出了可以由图6A中所示的机器学习系统实现的学习阶段;以及
图8示出了能够实施本发明的各个方面的示例性计算系统的细节。
在附图和所公开的实施例的以下详细描述中,附图中所展示的不同元件配备有三个数字参考号。在一些实例中,每个参考号的最左边数字对应于首先展示其元件的图。
具体实施方式
为了简洁起见,本文可以或可以不详细描述与制造和使用本发明的方面相关的常规技术。具体地,用于实现本文所描述的不同技术特征的计算系统和特定计算机程序的各个方面是众所周知的。因而,为了简洁起见,许多常规实施细节在本文中仅简要提到或完全省略,而不提供众所周知的系统和/或过程细节。
在本说明书中描述的这些系统的许多功能单元已经被标记为模块。本发明的实施例适用于多种多样的模块实现方式。例如,模块可以实现为包括定制VLSI电路或门阵列的硬件电路、诸如逻辑芯片、晶体管之类的现成半导体、或其他分立组件。模块也可以在可编程硬件设备(诸如现场可编程门阵列、可编程阵列逻辑、可编程逻辑设备等)中实现。模块也可以在用于由不同类型的处理器执行的软件中实现。所标识的可执行代码模块可例如包括计算机指令的一个或多个物理或逻辑块,其可例如被组织为对象、过程或函数。然而,所标识的模块的可执行文件不需要在物理上定位在一起,而是可以包括存储在不同位置中的不同指令,当逻辑地接合在一起时,所述不同指令用作模块并且实现模块的所陈述的目的。
在本说明书中描述的这些系统的许多功能单元已经被标记为模型。本发明的实施例适用于多种模型实现方式。例如,本文中描述的模型可实现为机器学习算法和自然语言处理算法,其被配置并安排成揭露数据/信息之间的未知关系并且生成模型,该模型将揭露的关系应用于新数据/信息以便执行模型的所指派任务。在本发明的各方面中,本文描述的模型可以具有图2、6A和7中所描绘的模型的所有特征和功能性,这些特征和功能性随后本文更详细地描述。
为了便于说明和解释,单独地示出了本文所展示的系统的不同组件/模块/模型。在本发明的实施方式中,除非特别说明,否则,在不背离在本文中描述的本发明的各种实施方式的范围的情况下,由所显示的各种组件/模块/模型执行的功能可不同地分布。
现在转到本发明的方面的概述,本文描述的本发明的实施例提供计算系统、计算机实现的方法、和计算机程序产品,这些计算系统、计算机实现的方法、和计算机程序产品通过提供新颖的会话代理(CA)来减少同步会议系统(SCS)(例如,“在线聊天”系统)中的现场代理工作负荷,该新颖的会话代理被配置和安排成认知地学习分析SCS会话消息,以便确定该新颖的CA可以接管SCS会话并且针对该SCS会话的全部或一部分执行现场代理活动。在本发明的一些实施例中,新颖的CA可以集成在SCS内或者作为与SCS通信的单独的单元(例如,客户端计算装置)提供。本文中描述的新颖CA被识别为脚本生成CA,因为在本发明的一些方面中,脚本生成CA已经学会生成脚本(例如,一组一个或多个计算机指令),这些脚本自动模拟将由与另一用户(例如,客户)参与SCS会话的现场代理执行的现场代理动作中的所选择的现场代理动作。本文中描述的新颖的CA也被识别为条件CA,因为,在本发明的一些方面,条件CA采取动作和/或生成响应,除了模拟现场代理响应/活动,该响应取决于(或者“归因”于)根据本发明的方面的条件CA理解,包含在由其他会话参与者插入到SCS会话中的SCS消息中的信息(例如,查询)的含义。在本发明的一些方面中,本文中描述的新颖CA可包括上述脚本生成特征和上述条件特征中的任一者或两者,在这种情况下,本文中描述的新颖CA可被描述为脚本生成条件CA(SGC-CA)。
在本发明的实施例中,SGC-CA被配置成用于在所分析的SCS会话中监测和分析SCS消息(或单个SCS消息),以确定SGC-CA可以接管正在(或将要)参与SCS会话的现场代理的责任。在本发明的一些实施例中,SGC-CA使用第一机器学习模型,该第一机器学习模型具有自然语言功能,并且被训练来评估SCS会话中的消息,并且执行确定SGC-CA具有执行(或接管)参与SCS会话的现场代理将采取的动作的能力的任务。在本发明的实施方式中,第一机器学习模型可以结合在SCS或SGC-CA内。在本发明的一些实施例中,第一机器学习模型可以是第一语言模型(或生成语言模型)。如果第一机器学习模型确定SCS会话可以由SGC-CA运行,则第一机器学习模型使得SGC-CA能够执行(或接管)将由参与SCS会话的现场代理采取的动作。
在本发明的实施例中,当SGC-CA被启用并运行SCS会话时,SGC-CA被配置和设置为执行模拟的代理操作,包括例如理解在由SCS会话中的其他参与者插入到SCS会话中的消息中包含的信息(例如,查询、代理请求信息等)的含义;生成并将消息插入SCS会话中,该消息从SCS会话中的其他参与者请求信息;生成并执行脚本(例如,一组计算机指令),在执行脚本时,脚本自动模拟由参与SCS会话的现场代理与另一用户(例如,客户)执行的现场代理动作中的所选择的动作;以及生成消息并将消息插入到SCS会话中,所述消息响应于SCS会话中的其他参与者生成的请求和/或查询消息。在本发明的一些实施例中,SGC-CA使用具有自然语言功能并且被训练成执行任务的附加机器学习模型,以便支持在现场代理正在运行SCS会话的情况下将由现场代理执行的上述操作。在本发明的一些实施例中,SGC-CA可以包括被配置和安排为执行脚本的计算机指令的代理活动模块(例如,机器人过程自动化(RPA)算法)。在本发明的一些实施例中,附加机器学习模型可以使用附加语言模型来实现,所述附加语言模型可以使用不同编码器-解码器架构来实现,包括但不限于序列到序列架构、RNN架构以及不同变换器模型架构(或生成语言模型架构)。在本发明的一些方面,根据本发明的实施例,附加语言模型可使用预先训练的变换器模型架构和精细调谐预先训练的变换器模型架构的训练以执行上述操作来实现。在本发明的实施例中,先前描述的不同变换器模型架构(或生成语言模型架构)的适当示例包括但不限于BERT(来自变换器的双向编码器表示)、GPT(生成预训练变换器)(包括GPT1、GPT2等)和/或BART(双向和自回归变换器)。
在本发明的多个方面,可以训练支持SGC-CA的功能性的不同语言模型以支持不同类别的SCS会话。在本发明的一些实施例中,SCS会话类别可以各自至少部分地基于以下评估:该类别涉及超出在基于规则的CA中可以有效实施的现场代理认知确定水平;并且该类别涉及活剂认知确定的水平,该水平不是如此复杂以至于它们将由活剂更有效地和/或有效地执行。例如,可以将现场代理运行SCS会话类别的类别A定义为“互联网服务中断”,其包括现场代理运行SCS会话,其中,用户已经与互联网服务提供商(ISP)的现场代理发起SCS会话,以确定用户的互联网服务为何发生故障。为了训练的目的,收集和标记现场代理运行SCS会话的类别A的数据。在本发明实施例中,现场代理运行的SCS会话的类别A的标注数据可以包括但不限于标识SCS会话中用户与现场代理之间交换的消息的数据;标识在SCS会话期间由现场代理执行的现场代理活动(例如,在计算机上查找用户的账户信息)的数据;标识响应于由现场代理在SCS会话期间执行的现场代理活动而生成的输出(例如,计算机生成的输出)的数据;以及标识由现场代理基于响应于由现场代理在SCS会话期间执行的现场代理活动而生成的输出而生成的“响应”的数据。所标记的训练数据用于训练支持SGC-CA在执行属于类别A的SCS会话的现场代理责任时的功能的不同语言模型(例如,如前述段落中所述)。在本发明的一些实施例中,将训练应用于尚未被预训练的语言模型。在本发明的一些实施例中,训练是应用于预训练模型的所谓的“微调”训练,其示例包括之前描述的变换器模型架构,如BERT、GPT、GPT1、GPT2、BART等。
现在转到本发明的各个实施例的更详细描述,图1示出了说明能够实施本发明的实施例的SCS 100的框图。SCS 100包括服务器104、多个客户端计算设备110、112、114和存储器108,所有这些都通过网络102彼此通信。现场代理(或用户A)120访问客户端计算设备110,以便以允许现场代理120通过网络102参与与网络102的其他用户(例如,客户140)的同步会议的方式操作客户端计算设备110。CA(或用户B)130与客户端计算装置112通信(或并入其中),以用于以允许CA130实现根据本发明的方面的本文中描述的各种操作的方式操作客户端计算装置112,操作包括通过网络102参与与网络102的其他用户(例如,客户140)的同步会议。出于以允许客户140通过网络102参与与网络102的其他用户(例如,现场代理120和/或CA130)的同步会议的方式操作客户端计算设备114的目的,客户(或用户C)140访问客户端计算设备114。
为了便于说明,示出了服务器104、存储器108、和客户端计算设备110、112、114中的每一个的一个示例。然而,应当理解,本发明的实施例可以容纳任何数量的服务器140、存储装置108和客户端计算设备110、112、114。类似地,为了便于说明,示出了现场代理120、CA130和客户140中的每一个的一个示例。然而,应当理解,本发明的实施例可以容纳任何数量的现场代理120、CA130和客户140。在本发明的实施方式中,服务器104和客户端计算设备110、112、114可以被配置为包括计算系统800(在图8中示出)的所有特征和功能。
SCS 100被配置和设置为提供用于定义和管理SCS 100中的虚拟讨论线程的机制。在操作中,服务器104和一个或多个客户端计算设备110、112、114定义包括一组聊天条目或部分聊天条目的虚拟讨论线程(VDT)实体。VDT中的聊天条目逻辑上属于聊天会话内的相同“隐藏”讨论。VDT的使用使得SCS 100能够通过在聊天条目的整体列表中示出可用的VDT并且在VDT中证明聊天条目来支持用户理解现有讨论。
SCS 100可用在许多不同类型的数据处理环境中,包括分布式数据处理环境、单个数据处理设备等。SCS 100包括至少一个网络102,网络102是用于在SCS 100内连接在一起的各种装置和计算机之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或光纤电缆之类的连接。客户端计算设备110、112、114可以是例如个人计算机、网络计算机等。在所描绘的示例中,服务器104向客户端计算设备110、112和114提供诸如引导文件、操作系统映像和应用程序之类的数据。在所描绘的示例中,客户端计算设备110、112、114是服务器104的客户端。SCS 100可以包括额外的服务器、客户端计算装置和未示出的其他装置。
在本发明的一些实施例中,SCS 100的网络102可以是互联网,如通过使用传输控制协议/互联网协议(TCP/IP)协议组彼此通信的网络和网关的全球集合所表示的。互联网的核心是主节点或主计算机之间的高速数据通信线路的主干,由数千个路由数据和消息的商业、政府、教育和其他计算机系统组成。在本发明的一些实施例中,SCS 100的网络102还可以包括许多不同类型的网络,例如内联网、局域网(LAN)、广域网(WAN)等。
在本发明的一些实施例中,服务器104可以是聊天服务器,并且实时代理120、CA130和顾客140(使用其相应的客户端计算设备110、112、114)可以是聊天中的参与者/客户端。尽管未示出,但是聊天可以仅具有两个参与者或许多参与者,也许几百或更多。在本发明的一些实施例中,聊天可以是任何同步会议,诸如文本聊天、音频/视频会议、即时消息等。SCS 100可利用的同步会议技术的实例包括互联网中继聊天(IRC)、jabber(XMPP)、多用户地牢(MUD)、大规模多玩家在线角色扮演游戏(MMORPG)、用于同步会议的协议(PSYC)和网络聊天。
一般来说,聊天服务可以分为一对一聊天和群聊天两种主要类型。一对一聊天服务(诸如即时消息(IM)服务)通常涉及两个参与者之间的聊天,尽管一些IM服务允许两个以上参与者。群组聊天允许成百上千的人同时连接,因为消息被广播给连接到群组或信道的所有人。信道通常基于参与者所使用的主题内容和语言来定义,并且会话聊天窗口对于每个信道可以是一个。
在本发明的一些实施例中,服务器104可以管理认证和授权以访问聊天服务。服务器104还可负责连接的用户之间的消息的接收和传送。客户端计算设备110例如提供现场代理120和服务器104之间的接口。在本发明的一些实施例中,客户端计算设备110提供在按时间顺序列表中显示消息的聊天窗口。聊天窗口还可包括文本框,在该文本框中,用户(例如,用户A 120、用户B 130、和/或用户C 140)可键入当前消息或聊天条目(CE)以供递送到服务器104。聊天窗口还可包括显示框,用于呈现从服务器104接收的信息,诸如连接的用户的数量、昵称等。
SCS 100可以用作在线电子商务设置中的客户服务工具,其中希望允许访问商家的网站(例如,由服务器104和/或客户端计算设备110、112、114中的一个或多个托管)的在线客户(例如,用户C140)立即发起与商家(例如,用户A 120和/或用户B 130)的在线谈话/聊天。在本发明的一些实施例中,CA130是被配置为使用一致性结构与人(和/或另一CA)通信的计算机系统。CA130可采用各种通信机制,包括例如文本、语音、图形、触觉、手势等,用于在输入和输出信道两者上进行通信。因而,通过SCS 100交换的消息可采取文本、语音、图形、触觉、手势等的形式。根据本发明的一些方面,CA130可采用具有自然语言处理(NLP)功能的不同形式的机器学习技术。通常,NLP是涉及计算机与人之间使用语言交互的计算机科学、人工智能和计算语言学的领域。SCS 100(具体包括CA130)可以如何用于实现本发明的实施例的附加细节本文随后更详细地描述。在本发明的一些实施例中,自然语言处理(NLP)技术与机器学习(ML)算法一起使用以生成执行根据本发明的各方面的本文描述的不同语言和文本相关任务的模型。通常,根据本发明的实施方式的NLP/ML模型可以根据各种合适的编码器-解码器架构构建。
图2示出了根据本发明的一些实施例的可以在SCS 100(在图1中示出)中利用的编码器-解码器架构200,具体包括CA 130(也在图1中示出的),以实现SCS 100的机器学习和自然语言功能。例如,本文所描述的编码器-解码器架构200和其变型可以用于实现本文所描述的不同模型中的任何一个或多个,包括例如语言模型450(图4中所示)、语言模型502(图5A中所示)、语言模型558(图5B中所示)、语言模型560(图5C中所示)和/或分类器610和模型616(图6A中所示)。通常,编码器-解码器架构200包括编码器202和解码器206。编码器202被配置和设置为获取输入序列202A(例如,以德语书写的句子(即,序列)),并且将它们映射到高维表示204。编码器202被配置为“学习”重要部分的输入序列202A并且将它们传递给高维表示204,并且省去了输入序列202A的较不重要的方面。在这个阶段,高维表示204不能被容易地理解,因为不涉及语义并且完整的映射尚未被学习。
解码器206被配置成用于将高维表示204转换成另一序列,在本示例中,该另一序列是输出序列206A(例如,用英文书写的序列)。利用编码器202和解码器206允许建立可以将“一种方式”转导(即,在不丢失语义的情况下映射)成“另一种方式”,例如,德语转为英语的模型。通过一起训练编码器202和解码器206,产生序列到序列模型。序列到序列模型能够摄取特定种类的序列并且输出另一种类的另一序列。
在本发明的实施例中,可以对变换器模型(也称为生成语言模型)(其是一种类型的编码器-解码器序列到序列模型)进行训练以执行根据本发明的各方面本文所描述的许多任务。在变换器模型中,编码器可包括一层接一层地迭代地处理输入的一组编码层,并且解码器可包括对编码器的输出做相同事情的一组解码层。每个变换器编码器层的功能是处理其输入以生成包含关于输入的哪些部分彼此相关的信息的编码。变换器编码器将其编码集合传递到下一个变换器编码器层作为输入。每个变换器解码器层相反,取所有变换器编码并使用它们并入的上下文信息处理它们,以生成输出序列。为了实现这一点,每个变换器编码器层和变换器解码器层利用关注机制。在神经网络的上下文中,关注机制是电子地模拟人类认知关注的技术。该效果增强了输入数据的重要部分并且淡出剩余部分,使得网络将更多的计算能力投入数据的该小但重要的部分上。比数据的其他部分更重要的数据部分取决于上下文并且通过训练数据通过梯度下降来学习。因此,变换器模型的关注机制将每一个其他输入的相关性加权并且相应地从它们汲取信息以产生输出。每个变换器解码器层可包括附加关注机制,该附加关注机制在变换器解码器层从变换器编码提取信息之前从先前变换器解码器的输出提取信息。变换器编码器层和变换器解码器层均具有用于输出的附加处理的前馈神经网络,并且还包含残余连接和层归一化步骤。
变换器模型可以是自回归的和/或自动编码的。自回归变换器模型利用先前的预测来生成新的预测。因此,训练自回归变换器模型涉及语言建模任务,这意味着自回归变换器模型必须学习语言以及字和短语之间的相互依赖性以及语义。文本生成是可以用自回归变换器模型执行的经典任务。另一方面,自动编码变换器模型破坏文本输入,并且生成原始输入作为回报。结果是变换器编码,该变换器编码可以用于附加的下游任务,例如问答。
执行序列到序列、自回归和/或自动编码任务的变换器模型不依赖于变换器模型的特定编码器-解码器架构,因为训练任务可以适配于变换器模型要执行的期望任务(例如,文本生成、文本理解、问题回答等)。因此,变换器模型是自回归还是自动编码主要取决于正在执行的任务的性质,以及取决于应用于变换器模型以使变换器模型能够执行所需任务的训练的训练类型。
因此,从以上描述中可以看出,适合于根据本发明的各方面使用的变换器模型包括深度学习模型,该深度学习模型利用关注机制对输入数据的不同部分的影响进行加权。类似于RNN,变换器模型被设计成处理诸如翻译、文本摘要、文本分类、问题回答等任务的顺序数据(诸如自然语言)。然而,与RNN不同,变换器模型不需要按顺序处理顺序数据。例如,如果输入数据是自然语言句子,则变换器模型在处理输入数据的结束之前不需要处理输入数据的开始。由于该特征,变换器模型允许比RNN更多的并行计算。并行计算是其中同时进行许多计算或过程的执行的一种类型的计算。大问题通常可以被分成更小的问题,然后可以同时解决这些问题。在训练的上下文中,变换器的并行计算特征与预变换器RNN模型(诸如长短期存储器(LSTM))的所需训练时间相比,能够实现用于变换器模型的训练时间的减少。
因为变换器模型在训练期间促进更多的并行化,所以与在引入变换器模型之前可能的相比,它们已经使得能够对更大的数据集进行训练。这已经导致开发预训练系统,如BERT(来自变换器的双向编码器表示)、和GPT(生成预训练变换器)、和/或BART(双向和自回归变换器),所有这些系统已经用巨大的通用语言数据集训练,并且其可以被微调以执行根据本发明的各方面本文描述的不同特定语言任务。由此,变换器模型可以经历半监督学习,所述半监督学习涉及无监督预训练(例如,相对大的数据集),接着是监督微调。
BART(双向和自回归变换器)是组合双向和自回归变换器的预先训练的NLP/ML模型。BART使用标准的基于变换器的神经机器翻译架构,其包括利用适用于一系列结束任务的序列到序列模型来构建的去噪自动编码器。例如,BART的精调训练可应用于实现各种文本生成、理解、抽象对话、问答、以及概括结束任务。预训练BART可包括两个阶段,即,文本被任意噪声函数破坏,并且序列到序列模型被学习以重建原始文本。
图3示出了说明根据本发明的实施例的计算机实施的方法300的流程图。在执行通过网络102在服务器104、存储器108、客户端计算设备110、112、114、用户A 120、用户B 130和用户C 140之间以及之中的消息交换的生成和控制的过程中,计算机实现的方法300由SCS 100实现。因此,方法300的以下描述参考图3中描述的流程图,以及图1和图4-5C中示出的相关系统、模块、模型、引擎等。方法300通过发起新的SCS会话在框302处开始。如在本文中使用的,术语“SCS会话”及其变形是指通过作为相同会话的一部分的SCS在用户之间之间交换的消息的分组以提供上下文。在用户的本地计算机显示器(例如,图4中所示的客户端计算设备110、112、114)的图形用户界面(GUI)的窗口内,频繁地向每个用户(例如,图1中所示的用户120、130、140)显示组成SCS会话的消息。作为示例,在框302发起的新的SCS会话可以作为SCS系统100上由客户140发起的SCS会话而开始。
在框304和判决框306处,方法300评估SCS会话中的消息,以确定SCS 100(并且具体地,SGC-CA130)可以在新的SCS会话中接管现场代理职责。图4描述了SCS 100如何被配置为包括语言模型450的实例,该语言模型被训练以分析SCS会话410中的消息(例如,用户消息412),以执行确定SCS会话410在SCS会话的类别中的任务,该SCS会话可以由SGC-CA 130运行,而不是由现场代理120运行。如果语言模型450没有断定SGC-CA 130可以在SCS会话410中执行现场代理操作,那么SCS 100通过客户端计算设备110将SCS会话410路由到现场代理120。返回到方法300,如果在判决框306对询问的回答为否,则方法300移动到判决框308以确定在SCS会话中是否存在任何更多的消息。如果在判决框308处对查询的回答为否,则方法300移动到框310和302,在框310处结束当前SCS会话,并且在框302处寻找新的SCS会话。如果在判决框308处对查询的回答为是,则方法300移动到框304以再次评估SCS会话中的消息,该消息现在包含如由判决框308标识的新消息。
如果在判决框306处对查询的回答为是,那么方法300移动到框312,在框312中,SCS100(并且特别是SGC-CA 130)生成并执行一组脚本,用于模拟响应于在SCS会话中的查询消息(例如,在图4中所示的用户消息412)可以采取的现场代理动作。图5A中示出了如何使用语言模型502实现在框312处描述的脚本生成功能的示例。语言模型502被训练成执行多个任务,包括通过摄取用户消息416和生成代理消息414,以及生成基于(或有条件于)在用户消息412、416中提供的信息的脚本532,将SCS会话410前进到图5A中所示的水平。在本发明的实施例中,语言模型502摄取用户消息412并且评估用户消息412是否提供用户查询以及所需的信息(如果有的话)以便搜索和揭示对用户询问的响应。例如,如果用户消息412读取“我想知道我的邮政编码10954的下载速度”,则用户消息412的该示例包括用户的查询以及语言模型502所需的信息以便开始响应于用户查询的处理。在图5A中描述的实例中,用户消息412在不提供用户的邮政编码的情况下读取“我想知道我的区域中的下载速度”,语言模型502生成代理消息414,该代理消息请求语言模型502所需要的信息(用户消息416)。
当语言模型502具有用户查询以及为了搜索和揭露对用户查询的响应而需要的信息(如果有的话)两者时,语言模型502执行生成脚本532的任务,脚本532可以被打包在宏530中。在本发明的一些实施例中,由语言模型502执行的脚本生成任务包括将SCS会话410转换成上下文字序列504,然后使用上下文字序列504来生成指令字序列506。在本发明的一些实施例中,上下文字序列504可以基于整个SCS会话410、单独的用户消息412(例如,其中用户消息412包括用户查询和语言模型502搜索对用户查询的响应所需的信息(如果有的话))、和/或用户消息412、414(其提供用户查询和语言模型502搜索对用户查询的响应所需的信息)。在本发明的一些实施例中,使用上下文字序列504来生成指令字序列506可以使用例如编码器-解码器架构200(图2所示)来实现,其中上下文字序列504对应于输入序列202A,并且其中指令字序列506对应于输出序列206A。在本发明的一些实施例中,语言模型502被训练为将代码生成功能合并到将上下文工作序列504转换成指令字序列506的任务中,其中上下文工作代码序列504首先被转换成代码的自然语言描述(例如,现场代理活动描述540),然后代码生成技术将代码的自然语言描述转换成指令字序列506。语言模型502然后将指令字序列506转换成脚本532,脚本532可以由模型502封装到宏530中。
图5B中示出了如何使用代理活动模型552实现在框312处描述的脚本执行功能的示例。代理活动模块552被配置为接收宏530并执行脚本532中定义的指令。在本发明的一些实施例中,代理活动模型552可以被实现为所谓的机器人处理自动化(RPA)算法,被配置和布置为执行脚本532,从而模拟由现场代理120使用客户端计算设备110执行的现场代理动作(例如,图5A中示出的现场代理活动描述540)以生成对用户查询412的响应。在代理活动模块552执行脚本之后,可以生成脚本结果554。在本发明的一些实施例中,脚本结果554是可以在客户端计算设备112的显示器上示出的文本、图形和图形信息,并且包括响应于用户查询412的查询结果信息556。
返回到方法300,框314分析执行脚本的结果以从执行脚本的结果识别和提取查询响应信息。图5B中示出了如何使用消息提取引擎550来实现框314的示例,其中,代理活动模块552执行脚本532以生成具有查询结果信息556的脚本结果554。消息提取引擎550用于从脚本结果552中提取查询结果信息554。在本发明的一些实施例中,脚本结果554包括计算机图像,查询结果信息556被嵌入在脚本结果554内,并且消息提取引擎550包括被配置和布置为从脚本结果554提取查询结果信息556的光学字符识别(OCR)功能。以及将文本的图像区域(例如,查询结果信息556)转换成可编辑文本。生成以可以由SGC-CA 130的下游语言模型(例如,图5C所示的语言模型560)处理和分析的方式表示查询结果信息554的图像表示序列508。消息提取引擎550的语言模型558被配置和安排为将查询结果信息556转换成图像表示序列508。在图5A和图5B中所示的其中用户查询是用户消息412的实例中,查询结果信息556是300兆比特/秒(MB/s)(例如,图5C中所示的查询结果信息556A)。
返回方法300,框316、318使用到目前为止在SCS会话中的消息、脚本和/或查询响应信息中的任意组合来生成查询响应并且将该查询响应并入SCS会话中。图5C示出了示出如何使用语言模型560来实现框316、318的示例的两个示图。在最左边的图中,语言模型560的输入/输出以它们的编码形式示出。在最右边的图中,语言模型560的输入/输出以其非编码的NL形式示出。如最左边的图所示,语言模型560被训练为以任意组合接收上下文字序列504、指令字序列506和图像表示序列508作为输入序列(例如,图2中所示的输入序列202A)。响应于输入序列,语言模型560生成响应字序列510作为输出序列(例如,图2所示的输出序列206A),该响应字序列510表示由SGC-CA 130(图1所示)的语言模型560生成的代理消息418(最右侧图所示)。如最右侧图所示,语言模型被训练成接收SCS会话410中的一些或所有消息、现场代理活动描述540以及查询结果信息556A的任意组合作为输入序列(例如,图2中所示的输入序列202A)。响应于输入序列,语言模型560生成由SGC-CA 130(在图1中示出)的语言模型560生成的代理消息418作为输出序列(例如,图2中示出的输出序列206A)。
在框318,方法300将查询响应结合到构成当前SCS会话的代理消息中,然后移动到判决框308,以确定附加消息(除了在框318添加的代理消息)已经被添加到当前SCS会话中。如果在判决框308处对查询的回答为否,则方法300移动到框310和302,在框310处结束当前SCS会话,并且在框302处寻找新的SCS会话。如果在判决框308处对询问的回答为是,则方法300移动到框304以再次评估SCS会话中的消息,该SCS会话中的消息现在包含由判决框308处的询问为是结果和框318处的操作所标识的新消息。通过图5D中所示的示图来描述方法300的完成,该图示出了与图4中所示的示图相比,根据本发明的实施方式,SGC-CA 130已经完成SCS会话410的代理响应414、418、422。
现在将提供可以用于实现本文公开的本发明的各方面的机器学习技术的附加细节。可以使用机器学习和/或自然语言处理技术来实现本文所描述的处理器的不同类型的计算机控制功能。通常,机器学习技术在所谓的“神经网络”上运行,该神经网络可以被实现为被配置成用于运行机器学习算法和/或自然语言处理算法集的可编程计算机。神经网络结合来自各种学科的知识,包括神经生理学、认知科学/心理学、物理学(统计力学)、控制理论、计算机科学、人工智能、统计/数学、模式识别、计算机视觉、并行处理和硬件(例如,数字/模拟/VLSI/光学)。
神经网络及其机器学习算法的基本功能是通过经由一种机器感知来解释非结构化传感器数据来识别模式。处于其原生形式的非结构化真实世界数据(例如,图像、声音、文本或时间序列数据)被转换成可由计算机理解和操纵的数字形式(例如,具有量值和方向的向量)。机器学习算法对现实世界数据向量执行基于学习的分析的多次迭代,直到现实世界数据向量中所包含的模式(或关系)未被覆盖并被学习为止。所学习的模式/关系用作预测模型,该预测模型可用于执行各种任务,包括例如现实世界数据的分类(或标记)和真实世界数据的聚类。分类任务通常取决于使用标记的数据集来训练神经网络(即,模型)以识别标记和数据之间的相关性。这被称为监督学习。分类任务的示例包括识别图像中的对象(例如,停止标志、行人、车道标记等)、识别视频中的手势、检测语音、检测音频中的语音、识别特定说话者、将语音转录成文本等。聚类任务识别对象之间的相似性,这些对象根据那些共同特性进行分组并且将它们与其他对象组区分开。这些组被称为“集群”。
将参考图6A和图7描述可以用于实施本发明的方面的机器学习技术的实例。将参考图6A描述根据本发明的实施方式配置和布置的机器学习模型。将参考图8提供能够实现本文描述的本发明的一个或多个实施方式的示例性计算系统和网络架构的详细描述。
图6A示出了框图,其示出了能够实施本文所描述的本发明的各个方面的分类器系统600。更具体地,系统600的功能在本发明的实施例中用于生成可用于实现本发明的实施例中的计算机功能的不同模型和/或子模型。系统600包括通过网络604与分类器610通信的多个数据源602。在本发明的一些方面,数据源602可绕过网络604并直接馈送到分类器610。数据源602提供将由根据本发明的各实施例的分类器610评估的数据/信息输入。数据源602还提供可以由分类器610用于训练和/或更新由分类器610创建的模型616的数据/信息输入。数据源602可被实现为各种各样的数据源,包括但不限于被配置成收集实时数据的传感器、数据存储库(包括训练数据存储库)、以及来自其他分类器的输出。网络604可以是任何类型的通信网络,包括但不限于局域网、广域网、私有网络、互联网等。
分类器610可以被实现为由可编程计算机(如处理系统800(在图8中示出))执行的算法。如图6A所示,分类器610包括一套机器学习(ML)算法612、自然语言处理(NLP)算法614和作为由ML算法612生成(或学习)的关系(或预测)算法的模型616。为了便于说明和解释,分别描述分类器610的算法612、614、616。在本发明的实施例中,由分类器610的各种算法612、614、616执行的功能可以与所示不同地分布。例如,在分类器610被配置为执行具有子任务的整体任务的情况下,ML算法612的集合可以被分段,使得ML算法612的一部分执行每个子任务,并且ML算法612的一部分执行整体任务。此外,在本发明的一些实施例中,NLP算法614可以集成在ML算法612内。
NLP算法614包括语音识别功能,该语音识别功能允许分类器610并且更具体地ML算法612接收自然语言数据(文本和音频)并且应用语言处理、信息检索和机器学习的元素以从自然语言输入推导含义并且基于推导的含义潜在地采取行动。根据本发明的方面使用的NLP算法614还可以包括允许分类器610将结果620翻译为自然语言(文本和音频)的语音合成功能以作为自然语言通信传送结果620的各方面。
NLP和ML算法614、612接收并评估来自数据源602的输入数据(即,训练数据和被分析的数据)。ML算法612包括解释和利用输入数据的格式所必需的功能。例如,在数据源602包括图像数据的情况下,ML算法612可以包括被配置为解释图像数据的视觉识别软件。ML算法612将机器学习技术应用于所接收的训练数据(例如,从一个或多个数据源602接收的数据),以便随着时间推移创建/训练/更新对分类器610被设计为完成的整体任务和子任务建模的一个或多个模型616。
图6B示出了根据本发明的各方面的会话代理数据602A的示例,所述会话代理数据对应于图6A中所示的训练数据602,并且可以用于训练在SGC-CA 130中使用的各种语言模型。在本发明的各方面中,可以训练支持SGC-CA130的功能的各种语言模型,以支持各种类别的SCS会话410。在本发明的一些实施例中,SCS会话类别可以各自至少部分地基于以下评估:该类别涉及超出在基于规则的CA中可以有效实施的现场代理认知确定水平;并且该类别涉及现场代理认知确定的水平,该水平不是如此复杂以至于它们将由现场代理更有效地和/或高效地进行。为了训练的目的,会话代理训练数据602A是现场代理运行SCS会话,并且收集和标记现场代理运行SCS会话的数据。在本发明的实施方式中,在图6B中描述的现场代理运行SCS会话的标记的数据可以包括但不限于识别“目前为止会话”的数据,其对应于现场代理运行SCS会话410A;标识现场代理活动的数据(对应于现场代理活动描述540A);标识响应于由现场代理在现场代理运行SCS会话期间执行的现场代理活动而生成的输出(例如,“生成的一组屏幕”)的数据(对应于查询结果信息556A);以及识别由现场代理基于响应于由现场代理在现场代理运行SCS会话期间执行的现场代理活动而生成的输出而生成的“响应”的数据,其对应于现场代理消息418A。标记的会话训练数据602A用于训练在执行SCS会话的现场代理职责时支持SGC-CA130的功能的不同语言模型。在本发明的一些实施例中,将训练应用于尚未被预训练的语言模型。在本发明的一些实施例中,训练是应用于预训练模型的所谓的“微调”训练,其示例包括之前描述的变换器模型架构,如BERT、GPT、GPT1、GPT2、BART等。
现在共同参考图6A和图7,图7示出了由ML算法612执行以生成上述模型616的学习阶段700的实例。在学习阶段700中,分类器610从训练数据中提取特征并且将这些特征转换成可以由ML算法612识别和分析的向量表示。通过ML算法612分析特征向量以针对目标模型(或模型的任务)“分类”训练数据并且揭示分类的训练数据之间和之间的关系。ML算法612的适当实现方式的实例包括但不限于神经网络、支持向量机(SVM)、逻辑回归、决策树、隐马尔可夫模型(HMM)等。由ML算法612执行的学习或训练可以是监督的、无监督的、或包括监督的和无监督的学习的方面的混合的。监督学习是当训练数据已经可用并且被分类/标记时的。无监督学习是当训练数据未被分类/标记时的,所以必须通过分类器610和ML算法612的迭代来开发。无监督学习可利用附加的学习/训练方法,包括例如聚类、异常检测、神经网络、深度学习等。
当通过ML算法612充分训练模型616时,访问生成“真实世界”数据的数据源602,并且将“真实世界”数据应用于模型616以生成结果620的可用版本。在本发明的一些实施例中,结果620可以被反馈到分类器610,并且被ML算法612用作用于更新和/或精炼模型616的附加训练数据。
在本发明的多个方面中,ML算法612和模型616可以被配置成用于将置信水平(CL)应用于它们的结果/确定中的不同结果/确定(包括结果620),以便提高特定结果/确定的总体准确度。当ML算法612和/或模型616做出确定或生成CL值低于预定阈值(TH)(即,CL<TH)的结果时,该结果/确定可以被分类为具有足够低的“置信度”以证明确定/结果无效的结论是合理的,并且这个结论可以用于确定何时、如何和/或是否在下游处理中处理确定/结果。如果CL>TH,则该确定/结果可以被认为是有效的,并且这个结论可以用于确定何时、如何和/或是否在下游处理中对这些确定/结果进行处理。可以提供许多不同的预定TH水平。具有CL>TH的确定/结果可以从最高CL>TH到最低CL>TH进行排序,以便区分何时、如何和/或是否在下游处理中处理确定/结果的优先级。
在本发明的多个方面中,分类器610可以被配置成用于将置信水平(CL)应用于结果620。当分类器610确定结果620中的CL低于预定阈值(TH)(即,CL<TH)时,可以将结果620分类为足够低以证明结果620中的“无信心”的分类是合理的。如果CL>TH,则结果620可被分类为足够高以证明结果620有效的确定是合理的。可以提供许多不同的预定TH水平,使得CL>TH的结果620可以从最高CL>TH到最低CL>TH进行排序。
由分类器610、并且更具体地由ML算法612执行的功能可以被组织为加权的有向图,其中,节点是人工神经元(例如,在人脑的神经元之后建模),并且其中,加权的有向边连接节点。分类器610的有向图可以被组织成使得某些节点形成输入层节点,某些节点形成隐藏层节点,并且某些节点形成输出层节点。输入层节点耦合到隐藏层节点,隐藏层节点耦合到输出层节点。每个节点通过连接路径连接到相邻层中的每个节点,连接路径可以被描绘为各自具有连接强度的方向箭头。可以提供多个输入层、多个隐藏层和多个输出层。当提供多个隐藏层时,分类器610可执行无监督的深度学习以执行分类器610的所分配的任务。
类似于人类大脑的功能,每个输入层节点接收没有连接强度调整并且没有节点求和的输入。每个隐藏层节点根据与相关连接路径相关联的连接强度从所有输入层节点接收其输入。对隐藏层节点和输出层节点执行类似的连接强度相乘和节点求和。
分类器610的加权有向图一次一个地处理数据记录(例如,来自数据源602的输出),并且其通过将记录的初始任意分类与记录的已知实际分类进行比较“学习”。使用被称为“反向传播”(即,“错误的反向传播”)的训练方法,来自第一记录的初始分类的错误被反馈回分类器610的加权有向图并且用于第二次到处修改加权有向图的加权连接,并且此反馈过程持续许多迭代。在分类器610的加权有向图的训练阶段中,每个记录的正确分类是已知的,并且因此可以向输出节点分配“正确”值。例如,对应于正确类别的节点的节点值“1”(或0.9),以及其他节点的节点值“0”(或0.1)。因此,有可能将这些输出节点的加权有向图的计算值与这些“正确”值进行比较,并且计算每个节点的误差项(即,“增量”规则)。然后,这些误差项用于调整隐藏层中的权重,从而使得在下一次迭代中,输出值将更接近于“正确”值。
图8展示了计算机系统800的示例,该计算机系统可以用于实现本文所描述的本发明的不同实施例的任何基于计算机的部件。计算机系统800包括被配置为执行根据本发明的各方面的本文所描述的基于内容的语义监视操作的各个方面的示例性计算设备(“计算机”)820。除了计算机820之外,示例性计算机系统800包括网络834,该网络834将计算机820连接到附加系统(未描绘)并且可以包括一个或多个广域网(WAN)和/或局域网(LAN),诸如互联网、内联网、和/或无线通信网络。计算机820和附加系统经由网络834通信,例如以在它们之间传递数据。
示例性计算机820包括经由总线832进行通信的处理器核822、主存储器(“存储器”)828、以及(多个)输入/输出部件830。处理器核822包括高速缓存存储器(“高速缓存”)824和控制器826,其包括分支预测结构和相关联的搜索、命中、检测和更新逻辑,这将在下面更详细地描述。高速缓存824可以包括在处理器822上或片外的多个高速缓存级(未描绘)。存储器828可以包括存储在其中的不同数据,例如指令、软件、例程等,其例如可以通过控制器826传送到高速缓存824/从高速缓存824传送,用于由处理器822执行。(一个或多个)输入/输出部件830可包括促进去往/来自计算机820的本地和/或远程输入/输出操作的一个或多个部件,诸如显示器、键盘、调制解调器、网络适配器等。(未描绘)。
本文参考相关附图描述本发明的不同实施例。在不脱离本发明的范围的情况下,可设计本发明的替代实施例。在以下描述和附图中,在元件之间阐述了各种连接和位置关系(例如,上方、下方、相邻等)。除非另有规定,否则这些连接和/或位置关系可以是直接或间接的,并且本发明在此方面并非意图是限制性的。因此,实体的连接可以指直接的或间接的连接,并且实体之间的位置关系可以是直接的或间接的位置关系。此外,本文描述的各种任务和过程步骤可以并入具有本文未详细描述的附加步骤或功能的更全面的程序或过程中。
本文使用的术语仅是出于描述具体实施例的目的,并不旨在是限制性的。如本文中使用的,除非上下文另有明确指示,否则单数形式“一”、“一个”和“该”旨在也包括复数形式。还应当理解,当在本说明书中使用术语“包括(comprises)”和/或“包含(comprising)”时,其指定所述特征、整体、步骤、操作、元件和/或部件的存在,但不排除一个或多个其他特征、整体、步骤、操作、元件部件和/或其组合的存在或添加。
以下定义和缩写将用于解释权利要求书和说明书。如本文使用的,术语“包括(comprises)”、“包括(comprising)”、“包含(includes)”、“包含(including)”、“具有(has)”、“具有(having)”、“含有(contains)”或“含有(containing)”或其任何其他变体旨在涵盖非排他性的包括。例如,包含一系列要素的组合物、混合物、工艺、方法、物品或设备不必仅限于那些要素,而是可以包括未明确列出的或这种组合物、混合物、工艺、方法、物品或设备固有的其他要素。
此外,术语“示例性”在本文中用于指“用作示例、实例或说明”。本文中描述为“示例性”的任何实施方式或设计不一定被解释为优于或优于其他实施方式或设计。术语“至少一个”和“一个或多个”应理解为包括大于或等于一的任何整数,即。一个、两个、三个、四个等。术语“多个”应理解为包括大于或等于二的任何整数,即。两个、三个、四个、五个等。术语“连接”可包括间接“连接”和直接“连接”。
术语“约”、“基本上”、“大约”及其变体旨在包括与基于在提交申请时可用的设备的特定量的测量相关联的误差程度。例如,“约”可以包括给定值的±8%或5%、或2%的范围。
如本文中所使用的,在机器学习算法的上下文中,术语“输入数据”及其变体旨在涵盖在机器学习算法处接收并由其使用以执行训练、学习和/或分类操作的任何类型的数据或其他信息。
如本文中所使用的,在机器学习算法的上下文中,术语“训练数据”及其变体旨在涵盖在机器学习算法处接收并且由所述机器学习算法使用以执行训练和/或学习操作的任何类型的数据或其他信息。
本发明可以是系统、方法、和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。
计算机可读存储介质可以是能够保留和存储供指令执行设备使用的指令的有形设备。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体的示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式紧凑盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或者凹槽中具有记录在其上的指令的凸起结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
本文所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载至相应的计算/处理设备或下载至外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(诸如Smalltalk、C++等)和常规的过程式程序设计语言(诸如“C”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
本文参照根据本发明的实施例的方法、设备(系统)和计算机程序产品的流程图和/或框图描述本发明的多个方面。应当理解,流程图和/或框图的每个框以及流程图和/或框图中各框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,这样使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个框中规定的功能/动作的方面的指令的制造品。
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置、或其他设备上,以便使得在该计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现的过程,从而使得在该计算机、其他可编程装置、或其他设备上执行的指令实现流程图和/或框图的或多个框中所指定的功能/动作。
附图中的流程图和框图展示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
本文使用的术语仅是出于描述具体实施例的目的,并不旨在限制本发明。如本文中使用的,除非上下文另有明确指示,否则单数形式“一”、“一个”和“该”旨在也包括复数形式。还应当理解,当在本说明书中使用术语“包括(comprises)”和/或“包括(comprising)”时,其指定所述特征、整体、步骤、操作、元件和/或部件的存在,但不排除一个或多个其他特征、整体、步骤、操作、元件部件和/或其组合的存在或添加。
以下权利要求中的所有装置或步骤加上功能元件的相应结构、材料、动作和等效物旨在包括用于结合如具体要求保护的其他要求保护的元件来执行功能的任何结构、材料或动作。已经出于说明和描述的目的呈现了本发明的描述,但并不旨在是详尽的或限于所公开形式的本发明。在不背离本发明的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。选择和描述实施例以便最好地解释本发明的原理和实际应用,并且使本领域的其他普通技术人员能够理解本发明的具有适合于预期的特定用途的各种修改的各种实施例。
将理解的是,本领域技术人员现在和将来都可以做出落入所附权利要求书的范围内的不同改进和增强。
Claims (9)
1.一种对在同步会议系统(SCS)上电子地接收到的查询做出响应的计算机实现的方法,所述计算机实现方法包括:
至少部分基于所述查询,使用所述SCS的处理器生成包括一个或多个脚本计算机指令的脚本;
使用所述处理器执行所述脚本计算机指令以生成脚本计算机指令结果,其中,所述脚本计算机指令结果包括响应于所述查询的查询响应信息;以及
至少部分地基于所述查询和所述查询响应信息,使用所述处理器来生成响应于所述查询的查询响应。
2.根据权利要求1所述的计算机实现的方法,其中:
所述一个或多个脚本计算机指令,当由所述处理器执行时,模拟现场代理处理器控制动作;以及
所述现场代理处理器控制动作包括由现场代理尝试利用所述处理器生成所述查询响应信息期间可以由现场代理采取的处理器控制动作。
3.根据权利要求1所述的计算机实现的方法,其中,使用所述处理器生成所述查询响应进一步至少部分基于所述一个或多个脚本计算机指令。
4.根据权利要求1所述的计算机实现的方法,其中:
所述处理器包括被训练为执行第一任务的第一模型;以及
所述第一任务包括至少部分地基于所述查询来生成所述脚本。
5.根据权利要求4所述的计算机实现的方法,其中:
所述处理器进一步包括被训练为执行第二任务的第二模型;以及
所述第二任务包括至少部分地基于所述查询和所述查询响应信息来生成所述查询响应。
6.根据权利要求4所述的计算机实现的方法,其中:
所述处理器进一步包括被训练为执行第二任务的第二模型;以及
所述第二任务包括至少部分地基于所述查询、所述一个或多个脚本计算机指令和所述查询响应信息来生成所述查询响应。
7.根据权利要求1所述的计算机实现的方法,其中:
所述查询由用户生成;
所述查询被包括在所述用户与现场代理之间交换的一组自然语言消息中;
所述处理器包括被训练为执行第一任务的第一模型;
所述第一任务包括至少部分地基于在所述用户和所述现场代理之间交换的所述一组自然语言消息来生成所述脚本;
所述处理器进一步包括被训练为执行第二任务的第二模型;以及
所述第二任务包括至少部分地基于以下来生成所述查询响应:
在所述用户与所述现场代理之间交换的所述一组自然语言消息;
所述一个或多个脚本计算机指令;以及
所述查询响应信息。
8.一种对在同步会议系统(SCS)上电子地接收到的查询做出响应的计算机系统,所述计算机系统包括通信地耦接至处理器的存储器,其中,所述处理器被配置为执行根据权利要求1-7中任一项所述的处理器操作。
9.一种对在同步会议系统(SCS)上电子地接收到的查询做出响应的计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机可读程序,其中,当在所述处理器上执行所述计算机可读程序时,所述计算机可读程序使所述处理器执行根据权利要求1-7中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/331,840 | 2021-05-27 | ||
US17/331,840 US11856038B2 (en) | 2021-05-27 | 2021-05-27 | Cognitively learning to generate scripts that simulate live-agent actions and responses in synchronous conferencing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115408502A true CN115408502A (zh) | 2022-11-29 |
Family
ID=84157712
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210577685.0A Pending CN115408502A (zh) | 2021-05-27 | 2022-05-25 | 在同步会议中认知学习以生成模拟现场代理动作的脚本 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11856038B2 (zh) |
JP (1) | JP2022183122A (zh) |
CN (1) | CN115408502A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230008868A1 (en) * | 2021-07-08 | 2023-01-12 | Nippon Telegraph And Telephone Corporation | User authentication device, user authentication method, and user authentication computer program |
US11757808B2 (en) * | 2021-10-05 | 2023-09-12 | Nb Ventures, Inc. | Data processing for enterprise application chatbot |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7949529B2 (en) | 2005-08-29 | 2011-05-24 | Voicebox Technologies, Inc. | Mobile systems and methods of supporting natural language human-machine interactions |
US20090043749A1 (en) | 2007-08-06 | 2009-02-12 | Garg Priyank S | Extracting query intent from query logs |
EP2839391A4 (en) | 2012-04-20 | 2016-01-27 | Maluuba Inc | CONVERSATION AGENT |
US9177318B2 (en) | 2013-04-22 | 2015-11-03 | Palo Alto Research Center Incorporated | Method and apparatus for customizing conversation agents based on user characteristics using a relevance score for automatic statements, and a response prediction function |
US10274911B2 (en) | 2015-06-25 | 2019-04-30 | Intel Corporation | Conversational interface for matching text of spoken input based on context model |
EP4365784A2 (en) | 2016-04-18 | 2024-05-08 | Google LLC | Automated assistant invocation of appropriate agent |
US10026092B2 (en) * | 2016-12-09 | 2018-07-17 | Nuance Communications, Inc. | Learning and automating agent actions |
US20190340485A1 (en) * | 2018-05-07 | 2019-11-07 | Phuc Ngo | Method and system for generating a responsive communication from a chatbot to network with plant monitoring systems |
US10832010B2 (en) * | 2018-06-05 | 2020-11-10 | International Business Machines Corporation | Training of conversational agent using natural language |
US20200005117A1 (en) | 2018-06-28 | 2020-01-02 | Microsoft Technology Licensing, Llc | Artificial intelligence assisted content authoring for automated agents |
US10783877B2 (en) | 2018-07-24 | 2020-09-22 | Accenture Global Solutions Limited | Word clustering and categorization |
WO2021026435A1 (en) * | 2019-08-07 | 2021-02-11 | Liveperson, Inc. | Systems and methods for transferring messaging to automation |
US11055494B2 (en) * | 2019-08-09 | 2021-07-06 | Microsoft Technology Licensing, Llc. | Matrix based bot implementation |
US11379253B2 (en) * | 2020-11-30 | 2022-07-05 | International Business Machines Corporation | Training chatbots for remote troubleshooting |
-
2021
- 2021-05-27 US US17/331,840 patent/US11856038B2/en active Active
-
2022
- 2022-05-25 CN CN202210577685.0A patent/CN115408502A/zh active Pending
- 2022-05-26 JP JP2022086307A patent/JP2022183122A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220385703A1 (en) | 2022-12-01 |
US11856038B2 (en) | 2023-12-26 |
JP2022183122A (ja) | 2022-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11823061B2 (en) | Systems and methods for continual updating of response generation by an artificial intelligence chatbot | |
Taniguchi et al. | Survey on frontiers of language and robotics | |
CN111104512B (zh) | 游戏评论的处理方法及相关设备 | |
CN115408502A (zh) | 在同步会议中认知学习以生成模拟现场代理动作的脚本 | |
Doering et al. | Modeling interaction structure for robot imitation learning of human social behavior | |
US20220139245A1 (en) | Using personalized knowledge patterns to generate personalized learning-based guidance | |
Hung et al. | Towards a method for evaluating naturalness in conversational dialog systems | |
Demchuk et al. | Commercial Content Distribution System Based on Neural Network and Machine Learning. | |
Peters | Design and implementation of a chatbot in the context of customer support | |
Mai et al. | A unimodal representation learning and recurrent decomposition fusion structure for utterance-level multimodal embedding learning | |
Hassan et al. | Advancing Scientific Research in Computer Science by ChatGPT and LLaMA—A Review | |
KS et al. | Conversational Chatbot Builder–Smarter Virtual Assistance with Domain Specific AI | |
Lotfian et al. | Over-sampling emotional speech data based on subjective evaluations provided by multiple individuals | |
US11604962B2 (en) | Method and system for training a machine learning system using context injection | |
KR20220066554A (ko) | Qa 모델을 이용하여 지식 그래프를 구축하는 방법, 장치 및 컴퓨터 프로그램 | |
US10970490B2 (en) | Automatic evaluation of artificial intelligence-based processes | |
Ghosh et al. | Context and knowledge enriched transformer framework for emotion recognition in conversations | |
Cheng et al. | AnthroScore: A Computational Linguistic Measure of Anthropomorphism | |
Chauhan et al. | Mhadig: A multilingual humor-aided multiparty dialogue generation in multimodal conversational setting | |
Raundale et al. | Dialog prediction in institute admission: A deep learning way | |
US20220198255A1 (en) | Training a semantic parser using action templates | |
Kulatilake et al. | Prodep: Smart social media procrastination and depression tracker | |
CN114330297A (zh) | 语言模型的预训练方法、语言文本的处理方法及装置 | |
Guimarães et al. | Towards Explainable Social Agent Authoring tools: A case study on FAtiMA-Toolkit | |
Jeyanthi et al. | AI‐Based Development of Student E‐Learning Framework |
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 |