CN109792402B - 自动响应用户的请求 - Google Patents
自动响应用户的请求 Download PDFInfo
- Publication number
- CN109792402B CN109792402B CN201680089113.0A CN201680089113A CN109792402B CN 109792402 B CN109792402 B CN 109792402B CN 201680089113 A CN201680089113 A CN 201680089113A CN 109792402 B CN109792402 B CN 109792402B
- Authority
- CN
- China
- Prior art keywords
- node
- customer
- classifier
- scores
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/01—Customer relationship services
- G06Q30/015—Providing customer assistance, e.g. assisting a customer within a business location or via helpdesk
- G06Q30/016—After-sales
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- 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
-
- 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/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- 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
- 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
-
- 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/044—Recurrent networks, e.g. Hopfield 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of 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/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- 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
- 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/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/53—Network services using third party service providers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/42382—Text-based messaging services in telephone networks such as PSTN/ISDN, e.g. User-to-User Signalling or Short Message Service for fixed networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/51—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
- H04M3/5141—Details of processing calls and other types of contacts in an unified manner
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/105—Human resources
- G06Q10/1053—Employment or hiring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/01—Customer relationship services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/51—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
- H04M3/5183—Call or contact centers with computer-telephony arrangements
Abstract
用户可以诸如通过说出或录入文本来使用自然语言请求帮助或信息。可以通过执行语义处理以理解请求并制定适当的响应来自动确定对用户请求的响应。可以通过从请求计算特征、使用特征来选择对应于请求的图的节点并然后使得执行要向用户提供响应的动作来自动确定响应。例如,动作可以包括向用户提供信息、从用户请求进一步的信息或者使用户接通客户服务代表。
Description
优先权声明
本专利申请要求以下临时专利申请的权益,藉此通过引用将其整体并入:2016年7月8日提交的美国专利申请序列号62/359,841(ASAP-0001-P01)。
技术领域
本发明涉及使用语义处理的自动化通信或辅助通信。
背景技术
公司需要与客户进行有效交互来为其客户提供服务。例如,客户可能需要获得有关公司服务的信息,可能有关于计费的问题,或者可能需要来自公司的技术支持。公司以各种不同的方式与客户交互。公司可以有网站,并且客户可以导航该网站来执行各种动作。公司可以有在诸如智能电话或平板电脑之类的用户设备上运行的应用程序(“应用(app)”),其提供与网站类似的服务。公司可以有电话号码,客户可以呼叫该号码以通过交互式语音应答来获得信息或与客户服务代表交谈。公司还可以使用各种社交媒体服务(诸如脸书或推特)来响应客户。
允许客户与公司交互的一些现有技术可能对客户造成麻烦。导航到网站或应用程序上的正确页面或导航电话呼叫中的语音菜单可能非常耗时。允许客户与公司交互的一些现有技术可能公司实现起来较为昂贵。雇佣客户服务代表来以人工方式响应请求和接听电话呼叫可能是一大笔开销。
附图说明
通过参考以下附图可以理解本发明及其某些实施例的以下详细描述:
图1A和1B例示了客户设备上的示例用户界面。
图2例示了使用语义处理来响应客户请求的系统。
图3例示了使用语义处理自动响应客户请求的系统。
图4例示了可以用于确定响应客户请求的动作的动作图。
图5是使用语义处理来自动响应客户请求的示例实现的流程图。
图6是用于选择节点的贪婪算法的示例实现的流程图。
图7是用于选择节点的束搜索算法的示例实现的流程图。
图8例示了可以用于选择动作图的节点的搜索图。
图9例示了可以用于使用基于词汇的语言模型来确定文本完成的搜索图。
图10例示了使用分类器来确定文本完成的系统。
图11例示了可以用于使用基于字符的语言模型来确定文本完成的搜索图。
图12是使用语义处理来确定文本完成的示例实现的流程图。
图13例示了使用语义处理来确定建议响应的系统。
图14例示了可以用于建议响应的搜索图。
图15是使用语义处理来建议响应的示例实现的流程图。
图16例示了使用语义处理来建议资源的系统。
图17是使用语义处理来建议资源的示例实现的流程图。
图18A-18Q例示了客户和客户支持代表之间的客户支持会话的示例用户界面。
图19A-19C例示了用于提供语义处理服务的系统。
图20是提供语义处理服务的示例实现的流程图。
图21是可以用于执行语义处理的示例性计算设备。
具体实施方式
本文描述的是用于使用语义处理来响应用户的请求的技术。尽管本文描述的技术可以用于各种各样的用户和请求,但是为了清楚地呈现,将使用公司提供对客户请求的响应的示例。然而,本文描述的技术不限于客户和公司,可以向来自并非客户的用户的请求提供响应,并且响应可以来自并非公司的实体,比如个人。语义处理可以用于自动化对请求的响应并帮助响应用户制定对请求的响应。
语义处理可以用于为客户提供完全自动化的体验。语义处理的使用允许客户通过
使用自然语言提出请求来获得所需信息或所需支持。使用自然语言进行请求可以允许客户
比用其他提出请求的方法更快地接收到对他的请求的解决方案。在某些情况下,客户的请
求可以通过单次交互来解决。例如,在客户询问“我的包裹何时到达”的情况下,响应可能
是“您的包裹定于周三到达,其跟踪号码为1234”。
图1A和1B例示了可以用于提供自动响应的客户设备上的示例用户界面100。图1A例示了在客户设备上呈现的文本框110的示例,客户可以在该文本框110处向公司发送请求。客户可以以如同客户向人发送消息的方式同样的方式使用自然语言键入请求。客户可以使用诸如按钮120之类的按钮来提交请求。在一些实现中,客户可以说出请求,并且可以在客户设备上或在服务器计算机处将语音转换为文本。
在客户提交请求之后,可以自动处理该请求。例如,语义处理技术可以用于理解请求并提供响应。图1B例示了对客户请求的三个示例响应。在用户界面130中,提供立即回答客户问题的响应。在用户界面140中,自动处理已确定需要来自客户的更多信息以提供响应,并且要求客户提供附加信息。在用户界面140中,要求客户选择几个可能选项中的一个,但是在其他实例或实现中,可以要求客户以其他方式提供附加信息,诸如通过键入附加文本来阐明该响应。在用户界面150中,自动处理已确定使客户接通(connect)客户服务代表。本文描述的技术不限于前述示例响应,并且可以向客户提供任何合适的响应。例如,可以立即向请求变更他或她的电话号码的客户提供表格以允许客户录入新的电话号码(例如,通过将应用自动导航到适当的屏幕或提供适当的网页)。
除了提供自动响应之外,还可以使用语义处理来帮助客户服务代表(CSR)响应用户的请求。例如,在客户和CSR之间的对话中,可以使用语义处理来理解客户请求的含义并向CSR提供建议,诸如当CSR开始键入响应时,可以建议键入文本的完成;在CSR开始键入之前,可以向CSR建议完整响应;可以向CSR建议资源,以向CSR提供相关信息,或使CSR更易于执行动作;等等。
语义处理系统
图2例示了用于使用语义处理来响应客户请求的系统200。在图2中,客户可以使用客户设备210与公司通信。客户设备210可以包括任何适当的设备,诸如智能电话、平板电脑、可穿戴设备或物联网设备。客户可以使用任何适当的技术来提交请求,诸如向在客户设备210上运行的应用(例如,特定公司的应用或为处理客户请求而创建的第三方应用)键入或说出请求、在网页上键入或说出请求、发送文本消息或发送电子邮件。如本文所使用的,文本消息包括作为文本发送的任何消息,包括但不限于使用SMS(短消息服务)或专用应用程序(例如,脸书消息递送器(messenger)、苹果iMessage、谷歌Hangouts或WhatsApp)发送的消息。
客户的请求可以由客户设备210发送给应用程序接口组件220,并且可以使用任何适当的网络(例如,互联网、Wi-Fi或蜂窝数据网络)直接或间接地发送。可以使用任何适当的传输协议来发送请求,所述传输协议包括发送客户说出请求的音频或消息的文本中的一个或多个。在客户向客户设备210说出请求的情况下,语音识别可以由客户设备210执行、在服务器计算机处执行或由图2的另一组件执行。应用程序接口组件220可以包括例如由公司操作的一个或多个服务器计算机。
应用程序接口组件220接收客户请求,并且可以协调对客户请求的进一步处理。在要自动处理客户请求的情况下,可以将客户请求路由到语义响应组件240来确定响应而无需CSR参与。语义响应组件240可以对客户请求的文本执行语义处理以理解请求的含义、选择要响应于请求而执行的动作,并且使得将响应呈现给客户。另外,语义响应组件240可以向应用程序接口组件220提供结果以供客户支持组件230使用。
在要将来自客户设备210的客户请求发送给CSR的情况下,可以将客户请求路由到客户支持组件230以将请求引导到CSR并从CSR获得响应。客户支持组件230可以与多个CSR连接,诸如CSR 251、CSR 252和CSR 253。每个CSR可以使用用户接口(诸如计算机上的应用程序或网页)来接收客户请求并提供对它们的响应。
客户支持组件230可以包括用来帮助CSR的其他组件,诸如自动完成组件231、自动建议响应组件232和自动建议资源组件233。这三个组件可以对客户和CSR之间的消息的文本执行语义处理以理解对话的含义,并向CSR提供建议以帮助CSR响应客户。自动完成组件231可以通过提供对CSR已开始键入的文本的建议完成来帮助CSR,自动建议资源组件232可以在CSR开始键入之前向CSR建议完整响应,并且自动建议资源组件233可以向CSR建议资源,以为CSR提供相关信息或允许CSR采取适当的动作。
系统200是使用语义处理来响应客户请求的一个示例实现,但是本文描述的技术可以使用任何适当的实现而不限于图2的示例。例如,图2的组件可以分成多个组件或者合并在一起,一些处理可以由客户设备210执行,并且可以包括其他组件,诸如负载平衡或可以与网络服务一起使用的任何其他组件。另外,系统200的一些组件可以由正对其产品和服务提供支持的公司来实现,而其他组件可以由第三方提供。例如,公司可以提供与CSR 251、252和253相关联的客户支持组件230,但是可以具有由第三方提供的语义响应组件240功能性。
自动化响应
图3例示了用于实现语义响应组件240的系统300。系统300可以从应用程序接口组件220接收客户请求(例如,以文本的形式),并使用NLP(自然语言处理)特征提取组件310、节点选择器组件320和动作选择器组件330中的一个或多个来对请求执行自动化语义处理,下文将更详细地描述这些。
NLP特征提取组件310可以根据文本来计算特征以在后续处理中使用。特征可以包括用于自然语言处理的任何适当特征。可以由NLP特征提取组件310执行的操作可以包括预处理、编码和特征提取中的一个或多个。
NLP特征提取组件310中的预处理可以包括任何适当的预处理任务。例如,可以将文本转换为小写、剥离标点符号并标记字符串(tokenize)。在一些实现中,可以用指示该词汇不在允许的词汇列表上的未知标记(例如,“UNK”)来替换较不常见的词汇(例如,不在允许的词汇列表上的词汇)。
在预处理之后,可以对文本进行编码。可以使用任何适当的编码技术。在一些实现中,可以将文本向量化为词包(BOW)向量、术语频率逆文档频率(TFIDF)向量或词嵌入矩阵(例如,如使用Word2Vec模型或GloVE算法获得的)。
在编码之后,可以提取或计算特征。可以使用任何适当的模型。在一些实现中,在用BOW或TFIDF编码文本的情况下,可以通过用主题模型处理编码文本或通过用神经网络处理编码文本来提取特征,所述主题模型诸如潜在语义索引模型或潜在Dirichlet分配模型,所述神经网络诸如多层感知器神经网络。在一些实现中,在使用词嵌入对文本进行编码的情况下,可以通过用神经网络处理矩阵来获得特征,所述神经网络诸如深度平均网络、卷积神经网络、循环神经网络、递归神经网络或任何其他合适类型的神经网络。
可以处理所述特征以确定要响应于客户请求而采取的适当动作。在一些实现中,可以使用动作图来组织可能的动作,其中图是通过边或链接来连接的数个节点。例如,动作图可以是有向非循环图或树。
如本文所使用的,图是可以用于在计算机上实现算法的数据结构或数据类型。图包括可以通过边或弧来连接的节点或顶点。图的节点和/或边可以与正在处理的其他数据相关联。在一些实现中,边可以是有向的,这允许仅在一个方向上的节点之间的转换。虽然本文中可视地呈现了图,但是当用于实现算法时,图不需要可视地呈现,并且可以使用描述图的数据(例如,描述节点和边的数据)来实现算法。
图4例示了可以用于确定响应于客户请求的动作的示例动作图。尽管图4的动作图被示为树,但动作图不必须是树,而是可以是另一种类型的图。在图4的示例中,顶部节点是根节点,并且所有其他节点可以直接或间接连接到根节点。根节点下方是标注为维修、账户/计费和登录/密码的三个节点。这三个节点中的每一个可以用于确定用来响应于对应类型的请求的动作。
例如,维修节点连接到标注为电话、互联网和电视的另外三个节点。电话、互联网和电视节点中的每一个可以与可以用于提供针对那些特定类型的维修的响应的动作相关联。图4还显示了节点的其他示例,其提供了比上述节点更具体的动作类型的示例(例如,互联网节点下方的四个节点)。图4中的虚线指示了边,在那些边处可能有后续节点但为了清楚起见已省略。
在一些实现中,节点选择器组件320可以使用NLP特征从动作图中选择节点。动作图的所选节点可以与一个或多个可能动作相关联,并且动作选择器组件330然后可以从与所选节点相关联的这一个或多个动作中选择动作。
在一些实现中,动作图的每个节点可以与节点选择器分类器相关联,其中节点选择器分类器被配置成确定指示节点与客户请求之间的匹配的分数(例如,似然性或概率)。节点选择器组件320可以通过使用节点选择器分类器和NLP特征计算分数来使用节点选择器分类器选择节点。在一些实现中,动作图的至少一些节点还可以与动作选择器分类器相关联,并且动作选择器组件330可以使用动作选择器分类器来选择动作。然而,在一些实现中,动作图的每个节点可以与单个动作相关联,并且可以省略动作选择器组件330和动作选择器分类器。
图5是使用语义处理来确定要向客户提供响应的动作的示例实现的流程图。在图5中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤510处,获得客户请求的文本,并且在步骤520处,从客户文本获得特征。可以使用本文描述的任何技术来实现步骤510和520,并且可以例如通过NLP特征提取组件310来实现步骤520。例如,在步骤510处,可以使用语音识别来处理包括客户请求的语音的音频信号,以获得客户请求的文本。
在步骤530处,使用特征来选择动作图的节点。例如,步骤530可以由节点选择器组件320来实现。在一些实现中,动作图的每个节点可以与节点选择器分类器相关联。可以通过用与节点相关联的节点选择器分类器处理特征来为该节点生成分数。可以为动作图的节点中的一些或全部生成分数,并且可以使用所述分数来选择节点。选择节点的一些示例实现包括(i)计算动作图的每个节点的分数并选择具有最高分数的节点;(ii)实现从动作图的根开始的贪婪算法,选择具有最高分数的子节点,并随后选择具有最高分的下一个子节点,直到到达终止判据(例如,到达动作图的叶);或者(iii)在遍历动作图时实现束搜索。
节点选择器分类器可以是任何适当的分类器,并且可以从数据存储(诸如节点分类器数据存储341)中检索节点选择器分类器。在一些实现中,节点选择器分类器可以包括逻辑回归分类器(诸如结构化多项逻辑回归分类器)、支持向量机或决策树。下文描述选择节点的示例实现的进一步细节。
除了NLP特征之外,可以使用其他数据来实现步骤530。例如,步骤530可以使用客户数据(诸如从客户数据数据存储342检索的客户数据)和其他数据(诸如从其他数据数据存储343检索的其他数据)来实现。当从客户接收请求时,该请求可以包括可以用于从客户数据数据存储343获得关于该客户的信息的客户标识符(诸如客户标识号、客户用户名或设备标识符)。客户数据可以包括关于客户的任何信息,诸如客户简档、客户位置、计费和支付数据以及提供给客户的服务。
节点选择器组件320可以使用客户数据来选择节点以向客户提供响应。例如,客户可能订购了互联网服务,但可能没有订购电话或电视服务。当选择节点以响应客户的请求时,可以在计算分数时对与电话和电视服务相关的动作图的节点进行罚分或者可以根本不考虑它们。
节点选择器组件320也可以在选择节点时使用其他数据。在一些实现中,公司可以具有包含用于响应客户请求的相关信息的知识库。例如,公司知识库可以包括关于当前或最近服务中断的信息,并且该信息可以用于选择节点。当客户要求在互联网不工作方面给予帮助时,可以将客户的地址与当前服务中断的位置进行比较。如果服务中断正在影响客户,则可以选择与利用关于服务中断的信息来提供响应有关的节点,诸如中断的预期解决方案。如果客户不受任何中断的影响,则可以选择一个节点来帮助客户就他或她的互联网为何无法正常工作进行故障排除。
在选择节点时,客户数据和其他数据可以与NLP特征组合。在一些实现中,可以利用从客户数据或其他数据生成的附加特征来增补NLP特征的特征向量。与客户数据和其他数据相关的特征可以是任何适当的格式。例如,特征可以是0或1以指示状态,诸如是否存在中断或者是否存在客户账单的过期金额。特征可以取整数值、浮点值,或者可以是指定的一组值中的一个(例如,提供给客户的服务可以被设置为字符串“互联网”、“电话”和“电视”的某种组合)。可以将组合的特征向量输入到节点选择器分类器中以生成可以用于选择节点的分数。
在步骤540处,使用所选节点来选择动作。例如,步骤540可以由动作选择器组件330实现。在所选节点仅与单个动作相关联的情况下,可以选择该动作。在所选节点与多个动作相关联的情况下,可以使用动作选择器分类器来选择动作。动作选择器组件330还可以使用来自客户数据存储342的客户数据和来自其他数据数据存储343的其他数据来选择针对所选节点的动作。例如,取决于客户数据或其他数据,所选节点可以具有多个可用动作。
在步骤550处,系统200的一个或多个组件可以使得执行动作。例如,应用程序接口组件220可以执行使得诸如图1B的响应之类的响应被呈现给客户的步骤。下文描述执行动作以向客户提供响应的附加细节。
现在呈现节点选择器组件320的示例实现的进一步细节。节点选择器组件320可以在选择节点时实现搜索算法。例如,节点选择器组件330可以实现贪婪搜索、束搜索或维特比搜索。
图6是用于选择动作图的节点的贪婪搜索的示例实现的流程图。在图6中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤610处,接收特征。特征可以包括NLP特征和/或从客户数据或其他数据获得的特征。
在步骤620处,将动作图的根设置为“当前节点”。当前节点可以是在算法的迭代期间正在处理的节点。例如,当前节点可以由节点ID或指针来指定。动作图的根节点可以是被视为搜索起点的任何节点。在一些实现中,根节点可以仅具有外出的边并且可以不具有任何进入的边。
在步骤630处,为当前节点的每个子节点计算分数。在一些实现中,还可以为当前节点计算分数。可以使用本文描述的任何技术来计算分数。在一些实现中,每个节点可以与节点选择器分类器相关联,并且与该节点相关联的节点选择器分类器可以被配置成计算当前节点的每个子节点的分数以及可选地当前节点的分数。
在一些实现中,节点选择器分类器可以是逻辑回归分类器。例如,对于节点n,逻辑回归分类器可以具有矩阵 W n 和向量b n 作为参数。在存在N个特征(例如,NLP特征或来自客户数据或其他数据的特征)和当前节点的M个子节点的情况下,矩阵 W n 可以具有M+1行(一行用于当前节点和每个子节点)和N列,并且向量b n 可以具有长度N。分类器可以使用以下等式来计算分数
其中x是特征向量,c i 表示节点(例如,当前节点或当前节点的子节点),并且下标i指示向量的第i个元素。例如,c 0可以表示当前节点,c 1可以表示当前节点的第一个子节点,并且c M 可以表示当前节点的最后一个子节点。函数SoftMax可以如下计算:
在一些实现中,节点选择器分类器可以包括分类器的集合。例如,节点选择器分类器可以使用引导程序聚合或装袋来实现,或者可以使用堆叠或特征加权堆叠来实现。
在步骤640处,可以选择具有最高分数的子节点,并且在步骤650处,可以将得分最高的子节点的分数与阈值进行比较。如果所选子节点的分数高于阈值,则处理可以进行到步骤655,其中确定所选子节点是否是叶节点(例如,没有指向另一节点的边)。如果所选子节点是叶节点,则处理可以进行到步骤665,其中使用所选子节点用于进一步处理,诸如使用动作选择器模型来选择动作。
如果所选子节点不是叶节点,则处理可以进行到步骤660,其中将所选子节点设置为当前节点。在步骤660之后,处理可以返回到步骤630,其中可以为新的当前节点的子节点计算分数。通过以这种方式进行迭代,可以通过重复遍历到得分最好的子节点来遍历动作图。该算法可以称为贪婪算法,因为处理的每个步骤选择得分最高的子节点作为下一步骤。
如果所选子节点的分数不高于阈值,则处理进行到步骤670,其中将当前节点的分数与阈值(其可以与步骤650的阈值相同或不同)进行比较。如果当前节点的分数超过阈值,则处理进行到步骤680,其中选择当前节点。然后,可以使用所选当前节点用于进一步处理,诸如使用动作选择器模型来选择动作。
如果当前节点的分数低于阈值,则处理可以进行到步骤690,其中从客户请求附加信息。在所有子节点和当前节点都具有低于阈值(或相应阈值)的分数的情况下,那么低分数可以指示关于用于响应客户请求的正确节点的不确定性。代替选择节点(其可能是不正确的节点),获得附加信息并且在寻找适当的节点以响应客户的请求方面具有更大的确定性可以为客户提供更好的体验。例如,可以要求客户选择几种可能选择之一或要求客户提供附加文本以阐明他或她的请求。
图6的步骤的许多变化是可能的。例如,在一些实现中,即使当前节点的分数低于阈值,也可以始终选择步骤670处的当前节点。在这样的实现中,可以省略步骤670和690,并且步骤650的“否”分支可以连接到步骤680。
图7是用于选择动作图的节点的束搜索的示例实现的流程图。在图7中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤710处接收特征。特征可以包括NLP特征和/或从客户数据或其他数据获得的特征。
在步骤720处,初始化搜索图的活动路径的列表,并且活动路径的数量可以称为束宽度。可以将具有根节点的活动路径列表初始化为仅由根节点组成的活动路径。在后续步骤期间,可以延伸现有的活动路径,并且可以将其他活动路径添加到指定的束宽度。数个活动路径可以是固定数量的,或者可以包括分数超过阈值的所有路径。可以用在后续步骤期间更新的路径分数来初始化每个活动路径。
在步骤730处,为所有活动路径的末端的子节点计算分数。可以使用本文描述的任何技术来计算分数。第一次执行步骤730时,唯一的活动路径可以对应于根节点,因此可以仅针对根节点的子节点计算分数。对于执行步骤730的后续实例,可以存在多个活动路径,并且可以为所有活动路径的子节点计算分数。
在步骤740处,为具有每个活动路径的子节点的每个延伸活动路径计算路径分数。延伸路径的路径分数可以是现有路径分数与子节点的分数的乘积(或者在一些实现中可以是路径分数与子节点的分数的总和或某种其他组合)。由于每个活动路径可以具有多个子节点,因此在步骤740处计算的延伸路径分数的数量可以大于束宽度。
在步骤750处,保留对应于束宽度的数个得分最高的延伸路径,并丢弃其他路径。保留的延伸路径是用于后续处理的新的一组活动路径。例如,可以保留得分最高的数个路径或路径分数高于阈值的所有路径。在一些实现中,可以将路径保留为活动路径而不添加子节点,并且这可以由搜索图中的特殊“停止”节点来指示。例如,长度为2的路径可以具有比长度为3的许多路径更高的分数,因此可以保留较短的路径(也可以对路径分数进行归一化以虑及不同的长度)。
在步骤760处,确定处理是否已完成。可以使用任何适当的判据来确定处理是否已完成。例如,当所有活动路径(i)已到达叶节点或(ii)不具有分数足够高的任何子节点时,处理可以完成。如果处理尚未完成,则处理返回到步骤730,其中为新的一组活动路径的子节点计算分数。如果处理已完成,则在步骤770处选择最佳活动路径,并且可以选择该路径末端处的节点来确定要响应客户请求的动作。
图8例示了由示例束搜索生成的搜索图。在图8的示例中,束宽度为3(保留3个得分最高的路径),并且在搜索结束时,三个得分最高的路径是(1)维修、互联网、停止;(2)维修互联网、电子邮件;以及(3)登录/密码、登录、创建。搜索结束时的活动路径(节点和边)用实线指示,并且非活动路径用虚线指示(搜索结束时的非活动路径可能是搜索前期时的活动路径)。请注意,第一个选定的路径在到达叶节点之前终止,因为维修、互联网路径的分数高于未选择的长度为3的路径。维修、互联网路径的终止可以由互联网节点后面的特殊停止节点来指示。
除了上述搜索技术之外,还可以使用其他搜索技术。例如,可以执行维特比搜索,其中使用深度优先搜索沿着每个可能的路径计算分数。可以选择得分最高的路径末端的节点。
现在呈现动作选择器组件330的示例实现的进一步细节。在一些实现中,每个节点与单个动作相关联,并且可以省略动作选择器组件330。在一些实现中,每个节点将与多个动作相关联,并且不管选择了哪个节点都可能需要动作选择器组件330来选择动作。在一些实现中,一些节点可以与单个动作相关联,而一些节点可以与多个动作相关联,并且仅当选择了具有多于一个动作的节点时才可能需要动作选择器组件330。
动作选择器组件330可以使用动作选择器分类器从可能动作列表中选择动作,并且可以从数据存储(诸如动作分类器数据存储344)中检索动作选择器分类器。动作选择器分类器可以专用于特定节点。可以使用任何合适的分类器来选择动作。例如,动作选择器分类器可以包括逻辑回归分类器、支持向量机或决策树。
在节点处可用的动作可以包括可以用于向客户提供响应的任何事件序列。例如,动作可以包括以下中的任何:(i)对数据库进行查询并向客户提供查询结果(例如,客户询问何时将递送包裹,从数据库检索递送信息,并将递送信息呈现给客户);(ii)将客户引导至应用或网站的页面(例如,客户要求变更其密码,并将应用定向到应用的适当页面,或将浏览器重定向到适当的网页);(iii)要求客户提供有关他或她的请求的附加信息(例如,客户阐述了互联网不工作了,并询问客户是否存在Wi-Fi、电子邮件的问题等等);或者(iv)使客户接通CSR(例如,在客户和CSR之间开始聊天会话或电话呼叫)。在公司有具有不同专长(例如,技术支持和计费)的CSR的情况下,使客户接通CSR的动作还可以包括使客户接通具有与客户请求相对应的专长的CSR。例如,在客户遇到互联网连接问题的情况下,可以使客户接通专门提供技术支持的CSR。
动作选择器分类器可以在选择动作时使用上述任何特征类型。例如,动作选择器分类器可以使用NLP特征、从客户数据获得的特征或从其他数据(诸如公司知识库)获得的特征。可以创建特征向量,并且动作选择器分类器可以处理特征向量以生成每个可能动作的分数。在一些实现中,可以选择具有最高分数的动作。
语义响应组件240的输出可以是动作。在一些实现或实例中,由节点选择器组件320选择的节点可以具有与其相关联的仅一个动作,并且该动作由语义响应组件输出。在一些实现中,由节点选择器组件320选择的节点可以与多个动作相关联,并且动作选择器组件330可以选择要由语义响应组件输出的动作。语义响应组件输出的动作可以采用任何适当的形式。例如,动作可以包括指定要执行的处理的标识号,或者可以包括指定要执行的处理的结构化数据。
现在提供语义响应组件240的整体操作的示例。客户可以向公司发送请求,该请求阐述了“我的互联网连接不工作了”。NLP特征提取组件310可以处理文本以生成NLP特征。接下来,节点选择器组件320可以使用NLP特征以及可选地如上所述的其他特征来选择动作图的节点。从图4的动作图的根开始,节点选择器组件320可以使用节点选择器分类器计算根节点的每个子节点的分数。节点选择器组件320可以遍历动作图以类似地计算后续子节点的分数。例如,可以从根节点遍历动作图到维修节点、到互联网节点以及到连接节点。然后,节点选择器组件320可以选择连接节点(例如,因为根据搜索算法,它是得分最佳的节点)。连接节点可能有两个与之关联的动作。第一动作可以是向客户提供用于对其互联网连接进行故障排除的信息,并且第二动作可以是通知客户在该客户的区域中存在服务中断。因为所选节点具有多于一个动作,所以动作选择器组件330可以使用动作选择器分类器从可用动作中选择动作。输入到动作选择器分类器的特征可以包括当前服务中断的位置和客户的地址。动作选择器分类器可以输出两个可能动作中的每一个的分数,并且可以选择得分最高的动作。语义响应组件240可以将得分最高的动作返回到另一组件,诸如应用程序接口组件220。
在一些实现中,动作图的每个节点处的唯一可用动作可以是使客户接通CSR,并且分类器的操作是要选择适当的CSR来处理客户的请求。例如,对于大型公司,公司可能有几个CSR团队,每个团队都经过培训以处理特定类型的请求。例如,对于图4的动作图,公司可以具有不同的CSR团队,其中每个团队负责响应与节点中的一个或多个有关的请求。在这些实现中,每个节点处的唯一动作可以是使客户接通CSR,区别在于将使客户接通哪个CSR团队。
系统200的其他组件(诸如应用程序接口组件220)可以使得执行动作并最终使客户设备210向客户呈现响应,诸如图1B中的任何响应。在使得执行动作时,应用程序接口组件220可以与其他组件对接以获得所需信息并使得响应被显示给客户。例如,应用程序接口组件220可以执行以下步骤中的一个或多个:获得模板(例如,HTML模板)以在客户设备210的显示器上呈现信息;获得文本到语音音频以由客户设备210的扬声器播放;使用该动作从数据存储中检索信息;或者通过向另一组件发出请求来获得其他处理的结果(例如,使用REST接口来确定关于客户的地址处的中断的信息);或者向客户服务代表(诸如CSR 251、252或253)发送请求以便CSR与客户联系。
应用程序接口组件220可以使用任何适当的技术与客户设备210通信。例如,应用程序接口组件220可以将以下中的任何发送给客户设备210:要由显示器呈现的HTML;要由扬声器播放的音频(或要用于在客户设备处生成音频的文本);指向应用或网站的页面的链接(例如,“深层链接”)。
因此,客户可以使用自然语言向公司提交请求,并从公司接收自动响应。在一些实现中,可以如以下条款、其中的任何两个或更多个的组合、或者其与本文中呈现的其他条款的组合中描述的那样向用户提供响应。
1.一种用于自动响应用户请求的计算机实现的方法,该方法包括:
接收对应于用户请求的文本;
从文本计算多个特征;
使用包括多个节点的图,其中:
所述多个节点包括第一节点和第二节点,
第一节点与第一分类器和第一动作相关联,并且
第二节点与第二分类器和第二动作相关联;
使用第一分类器和所述多个特征计算第一节点的第一分数;
使用第二分类器和所述多个特征计算第二节点的第二分数;
使用第一分数和第二分数来选择第一节点;以及
使得执行与第一节点相关联的第一动作。
2.根据条款1所述的计算机实现的方法,其中,用户是公司的客户,并且用户请求寻求来自公司的帮助。
3.根据条款1所述的计算机实现的方法,其中,使得执行第一动作包括向用户发送信息、从用户请求附加信息、或者使用户接通客户支持代表。
4.根据条款1所述的计算机实现的方法,其中,接收对应于用户请求的文本包括对包括用户的语音的音频信号执行语音识别。
5.根据条款1所述的计算机实现的方法,其中,经由文本消息、电子邮件、web服务器或在用户设备上运行的应用程序来接收文本。
6.根据条款1所述的计算机实现的方法,其中,选择第一节点包括使用贪婪搜索算法。
7.根据条款1所述的计算机实现的方法,其中,计算第一分数包括使用关于用户的信息。
8.一种用于自动响应用户请求的系统,该系统包括:
至少一个服务器计算机,其包括至少一个处理器和至少一个存储器,所述至少一个服务器计算机被配置成:
接收对应于用户请求的文本;
从文本计算多个特征;
使用包括多个节点的图,其中:
所述多个节点包括第一节点和第二节点,
第一节点与第一分类器和第一动作相关联,并且
第二节点与第二分类器和第二动作相关联;
使用第一分类器和所述多个特征计算第一节点的第一分数;
使用第二分类器和所述多个特征计算第二节点的第二分数;
使用第一分数和第二分数来选择第一节点;以及
使得执行与第一节点相关联的第一动作。
9. 根据条款8所述的系统,其中,第一节点与第一多个动作相关联,第一多个动作包括第一动作;并且其中,所述至少一个服务器计算机被配置成从第一多个动作中选择第一动作。
10. 根据条款9所述的系统,其中,所述至少一个服务器计算机被配置成使用关于用户的信息来选择第一动作。
11. 根据条款8所述的系统,其中,所述图是有向非循环图。
12. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成使用束搜索算法来选择第一节点。
13. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过以下步骤来选择第一节点:
将起始节点设置为当前节点,所述当前节点包括多个子节点;
计算所述多个子节点中的每个子节点的分数以生成多个分数;
使用所述多个分数来选择所述多个子节点中的第一子节点;以及
将第一子节点设置为当前节点。
14. 根据条款8所述的系统,其中,第一分类器包括逻辑回归分类器。
15. 一种或多种包括计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令当被执行时使至少一个处理器实行包括以下的动作:
接收对应于用户请求的文本;
从文本计算多个特征;
使用包括多个节点的图,其中:
所述多个节点包括第一节点和第二节点,
第一节点与第一分类器和第一动作相关联,并且
第二节点与第二分类器和第二动作相关联;
使用第一分类器和所述多个特征计算第一节点的第一分数;
使用第二分类器和所述多个特征计算第二节点的第二分数;
使用第一分数和第二分数来选择第一节点;以及
使得执行与第一节点相关联的第一动作。
16. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,选择第一节点包括:
将起始节点设置为当前节点,所述当前节点包括多个子节点;
计算所述多个子节点中的每个子节点的分数以生成多个分数;
使用所述多个分数来选择所述多个子节点中的第一子节点;以及
将第一子节点设置为当前节点。
17. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,计算所述多个特征包括编码所述文本的词汇并用神经网络处理所编码的词汇。
18. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,第一分类器包括逻辑回归分类器。
19. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,使用第一分数和第二分数选择第一节点包括:
将第一分数与第一阈值进行比较;以及
将第二分数与第二阈值进行比较,其中第二阈值不等于第一阈值。
20. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,选择第一节点包括使用关于用户的信息。
生成图和分类器
在以上描述中,动作图、节点选择器分类器和动作选择器分类器是用于执行客户请求的语义处理并向客户提供响应。动作图和分类器需要先被创建或训练,然后才能用于执行语义处理,并且现在描述用于创建动作图和分类器的技术。
在一些实现中,可以人工创建动作图,诸如图4的动作图。熟悉客户对公司的请求的人可能能够识别客户请求的常见主题,为不同类别的请求创建节点,以及将相关节点连接在一起。
在一些实现中,可以创建动作图以镜像允许客户获得信息的现有结构。例如,可以将来自应用或网站的菜单层级转换为动作图,其中应用或网站的每个页面可以成为动作图的节点。类似地,可以将交互式语音响应系统的现有层级转换为动作图。
在一些实现中,可以使用客户支持会话的现有日志来自动创建动作图。例如,公司可能以前通过其中客户支持代表会以人工方式响应客户请求的在线聊天系统向客户提供支持。可以使用自然语言处理技术(例如,主题建模)来自动处理这些聊天会话的转录副本以识别客户支持请求的最常见主题,并且最常见的主题可以成为动作图的节点。在使用语音识别将记录转换为文本之后,可以以类似的方式使用电话支持呼叫的录音。
可以由使用训练语料库训练的模型来指定节点选择器分类器。在没有现有数据可用于训练节点选择器分类器的情况下,可以通过生成客户可能期望用于各种类型的请求的文本来人工创建训练语料库。例如,对于图4的动作图,可以通过向100个人询问他们可能用于做出与每种类型的节点相对应的请求的短语来人工创建训练语料库。然后可以使用该人工创建的语料库来训练节点选择器分类器。
在一些情况下,可以将现有数据转换为可以用作节点选择器分类器的训练语料库的格式。例如,在公司以前具有在线聊天支持的情况下,可以使用聊天支持的转录副本来创建训练语料库。客户编写的每条文本消息可以被人标记为对应于动作图的节点。然后可以使用标记数据来训练节点选择器分类器。
在公司实现语义响应系统之后,可以保存客户请求以进一步改进节点选择器分类器。可以人工评估语义响应系统的性能。在确定节点选择器分类器选择了不正确的节点的情况下,可以用正确的节点标记该客户请求并将其添加到训练语料库以便稍后训练更好的节点选择器分类器。
公司可以使用上述任何技术来获得用于训练节点选择器分类器的标记训练语料库。利用该标记的训练语料库,可以使用本领域技术人员已知的技术来创建节点选择器分类器。在一些实现中,可以与分类器一起训练(来自NLP特征提取的)编码技术。
在一些实现中,可以独立于动作图中的其他节点为每个节点创建节点选择器分类器。为了训练动作图的第一节点,可以提取与动作图的第一节点相关的训练语料库的子集,并且可以利用语料库的该子集训练第一节点的节点选择器分类器。例如,如果使用词袋或术语频率逆文档频率对NLP特征进行编码,则可以通过使用BFGS(Broyden-Fletcher-Goldfarb-Shanno算法)来训练节点选择器模型以最小化数据的负对数似然和被表示为单热向量的训练标签之间的交叉熵。在另一示例中,如果使用词嵌入矩阵对NLP特征进行编码,则可以通过使用随机梯度下降来训练节点选择器模型,以最小化分类器对于标记的训练数据的交叉熵。在一些实现中,可以使用整个训练数据语料库共同训练节点选择器分类器的整个动作图。
除了训练节点选择器分类器之外,可能需要确定何时节点的分数足够高以使节点被接受为正确选择的阈值。在一些实现中,可以决策该阈值应该高到最小化选择不正确节点的概率。如上所述,每个节点选择器分类器可以具有其自己的阈值。为了确定节点选择器分类器的适当阈值,可以(例如,使用为调整分类器而保留的训练语料库的一部分)为节点选择器分类器绘制精度/召回曲线,并且曲线上的点可以根据错误率的期望概率来选择,诸如虚警或错误接受的概率。一旦指定了概率,就可以从精度/召回曲线确定阈值,该曲线将允许节点选择器分类器在实践中获得期望的错误率。
可以以与节点选择器分类器类似的方式训练动作选择器分类器。训练数据可以人工创建,可以通过标记现有数据集(例如,现有在线聊天记录)来创建,或者从具有初始(例如,引导)模型的语义响应系统的操作来获得。一旦获得训练数据,就可以使用本领域技术人员已知的技术来训练动作选择器分类器。在一些实现中,诸如当使用决策树来实现动作选择器分类器时,可以人工创建动作选择器分类器。
客户服务代表接口
以上关于使用语义处理来提供对客户请求的响应的描述允许自动化响应(例如,没有人的参与)。在某些情况下,客户可以与CSR通信以获得帮助。客户和CSR可以使用键入消息的任何组合或通过说话(例如,使用客户设备的麦克风或在电话呼叫中)彼此通信。
在客户和CSR通过文本进行通信的情况下,可以使用任何合适的用户接口来键入消息或者使用语音识别来转录消息。例如,客户可以将文本消息或电子邮件键入到应用上的文本框中网站上的文本框中。客户可以直接与公司通信(例如,使用公司电话号码、电子邮件地址、应用或网站),或者可以通过第三方(诸如社交联网公司或第三方服务)进行通信(下文更详细地讨论)。当客户和CSR使用语音进行通信时,可以使用任何合适的接口(诸如电话呼叫或在线通信工具(例如,Skype或谷歌Hangouts))来将其语音发送给彼此。
为了清楚地呈现,以下描述将使用文本通信作为示例,但是当通过语音进行通信时也可以使用相同的技术。
CSR可能同时帮助多个客户。公司可能希望其CSR尽可能高效,以便为客户提供最佳体验并且还降低成本。图18A-Q提供了可以由CSR和客户在彼此通信时使用的用户界面的示例。例如,图18A呈现了可以由CSR使用的用户界面。图18A包括客户列表部分1810,其可以包括CSR当前正与之通信的客户列表。图18A还包括对话部分1820,其允许CSR查看由客户键入的消息、键入给客户的消息以及查看对话历史。图18A还包括信息部分1830,其提供帮助CSR的附加信息,诸如客户简档或故障排除信息。
在客户和CSR之间的对话期间,每个客户和CSR可以查看具有来自客户和CSR双方的消息的整个对话历史。例如,由客户发送的每个消息可以出现在客户设备的显示器上以及CSR用户界面的对话部分1820中。由CSR发送的每个消息也可以出现在客户设备的显示器上以及CSR用户界面的对话部分1820中。
CSR用户界面可以包括各种特征以便于CSR更快地响应客户。例如,语义处理技术
可以用于理解客户请求的含义并向CSR提供建议。以下是如何使用语义处理来帮助CSR的三
个示例。(1)当CSR开始键入给客户的响应时,可以在CSR用户界面上呈现对文本的一个或多
个可能的完成,以允许CSR选择其中一个完成。选择适当的完成可以使CSR更高效,因为选择
完成可能比结束键入消息花费更少的时间。例如,如果CSR已键入“how m”,则建议的完成可
能包括“how may I help you today(您今天需要什么帮助吗)”。CSR可以选择该完成而
不必键入整个响应。(2)可以向CSR呈现可能的完整响应的列表,其中可以通过处理对话的
历史和其他信息(例如,关于客户的信息)来生成可能的完整响应的列表。例如,如果客户说
“MAC地址是12345”,则可以在CSR开始键入之前立即向CSR建议短语“什么型号”。(3)可以
自动向CSR建议资源,以向CSR提供信息或允许CSR执行动作。例如,如果客户遇到互联网连
接问题,则可以诸如在信息部分1830中向CSR建议故障排除过程。现在描述向CSR提供建议
和/或信息的这三个示例。
自动建议完成
当CSR开始键入给客户的响应时,可以呈现对CSR正在键入的内容的一个或多个可能完成,以允许CSR选择可能的完成之一。在CSR键入每个字符或词汇之后,可以更新可能的完成。在选择了完成后,CSR可以将其作为对话的一部分发送给客户。图18I例示了文本框1822的建议自动完成的示例。在文本框1822中,CSR键入了“You’re very welcome It’s(不客气,很)”,并且建议的完成是“been my pleasure to help.(高兴帮到了您。)”。
本文描述的用于建议完成的技术不限于客户支持会话,并且其可以应用于自动完成可以帮助用户的任何应用。例如,当在搜索引擎中键入搜索项时或者当个人向朋友键入文本消息时,可以使用自动完成。
建议的完成不必是完整的句子或短语。建议的完成可以提供关于字符和/或词汇的要跟随在CSR已键入的内容之后的建议,但是建议的字符和/或词汇可能不是完整的和/或语法正确的短语或句子。如本文所使用的,建议的完成是指被建议跟随在CSR已键入的内容之后但不一定语法正确或者是准备好发送给客户的整个消息的任何字符和/或词汇。
可以使用任何适当的技术来实现自动完成。在一些实现中,可以使用诸如Knesser-Ney 5-gram语言模型之类的语言模型来实现自动完成。随着CSR键入,可以建议可能的后续词汇的序列。在一些实现中,可以利用语言模型使用束搜索来确定后续词汇。
图9例示了利用语言模型从束搜索生成的搜索图的示例。在图9的示例中,CSR已键入了“how m”,并且搜索图已识别出可能的后续词汇。在这个示例中,束宽度是3,并且三个得分最高的路径是“how many do you ...(你有多少......)”、“how may I help ...(我可以帮助......)”以及“how much time do ...(......多长时间)”,其中椭圆形指示可能的连续词汇。
在创建搜索图时,第一步可以是识别可能跟随在CSR已键入的内容之后的词汇并且针对最可能的跟随词汇向搜索图添加路径。例如,来自语言模型的双字母组可以用于识别跟随在“how”之后的最可能的词汇。在一些实现中,所考虑的词汇集合可以限于以“m”开头的词汇,因为CSR已经键入了“m”。在该示例中,三个最可能的跟随词汇是“many”、“may”以及“much”,并且将这些作为活动路径添加到搜索图中。
接下来,可以通过识别每个活动路径的最可能的跟随词汇并保留前三个延伸路径来延伸每个活动路径。例如,对于每个活动路径,来自语言模型的三字母组可以用于选择下一个词汇,计算路径分数,并保留得分最高的路径。在这个示例中,最可能的路径是“howmany do(多少)”、“how may I(我能如何)”和“how much time(多长时间)”。类似地,可以继续延伸路径,直到到达每个活动路径的终止判据。
然后可以从搜索图获得一个或多个自动完成建议并将其呈现给CSR。例如,可以呈现得分最高的建议、得分最高的数个建议或具有高于阈值的分数的所有建议。然后,CSR可以选择建议并将其发送给客户。
使用语言模型的束搜索的上述示例的许多变型是可能的,并且本文描述的技术不限于上述示例。可以另外使用本领域技术人员已知的用于利用语言模型使用束搜索来执行自动完成的任何适当技术。
用于自动完成的语言模型由于其对于与所有客户的所有对话、对于所有CSR都是相同的而可以是通用的。语言模型也可以由于它是针对特定CSR或CSR类别、客户或客户类型或者特定的主题而生成的而是更特定的。例如,公司具有不同的CSR组(例如,一个组可以处理技术支持而另一个组可以处理计费),并且可以为每个组创建语言模型。在另一示例中,可以为每个CSR创建语言模型,该语言模型适合于该特定CSR的沟通风格。
在一些实现中,可以针对不同主题创建语言模型。例如,公司可以识别多个主题(例如,图4的动作图的节点或叶)并为每个主题创建语言模型。在客户与CSR之间的对话期间,对话历史和其他信息可以用于选择支持会话的主题(例如,先前识别的主题之一)。然后可以使用与所选主题相对应的语言模型来为CSR执行自动完成。在一些实现中,可以在客户与CSR之间的每次通信之后更新主题,并且在主题改变的情况下,然后可以使用新主题的语言模型来为CSR执行自动完成。
可以使用任何适当的技术来训练用于自动完成的语言模型。可以从先前的支持会话获得训练数据,所述支持会话诸如所有支持会话、与特定CSR的支持会话、与表现优秀的CSR的支持会话、或者与特定主题相关的支持会话(例如,在人工标注了先前会话的情况下)。可以诸如通过执行标准化或标记字符串来预处理用于训练语言模型的数据。任何适当的训练技术可以用于训练语言模型,诸如期望最大化算法。
在一些实现中,可以使用神经网络语言模型来实现自动完成,诸如利用长短期记忆单元实现的递归神经网络(RNN)语言模型。在一些实现中,神经网络语言模型可以使用除了已经由CSR键入的文本之外的其他信息,并且该其他信息可以用于改进自动完成的性能。例如,其他信息可以包括会话中的先前消息或主题模型。用于实现自动完成的神经网络语言模型可以是基于词汇的或基于字符的,并且下文描述基于字符的实现。
图10例示了用于利用神经网络实现自动完成的系统1000。在图10中,接收当前文本。当前文本可以是被键入到文本录入框中的文本,诸如由CSR键入的文本。
图10包括预处理组件1010,其可以将当前文本转换为合适的形式以供进一步处理。例如,可以定义一组允许的字符,诸如一组70个常用键盘字符,并且当前文本中的每个字符可以被映射到允许组的索引。对于允许组之外的字符,可以丢弃字符或将字符映射到用来表示未知字符的特殊字符。
图10包括可以进一步处理当前文本的字符编码器组件1020。在一些实现中,可以使用单热向量来编码当前文本。例如,在允许70个字符的情况下,每个字符可以被转换为长度为70的单热向量,其中该向量的一个元素是1而其他元素都是0。编码的当前文本还可以包括指示编码的当前文本的开始的特殊单热向量。
图10包括特征提取组件1030,其可以使用当前文本的编码字符来确定特征向量。在一些实现中,可以使用神经网络来计算特征向量。例如,RNN可以实现如下。
令x t 表示针对从1到N的t的单热向量,其中N指示接收到的字符的数量(可能包括特殊的开始向量)。令M是RNN的隐藏向量大小。可以针对从1到N的t迭代地计算以下内容以获得特征向量:
其中U i 是M乘N的参数矩阵,V i 是M乘M的参数矩阵,b i 是长度为M的参数向量,是逐元素乘法运算符,h 0被初始化为零向量,并且c 0被初始化为零向量。在计算完上述之后,向量h t 是可以用于后续处理的特征向量。
图10包括分类器组件1040,其可以用于使用特征向量来确定可以跟随在当前文本之后的一个或多个字符。可以使用任何适当的分类器,诸如逻辑回归分类器。例如,逻辑回归分类器可以如下实现。
逻辑回归分类器可以具有矩阵W和向量b作为参数。矩阵W可以具有M行和N列,并且向量b可以具有长度N。分类器可以使用以下等式来计算分数
其中k i 表示允许字符的第i个字符。因此,分类器可以确定可以跟随在已经键入的字符之后的每个字符的分数(例如,可能性或概率)。例如,在当前文本是“How m”的情况下,可以为每个可能的后续字符生成分数。
图10包括搜索组件1050,其可以用于识别可以跟随在当前文本之后的得分最高的字符序列。在一些实现中,搜索组件1050可以使用如上所述的束搜索来执行对高得分序列的搜索。搜索组件1050可以使用从分类器组件1040接收的分数来创建搜索图并在搜索图中添加或延伸路径。
图11例示了可以由搜索组件1050创建的搜索图的示例。在图11中,当前文本显示在左侧,并显示了后续字符的可能序列。在这个示例中,束宽度是3,并且得分最高的序列是“How many do you ......”、“How may I he ......”以及“How much tim ......”,其中椭圆形指示可能的后续字符。在构建搜索图的第一步,字符“a”、“o”和“u”是分数最高的三个字符,并且将其作为路径添加到搜索图。
为了进一步将后续字符添加到搜索图,处理可以针对添加到搜索图的每个字符而返回到特征提取组件1030(或者可选地预处理组件1010或字符编码器组件1020,在需要的情况下)。特征提取组件1030可以计算将被添加到搜索路径的新字符纳入考虑的新特征向量。例如,在使用RNN实现特征提取组件1030的情况下,可以使用编码的新字符先前的特征向量h t 以及存储在c t 中的RNN状态来计算新特征向量h t+1。
可以重复上述过程以确定连续字符的分数,并且如上所述,可以更新搜索图并保留得分最高的路径。在图11的示例中,处理的第一阶段1110将节点“a”、“o”和“u”添加到搜索图。在处理的第二阶段1120,考虑可以跟随“a”、“o”和“u”的字符的路径。在第二阶段,路径“How man”、“How may”和“How muc”具有最高分数。因此,从搜索中删除了路径“How mo”,并且该路径被丢弃或标记为非活动。可以重复该过程以构建如图11中所示的搜索图,其中虚线指示在束搜索期间被考虑但被丢弃的路径。
当满足适当的终止判据时,搜索过程可以结束。例如,搜索可以在每个活动路径超过长度阈值或到达短语标记的结尾时终止。在搜索完成之后,然后可以将通过搜索图的一个或多个高得分路径作为可能的自动完成呈现给用户。
在确定用于执行自动完成的特征时,上述确定自动完成建议的描述仅使用了当前文本。在一些实现中,来自同一对话的先前消息可以用于改进自动完成结果。例如,CSR当前可能正在键入消息以响应于客户说“我的互联网连接有问题”。来自客户的先前消息的内容(以及对话中的其他先前消息)可能能够改进由CSR键入的当前文本的自动完成的结果。对话中的先前消息将被称为先前文本,以区分CSR正键入的当前文本。
在一些实现中,可以从先前文本计算主题向量,并且可以在特征提取过程期间使用主题向量。图10包括预处理组件1060(其可以与预处理组件1010不同),其可以通过执行任何适当的操作来预处理先前文本,诸如将文本转换为小写、去除标点符号以及执行标记字符串。
图10包括主题模型组件1070,其可以从预处理的先前文本生成主题向量。主题模型组件1070使用先前训练的主题模型来处理先前文本并产生主题向量。主题向量的每个元素可以是指示先前文本与主题之间的匹配的分数(例如,概率或可能性)。可以使用诸如潜在语义索引、潜在Dirichlet分配或自编码器(诸如变分自编码器)之类的算法在现有客户支持数据语料库上训练主题模型。主题模型的主题可以是生成性的,因为它们是从训练数据推导的而不是指定的。主题模型可以是监督主题模型或无监督主题模型。
特征提取组件1030可以接收主题向量并使用主题向量来执行特征提取。在一些实现中,特征提取组件1030可以将编码文本(来自字符编码器组件1020或搜索组件1050)与主题向量组合,诸如序连这两组数据以创建更长的向量。该组合向量于是可以是上述处理中的x t 。在一些实现中,对于特征提取组件1030的每次处理迭代,主题向量可以与编码字符向量进行组合。
在一些实现中,特征提取组件1030可以在计算特征向量时使用其他信息。例如,在执行特征提取时,可以将客户的标识、客户服务代表的标识或关于客户的信息(诸如来自客户简档的数据)与编码字符向量进行组合。
需要使用适当的训练语料库来训练特征提取组件1030(例如,神经网络或RNN)和分类器组件1040(例如,逻辑回归分类器)的参数。例如,现有的客户支持会话日志可以用于训练这些参数。例如,可以通过使用随机梯度下降最小化训练语料库的负对数似然和编码字符输入之间的交叉熵来训练RNN。例如,可以通过最小化标记的训练语料库的模型的交叉熵来训练逻辑回归分类器。
图12是向CSR建议完成的示例实现的流程图。在图12中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤1210处,客户服务会话在客户和CSR之间开始,并且在步骤1220处,接收当前文本。当前文本可以是CSR使用诸如键盘之类的任何适当的输入机构或使用语音识别而录入的文本。
在步骤1230处,获得当前文本的特征,诸如特征向量。可以使用任何适当的技术来获得当前文本的特征。在一些实现中,可以在提取特征之前例如使用上述任何技术来预处理或编码当前文本。在一些实现中,可以用诸如RNN之类的神经网络来处理当前文本。例如,可以迭代地处理当前文本,其中每次迭代处理当前文本的字符。在一些实现中,可以在特征提取过程期间使用其他信息。例如,字符的编码表示可以与描述会话中的先前消息的主题向量进行组合,并且该组合数据可以在每次迭代时输入到神经网络中。
在步骤1240处,确定可以跟随在当前文本之后的一个或多个字符的分数。在一些实现中,可以针对每个允许字符(例如,70个常用键盘字符)计算分数。可以使用任何适当的技术来确定分数,诸如用分类器处理来自先前步骤的特征向量。可以使用任何适当的分类器,诸如逻辑回归分类器。
在步骤1250处,更新搜索图。在一些实现中,可以使用来自先前步骤的字符和分数来延伸搜索图的路径。可以针对延伸路径计算路径分数,并且可以丢弃具有较低路径分数的一些路径。可以使用束搜索算法来决策要维持的路径和要丢弃的路径。
在步骤1260处,确定过程是否完成。可以使用任何适当的判据来确定过程是否完成。在一些实现中,当(i)路径的长度超过阈值或(ii)搜索图的所有路径已到达指示短语结束的节点时,该过程可以完成。
如果处理未完成,则处理可以针对搜索图的每个活动路径进行到步骤1230。可以重复步骤1230、1240和1250以进一步延伸搜索图的每个活动路径。
如果处理完成,则处理进行到步骤1270,其中提供自动完成建议。来自搜索图的一个或多个得分最高的路径可以用于确定自动完成建议。例如,得分最高的路径、数个得分最高的路径或分数超过阈值的路径可以用于提供自动完成建议。可以使用任何适当的技术将自动完成建议呈现给CSR,所述技术诸如在CSR正在录入文本的文本框下方显示自动完成建议。
在步骤1280处,接收CSR对自动完成建议的选择。例如,CSR可以使用鼠标点击建议或在触摸屏上触摸建议。
在步骤1290处,使用所选自动完成建议向客户发送消息。例如,由CSR键入的文本可以与所选自动完成建议进行组合,并使用任何适当的消息传递技术发送给客户。
在一些实现中,可以如以下条款、其中的任何两个或更多个的组合、或者其与本文中呈现的其他条款的组合中描述的那样向用户提供建议完成。
1. 一种用于建议对用户录入的文本的完成的计算机实现的方法,该方法包括:
接收来自第一用户的消息的文本;
使用来自第一用户的消息文本生成主题向量,其中所述主题向量的每个元素包括对应于多个主题中的主题的分数;
使得将所述消息呈现给第二用户;
接收第二用户录入的文本;
使用所述主题向量和第二用户录入的文本生成第一特征向量;
通过处理第一特征向量来识别要跟随在第二用户录入的文本之后的第一多个字符,其中第一多个字符包括第一字符;
使用所述主题向量和第一字符生成第二特征向量;
通过处理第二特征向量来识别要跟随在第一字符之后的第二多个字符,其中第二多个字符包括第二字符;以及
生成对第二用户录入的文本的建议完成,所述建议完成包括第一字符和第二字符。
2. 根据条款1所述的计算机实现的方法,其中,生成所述主题向量包括使用第一用户和第二用户之间的第二消息的文本。
3. 根据条款1所述的计算机实现的方法,其中,生成第一特征向量包括使用神经网络。
4. 根据条款3所述的计算机实现的方法,其中,所述神经网络包括具有长短期记忆单元的递归神经网络。
5. 根据条款1所述的计算机实现的方法,其中,识别第一多个字符包括用分类器处理第一特征向量。
6. 根据条款5所述的计算机实现的方法,其中,所述分类器包括逻辑回归分类器。
7. 根据条款1所述的计算机实现的方法,其中,第一用户是公司的客户,并且第二用户是公司的客户服务代表。
8. 一种用于建议对用户录入的文本的完成的系统,该系统包括:
至少一个服务器计算机,其包括至少一个处理器和至少一个存储器,所述至少一个服务器计算机被配置成:
接收来自第一用户的消息的文本;
使用来自第一用户的消息文本生成主题向量,其中所述主题向量的每个元素包括对应于多个主题中的主题的分数;
使得将所述消息呈现给第二用户;
接收第二用户录入的文本;
使用所述主题向量和第二用户录入的文本生成第一特征向量;
通过处理第一特征向量来识别要跟随在第二用户录入的文本之后的第一多个字符,其中第一多个字符包括第一字符;
使用所述主题向量和第一字符生成第二特征向量;
通过处理第二特征向量来识别要跟随在第一字符之后的第二多个字符,其中第二多个字符包括第二字符;以及
生成对第二用户录入的文本的建议完成,所述建议完成包括第一字符和第二字符。
9. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成使用神经网络来生成第一特征向量。
10. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过以下步骤来生成第一特征向量:
使用第二用户录入的文本生成单热向量序列;
通过将每个单热向量与主题向量进行组合来生成输入向量序列;以及
用神经网络处理所述输入向量序列。
11. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过创建图来生成所述建议完成,其中第一字符对应于所述图的第一节点,并且第二字符对应于所述图的第二节点。
12. 根据条款11所述的系统,其中,所述至少一个服务器计算机被配置成通过使用束搜索算法和图选择所述建议完成来生成所述建议完成。
13. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成:
向第二用户呈现所述建议完成;
接收第二用户对所述建议完成的选择;
向第一用户发送消息,所发送的消息包括所述建议完成。
14. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成生成对第二用户录入的文本的第二建议完成,第二建议完成包括第一字符和第二字符。
15. 一种或多种包括计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令当被执行时使至少一个处理器实行包括以下的动作:
接收来自第一用户的消息的文本;
使用来自第一用户的消息文本生成主题向量,其中所述主题向量的每个元素包括对应于多个主题中的主题的分数;
使得将所述消息呈现给第二用户;
接收第二用户录入的文本;
使用所述主题向量和第二用户录入的文本生成第一特征向量;
通过处理第一特征向量来识别要跟随在第二用户录入的文本之后的第一多个字符,其中第一多个字符包括第一字符;
使用所述主题向量和第一字符生成第二特征向量;
通过处理第二特征向量来识别要跟随在第一字符之后的第二多个字符,其中第二多个字符包括第二字符;以及
生成对第二用户录入的文本的建议完成,所述建议完成包括第一字符和第二字符。
16. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,生成所述主题向量包括使用自编码器。
17. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,生成第一特征向量包括使用神经网络。
18. 根据条款17所述的一种或多种非暂时性计算机可读介质,其中,所述神经网络包括递归神经网络。
19. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,识别第一多个字符包括用分类器处理第一特征向量。
20. 根据条款19所述的一种或多种非暂时性计算机可读介质,其中,所述分类器包括逻辑回归分类器。
自动响应建议
当CSR接收到来自客户的消息时,可以将完整的响应作为建议呈现给CSR作为可能的响应。如果其中一个响应是适当的,则CSR可以简单地选择该响应而不是键入响应。例如,如果客户键入“我的互联网连接不工作了”,则建议响应可以包括“很抱歉。让我来帮你吧。”可以使用从客户接收的消息、对话中的其他先前消息和/或任何其他相关信息来确定建议响应。
本文描述的用于建议响应的技术不限于客户支持会话,并且其可以应用于响应建议可以帮助用户的任何应用。例如,当个人键入给朋友的文本消息时,可以使用建议响应。
图18D例示了建议响应1821的示例。在图18D中,建议响应被呈现在CSR可以在其中键入响应的文本框旁边。CSR可以选择建议响应,而不是键入响应。选择建议响应可以将其发送给客户或者可以将其复制到文本框以允许CSR在发送之前检查和/或编辑。
可以使用任何适当的技术来实现响应的自动建议。在一些实现中,可以通过使用描述对话中的先前消息的对话特征和响应特征来确定针对响应的建议,以迭代地生成建议响应的词汇。
图13例示了用于实现响应的自动建议的系统1300。在图13中,接收通信会话的先前文本。例如,先前文本可以对应于客户和CSR之间的一个或多个消息。
图13包括预处理组件1310,其可以通过执行任何适当的操作来预处理先前文本,诸如将文本转换为小写、去除标点符号以及执行标记字符串。
图13包括词汇编码器组件1320,其进一步处理经预处理的先前文本以生成先前文本的向量化表示。例如,可以将先前文本的每个词汇表示为向量,并且可以组合词汇的向量以将先前文本表示为矩阵,该矩阵可以称为词汇矩阵。在一些实现中,可以使用神经网络来从先前文本创建词汇矩阵。在一些实现中,例如,每个向量化的词汇可以具有50到500个元素的长度。因此,如果在先前文本中存在N个词汇,则由词汇编码器组件1320输出的词汇矩阵可以具有N列和50到500行(或反之亦然)。
图13包括特征编码器组件1330,其将从词汇编码器组件1320接收的词汇矩阵编码成对话特征向量。对话特征向量可以是描述对话中的消息的含义或与所述含义相关的任何特征向量。在一些实现中,特征编码器组件1330可以使用神经网络,诸如RNN或具有长短期记忆单元的RNN,如上所述。特征编码器组件1330可以通过迭代地处理词汇矩阵的每一列来迭代地处理先前文本的每个词汇。例如,对于RNN的第一次迭代,(上面的RNN等式中的)x 1可以是词汇矩阵的第一列,对于第二次迭代,x 2可以是词汇矩阵的第二列,依此类推。在处理了先前文本的所有词汇之后,特征编码器组件1330可以输出可以被表示为的对话特征向量。
由特征编码器组件1330输出的对话特征向量表示先前文本。然后可以将该对话特征向量输入到特征解码器组件1340中以生成建议响应。
特征解码器组件1340也可以使用神经网络来将对话特征向量解码为响应特征向量,该响应特征向量可以用于生成用于建议响应的词汇。在一些实现中,神经网络可以是RNN或具有长短期记忆单元的RNN,如上所述。特征解码器组件1340可以迭代地处理输入特征向量(例如,对话特征向量或响应特征向量),并在每次迭代时输出响应特征向量。
可以使用从特征编码器组件1330的最终迭代获得的信息来初始化特征解码器组
件1340。例如,在用RNN实现特征解码器组件1340的情况下,表示为的初始响应
特征向量可以被设置为的值,并且c 0可以被初始化为来自特征编码器组件
1330的最后一次迭代的c N。在特征解码器组件1340的第一次迭代时,对RNN的输入x 0可以是
指示短语开头的特殊向量。RNN可以输出可以称为的响应特征向量。
图13包括分类器组件1350,其可以处理从特征解码器组件1340接收的响应特征向量并确定用于建议响应的一个或多个词汇。例如,分类器组件1350的第一次迭代可以确定可以开始建议响应的一个或多个词汇。分类器组件1350可以使用任何适当的分类器,诸如逻辑回归分类器。例如,逻辑回归分类器可以确定针对允许的一组词汇中的每个词汇的分数,并且可以选择数个得分最高的词汇作为可以用于建议响应的词汇。
图13包括搜索组件1360,其可以用于识别可以用于建议响应的高得分词汇序列。在一些实现中,搜索组件1360可以使用如上所述的束搜索来执行对高得分词汇序列的搜索。搜索组件1360可以使用从分类器组件1350接收的分数来创建搜索图并在搜索图中添加或延伸路径。
图14例示了可以由搜索组件1360创建的搜索图的示例。在图14中,左侧显示了特殊的开始标记“>go<”,并显示了后续词汇的可能序列。在这个示例中,束宽度是3,并且得分最高的序列是“what is the make …”、“what is the model …”以及“what is theserial …”,其中椭圆形指示可能的后续词汇。在构建搜索图的第一步,词汇“is”、“what”和“where”是具有最高分数的三个词汇,并且作为路径被添加到搜索图。
为了进一步将后续词汇添加到搜索图,处理可以针对被添加到搜索图的每个词汇返回到特征解码器组件1340(可以在返回到特征解码器组件1340之前对新词汇进行编码)。特征解码器组件1340可以计算新的响应特征向量,其将被添加到搜索路径的新词汇纳入考虑。例如,在使用RNN实现特征提取组件1340的情况下,可以使用已编码的新词、先前的响应特征向量以及存储在c t 中的RNN的状态来计算新的响应特征向量。
可以重复上述过程以确定连续词汇的分数,并且如上所述,可以更新搜索图并保留得分最高的路径。在图14的示例中,处理1410的第一阶段将节点“is”、“what”和“where”添加到了搜索图。在处理的第二阶段1420,考虑可以跟随在“is”、“what”和“where”之后的词汇的路径。在第二阶段,路径“what the”、“what is”和“what are”分数最高。因此,路径“is”和“where”被从搜索中删除,并且那些路径被丢弃或标记为不活动。可以重复该过程以构建如图14中所示的搜索图,其中虚线指示在束搜索期间被考虑但被丢弃的路径。
当满足适当的终止判据时,搜索过程可以结束。例如,搜索可以在每个活动路径到达短语标记的结尾时终止。在搜索完成之后,然后可以将通过搜索图的一个或多个高得分路径作为可能的建议响应呈现给用户。
在一些实现中,可以使用其他信息来改进建议响应。其他信息可以包括上述任何信息,诸如客户的标识符、CSR的标识符或关于客户的其他信息(例如,如从客户简档获得的信息)。其他信息可以由系统1300的组件使用,诸如特征编码器组件1330和特征解码器组件1340中的一个或两个。其他信息可以与到组件的其他输入进行组合。对于特征编码器组件1330,可以将其他信息附加到由词汇编码器组件1320输出的一个或多个向量化词汇。对于特征解码器组件1340,其他信息可以附加到由特征解码器组件1340处理的对话特征向量或响应特征向量中的一个或多个。
在一些实现中,建议响应可以包括指示要插入的信息的类型的标记。例如,可能的标记可以指示客户的姓名、性别、地址、电子邮件地址或电话号码。这些标记可以使用特殊符号来指示,诸如“>name<”用于客户姓名。在建议响应包括这样的标记的情况下,可以执行后处理操作以用关于客户的对应信息来替换标记。例如,在向CSR建议响应之前,可以用客户的姓名来替换标记“>name<”。
特征编码器组件1330(例如,神经网络或RNN)、特征解码器组件1340(例如,另一神经网络)和分类器组件1350(例如,逻辑回归分类器)的参数需要使用适当的训练语料库来训练。例如,现有的客户支持会话日志可以用于训练这些参数。例如,可以通过使用随机梯度下降最小化训练语料库的负对数似然和编码词汇输入之间的交叉熵来训练RNN和/或逻辑回归分类器。
图15是向CSR建议响应的示例实现的流程图。在图15中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤1510处,客户服务会话在客户和CSR之间开始,并且在步骤1520处,接收先前文本。先前文本可以包括客户或CSR发送的任何先前文本。在一些实现中,先前文本可以包括例如客户和CRS之间的当前对话中的所有消息或他们之间的数个最近消息。可以使用诸如键盘之类的任何适当的输入机构或使用语音识别来录入文本。
在步骤1530处,获得先前文本的对话特征,诸如对话特征向量。可以使用任何适当的技术来获得先前文本的对话特征。在一些实现中,可以通过预处理先前文本、对先前文本的词汇进行编码、并且然后从编码词汇获得对话特征来获得对话特征。在一些实现中,可以使用诸如RNN之类的神经网络来生成对话特征。例如,可以迭代地处理先前文本,其中每次迭代处理先前文本的词汇。在一些实现中,可以使用其他信息来生成对话特征。例如,在用神经网络处理编码的词汇向量之前,可以将关于客户的信息附加到编码的词汇向量。
在步骤1540处,获得响应特征,诸如响应特征向量。对于步骤1540的第一次迭代,可以从步骤1530的对话特征获得响应特征。对于步骤1540的后续迭代,可以从先前迭代的响应特征获得响应特征。可以使用任何适当的技术来获得响应特征。在一些实现中,可以使用诸如RNN之类的神经网络来生成响应特征。例如,第一次迭代可以通过利用神经网络处理指示短语的开始的特殊标记和对话特征来生成响应特征。后续迭代可以通过处理先前生成的词汇和来自先前迭代的响应特征来生成响应特征。在一些实现中,可以使用其他信息来生成响应特征。例如,可以在用神经网络处理响应特征之前将关于客户的信息附加到响应特征。
在步骤1550处,确定可以开始短语(在第一次迭代时)或跟随在先前生成的词汇之后(对于第一次之后的迭代)的一个或多个词汇的分数。在一些实现中,可以针对每个允许的词汇(例如,已知词汇词典中的所有词汇)计算分数。可以使用任何适当的技术来确定分数,诸如用分类器来处理响应特征。可以使用任何适当的分类器,诸如逻辑回归分类器。
在步骤1560处,更新搜索图。在一些实现中,可以使用来自先前步骤的词汇和分数来延伸搜索图的路径。可以针对延伸路径计算路径分数,并且可以丢弃具有较低路径分数的一些路径。可以使用束搜索算法来决策要维持的路径和要丢弃的路径。
在步骤1570处,确定过程是否完成。可以使用任何适当的判据来确定过程是否完成。在一些实现中,当搜索图的所有路径已到达指示短语结束的节点时,该过程可以完成。
如果处理未完成,则处理可以针对搜索图的每个活动路径进行到步骤1540。可以重复步骤1540、1550和1560以进一步延伸搜索图的每个活动路径。
如果处理完成,则处理进行到步骤1580,其中提供建议响应。来自搜索图的一个或多个得分最高的路径可以用于确定建议响应。例如,可以使用得分最高的路径、数个得分最高的路径或分数超过阈值的路径来提供建议响应。可以使用任何适当的技术将建议响应呈现给CSR,诸如在CSR可以在其中录入文本的文本框下方显示建议响应。
在步骤1590处,接收CSR对建议响应的选择。例如,CSR可以使用鼠标点击建议响应或在触摸屏上触摸建议。
在步骤1595处,使用所选建议响应向客户发送消息,并且可以使用任何适当的消息传递技术来发送消息。
在一些实现中,可以如以下条款、其中的任何两个或更多个的组合、或者其与本文中呈现的其他条款的组合中描述的那样向用户提供建议响应。
1. 一种用于建议对接收到的消息的响应的计算机实现的方法,该方法包括:
接收来自第一用户的消息的文本;
使用第一神经网络和来自第一用户的消息文本生成对话特征向量;
使用所述对话特征向量和第二神经网络生成第一响应特征向量;
使用第一响应特征向量生成第一多个建议词汇,其中第一多个词汇包括第一建议词汇;
使用第一建议词汇、第一响应特征向量和第二神经网络生成第二响应特征向量;
使用分类器和第二响应特征向量生成第二多个建议词汇,其中第二多个建议词汇包括第二建议词汇;
使用第一建议词汇和第二建议词汇生成对来自第一用户的消息的建议响应。
2. 根据条款1所述的计算机实现的方法,其中,生成所述对话特征向量包括使用从第二用户到第一用户的消息的文本。
3. 根据条款1所述的计算机实现的方法,其中,第一神经网络包括具有长短期记忆单元的递归神经网络。
4. 根据条款1所述的计算机实现的方法,其中,生成第一多个建议词汇包括用分类器处理第一响应特征向量。
5. 根据条款4所述的计算机实现的方法,其中,所述分类器包括多项逻辑回归分类器。
6. 根据条款1所述的计算机实现的方法,还包括:
使得将所述建议响应呈现给第二用户;
接收第二用户对所述建议响应的选择;
将所述建议响应发送给第一用户。
7. 根据条款1所述的计算机实现的方法,其中,第一用户是公司的客户,并且第二用户是公司的客户服务代表。
8. 一种用于建议对接收到的消息的响应的系统,该系统包括:
至少一个服务器计算机,其包括至少一个处理器和至少一个存储器,所述至少一个服务器计算机被配置成:
接收来自第一用户的消息的文本;
使用第一神经网络和来自第一用户的消息文本生成对话特征向量;
使用所述对话特征向量和第二神经网络生成第一响应特征向量;
使用第一响应特征向量生成第一多个建议词汇,其中第一多个词汇包括第一建议词汇;
使用第一建议词汇、第一响应特征向量和第二神经网络生成第二响应特征向量;
使用分类器和第二响应特征向量生成第二多个建议词汇,其中第二多个建议词汇包括第二建议词汇;
使用第一建议词汇和第二建议词汇生成对来自第一用户的消息的建议响应。
9. 根据条款8所述的系统,其中,第一神经网络包括递归神经网络。
10. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过创建图来生成所述建议响应,其中第一建议词汇对应于所述图的第一节点,并且第二建议词汇对应于所述图的第二节点。
11. 根据条款10所述的系统,其中,所述至少一个服务器计算机被配置成通过使用束搜索算法和所述图选择所述建议响应来生成所述建议响应。
12. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成生成第一对话向量或第一响应特征向量包括:使用第一用户的身份、第二用户的身份或关于第一用户的信息。
13. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过利用分类器处理第一响应特征向量来生成第一多个建议词汇。
14. 根据条款13所述的系统,其中,所述分类器包括多项逻辑回归分类器。
15. 一种或多种包括计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令当被执行时使至少一个处理器实行包括以下的动作:
接收来自第一用户的消息的文本;
使用第一神经网络和来自第一用户的消息文本生成对话特征向量;
使用所述对话特征向量和第二神经网络生成第一响应特征向量;
使用第一响应特征向量生成第一多个建议词汇,其中第一多个词汇包括第一建议词汇;
使用第一建议词汇、第一响应特征向量和第二神经网络生成第二响应特征向量;
使用分类器和第二响应特征向量生成第二多个建议词汇,其中第二多个建议词汇包括第二建议词汇;
使用第一建议词汇和第二建议词汇生成对来自第一用户的消息的建议响应。
16. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,生成所述对话特征向量包括利用词嵌入矩阵对来自第一用户的消息进行编码,并利用第一神经网络处理已编码的消息。
17. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,第一神经网络是编码器神经网络,并且第二神经网络是解码器神经网络。
18. 根据条款15所述的一种或多种非暂时性计算机可读介质,还包括使用第一建议词汇和第二建议词汇生成第二建议响应。
19. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,第一神经网络包括递归神经网络。
20. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,生成第一多个建议词汇包括用分类器处理第一响应特征向量。
自动资源建议
在帮助客户时,CSR可能需要访问各种类型的资源。如本文所使用的,资源可以包括CSR为了帮助客户而使用的任何信息或允许CSR访问信息或执行动作的任何用户界面。通常,CSR可能必须花费大量时间来导航用户界面以获得所需资源。以下是可以由CSR用于帮助客户的若干资源示例。
CSR可能需要使用故障排除树来帮助客户解决问题(例如,客户的互联网连接不工作了)。在一些现有实现中,CSR可能需要导航到提供对故障排除树的访问的用户界面,并然后找到期望的故障排除树。在有大量故障排除树可用的情况下,找到期望的故障排除树可能是一个耗时的过程。
CSR可能需要获得有关产品和服务的信息以响应客户的问题。例如,客户可能想知道特定的有线调制解调器是否与客户家中的网络兼容。为了找到有关特定产品或服务(例如,有线调制解调器)的详细信息,CSR可能需要导航到提供有关产品和服务的信息的用户界面,并然后找到特定产品或服务。在有大量产品或服务可用的情况下,再次地,这可能是一个耗时的过程。
CSR可能需要获得关于特定交易的信息,诸如购买物品(例如,电影租赁)或发票或支付发票。再次地,CSR导航用户界面以找到关于特定交易的信息或采取关于特定交易的动作(例如,为购买项目提供退款)可能是耗时的。
图18B、18G和18K例示了自动建议资源的示例。在图18B中,所建议的资源允许CSR快速查看客户在消息中提到的交易。在图18G中,所建议的资源允许CSR向客户发送支付请求。在图18K中,所建议的资源允许CSR访问故障排除树以解决客户阐述的问题。
消息的语义处理可以用于自动向CSR建议资源。在客户和CSR之间的每个消息之后,可以处理消息中的一个或多个以预期CSR的需要并更新CSR用户界面(或其一部分)以建议与对话相关的资源。例如,资源可以向CSR提供信息和/或允许CSR采取动作。
图16例示了用于向CSR建议资源的系统1600。图16包括资源数据存储1610,其可以存储关于可以呈现给CSR的资源的信息。资源数据存储1610可以包括关于资源的任何相关信息,包括但不限于以下:资源的文本描述、针对资源可以呈现的文本、或者用于呈现资源的指令或代码(例如,HTML或Javascript)。例如,资源数据存储1610可以存储与故障排除树的节点相对应的文本和/或指示要如何将故障排除树呈现给CSR的信息。在一些实现中,存储在其他位置中的软件可以检索故障排除树的文本并将其适当地格式化以呈现给CSR。
在CSR和客户之间的对话期间,对话的文本可以涉及资源。为了识别与对话相关的资源,可以为每个资源计算特征,并且可以将这些特征与对话的文本进行比较以识别与对话相关的资源。任何适当的特征可以用于资源,所述特征诸如特征向量或主题模型。在一些实现中,可以为每个资源计算主题向量。
在图16的示例中,预处理组件1620和主题模型组件1070可以用于获得资源的主题向量。预处理组件1620可以实现上文针对图10的预处理组件1060描述的任何技术,并且可以实现用于执行资源的预处理的附加技术。例如,预处理组件1620可以被配置成从资源数据存储1610提取关于资源的信息,该资源与计算针对资源的主题向量相关。主题模型组件1070可以实现图10的主题模型组件1070的任何技术。在一些实现中,主题模型组件1070可以更一般地用特征向量组件来替换,所述特征向量组件计算描述资源的特征向量。
图16的系统可以计算针对存储在资源数据存储1610中的每个资源的主题向量。在一些实现中,可以预先计算一些或所有主题向量,并且可以存储主题向量以供以后使用。例如,主题向量也可以与对应资源相关联地存储在资源数据存储1610中。
图16的系统可以处理针对资源的主题向量以识别与当前对话相关的资源。例如,可以将主题向量与从客户和CSR之间的一个或多个消息计算的对话特征进行比较。客户和CSR之间的这一个或多个消息可以称为先前文本。
为了获得先前文本的对话特征,可以使用预处理组件1310、词汇编码器组件1320和特征编码器组件1330来处理先前文本。可以使用上面针对图13的对应组件描述的任何技术来实现这些组件。如上所述,特征编码器组件1330可以输出描述先前文本的对话特征向量,并且可以处理其他信息,诸如客户的标识、客户服务代表的标识或关于客户的信息,诸如来自客户简档的数据。
图16包括分类器组件1640,其可以选择与客户和CSR之间的对话相关的一个或多个资源。分类器组件1640可以通过处理从特征编码器组件1330接收的对话特征向量和对应于资源的主题向量(或其他特征向量)来选择一个或多个资源。
分类器组件1640可以包括用于使用描述先前文本的对话特征向量和描述资源的主题向量来选择资源的任何适当的分类器。在一些实现中,分类器组件1640可以使用多层感知器(MLP)分类器来实现,诸如具有sigmoid输出的双层MLP。
在一些实现中,MLP可以如下实现。令x是从特征编码器1330接收的对话特征向量,其描述对话的先前文本。令y是资源的主题向量。令z是序连x和y的向量。令N是MLP模型的大小。指示资源和对话之间的匹配的分数可以如下计算:
使用分类器组件1640,可以为每个资源计算分数,并且可以使用分数来选择一个或多个资源。例如,如果分数高于阈值,则可以选择得分最高的资源,可以选择分数高于阈值的所有资源,或者可以选择得分最高的数个资源。在一些实现中,分类器组件1640还可以使用其他信息来生成分数,诸如客户的标识、客户服务代表的标识或关于客户的信息。
在一些实现中,可以应用其他技术来减少选择资源时的计算,例如,在存在大量资源的情况下。例如,可以使用诸如k均值聚类之类的算法将针对资源的特征向量(例如,主题向量)聚类到不同的聚类中。然后,可以在多个步骤中选择资源以减少整体计算。首先,可以为每个聚类计算重心,其中该重心表示聚类中的特征向量的近似值。可以预先执行聚类重心的计算。其次,得分最高的聚类使用分类器和聚类的重心进行选择。第三,通过使用对应于资源的特征向量为所选聚类中的资源计算分数,从所选聚类中选择一个或多个高得分资源。
在一些实现中,可以使用距离(诸如余弦距离)来实现分类器组件1640。可以计算先前文本的对话特征向量与每个资源的特征向量之间的距离。可以根据距离度量来选择最接近先前文本的资源。在一些实现中,可以通过使用诸如局部敏感的散列之类的技术选择最接近先前文本的资源来减少计算。例如,可以使用随机投影方法来创建一个或多个散列,这一个或多个散列可以用于选择具有到先前文本的最小距离的资源。
然后可以将一个或多个所选资源呈现给CSR。例如,可以从资源数据存储1610检索与所选资源相对应的数据,可以创建用于呈现资源的指令(例如,HTML),并且可以将资源呈现给CSR。在资源允许CSR采取行动的情况下,可以接收CSR对动作的选择并且可以执行动作。
在一些实现中,所选资源可以具有需要填入的一个或多个参数或槽。例如,资源可以涉及查看针对电影购买的交易,并且电影的标识符或者电影的名称可以是在将资源呈现给CSR之前需要填入的槽。在一些实现中,可以通过处理先前文本(例如,使用命名实体识别技术)和/或来自客户简档的信息来填充所述槽。例如,电影的名称可以在先前文本中,或者从客户的购买历史中获得。然后可以填入资源中的槽,并将填好的资源呈现给CSR。
可以使用任何适当的技术来训练分类器组件1640的分类器的参数。例如,在分类器包括MLP分类器的情况下,可以使用训练数据语料库来训练MLP分类器并最小化语料库的三元组秩损失。训练数据的语料库可以包括客户和CSR之间的对话的转录副本,其中对话已用适合于对话的资源(人工或自动地)进行标记。
在一些实现中,可以如下训练分类器。令x 1是用于训练语料库的第一对话的对话特征向量(例如,如由特征编码器组件1330产生的),并且令y 1是用于已被确定为(例如,人工或自动地确定为)与该对话相关的资源的主题向量(例如,如由主题模型组件1070产生的)。令x 2是从训练语料库中随机选择的另一对话的对话特征向量。可以通过最小化三元组秩损失来训练模型的参数:
可以使用任何适当的技术(诸如随机梯度下降)来最小化该函数。可以对训练语料库中的其他对话重复上述过程,直到获得期望的收敛。
图17是自动向CSR建议资源的示例实现的流程图。在图17中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤1710处,获得关于资源的信息。关于资源的信息可以包括描述资源或与资源相关的任何文本。资源可以包括上述任何资源。
在步骤1720处,为每个资源计算特征。可以使用任何适当的特征,诸如使用描述资源或与资源相关的文本为每个资源计算的特征向量或主题向量。可以在图17的后续步骤之前计算一次步骤1710和1720。
在步骤1730处,开始客户服务会话,并且在步骤1740处,接收客户服务会话的先前文本。可以使用上面针对图15的步骤1510和1520描述的任何技术来执行这些步骤。
在步骤1750处,计算描述先前文本的对话特征。可以使用任何适当的对话特征,诸如使用诸如RNN之类的神经网络创建的对话特征向量。
在步骤1760处,使用先前文本的对话特征和针对资源的特征来选择资源。例如,诸如MLP分类器之类的分类器可以计算每个资源的分数,并且可以使用分数来选择一个或多个资源。例如,如果分数高于阈值,则可以选择具有最高分数的资源。
在步骤1770处,将所选资源呈现给CSR。例如,可以将与资源相对应的数据转换为允许在显示器上呈现资源的格式。在一些实现中,可以使用资源的数据和HTML模板来生成HTML。可以使用任何适当的技术来呈现资源。例如,在CSR用户界面是网页的情况下,可以使用AJAX技术来修改用户界面的一部分以将资源呈现给CSR。
在一些实现中,所选资源可以向CSR呈现相关信息,并且在一些实现中,所选资源可以包括CSR可以采取的动作。例如,资源可以包括CSR可以点击以执行动作的可选项,诸如按钮。在所选资源允许CSR采取动作的情况下,处理可以进行到步骤1780和1790。
在步骤1780处,接收CSR对动作的选择。例如,CSR可以点击所显示资源上的可选项。在步骤1790处,执行动作。例如,动作可以对应于向客户发出退款或者向客户询问与对难题进行故障排除相关的问题。
在一些实现中,可以如以下条款、其中的任何两个或更多个的组合、或者其与本文中呈现的其他条款的组合中描述的那样向用户建议资源。
1. 一种用于向第二用户建议响应第一用户的资源的计算机实现的方法,该方法包括:
接收第一用户和第二用户之间的消息的文本;
使用神经网络和所述消息文本生成对话特征向量;
获得与第一资源对应的第一特征向量;
使用所述对话特征向量和第一特征向量生成第一资源的第一分数;
获得与第二资源对应的第二特征向量;
使用所述对话特征向量和第二特征向量生成第二资源的第二分数;
使用第一分数和第二分数选择第一资源;以及
使得将第一资源呈现给第二用户。
2. 根据条款1所述的计算机实现的方法,其中,第一特征向量包括主题向量,其中所述主题向量的每个元素包括对应于多个主题中的主题的分数。
3. 根据条款1所述的计算机实现的方法,其中,所述神经网络包括具有长短期记忆单元的递归神经网络。
4. 根据条款1所述的计算机实现的方法,生成第一资源的第一分数包括利用分类器处理所述对话特征向量和第一特征向量。
5. 根据条款4所述的计算机实现的方法,其中,所述分类器包括多层感知器神经网络。
6. 根据条款1所述的计算机实现的方法,其中,第一用户是公司的客户,并且第二用户是公司的客户服务代表。
7. 根据条款1所述的计算机实现的方法,其中,生成所述对话特征向量包括使用第一用户的身份、第二用户的身份或关于第一用户的信息。
8. 一种用于向第二用户建议响应第一用户的资源的系统,该系统包括:
至少一个服务器计算机,其包括至少一个处理器和至少一个存储器,所述至少一个服务器计算机被配置成:
接收第一用户和第二用户之间的消息的文本;
使用神经网络和所述消息文本生成对话特征向量;
获得与第一资源对应的第一特征向量;
使用所述对话特征向量和第一特征向量生成第一资源的第一分数;
获得与第二资源对应的第二特征向量;
使用所述对话特征向量和第二特征向量生成第二资源的第二分数;
使用第一分数和第二分数选择第一资源;以及
使得将第一资源呈现给第二用户。
9. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成使用第一用户和第二用户之间的多个消息的文本来生成所述对话特征向量。
10. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过使用所述对话特征向量和第一特征向量计算距离来生成第一资源的第一分数。
11. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过选择分数最高的资源来使用第一分数和第二分数选择第一资源。
12. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过以下来使得将第一资源呈现给第二用户:
使用有关第一资源的信息生成HTML;以及
将所述HTML插入到网页中。
13. 根据条款12所述的系统,其中,第一资源的呈现包括可选项,并且所述至少一个服务器计算机被配置成:
接收第二用户对所述可选项的选择;以及
使得响应于对所述可选项的选择而将消息发送给第一用户。
14. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成使用第一用户的身份、第二用户的身份或者关于第一用户的信息来生成第一资源的第一分数。
15. 根据条款8所述的系统,其中,所述神经网络包括递归神经网络。
16. 一种或多种包括计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令当被执行时使至少一个处理器实行包括以下的动作:
接收第一用户和第二用户之间的消息的文本;
使用神经网络和所述消息文本生成对话特征向量;
获得与第一资源对应的第一特征向量;
使用所述对话特征向量和第一特征向量生成第一资源的第一分数;
获得与第二资源对应的第二特征向量;
使用所述对话特征向量和第二特征向量生成第二资源的第二分数;
使用第一分数和第二分数选择第一资源;以及
使得将第一资源呈现给第二用户。
17. 根据条款16所述的一种或多种非暂时性计算机可读介质,其中,在接收第一用户和第二用户之间的消息文本之前计算第一特征向量和第二特征向量。
18. 根据条款16所述的一种或多种非暂时性计算机可读介质,其中,使用自编码器来计算第一特征向量。
19. 根据条款16所述的一种或多种非暂时性计算机可读介质,生成第一资源的第一分数包括利用分类器处理所述对话特征向量和第一特征向量。
20. 根据条款16所述的一种或多种非暂时性计算机可读介质,其中,分类器包括多层感知器神经网络。
示例CSR用户界面
图18A-Q例示了可以由CSR和客户使用并且可以结合上述技术的示例用户界面。
图18A例示了可以由CSR用于与一个或多个客户通信的示例用户界面(UI)。图18A的UI包括包含不同类型的信息的不同部分。例如,图18A包括客户列表部分1810,其包括CSR当前正与之通信的客户列表。在该示例中,CSR正与五个不同的客户进行通信,并且名为Cathy Washington(凯西·华盛顿)的客户是所选客户或活动中的客户。由于CathyWashington是所选客户或活动中的客户,因此UI的其他部分可能会显示与CathyWashington相关的其他信息,诸如Cathy Washington和CSR之间的消息序列。
图18A还包括对话部分1820,其显示了客户和CSR之间的消息。在图18A的示例中,
向客户发送的第一条消息是“How can we help you(有什么可以帮您的吗)”。可以为每
个新的客户支持会话自动生成该消息,或者可以由CSR键入该消息。客户回复到“I need to
pay the bill to my account and cancel the Avengers movie that was billed to
me.(我需要向我的账户支付账单,并取消已向我收费的复仇者联盟电影。)”。
在另一条消息中,要求客户提供PIN和账户号。PIN和账户号可以用于允许CSR访问来自客户账户的信息。在该示例中,PIN被显示为星号,使得CSR无法访问PIN号。
图18A还包括信息部分1830,其可以呈现与客户相关的其他信息。在该示例中,信息部分1830沿底部具有三个选项卡,其允许CSR在三种不同类型的信息之间进行选择。三个选项卡是“知识库”、“客户历史”和“客户简档”。在图18A中,选择客户历史选项卡,并且信息部分1830显示所选客户的事件历史。
图18B例示了CSR的可能的后续UI。在图18B中,CSR已经键入了给客户的消息,并且可以在对话部分1820中看到该消息。另外,信息部分1830现在显示“客户简档”的选项卡,并且在顶部附近显示“View Avengers 2(查看复仇者2)”的建议资源1831。
可以如上所述选择建议资源1831。由于客户的消息表明他想要取消复仇者的电影,因此选择了与查看该特定交易相关的建议资源并将其呈现给CSR。为了识别客户想要取消的电影,可以诸如通过使用命名实体识别技术来分析对话的文本。客户的购买历史也可以用于改进命名实体识别。例如,客户询问关于“复仇者联盟电影”的退款,但由于客户实际购买了复仇者联盟2,因此识别出的命名实体是复仇者联盟2。然后可以将资源与所识别的交易进行组合以建议资源,以允许CSR查看与购买复仇者2电影相对应的交易。
图18C例示了在CSR点击了对应于建议动作的“查看”按钮以查看来自图18B的复仇者2交易之后的CSR的可能的后续UI。在图18C中,信息部分1830现在显示客户的交易列表,包括复仇者2电影的购买。在图18C中,弹出菜单显示可以由CSR执行的可能的进一步动作。由于CSR选择来自图18B的“查看”动作,因此该弹出菜单可能会自动出现,或者其可能是CSR诸如点击复仇者2的条目或将鼠标悬停在复仇者2的条目上的另外的动作的结果。弹出菜单包括“退款”按钮,CSR可以使用该按钮向客户提供退款。
图18D例示了在CSR点击了来自图18C的退款按钮之后的CSR的可能的后续UI。在图18D的对话部分1820中,从CSR向客户显示新消息,以通知客户已经处理了所请求的退款。该消息可以响应于CSR点击图18C中的退款按钮而自动生成并发送给客户。
图18D的对话部分1820的底部还显示了建议响应1821,其是上述自动响应建议的示例。可以处理客户与CSR之间的对话的文本以生成描述对话的特征向量。然后可以处理该特征以生成如上所述的建议响应的文本。此处的建议响应表明客户尚未设置购买PIN并且提议帮助客户设置PIN。
对于该示例,建议响应取决于来自客户简档的信息。此建议响应仅适用于客户尚未设置购买PIN的情况。在一些实现中,建议响应的生成可以使用包含来自客户简档的信息的附加特征。例如,可以用附加特征来增补由分类器1350处理的特征向量,所述附加特征诸如客户是否已设置了PIN。通过在向CSR建议响应时结合客户简档信息作为特征,可以向CSR建议更多相关的响应。
对于该示例,建议响应1821还包括关于客户的信息,即客户的电子邮件地址。建议响应可以包括指示特定类型的信息的特殊标记,并且可以用关于客户的对应信息来替换所述标记。例如,建议响应可以包括标记“>email address<”,并且在向CSR呈现建议响应时,可以用客户的实际电子邮件地址替换该特殊标记。
图18E例示了在CSR选择了来自图18D的建议响应之后的CSR的可能的后续UI。作为选择建议响应的结果,消息被发送给客户,并且相应地,该消息出现在图18E的对话部分1820中。此外,客户已回复说他要设置PIN。
图18E的信息部分1830还包括CSR可以使用的若干资源。在一些实现中,基于处理客户与CSR之间的对话的文本来自动呈现这些建议资源。在一些实现中,CSR可以通过在信息部分1830的顶部的搜索栏1832中键入内容来搜索资源。在该示例中,CSR键入了“pin”。可以使用CSR键入的文本来搜索资源数据库1610,并呈现与搜索项匹配的资源。可以使用任何适当的搜索技术来执行搜索,诸如术语频率逆文档频率算法。
图18F例示了在CSR选择了来自图18E的“Instructions for PIN setup(用于PIN设置的指令)”之后的CSR的可能的后续UI。在图18F的信息部分1830中,CSR具有以三种不同方式向客户发送指令的选项。
图18G例示了在CSR从图18F选择了通过电子邮件发送指令之后的CSR的可能的后续UI。在图18G中,CSR还向客户发送消息以通知客户已经发送了PIN设置指令并且已经处理了复仇者2的退款。
图18G的信息部分1830还显示了另一个建议资源1833。在处理了最新消息之后,建议资源允许CSR在客户支持会话中请求来自客户的支付。
图18H例示了客户在与CSR通信时可以使用的示例UI。在一些实现中,图18H的UI可以由公司创建的专用应用程序(例如,智能手机应用)来生成。UI 1840显示了具有客户和CSR之间的最新消息的UI以及响应于CSR从建议资源1833中选择请求支付按钮而发送给客户的支付按钮。在图18H中,客户可以激活UI 1840中的支付按钮(例如,通过触摸它),授权US 1841中的支付(例如,使用指纹传感器来授权支付),并且在UI 1842中看到接收到支付的确认。
图18I例示了在处理了客户支付之后的CSR的可能的后续UI。在图18I中,信息部分1830指示已经处理了来自客户的支付。同样在图18I中,已向客户发送消息以感谢客户进行支付。该消息可以响应于接收到付款而自动发送,而无需由CSR键入。
在图18I中的对话部分1820的底部是文本录入框1822,CSR可以在其中键入要发送给客户的消息。图18I例示了提供对由CSR键入的文本的建议自动完成的示例。在该示例中,CSR已键入了“You're very welcome! It's(不客气!很)”。之后呈现建议完成“been mypleasure to help(高兴帮到了您)”。可以使用上述技术来确定该建议完成。CSR可以选择该完成以使用它并将完成的消息发送给客户。
图18J例示了在CSR使用建议完成发送了消息之后的CSR的可能的后续UI。如图18J的对话部分1820中可以看到的,完成消息已发送给客户。
CSR现在可以结束帮助该客户并且可以帮助另一个客户。CSR可以从客户列表部分1810中选择另一个客户,并且图18K例示了在选择客户Ray Jackson(蕾·杰克逊)之后的CSR的可能的后续UI。
在图18K中,客户发送了消息“Starting from 2 weeks ago, my internetstarted being really slow for no reason.(从2周前开始,我的互联网无缘无故地开始变得非常慢)”。在处理对话的文本之后,在信息部分1830中呈现建议资源1834。由于客户遇到互联网连接问题,因此建议资源允许CSR启动故障排除树以帮助客户解决该问题。
图18L例示了在CSR选择了来自图18K的开始按钮以开始使用故障排除树之后的CSR的可能的后续UI。在图18L中,故障排除树的第一步是询问客户问题是在家庭网络还是Wi-Fi热点。CSR可以从信息部分1830中选择Send Question(发送问题)按钮以将该问题发送给客户。
在一些实现中,可以将问题作为文本发送给客户,并且客户可以通过键入响应来做出响应。在一些实现中,将问题发送给客户可以使得按钮(或某其他用户界面元素)出现在客户设备的UI中。因此,客户可以能够通过选择适当的按钮来回答问题。在图18L中,对话部分指示了客户通过指示问题是在家庭网络中而做出了响应。
图18M例示了故障排除树的下一步的可能的后续UI。该UI可以响应于CSR从图18L的信息部分1830选择了家庭网络按钮而显示。在图18M中,故障排除树的步骤涉及确认客户的设备,并且CSR可以再次通过点击发送问题按钮将问题发送给客户。图18M的对话部分1820显示了问题已经发送给客户并且客户已经用她设备的序列号做出了响应。
图18N例示了故障排除树的下一步的可能的后续UI。该UI可以响应于CSR从图18M的信息部分1830选择Yes(是)按钮而显示。故障排除的下一步涉及执行自动化检查。图18N的信息部分1830包括允许CSR向客户发送消息以通知她CSR将发起自动化检查的按钮和开始自动化检查的另一按钮。在图18N中,CSR选择了这两个按钮,并且如对话部分1820中所示,对应的消息被发送给客户,并且如信息部分1830中的进度条所示,自动化检查正在进行中。
图18O例示了在执行了自动化检查之后的CSR的可能的后续UI。对于该示例,自动化检查的结果是需要将技术人员派往客户家中。向客户通知检查结果和需要技术人员的消息可以自动发送给客户,并且这些消息的示例在图18O的对话部分1820中所示。
图18O的信息部分1830还包括允许CSR安排技术人员与客户的预约的按钮。在一些实现中,按下该按钮将向客户发送具有关于预约的开放时隙的信息的消息,并且客户可以通过键入以指示期望的预约来做出响应。在一些实现中,可以向客户呈现便于选择预约的UI。
图18P例示了可以呈现给客户以允许客户选择针对技术人员的预约时间的示例UI。在该示例中,显示预约的可用日期和时间,并且客户可以选择可用预约。在客户做出选择之后,所选预约可以出现在CSR的UI中,如图18O的对话部分1820中所示。
图18Q例示了在客户和CSR之间发送另外的消息之后的CSR的可能的后续UI。此处,客户希望获得关于她的在线账户的额外帮助。在一些实现中,公司可能有具有不同专长的CSR,因此帮助技术支持的CSR可以与帮助在线账户的CSR不同。在该示例中,CSR可以使用转移按钮1823将客户转移到可以在她的在线账户方面帮助该客户的另一CSR。
第三方语义处理服务
在一些实现中,上述技术和服务可以由公司直接提供给其客户以改进客户服务并减少客户服务费用。然而,一些公司可能希望向其客户提供此类服务,但可能更愿意使用由第三方提供的解决方案。例如,较小的公司可能会发现使用第三方服务比建立其自己的执行语义处理的服务更具成本效益。图19A-C例示了可以由第三方用于提供语义处理服务的三种不同的架构。
图19A例示了系统1901,其允许第三方向多个公司提供语义处理服务,其中第三方是客户和公司之间的针对客户和公司之间的所有通信的中介。在图19A中,三个客户正在与三个不同的公司进行交互。客户设备1921与公司1931交互,客户设备1922与公司1932交互,并且客户设备1923与公司1933交互。
客户可以使用上述任何通信方法与第三方服务进行交互。例如,客户可能正在使用由公司提供的网站或应用、可能正在使用由第三方提供的网站或应用、可能正在向与公司关联的电子邮件地址或电话号码发送消息或者可能正在向与第三方关联的电子邮件或电话号码发送消息。从客户的角度来看,客户正通过第三方与公司交互而不是直接与公司交互可能是明显的或可能不明显。
对于请求的自动处理,可以将客户的请求发送给第三方而不是公司。第三方可以接收客户的请求,执行上述处理以确定自动化响应,并将自动化响应发送回给客户。例如,第三方可以实现应用程序接口组件220以接收客户的请求,并且可以实现语义响应组件240以确定对客户请求的响应。
上述用于使用语义处理来响应客户请求的技术使用了动作图、节点分类器、客户数据、其他数据和动作分类器中的一个或多个。在一些实现中,用于响应客户请求的所有所需信息都可以由受第三方控制的服务器来存储,并且第三方可能不需要从公司请求这样的信息。
在一些实现中,用于响应客户请求的所需信息中的一些可以由公司的服务器而不是第三方的服务器存储。例如,公司可能不希望允许第三方存储大量客户数据的副本。在公司存储响应客户请求所需的信息中的一些的情况下,第三方的服务器可以向公司的服务器发送针对信息的请求。例如,公司可以具有允许第三方获得所需信息的API(例如,RESTAPI)。因此,图19包括第三方和每个公司之间的网络连接。
在一些实现中,第三方可以实现上述CSR用户界面的一些或所有方面。例如,代表公司工作的CSR可以通过登录到第三方提供的网站向客户提供客户服务。在登录到第三方网站之后,CSR可能会看到类似于图18A的UI。
第三方可以在客户和CSR之间中继消息。例如,第三方可以从客户接收消息并使其显示在CSR使用的UI中。类似地,第三方可以从CSR接收消息并使其显示在客户设备的UI上。
第三方可以通过提供上述语义处理服务中的一个或多个来帮助CSR。例如,第三方可以处理在客户和CSR之间发送的消息(以及可能的如上所述的其他信息)并向CSR提供自动完成、向CSR提供响应建议、以及自动建议资源以帮助CSR。
第三方也可以在不直接与客户通信的情况下向公司提供语义处理服务。图19B例示了允许第三方向多个公司提供语义处理服务的系统1902,其中第三方与公司通信但不直接与客户通信。在图19A中,客户设备现在与对应的公司具有网络连接,但没有直接与第三方的网络连接。
为了使用第三方的语义处理服务,公司可以向第三方的服务器发出请求。例如,第三方可以通过其服务器提供API(例如,REST API)以允许公司使用语义处理服务。
公司可以从客户接收请求并且希望使用语义处理来提供自动响应。公司可以让其服务器向第三方的服务器发出请求以确定响应。在一些实现中,从公司到第三方的请求可以包括第三方确定响应所需的所有信息,诸如请求的文本、客户和公司之间的先前消息或如上所述的任何其他信息。在一些实现中,第三方的服务器可以在执行处理时从公司的服务器请求信息以确定自动响应。
为了使用语义处理来用自动完成、自动响应建议和自动资源建议帮助CSR,公司服务器可以再次向第三方的服务器发送请求以执行所请求的语义处理。该请求可以包括所有需要的信息,或者第三方的服务器可以从公司请求所需信息。
第三方也可以使用上述技术的组合向公司提供语义处理服务。图19C例示了允许第三方向多个公司提供语义处理服务的系统1903,其中客户设备可以直接与公司和第三方二者进行通信。在图19C中,客户设备现在与对应的公司和第三方都具有网络连接。
在客户设备连接到公司和第三方二者的情况下,两个连接中的每一个可以用于不同种类的请求。例如,在客户以不需要语义处理(例如,导航网站或应用)的方式与公司交互的情况下,客户设备可以使用与公司的连接。在客户以语义处理可以促进交互的方式与公司交互的情况下,可以使用与第三方的连接。
可以使用上述架构的任何组合。例如,对于对客户请求的自动响应,客户设备可以使用与第三方的连接,但是对于客户支持会话,客户可以使用与公司的连接,并且公司服务器可以根据需要向第三方的服务器提出语义处理请求(例如,用于关于CSR的自动完成、自动响应建议或自动资源建议)。
图20是语义处理服务的示例实现的流程图。在图20中,步骤的排序是示例性的,并且其他顺序是可能的,并非所有步骤都是必须的,并且在一些实现中,可以省略一些步骤或者可以添加其他步骤。例如,可以通过本文描述的任何计算机或系统来实现流程图的过程。
在步骤2010处,从用户(例如,客户)接收针对来自实体的帮助的请求。如本文所使用的,实体可以指个人、公司(例如,企业或有限责任公司)、或任何个人群体(例如,合伙企业)。请求可以是从用户接收的,诸如用户的设备,或者可以是从实体接收的,其中该实体先前从用户接收到了请求。用户可以使用上述任何技术(例如,使用网页或应用或发送文本消息)来发送请求。请求可以包括可以用自然语言表达的任何请求,诸如对信息的请求(例如,当正在递送包裹时)或者对要执行的动作的请求(例如,变更用户的地址)。
在步骤2020处,获得请求的文本。例如,可以从请求中提取文本,或者可以执行语音识别以从音频信号获得文本。
在步骤2030处,向实体发送对信息的请求。例如,可以将针对信息的请求从第三方服务提供商的服务器发送到实体的服务器,其中请求是以REST API请求的形式。所请求的信息可以包括可以用于使用语义处理来提供响应的上述任何信息。请求可以包括关于用户的信息,诸如用户ID号或认证标记。
在步骤2040处,从实体接收第一信息。
在步骤2050处,使用文本和该信息生成对请求的响应。可以使用上述任何技术生成响应,诸如使用节点选择器分类器从动作图中选择节点和/或使用动作选择器分类器选择动作。可以使用任何适当的技术来格式化响应,诸如以文本、结构化数据(例如,XML或JSON)的形式,或者呈现为HTML。
在步骤2060处,将响应发送给用户。在一些实现中,响应可以直接发送给用户,诸如通过将响应发送给用户的设备。在一些实现中,可以经由实体将响应发送给用户。
在一些实现中,可以如以下条款、其中的任何两个或更多个的组合、或者其与本文中呈现的其他条款的组合中描述的那样提供语义处理服务。
1. 一种用于帮助实体响应用户的计算机实现的方法,该方法包括:
接收来自第一用户的第一请求,其中第一请求寻求来自第一实体的帮助;
获得与第一请求对应的第一文本;
将针对第一信息的第一请求发送给第一实体的第一服务器;
接收来自第一实体的第一信息;
使用第一文本和第一信息自动生成第一响应;
将第一响应发送给第一用户;
接收来自第二用户的第二请求,其中第二请求寻求来自第二实体的帮助;
获得与第二请求对应的第二文本;
将针对第二信息的第二请求发送给第二实体的第二服务器;
接收来自第二实体的第二信息;
使用第二文本和第二信息自动生成第二响应;以及
将第二响应发送给第二用户。
2. 根据条款1所述的计算机实现的方法,其中,第一请求包括标识第一用户的信息。
3. 根据条款1所述的计算机实现的方法,其中,第一信息包括关于第一用户的信息。
4. 根据条款1所述的计算机实现的方法,其中,第一用户是第一实体的客户,并且第二用户是第二实体的客户。
5. 根据条款1所述的计算机实现的方法,其中,自动生成第一响应包括用神经网络处理第一文本。
6. 根据条款1所述的计算机实现的方法,其中,自动生成第一响应包括从第一动作图中选择第一节点,并且生成第二响应包括从第二动作图中选择第二节点。
7. 根据条款1所述的计算机实现的方法,其中,第一请求是从第一用户的第一设备接收的,并且第一响应被发送给第一用户的第一设备。
8. 一种帮助实体响应用户的系统,该系统包括:
至少一个服务器计算机,其包括至少一个处理器和至少一个存储器,所述至少一个服务器计算机被配置成:
接收来自第一用户的第一请求,其中第一请求寻求来自第一实体的帮助;
获得与第一请求对应的第一文本;
将针对第一信息的第一请求发送给第一实体的第一服务器;
接收来自第一实体的第一信息;
使用第一文本和第一信息自动生成第一响应;
将第一响应发送给第一用户;
接收来自第二用户的第二请求,其中第二请求寻求来自第二实体的帮助;
获得与第二请求对应的第二文本;
将针对第二信息的第二请求发送给第二实体的第二服务器;
接收来自第二实体的第二信息;
使用第二文本和第二信息自动生成第二响应;以及
将第二响应发送给第二用户。
9. 根据条款8所述的系统,其中,第一信息包括关于第一用户的信息。
10. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过用神经网络处理第一文本来自动生成第一响应。
11. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过从第一动作图中选择第一节点来自动生成第一响应,并通过从第二动作图中选择第二节点来自动生成第二响应。
12. 根据条款8所述的系统,其中,所述至少一个服务器计算机被配置成通过使用第一分类器从第一动作图中选择第一节点来自动生成第一响应。
13. 根据条款12所述的系统,其中,第一分类器包括逻辑回归分类器。
14. 根据条款8所述的系统,其中,第一请求是从第一实体接收的,并且第一响应被发送给第一实体。
15. 一种或多种包括计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令当被执行时使至少一个处理器实行包括以下的动作:
接收来自第一用户的第一请求,其中第一请求寻求来自第一实体的帮助;
获得与第一请求对应的第一文本;
将针对第一信息的第一请求发送给第一实体的第一服务器;
接收来自第一实体的第一信息;
使用第一文本和第一信息自动生成第一响应;
将第一响应发送给第一用户;
接收来自第二用户的第二请求,其中第二请求寻求来自第二实体的帮助;
获得与第二请求对应的第二文本;
将针对第二信息的第二请求发送给第二实体的第二服务器;
接收来自第二实体的第二信息;
使用第二文本和第二信息自动生成第二响应;以及
将第二响应发送给第二用户。
16. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,第一信息包括关于第一用户的信息。
17. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,自动生成第一响应包括利用神经网络处理第一文本。
18. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,自动生成第一响应包括从第一动作图中选择第一节点,并且生成第二响应包括从第二动作图中选择第二节点。
19. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,自动生成第一响应包括使用第一分类器从第一动作图中选择第一节点。
20. 根据条款15所述的一种或多种非暂时性计算机可读介质,其中,第一分类器包括逻辑回归分类器。
图21例示了用于实现上述任何技术的计算设备2100的一个实现的组件。在图21中,组件被示出为处于单个计算设备2100上,但是组件可以分布在多个计算设备之间,诸如计算设备的系统,该系统包括例如终端用户计算设备(例如,智能手机或平板电脑)和/或服务器计算设备(例如,云计算)。
计算设备2100可以包括计算设备典型具有的任何组件,诸如易失性或非易失性存储器2110、一个或多个处理器2111以及一个或多个网络接口2112。计算设备2100还可以包括任何输入和输出组件,诸如显示器、键盘和触摸屏。计算设备2100还可以包括提供特定功能性的各种组件或模块,并且这些组件或模块可以以软件、硬件或其组合来实现。下面,针对一个示例实现描述了组件的若干示例,并且其他实现可以包括附加组件或排除下面描述的组件中的一些。
计算设备2100可以具有语音识别组件2120,其处理包含语音的音频信号以获得与语音相对应的文本。计算设备2100可以具有应用程序接口组件2121,其可以实现从其他计算机接收信息或将信息发送给其他计算机(例如,负载平衡器、web服务器等)所需的任何处理。应用程序接口组件2121还可以促进其他组件之间的通信。例如,应用程序接口组件2121可以接收请求的音频,使得执行语音识别,并且然后将文本发送给其他组件。计算设备2100可以具有客户支持组件2123,其促进客户和CSR之间的客户支持会话。例如,客户支持组件2123可以为客户和/或CSR提供用户界面,并且可以促进消息的交换。计算设备2100可以具有语义响应组件2123,其可以如上文描述的那样使用语义处理来促进提供对客户请求的自动响应。计算设备2100可以具有自动完成组件2124,其如上文描述的那样使用语义处理来提供针对CSR已经开始键入的文本的完成的建议。计算设备2100可以具有自动建议响应组件2125,其如上文描述的那样使用语义处理来向CSR提供建议响应。计算设备2100可以具有自动建议资源组件2126,其如上文描述的那样使用语义处理来向CSR建议资源。
计算设备2100可以包括或可以访问各种数据存储,诸如数据存储2130、2131、2132和2133。数据存储可以使用任何已知的存储技术,诸如文件或关系数据库或非关系数据库。例如,计算设备2100可以具有动作图数据存储2130以存储上述动作图。计算设备2100可以具有分类器数据存储2131,其可以存储关于上述任何分类器的信息。计算设备2100可以具有客户数据数据存储2132,其可以用于存储关于客户的任何相关信息。计算设备2100可以具有其他数据数据存储2133,其可以用于存储可以用来执行上述语义处理任务的任何其他相关数据,诸如公司知识库或关于公司服务的操作(例如,网络中断)的信息。
可以通过在处理器上执行计算机软件、程序代码和/或指令的机器来部分地或整个地部署本文描述的方法和系统。如本文中使用的“处理器”意指包括至少一个处理器,并且除非上下文另外明确指示,否则复数和单数应当被理解为是可互换的。本发明可以被实现为机器上的方法、作为机器的部分或关于机器的系统或装置、或者在一个或多个机器上执行的被体现在计算机可读介质中的计算机程序产品。处理器可以是服务器、客户端、网络基础设施、移动计算平台、固定计算平台或其他计算平台的部分。处理器可以是能够执行程序指令、代码、二进制指令等等的任何种类的计算或处理设备。处理器可以是或者包括信号处理器、数字处理器、嵌入式处理器、微处理器或者诸如协处理器(数学协处理器、图形协处理器、通信协处理器等等)等等可以直接或间接促进存储于其上的程序代码或程序指令的执行的任何变型。此外,处理器可以使得能够执行多个程序、线程和代码。可以同时执行线程以加强处理器的性能并促进应用程序的同时操作。借助于实现,本文描述的方法、程序代码、程序指令等等可以在一个或多个线程中实现。线程可以大量产生可以被分配与其相关联的优先级的其他线程;处理器可以基于优先级或基于在程序代码中提供的指令的任何其他顺序来执行这些线程。处理器可以包括存储如在本文中以及别处描述的方法、代码、指令和程序的存储器。处理器可以通过接口来访问存储介质,所述存储介质可以存储在本文中以及别处描述的方法、代码和指令。用于存储方法、程序、代码、程序指令或能够被计算或处理设备执行的其他类型的指令的、与处理器相关联的存储介质可以包括但不限于下述各项中的一个或多个:CD-ROM、DVD、存储器、硬盘、闪存驱动器、RAM、ROM、高速缓存等等。
处理器可以包括可以加强多处理器的速度和性能的一个或多个核心。在实施例中,处理器可以是双核处理器、四核处理器、组合两个或更多个独立核心(称为管芯)的其他芯片级多处理器等等。
可以通过在服务器、客户端、防火墙、网关、中枢、路由器或其他这样的计算机和/或联网硬件上执行计算机软件的机器来部分地或整个地部署本文描述的方法和系统。软件程序可以与服务器相关联,服务器可以包括文件服务器、打印服务器、域服务器、互联网服务器、内联网服务器和诸如辅助服务器、主机服务器、分布式服务器等等的其他变型。服务器可以包括下述各项中的一个或多个:存储器、处理器、计算机可读介质、存储介质、端口(物理的和虚拟的)、通信设备以及能够通过有线或无线介质来访问其他服务器、客户端、机器和设备的接口,等等。如在本文中以及别处描述的方法、程序或代码可以由服务器执行。此外,执行如在本申请中描述的方法所需的其他设备可以被视为是与服务器相关联的基础设施的一部分。
服务器可以提供到其他设备的接口,所述其他设备包括但不限于客户端、其他服务器、打印机、数据库服务器、打印服务器、文件服务器、通信服务器、分布式服务器等等。另外,该耦合和/或连接可以促进跨网络远程地执行程序。这些设备中的一些或全部的联网可以促进在一个或多个位置处并行处理程序或方法,而不脱离本发明的范围。此外,通过接口附接到服务器的任何设备可以包括能够存储方法、程序、代码和/或指令的至少一个存储介质。中央存储库可以提供要在不同设备上执行的程序指令。在该实现中,远程存储库可以充当用于程序代码、指令和程序的存储介质。
软件程序可以与客户端相关联,客户端可以包括文件客户端、打印客户端、域客户端、互联网客户端、内联网客户端和诸如辅助客户端、主机客户端、分布式客户端等等的其他变型。客户端可以包括下述各项中的一个或多个:存储器、处理器、计算机可读介质、存储介质、端口(物理的和虚拟的)、通信设备以及能够通过有线或无线介质来访问其他客户端、服务器、机器和设备的接口,等等。如在本文中以及别处描述的方法、程序或代码可以由客户端执行。此外,执行如在本申请中描述的方法所需的其他设备可以被视为是与客户端相关联的基础设施的一部分。
客户端可以提供到其他设备的接口,所述其他设备包括但不限于服务器、其他客户端、打印机、数据库服务器、打印服务器、文件服务器、通信服务器、分布式服务器等等。此外,该耦合和/或连接可以促进促进跨网络远程地执行程序。这些设备中的一些或全部的联网可以促进在一个或多个位置处并行处理程序或方法,而不脱离本发明的范围。此外,通过接口附接到客户端的任何设备可以包括能够存储方法、程序、应用程序、代码和/或指令的至少一个存储介质。中央存储库可以提供要在不同设备上执行的程序指令。在该实现中,远程存储库可以充当用于程序代码、指令和程序的存储介质。
可以通过网络基础设施部分地或整体地部署本文中描述的方法和系统。网络基础设施可以包括下述元件:诸如计算设备、服务器、路由器、中枢、防火墙、客户端、个人计算机、通信设备、路由设备和如本领域已知的其他有源或无源设备、模块和/或组件。与网络基础设施相关联的(一个或多个)计算和/或非计算设备除其他组件之外还可以包括存储介质,诸如闪速存储器、缓冲器、堆栈、RAM、ROM等等。在本文中以及别处描述的过程、方法、程序代码、指令可以由所述网络基础设施元件中的一个或多个来执行。
在本文中以及别处描述的方法、程序代码和指令可以在具有多个小区的蜂窝网络上实现。蜂窝网络可以是频分多址(FDMA)网络或者码分多址(CDMA)网络。蜂窝网络可以包括移动设备、小区站点、基站、中继器、天线、塔等等。小区网络可以是GSM、GPRS、3G、EVDO、网状网或其他网络类型。
在本文中以及别处描述的方法、程序代码和指令可以在移动设备上实现或通过移动设备实现。移动设备可以包括导航设备、蜂窝电话、移动电话、移动个人数字助理、膝上型电脑、掌上型电脑、上网本、寻呼机、电子书阅读器、音乐播放器等等。这些设备除其他组件之外还可以包括诸如闪速存储器、缓冲器、RAM、ROM之类的存储介质以及一个或多个计算设备。可以使与移动设备相关联的计算设备能够执行存储于其上的程序代码、方法和指令。替换地,移动设备可以被配置成与其他设备合作地执行指令。移动设备可以与基站通信,所述基站与服务器对接并且被配置成执行程序代码。移动设备可以在对等网络、网状网络或其他通信网络上通信。程序代码可以存储在与服务器相关联的存储介质上并且由嵌入在服务器内的计算设备执行。基站可以包括计算设备和存储介质。存储设备可以存储由与基站相关联的计算设备执行的程序代码和指令。
可以在机器可读介质上存储和/或访问计算机软件、程序代码和/或指令,机器可读介质可以包括:保持用于计算的数字数据达一些时间间隔的计算机组件、设备和记录介质;称为随机存取存储器(RAM)的半导体存储;通常用于更持久存储的大容量存储,诸如光盘,比如硬盘、磁带、磁鼓、磁卡及其他类型的磁性存储的形式;处理器寄存器、高速缓存存储器、易失性存储器、非易失性存储器;光学存储,诸如CD、DVD;可移除介质,诸如闪速存储器(例如,USB棒或钥匙)、软盘、磁带、纸带、穿孔卡、独立RAM盘、Zip驱动器、可移除大容量存储、离线装置(off-line)等等;其他计算机存储器,诸如动态存储器、静态存储器、读/写存储、可变存储、只读、随机存取、顺序访问、位置可寻址、文件可寻址、内容可寻址、网络附接存储、存域网、条形码、磁性墨水等等。
本文中描述的方法和系统可以将物理和/或无形物品从一个状态变换成另一个状态。本文中描述的方法和系统还可以将表示物理和/或无形物品的数据从一个状态变换成另一个状态。
本文中描述和描绘的元件、包括各图中的流程图和框图中的元件暗示元件之间的逻辑边界。然而,根据软件或硬件工程实践,所描绘的元件及其功能可以通过计算机可执行介质在机器上实现,所述机器具有能够执行存储于其上的程序指令的处理器,所述程序指令作为单片式软件结构、作为独立式软件模块、或者作为采用外部例程、代码、服务等等的模块或这些的任何组合,并且所有此类实现都可以处于本公开的范围内。这样的机器的示例可以包括但不限于个人数字助理、膝上型电脑、个人计算机、移动电话、其他手持式计算设备、医疗装备、有线或无线通信设备、换能器、芯片、计算器、卫星、平板PC、电子书、小工具、电子设备、具有人工智能的设备、计算设备、联网装备、服务器、路由器等等。此外,在流程图和框图中描绘的元件或任何其他逻辑组件可以在能够执行程序指令的机器上实现。因此,虽然前述附图和描述阐述了所公开的系统的功能方面,但是不应该根据这些描述推断用于实现这些功能方面的软件的特定布置,除非明确陈述或根据上下文另行清楚陈述。类似地,将领会的是,上文标识和描述的各种步骤可以改变,并且步骤的顺序可以适应本文中公开的技术的特定应用。所有此类改变和修改意图落在本公开的范围内。照此,对各种步骤的顺序的描绘和/或描述不应该被理解成要求执行那些步骤的特定顺序,除非由特定应用要求的、或者明确陈述或根据上下文另行清楚描述的。
可以以硬件、软件或适合于特定应用的硬件和软件的任何组合来实现上文描述的方法和/或过程及其步骤。硬件可以包括通用计算机和/或专用计算设备,或者特定计算设备,或者具体计算设备的特定方面或组件。可以在一个或多个微处理器、微控制器、嵌入式微控制器、可编程数字信号处理器或其他可编程设备、连同内部和/或外部存储器中实现所述过程。过程也可以或替代地体现在专用集成电路、可编程门阵列、可编程阵列逻辑或任何其他设备或可以被配置成处理电子信号的设备的组合中。将进一步领会的是,过程中的一个或多个可以被实现为能够在机器可读介质上执行的计算机可执行代码。
可以使用诸如C之类的结构化编程语言、诸如C++之类的面向对象的编程语言或任何其他高级或低级编程语言(包括汇编语言、硬件描述语言以及数据库编程语言和技术)来创建计算机可执行代码,所述计算机可执行代码可以被存储、编译或解译以在上述设备以及处理器的异构组合、处理器架构或不同硬件和软件的组合、或者能够执行程序指令的任何其他机器中的一个上运行。
因此,在一个方面中,上文描述的每个方法及其组合可以体现在计算机可执行代码中,所述计算机可执行代码当在一个或多个计算设备上执行时实行所述方法的步骤。在另一方面中,所述方法可以体现在实行其步骤的系统中,并且可以以许多方式分布在设备上,或者其全部功能性可以被集成到专用的独立式设备或其他硬件中。在另一方面中,用于实行与上文描述的过程相关联的步骤的部件可以包括上述硬件和/或软件中的任何。所有此类排列和组合意图落在本公开的范围内。
尽管已经结合详细示出和描述的优选实施例公开了本发明,但是对其的各种修改和改进将对本领域技术人员变得容易地显而易见。因此,本发明的精神和范围不应受前述示例的限制,而是应在法律可允许的最宽泛意义上来理解。
藉此将本文中引用的全部文档通过引用并入。
Claims (24)
1.一种用于自动响应客户请求的计算机实现的方法,所述方法包括:
在服务器计算机处接收对应于客户请求的消息的文本,其中所述消息是从所述客户的计算设备接收的;
由服务器计算机从所述消息的文本计算多个特征;
由服务器计算机获得包括多个节点的图,其中所述图的每个节点对应于节点选择器分类器和动作,其中每个节点选择器分类器接收所述多个特征作为输入并处理所述输入以输出分数,并且其中所述图的每个节点对应于不同类型的客户请求;
由服务器计算机获得与所述图的第一节点对应的第一节点选择器分类器;
由服务器计算机利用第一节点选择器分类器处理所述多个特征,以生成包括针对遍历到第一节点的一个或多个子节点的分数的第一多个分数;
由服务器计算机使用第一多个分数来选择所述图的第二节点,其中第二节点是第一节点的子节点;
由服务器计算机获得与第二节点对应的第二节点选择器分类器,其中第二节点选择器分类器与第一节点选择器分类器不同;
由服务器计算机利用第二节点选择器分类器处理所述多个特征,以生成第二多个分数,所述第二多个分数包括(i)指示所述客户请求与第二节点之间的匹配的分数以及(ii)针对遍历到第二节点的一个或多个子节点的分数;
由服务器计算机使用第二多个分数来确认对第二节点的选择;以及
由服务器计算机使得执行与所确认的对第二节点的选择相对应的动作,其中所述动作包括通过向所述客户发送计算机生成的消息来响应所述客户请求或者将所述客户与客户服务代表电子连接。
2.根据权利要求1所述的计算机实现的方法,其中,指示所述客户请求与第二节点之间的匹配的分数是第二多个分数中的最大分数。
3.根据权利要求1所述的计算机实现的方法,其中,第一节点选择器分类器独立于第二节点选择器分类器。
4.根据权利要求1所述的计算机实现的方法,其中,接收对应于客户请求的消息的文本包括对包括所述客户的语音的音频信号执行语音识别。
5.根据权利要求1所述的计算机实现的方法,其中,经由文本消息、电子邮件、web服务器或在所述客户的计算设备上运行的应用程序来接收所述消息。
6.根据权利要求1所述的计算机实现的方法,其中,选择第二节点包括使用贪婪搜索算法。
7.根据权利要求1所述的计算机实现的方法,其中,计算第一多个分数包括使用关于所述客户的信息。
8.根据权利要求1所述的计算机实现的方法,其中,第一多个分数不用于生成第二多个分数。
9.根据权利要求1所述的计算机实现的方法,包括:
接收所述客户的标识符;
从包括关于多个客户的数据的数据存储获得关于所述客户的数据;并且
其中,第一分类器被配置成通过处理所述特征和关于所述客户的数据来生成第一多个分数。
10.根据权利要求9所述的计算机实现的方法,其中,第二分类器不处理关于所述客户的数据。
11.根据权利要求9所述的计算机实现的方法,其中,关于所述客户的数据包括客户简档、所述客户的位置、计费数据、支付数据或提供给所述客户的服务。
12.一种用于自动响应客户请求的系统,所述系统包括:
至少一个服务器计算机,其包括至少一个处理器和至少一个存储器,所述至少一个服务器计算机被配置成:
在所述至少一个服务器计算机处接收对应于客户请求的消息的文本,其中所述消息是从所述客户的计算设备接收的;
由所述至少一个服务器计算机从所述消息的文本计算多个特征;
由所述至少一个服务器计算机获得包括多个节点的图,其中所述图的每个节点对应于节点选择器分类器和动作,其中每个节点选择器分类器接收所述多个特征作为输入并处理所述输入以输出分数,并且其中所述图的每个节点对应于不同类型的客户请求;
由所述至少一个服务器计算机获得与所述图的第一节点对应的第一节点选择器分类器;
由所述至少一个服务器计算机利用第一节点选择器分类器处理所述多个特征,以生成包括针对遍历到第一节点的一个或多个子节点的分数的第一多个分数;
由所述至少一个服务器计算机使用第一多个分数来选择所述图的第二节点,其中第二节点是第一节点的子节点;
由所述至少一个服务器计算机获得与第二节点对应的第二节点选择器分类器,其中第二节点选择器分类器与第一节点选择器分类器不同;
由所述至少一个服务器计算机利用第二节点选择器分类器处理所述多个特征,以生成第二多个分数,所述第二多个分数包括(i)指示所述客户请求与第二节点之间的匹配的分数以及(ii)针对遍历到第二节点的一个或多个子节点的分数;
由所述至少一个服务器计算机使用第二多个分数来确认对第二节点的选择;以及
由所述至少一个服务器计算机使得执行与所确认的对第二节点的选择相对应的动作,其中所述动作包括通过向所述客户发送计算机生成的消息来响应所述客户请求或者将所述客户与客户服务代表电子连接。
13.根据权利要求12所述的系统,其中,第二节点与多个动作相关联,并且其中,所述至少一个服务器计算机被配置成从所述多个动作中选择动作。
14.根据权利要求13所述的系统,其中,所述至少一个服务器计算机被配置成使用关于所述客户的信息来选择所述动作。
15.根据权利要求12所述的系统,其中,所述图是有向非循环图。
16.根据权利要求12所述的系统,其中,所述至少一个服务器计算机被配置成使用束搜索算法来选择第二节点。
17.根据权利要求12所述的系统,其中,所述至少一个服务器计算机被配置成使用信息来计算第二多个分数。
18.根据权利要求12所述的系统,其中,第一分类器包括逻辑回归分类器。
19.一种或多种包括计算机可执行指令的非暂时性计算机可读介质,所述计算机可执行指令当被执行时使至少一个处理器实行包括以下的动作:
在服务器计算机处接收对应于客户请求的消息的文本,其中所述消息是从所述客户的计算设备接收的;
由服务器计算机从所述消息的文本计算多个特征;
由服务器计算机获得包括多个节点的图,其中所述图的每个节点对应于节点选择器分类器和动作,其中每个节点选择器分类器接收所述多个特征作为输入并处理所述输入以输出分数,并且其中所述图的每个节点对应于不同类型的客户请求;
由服务器计算机获得与所述图的第一节点对应的第一节点选择器分类器;
由服务器计算机利用第一节点选择器分类器处理所述多个特征,以生成包括针对遍历到第一节点的一个或多个子节点的分数的第一多个分数;
由服务器计算机使用第一多个分数来选择所述图的第二节点,其中第二节点是第一节点的子节点;
由服务器计算机获得与第二节点对应的第二节点选择器分类器,其中第二节点选择器分类器与第一节点选择器分类器不同;
由服务器计算机利用第二节点选择器分类器处理所述多个特征,以生成第二多个分数,所述第二多个分数包括(i)指示所述客户请求与第二节点之间的匹配的分数以及(ii)针对遍历到第二节点的一个或多个子节点的分数;
由服务器计算机使用第二多个分数来确认对第二节点的选择;以及
由服务器计算机使得执行与所确认的对第二节点的选择相对应的动作,其中所述动作包括通过向所述客户发送计算机生成的消息来响应所述客户请求或者将所述客户与客户服务代表电子连接。
20.根据权利要求19所述的一种或多种非暂时性计算机可读介质,其中,所述动作包括从所述图的根节点遍历到第一节点。
21.根据权利要求19所述的一种或多种非暂时性计算机可读介质,其中,计算所述多个特征包括编码所述消息的文本的词汇并用神经网络处理所编码的词汇。
22.根据权利要求19所述的一种或多种非暂时性计算机可读介质,其中,第一节点选择器分类器包括逻辑回归分类器。
23.根据权利要求19所述的一种或多种非暂时性计算机可读介质,其中:
使用第一多个分数选择所述图的第二节点包括将第一多个分数中的至少一个与第一阈值进行比较;并且
使用第二多个分数选择所述图的第二节点包括将第二多个分数中的至少一个与第二阈值进行比较,其中第二阈值不等于第一阈值。
24.根据权利要求19所述的一种或多种非暂时性计算机可读介质,其中,选择第二节点包括使用关于所述客户的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010107173.9A CN111555954B (zh) | 2016-07-08 | 2016-09-01 | 自动响应用户的请求 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662359841P | 2016-07-08 | 2016-07-08 | |
US62/359841 | 2016-07-08 | ||
PCT/US2016/049896 WO2018009231A1 (en) | 2016-07-08 | 2016-09-01 | Automatically responding to a request of a user |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010107173.9A Division CN111555954B (zh) | 2016-07-08 | 2016-09-01 | 自动响应用户的请求 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109792402A CN109792402A (zh) | 2019-05-21 |
CN109792402B true CN109792402B (zh) | 2020-03-06 |
Family
ID=59350329
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010107173.9A Active CN111555954B (zh) | 2016-07-08 | 2016-09-01 | 自动响应用户的请求 |
CN201680089113.0A Active CN109792402B (zh) | 2016-07-08 | 2016-09-01 | 自动响应用户的请求 |
CN201780055266.8A Active CN109661675B (zh) | 2016-07-08 | 2017-06-30 | 使用用于客户支持的语义处理 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010107173.9A Active CN111555954B (zh) | 2016-07-08 | 2016-09-01 | 自动响应用户的请求 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780055266.8A Active CN109661675B (zh) | 2016-07-08 | 2017-06-30 | 使用用于客户支持的语义处理 |
Country Status (4)
Country | Link |
---|---|
US (8) | US9715496B1 (zh) |
EP (2) | EP3482393A4 (zh) |
CN (3) | CN111555954B (zh) |
WO (2) | WO2018009231A1 (zh) |
Families Citing this family (187)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10587541B2 (en) * | 2014-12-02 | 2020-03-10 | Facebook, Inc. | Device, method, and graphical user interface for lightweight messaging |
US10079785B2 (en) * | 2015-02-12 | 2018-09-18 | Google Llc | Determining reply content for a reply to an electronic communication |
US10083169B1 (en) * | 2015-08-28 | 2018-09-25 | Google Llc | Topic-based sequence modeling neural networks |
EP3395019B1 (en) | 2015-12-21 | 2022-03-30 | Google LLC | Automatic suggestions and other content for messaging applications |
WO2017112786A1 (en) | 2015-12-21 | 2017-06-29 | Google Inc. | Automatic suggestions for message exchange threads |
US10176802B1 (en) * | 2016-03-21 | 2019-01-08 | Amazon Technologies, Inc. | Lattice encoding using recurrent neural networks |
US10083451B2 (en) | 2016-07-08 | 2018-09-25 | Asapp, Inc. | Using semantic processing for customer support |
US9715496B1 (en) | 2016-07-08 | 2017-07-25 | Asapp, Inc. | Automatically responding to a request of a user |
US10387461B2 (en) | 2016-08-16 | 2019-08-20 | Google Llc | Techniques for suggesting electronic messages based on user activity and other context |
WO2018040040A1 (zh) * | 2016-08-31 | 2018-03-08 | 北京小米移动软件有限公司 | 消息通信方法及装置 |
US20180068330A1 (en) * | 2016-09-07 | 2018-03-08 | International Business Machines Corporation | Deep Learning Based Unsupervised Event Learning for Economic Indicator Predictions |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
JP6165306B1 (ja) * | 2016-09-20 | 2017-07-19 | ヤフー株式会社 | 生成装置、生成方法及び生成プログラム |
CN109716727B (zh) | 2016-09-20 | 2021-10-15 | 谷歌有限责任公司 | 获取访问与用户相关联的数据的许可的方法及系统 |
US10547574B2 (en) | 2016-09-20 | 2020-01-28 | Google Llc | Suggested responses based on message stickers |
US10015124B2 (en) * | 2016-09-20 | 2018-07-03 | Google Llc | Automatic response suggestions based on images received in messaging applications |
US10237213B2 (en) * | 2016-09-28 | 2019-03-19 | International Business Machines Corporation | Online chat questions segmentation and visualization |
CN115858730A (zh) * | 2016-09-29 | 2023-03-28 | 微软技术许可有限责任公司 | 对话式的数据分析 |
CN107885756B (zh) * | 2016-09-30 | 2020-05-08 | 华为技术有限公司 | 基于深度学习的对话方法、装置及设备 |
CN106383738B (zh) * | 2016-09-30 | 2019-10-11 | 北京百度网讯科技有限公司 | 任务处理方法和分布式计算框架 |
US10416846B2 (en) | 2016-11-12 | 2019-09-17 | Google Llc | Determining graphical element(s) for inclusion in an electronic communication |
CN108075959B (zh) * | 2016-11-14 | 2021-03-12 | 腾讯科技(深圳)有限公司 | 一种会话消息处理方法和装置 |
US10324993B2 (en) * | 2016-12-05 | 2019-06-18 | Google Llc | Predicting a search engine ranking signal value |
US10650311B2 (en) | 2016-12-19 | 2020-05-12 | Asaap, Inc. | Suggesting resources using context hashing |
US10109275B2 (en) | 2016-12-19 | 2018-10-23 | Asapp, Inc. | Word hash language model |
US10146768B2 (en) | 2017-01-25 | 2018-12-04 | Google Llc | Automatic suggested responses to images received in messages using language model |
US10810377B2 (en) * | 2017-01-31 | 2020-10-20 | Boomi, Inc. | Method and system for information retreival |
US11373086B2 (en) * | 2017-02-17 | 2022-06-28 | Google Llc | Cooperatively training and/or using separate input and response neural network models for determining response(s) for electronic communications |
US10963783B2 (en) * | 2017-02-19 | 2021-03-30 | Intel Corporation | Technologies for optimized machine learning training |
US11005997B1 (en) | 2017-03-23 | 2021-05-11 | Wells Fargo Bank, N.A. | Automated chatbot transfer to live agent |
US10713289B1 (en) * | 2017-03-31 | 2020-07-14 | Amazon Technologies, Inc. | Question answering system |
US20180316636A1 (en) * | 2017-04-28 | 2018-11-01 | Hrb Innovations, Inc. | Context-aware conversational assistant |
US10891485B2 (en) | 2017-05-16 | 2021-01-12 | Google Llc | Image archival based on image categories |
EP3632092B1 (en) * | 2017-05-22 | 2021-10-06 | Greeneden U.S. Holdings II, LLC | System and method for dynamic dialog control for contact center systems |
US10902533B2 (en) * | 2017-06-12 | 2021-01-26 | Microsoft Technology Licensing, Llc | Dynamic event processing |
US10417039B2 (en) | 2017-06-12 | 2019-09-17 | Microsoft Technology Licensing, Llc | Event processing using a scorable tree |
US10404636B2 (en) | 2017-06-15 | 2019-09-03 | Google Llc | Embedded programs and interfaces for chat conversations |
US10348658B2 (en) * | 2017-06-15 | 2019-07-09 | Google Llc | Suggested items for use with embedded applications in chat conversations |
US20180367480A1 (en) * | 2017-06-18 | 2018-12-20 | Rapportboost.Ai, Inc. | Optimizing chat-based communications |
CN107273503B (zh) * | 2017-06-19 | 2020-07-10 | 北京百度网讯科技有限公司 | 用于生成同语言平行文本的方法和装置 |
US10917483B2 (en) * | 2017-06-22 | 2021-02-09 | Numberai, Inc. | Automated communication-based intelligence engine |
AU2018289562A1 (en) * | 2017-06-22 | 2020-01-16 | Jpmorgan Chase Bank, N.A. | System and method for implementing an interbank information network |
US10374982B2 (en) * | 2017-06-30 | 2019-08-06 | Microsoft Technology Licensing, Llc | Response retrieval using communication session vectors |
US11113624B2 (en) * | 2017-07-12 | 2021-09-07 | Sap Se | Distributed machine learning on heterogeneous data platforms |
US10318927B2 (en) * | 2017-07-17 | 2019-06-11 | ExpertHiring, LLC | Method and system for managing, matching, and sourcing employment candidates in a recruitment campaign |
US10318926B2 (en) * | 2017-07-17 | 2019-06-11 | ExpertHiring, LLC | Method and system for managing, matching, and sourcing employment candidates in a recruitment campaign |
US20190019077A1 (en) * | 2017-07-17 | 2019-01-17 | Cisco Technology, Inc. | Automatic configuration of cognitive assistant |
WO2019022768A1 (en) * | 2017-07-28 | 2019-01-31 | Hewlett-Packard Development Company, L.P. | CAPTURE OF VOICE DATA |
US11436469B2 (en) * | 2017-07-31 | 2022-09-06 | Microsoft Technology Licensing, Llc | Knowledge graph for conversational semantic search |
US11620566B1 (en) | 2017-08-04 | 2023-04-04 | Grammarly, Inc. | Artificial intelligence communication assistance for improving the effectiveness of communications using reaction data |
US9892414B1 (en) | 2017-08-16 | 2018-02-13 | Asapp, Inc. | Method, medium, and system for responding to customer requests with state tracking |
US10339922B2 (en) * | 2017-08-23 | 2019-07-02 | Sap Se | Thematic segmentation of long content using deep learning and contextual cues |
US10459958B2 (en) * | 2017-08-29 | 2019-10-29 | Bank Of America Corporation | Automated response system using smart data |
MX2018011305A (es) * | 2017-09-18 | 2019-07-04 | Tata Consultancy Services Ltd | Técnicas para corregir el desvío de entrenamiento lingüístico en los datos de entrenamiento. |
US11783243B2 (en) * | 2017-09-20 | 2023-10-10 | International Business Machines Corporation | Targeted prioritization within a network based on user-defined factors and success rates |
US10380236B1 (en) * | 2017-09-22 | 2019-08-13 | Amazon Technologies, Inc. | Machine learning system for annotating unstructured text |
US10546023B2 (en) * | 2017-10-03 | 2020-01-28 | Google Llc | Providing command bundle suggestions for an automated assistant |
US20190108486A1 (en) * | 2017-10-05 | 2019-04-11 | Microsoft Technology Licensing, Llc | System and method for intelligent and automatic electronic communication support and routing |
US10680978B2 (en) * | 2017-10-23 | 2020-06-09 | Microsoft Technology Licensing, Llc | Generating recommended responses based on historical message data |
US11223723B2 (en) * | 2017-10-23 | 2022-01-11 | Accenture Global Solutions Limited | Call center system having reduced communication latency |
WO2019083519A1 (en) | 2017-10-25 | 2019-05-02 | Google Llc | NATURAL LANGUAGE PROCESSING USING A N-GRAM MACHINE |
EP3486850A1 (en) * | 2017-11-17 | 2019-05-22 | Orange | Method for generating an sms message and equipment for implementing the method |
US11184471B2 (en) * | 2017-11-23 | 2021-11-23 | Mikko Vaananen | Mobile secretary cloud application |
EP3676776A4 (en) * | 2017-11-23 | 2022-05-11 | Mikko Vaananen | MOBILE SECRETARY APP IN THE CLOUD |
US10497004B2 (en) | 2017-12-08 | 2019-12-03 | Asapp, Inc. | Automating communications using an intent classifier |
US20190182383A1 (en) * | 2017-12-08 | 2019-06-13 | Asapp, Inc. | Transfer of customer support to automated processing |
US20190197433A1 (en) * | 2017-12-22 | 2019-06-27 | Wipro Limited | Methods for adaptive information extraction through adaptive learning of human annotators and devices thereof |
US10891526B2 (en) | 2017-12-22 | 2021-01-12 | Google Llc | Functional image archiving |
US10489792B2 (en) * | 2018-01-05 | 2019-11-26 | Asapp, Inc. | Maintaining quality of customer support messages |
US10210244B1 (en) | 2018-02-12 | 2019-02-19 | Asapp, Inc. | Updating natural language interfaces by processing usage data |
US11301870B2 (en) * | 2018-02-20 | 2022-04-12 | [24]7.ai, Inc. | Method and apparatus for facilitating turn-based interactions between agents and customers of an enterprise |
US11054972B2 (en) * | 2018-02-26 | 2021-07-06 | Servicenow, Inc. | Context-based user assistance and service workspace |
US11687794B2 (en) * | 2018-03-22 | 2023-06-27 | Microsoft Technology Licensing, Llc | User-centric artificial intelligence knowledge base |
KR102034955B1 (ko) * | 2018-03-27 | 2019-10-21 | 경상대학교산학협력단 | 무선 통신 시스템에서 신경망 기반의 송신전력 제어 방법 및 장치 |
US10860629B1 (en) * | 2018-04-02 | 2020-12-08 | Amazon Technologies, Inc. | Task-oriented dialog systems utilizing combined supervised and reinforcement learning |
US11307880B2 (en) | 2018-04-20 | 2022-04-19 | Meta Platforms, Inc. | Assisting users with personalized and contextual communication content |
US10963273B2 (en) | 2018-04-20 | 2021-03-30 | Facebook, Inc. | Generating personalized content summaries for users |
US11715042B1 (en) | 2018-04-20 | 2023-08-01 | Meta Platforms Technologies, Llc | Interpretability of deep reinforcement learning models in assistant systems |
US11886473B2 (en) | 2018-04-20 | 2024-01-30 | Meta Platforms, Inc. | Intent identification for agent matching by assistant systems |
US11676220B2 (en) | 2018-04-20 | 2023-06-13 | Meta Platforms, Inc. | Processing multimodal user input for assistant systems |
US10169315B1 (en) | 2018-04-27 | 2019-01-01 | Asapp, Inc. | Removing personal information from text using a neural network |
US20190328300A1 (en) * | 2018-04-27 | 2019-10-31 | International Business Machines Corporation | Real-time annotation of symptoms in telemedicine |
JP7012883B2 (ja) | 2018-05-07 | 2022-01-28 | グーグル エルエルシー | 自動化されたアシスタントルーチン内に含めるための自動化されたアシスタントアクションを推奨すること |
TWI770464B (zh) * | 2018-05-09 | 2022-07-11 | 華南商業銀行股份有限公司 | 轉帳系統及其方法 |
US11003960B2 (en) * | 2018-05-25 | 2021-05-11 | Microsoft Technology Licensing, Llc | Efficient incident management in large scale computer systems |
US11194968B2 (en) * | 2018-05-31 | 2021-12-07 | Siemens Aktiengesellschaft | Automatized text analysis |
US10832010B2 (en) * | 2018-06-05 | 2020-11-10 | International Business Machines Corporation | Training of conversational agent using natural language |
US10749821B2 (en) | 2018-06-11 | 2020-08-18 | Cisco Technology, Inc. | Domain-specific connected type ahead for chat |
US11055668B2 (en) * | 2018-06-26 | 2021-07-06 | Microsoft Technology Licensing, Llc | Machine-learning-based application for improving digital content delivery |
US10956480B2 (en) * | 2018-06-29 | 2021-03-23 | Nuance Communications, Inc. | System and method for generating dialogue graphs |
US11205045B2 (en) * | 2018-07-06 | 2021-12-21 | International Business Machines Corporation | Context-based autocompletion suggestion |
US10210860B1 (en) | 2018-07-27 | 2019-02-19 | Deepgram, Inc. | Augmented generalized deep learning with special vocabulary |
US10721190B2 (en) * | 2018-07-31 | 2020-07-21 | Microsoft Technology Licensing, Llc | Sequence to sequence to classification model for generating recommended messages |
US11216510B2 (en) | 2018-08-03 | 2022-01-04 | Asapp, Inc. | Processing an incomplete message with a neural network to generate suggested messages |
US20240095544A1 (en) * | 2018-08-07 | 2024-03-21 | Meta Platforms, Inc. | Augmenting Conversational Response with Volatility Information for Assistant Systems |
US11106869B1 (en) * | 2018-08-23 | 2021-08-31 | Walgreen Co. | Facilitating pharmacy customer orders through natural language processing |
US10585989B1 (en) * | 2018-09-07 | 2020-03-10 | International Business Machines Corporation | Machine-learning based detection and classification of personally identifiable information |
CN110896426B (zh) * | 2018-09-13 | 2021-10-12 | 宁波欧依安盾安全科技有限公司 | 一种安全沟通智能鉴定电话系统 |
US11544686B2 (en) * | 2018-09-14 | 2023-01-03 | Jpmorgan Chase Bank, N.A. | Systems and methods for bot-based automated invoicing and collection |
US11238230B2 (en) * | 2018-09-19 | 2022-02-01 | Servicenow, Inc. | Persistent word vector input to multiple machine learning models |
US11514915B2 (en) * | 2018-09-27 | 2022-11-29 | Salesforce.Com, Inc. | Global-to-local memory pointer networks for task-oriented dialogue |
US11050835B2 (en) | 2018-09-27 | 2021-06-29 | International Business Machines Corporation | Generating contextual user responses |
US20200104427A1 (en) * | 2018-09-28 | 2020-04-02 | Microsoft Technology Licensing, Llc. | Personalized neural query auto-completion pipeline |
US11216512B2 (en) | 2018-10-08 | 2022-01-04 | Fujitsu Limited | Accessible machine learning backends |
US11270084B2 (en) * | 2018-10-12 | 2022-03-08 | Johnson Controls Tyco IP Holdings LLP | Systems and methods for using trigger words to generate human-like responses in virtual assistants |
US10616151B1 (en) | 2018-10-17 | 2020-04-07 | Asana, Inc. | Systems and methods for generating and presenting graphical user interfaces |
DE102018218098A1 (de) * | 2018-10-23 | 2020-04-23 | Volkswagen Aktiengesellschaft | Verfahren und Vorrichtung zum Abstrahieren eines Datensatzes |
US11562011B2 (en) * | 2018-10-29 | 2023-01-24 | EMC IP Holding Company LLC | Incorporating data into search engines using deep learning mechanisms |
US10726203B2 (en) | 2018-10-31 | 2020-07-28 | Kyocera Document Solutions, Inc. | Support automation using machine learning |
CN111177328B (zh) * | 2018-11-12 | 2023-04-28 | 阿里巴巴集团控股有限公司 | 问答匹配系统和方法及问答处理设备和介质 |
US10747957B2 (en) | 2018-11-13 | 2020-08-18 | Asapp, Inc. | Processing communications using a prototype classifier |
US11551004B2 (en) | 2018-11-13 | 2023-01-10 | Asapp, Inc. | Intent discovery with a prototype classifier |
US10341491B1 (en) * | 2018-11-26 | 2019-07-02 | Capital One Services, Llc | Identifying unreported issues through customer service interactions and website analytics |
US10839167B2 (en) * | 2018-12-04 | 2020-11-17 | Verizon Patent And Licensing Inc. | Systems and methods for dynamically expanding natural language processing agent capacity |
CN109710838B (zh) * | 2018-12-05 | 2021-02-26 | 厦门笨鸟电子商务有限公司 | 一种基于深度神经网络的公司网站关键词提取方法 |
US11615311B2 (en) * | 2018-12-10 | 2023-03-28 | Baidu Usa Llc | Representation learning for input classification via topic sparse autoencoder and entity embedding |
US11381529B1 (en) | 2018-12-20 | 2022-07-05 | Wells Fargo Bank, N.A. | Chat communication support assistants |
US11204683B1 (en) | 2019-01-09 | 2021-12-21 | Asana, Inc. | Systems and methods for generating and tracking hardcoded communications in a collaboration management platform |
US10984781B2 (en) | 2019-01-18 | 2021-04-20 | Asapp, Inc. | Identifying representative conversations using a state model |
US10387575B1 (en) * | 2019-01-30 | 2019-08-20 | Babylon Partners Limited | Semantic graph traversal for recognition of inferred clauses within natural language inputs |
US10936817B2 (en) * | 2019-02-01 | 2021-03-02 | Conduent Business Services, Llc | Neural network architecture for subtle hate speech detection |
US11151324B2 (en) | 2019-02-03 | 2021-10-19 | International Business Machines Corporation | Generating completed responses via primal networks trained with dual networks |
US11281867B2 (en) * | 2019-02-03 | 2022-03-22 | International Business Machines Corporation | Performing multi-objective tasks via primal networks trained with dual networks |
US11138296B2 (en) * | 2019-03-01 | 2021-10-05 | Lenovo (Singapore) Pte. Ltd. | Digital content validation |
CN110070895B (zh) * | 2019-03-11 | 2021-06-22 | 江苏大学 | 一种基于监督变分编码器因素分解的混合声音事件检测方法 |
US10956474B2 (en) | 2019-03-14 | 2021-03-23 | Microsoft Technology Licensing, Llc | Determination of best set of suggested responses |
US10445745B1 (en) * | 2019-03-26 | 2019-10-15 | Fmr Llc | Computer systems and methods for efficient query resolution by customer representatives |
US11416689B2 (en) * | 2019-03-28 | 2022-08-16 | Siemens Aktiengesellschaft | System and method for natural language processing with a multinominal topic model |
US11373044B2 (en) | 2019-04-12 | 2022-06-28 | Asapp, Inc. | Maintaining machine language model state across communications channels |
US11132513B2 (en) | 2019-05-07 | 2021-09-28 | International Business Machines Corporation | Attention-based natural language processing |
US11176333B2 (en) * | 2019-05-07 | 2021-11-16 | International Business Machines Corporation | Generation of sentence representation |
US11487939B2 (en) * | 2019-05-15 | 2022-11-01 | Salesforce.Com, Inc. | Systems and methods for unsupervised autoregressive text compression |
US11687730B1 (en) | 2019-05-21 | 2023-06-27 | Asapp, Inc. | Automated conversation goal discovery using neural networks and deep multi-view clustering |
CN110309505A (zh) * | 2019-05-27 | 2019-10-08 | 重庆高开清芯科技产业发展有限公司 | 一种基于词嵌入语义分析的数据格式自解析方法 |
US10937417B2 (en) * | 2019-05-31 | 2021-03-02 | Clinc, Inc. | Systems and methods for automatically categorizing unstructured data and improving a machine learning-based dialogue system |
EP3977686A4 (en) * | 2019-05-31 | 2023-06-21 | NIKE Innovate C.V. | MULTI-CHANNEL COMMUNICATION PLATFORM WITH DYNAMIC RESPONSE TARGETS |
US20200394576A1 (en) * | 2019-06-11 | 2020-12-17 | At&T Intellectual Property I, L.P. | Machine Learning-Enabled Event Tree for Rapid and Accurate Customer Problem Resolution |
JP7265448B2 (ja) * | 2019-08-20 | 2023-04-26 | 株式会社日立システムズ | デジタル地域通貨の利用促進を支援する方法及びシステム |
US11328181B2 (en) * | 2019-08-26 | 2022-05-10 | International Business Machines Corporation | Knowledge graph-based query in artificial intelligence chatbot with base query element detection and graph path generation |
US11567788B1 (en) | 2019-10-18 | 2023-01-31 | Meta Platforms, Inc. | Generating proactive reminders for assistant systems |
US11308284B2 (en) | 2019-10-18 | 2022-04-19 | Facebook Technologies, Llc. | Smart cameras enabled by assistant systems |
US11425064B2 (en) | 2019-10-25 | 2022-08-23 | Asapp, Inc. | Customized message suggestion with user embedding vectors |
CN112836059A (zh) * | 2019-11-25 | 2021-05-25 | 北京搜狗科技发展有限公司 | 医疗图谱建立方法及装置、医疗图谱查询方法及装置 |
CN112836026B (zh) * | 2019-11-25 | 2024-03-15 | 北京搜狗科技发展有限公司 | 基于对话的问诊方法及装置 |
US20230013842A1 (en) * | 2019-12-20 | 2023-01-19 | Hewlett-Packard Development Company, L.P. | Human assisted virtual agent support |
CN111275463A (zh) * | 2020-02-14 | 2020-06-12 | 厦门快商通科技股份有限公司 | 一种智能客服方法和装置以及设备 |
US11468328B2 (en) | 2020-02-24 | 2022-10-11 | Qualcomm Incorporated | Managing information transmission for wireless communication |
US20210286851A1 (en) * | 2020-03-11 | 2021-09-16 | Microsoft Technology Licensing, Llc | Guided query recommendations |
WO2021181351A1 (en) * | 2020-03-12 | 2021-09-16 | Ithink Logistic Quick Services Llp | System and method to manage last mile product delivery- related issues of customers |
US20210287260A1 (en) * | 2020-03-13 | 2021-09-16 | ZenDesk, Inc. | Encoding conversational state and semantics in a dialogue tree to facilitate automated customer-support conversations |
US11290596B2 (en) * | 2020-03-31 | 2022-03-29 | ZenPayroll, Inc. | Communication routing based on user characteristics and behavior |
US11593331B2 (en) * | 2020-04-17 | 2023-02-28 | Development Guild DDI, Inc. | Methods and systems for cascade filtering for data exploration in computer systems |
JP6771251B1 (ja) * | 2020-04-24 | 2020-10-21 | 株式会社インタラクティブソリューションズ | 音声解析システム |
US11435881B1 (en) * | 2020-06-29 | 2022-09-06 | United Services Automobile Association (Usaa) | Integrated smart graphical user interface for customer management systems |
US11550605B2 (en) * | 2020-06-30 | 2023-01-10 | Kasisto, Inc. | Building and managing cohesive interaction for virtual assistants |
US11907676B1 (en) * | 2020-08-28 | 2024-02-20 | Amazon Technologies, Inc. | Processing orchestration for systems including distributed components |
US11507753B2 (en) * | 2020-10-01 | 2022-11-22 | Crowdsmart, Inc. | Measuring the free energy in an evaluation |
US11769115B1 (en) | 2020-11-23 | 2023-09-26 | Asana, Inc. | Systems and methods to provide measures of user workload when generating units of work based on chat sessions between users of a collaboration environment |
US11418463B2 (en) * | 2020-11-23 | 2022-08-16 | Microsoft Technology Licensing, Llc | Method and system of intelligently providing responses for a user in the user's absence |
US11563706B2 (en) | 2020-12-29 | 2023-01-24 | Meta Platforms, Inc. | Generating context-aware rendering of media contents for assistant systems |
US20220207050A1 (en) * | 2020-12-29 | 2022-06-30 | Atlassian Pty Ltd. | Systems and methods for identifying similar electronic content items |
US11809480B1 (en) | 2020-12-31 | 2023-11-07 | Meta Platforms, Inc. | Generating dynamic knowledge graph of media contents for assistant systems |
US20220222446A1 (en) * | 2021-01-14 | 2022-07-14 | Hewlett-Packard Development Company, L.P. | Predicting service issues |
US20220229999A1 (en) * | 2021-01-19 | 2022-07-21 | Palo Alto Research Center Incorporated | Service platform for generating contextual, style-controlled response suggestions for an incoming message |
JP2024513042A (ja) * | 2021-03-30 | 2024-03-21 | ヨハナ・エルエルシー | タスクの決定、委任、および自動化のためのシステムおよび方法 |
US11521639B1 (en) | 2021-04-02 | 2022-12-06 | Asapp, Inc. | Speech sentiment analysis using a speech sentiment classifier pretrained with pseudo sentiment labels |
US11861315B2 (en) | 2021-04-21 | 2024-01-02 | Meta Platforms, Inc. | Continuous learning for natural-language understanding models for assistant systems |
US20220353222A1 (en) * | 2021-04-30 | 2022-11-03 | Asapp, Inc. | Processing clusters with mathematical models for message suggestion |
US11941358B2 (en) * | 2021-06-14 | 2024-03-26 | Asapp, Inc. | Identifying messages entered into an incorrect conversation |
WO2023278124A1 (en) * | 2021-07-01 | 2023-01-05 | Microsoft Technology Licensing, Llc | Classification and augmentation of unstructured data for autofill |
US20230008868A1 (en) * | 2021-07-08 | 2023-01-12 | Nippon Telegraph And Telephone Corporation | User authentication device, user authentication method, and user authentication computer program |
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 |
US20230066233A1 (en) * | 2021-08-31 | 2023-03-02 | Grammarly, Inc. | Intent-based suggestion of phrases in a text editor |
US20230121453A1 (en) * | 2021-10-15 | 2023-04-20 | EMC IP Holding Company LLC | Method and system for generating a question path graph for technical support |
US11809471B2 (en) | 2021-10-15 | 2023-11-07 | EMC IP Holding Company LLC | Method and system for implementing a pre-check mechanism in a technical support session |
US11915205B2 (en) | 2021-10-15 | 2024-02-27 | EMC IP Holding Company LLC | Method and system to manage technical support sessions using ranked historical technical support sessions |
US11941641B2 (en) | 2021-10-15 | 2024-03-26 | EMC IP Holding Company LLC | Method and system to manage technical support sessions using historical technical support sessions |
DE102021129483A1 (de) | 2021-11-11 | 2023-05-11 | Alexander Augst | Verfahren, System, Anwendergerät, Computerprogramm sowie ein neuronales Netz zum Unterstützen einer zwischenmenschlichen Kommunikation |
US20220274251A1 (en) * | 2021-11-12 | 2022-09-01 | Intel Corporation | Apparatus and methods for industrial robot code recommendation |
US11892986B2 (en) * | 2021-11-23 | 2024-02-06 | Paypal, Inc. | Activated neural pathways in graph-structured data models |
US11936812B2 (en) | 2021-12-22 | 2024-03-19 | Kore.Ai, Inc. | Systems and methods for handling customer conversations at a contact center |
US11889022B2 (en) | 2021-12-22 | 2024-01-30 | Kore.Ai, Inc. | Systems and methods for handling customer conversations at a contact center |
US20230259991A1 (en) * | 2022-01-21 | 2023-08-17 | Microsoft Technology Licensing, Llc | Machine learning text interpretation model to determine customer scenarios |
US20230244958A1 (en) * | 2022-01-28 | 2023-08-03 | Intuit Inc. | Generation of conversational task completion structure |
US20230252032A1 (en) * | 2022-02-07 | 2023-08-10 | Maplebear Inc. (Dba Instacart) | Accounting for item attributes when selecting items satisfying a query based on item embeddings and an embedding for the query |
US20240054993A1 (en) * | 2022-08-09 | 2024-02-15 | Mitel Networks Corporation | Customer advocacy through a virtual assistant coupled to a contact center |
CN115409038A (zh) * | 2022-08-26 | 2022-11-29 | 湖北星纪时代科技有限公司 | 自然语言处理方法及装置、电子设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633817A (zh) * | 2001-09-13 | 2005-06-29 | 诺基亚公司 | 响应用户请求的动态内容递送 |
CN105009556A (zh) * | 2013-03-11 | 2015-10-28 | 高通股份有限公司 | 用于交互式远程通信中的增强响应的意图引擎 |
Family Cites Families (204)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4941178A (en) | 1986-04-01 | 1990-07-10 | Gte Laboratories Incorporated | Speech recognition using preclassification and spectral normalization |
JPH01314373A (ja) | 1988-06-15 | 1989-12-19 | Hitachi Ltd | 機械翻訳システムにおける訳語選択方式 |
US5077669A (en) | 1989-12-27 | 1991-12-31 | International Business Machines Corporation | Method for quasi-key search within a national language support (nls) data processing system |
JPH0410047A (ja) | 1990-04-26 | 1992-01-14 | Canon Inc | 情報処理システム |
US5369575A (en) | 1992-05-15 | 1994-11-29 | International Business Machines Corporation | Constrained natural language interface for a computer system |
US6381645B1 (en) | 1997-12-08 | 2002-04-30 | Siemens Information And Communication Networks, Inc. | Method of implementing push techniques in conventional web browsers |
US6173279B1 (en) | 1998-04-09 | 2001-01-09 | At&T Corp. | Method of using a natural language interface to retrieve information from one or more data resources |
US6327363B1 (en) | 1998-04-17 | 2001-12-04 | Mci Worldcom, Inc. | Method and system for automated customer services |
US6915254B1 (en) | 1998-07-30 | 2005-07-05 | A-Life Medical, Inc. | Automatically assigning medical codes using natural language processing |
US6177932B1 (en) | 1998-08-21 | 2001-01-23 | Kana Communications, Inc. | Method and apparatus for network based customer service |
US6453292B2 (en) | 1998-10-28 | 2002-09-17 | International Business Machines Corporation | Command boundary identifier for conversational natural language |
US6356869B1 (en) | 1999-04-30 | 2002-03-12 | Nortel Networks Limited | Method and apparatus for discourse management |
US6823313B1 (en) | 1999-10-12 | 2004-11-23 | Unisys Corporation | Methodology for developing interactive systems |
US6981040B1 (en) * | 1999-12-28 | 2005-12-27 | Utopy, Inc. | Automatic, personalized online information and product services |
US7631039B2 (en) * | 2000-12-01 | 2009-12-08 | Radvision Ltd. | Initiation and support of video conferencing using instant messaging |
US7644057B2 (en) * | 2001-01-03 | 2010-01-05 | International Business Machines Corporation | System and method for electronic communication management |
US6892193B2 (en) | 2001-05-10 | 2005-05-10 | International Business Machines Corporation | Method and apparatus for inducing classifiers for multimedia based on unified representation of features reflecting disparate modalities |
US6820075B2 (en) | 2001-08-13 | 2004-11-16 | Xerox Corporation | Document-centric system with auto-completion |
US6959081B2 (en) | 2001-12-03 | 2005-10-25 | International Business Machines Corporation | Expert hold queue management |
US7409054B2 (en) | 2002-02-25 | 2008-08-05 | Genesys Telecommunications Laboratories, Inc | System and method for integrated resource scheduling, task allocation and agent work management |
US8046832B2 (en) | 2002-06-26 | 2011-10-25 | Microsoft Corporation | Spam detector with challenges |
USH2187H1 (en) | 2002-06-28 | 2007-04-03 | Unisys Corporation | System and method for gender identification in a speech application environment |
US7493253B1 (en) * | 2002-07-12 | 2009-02-17 | Language And Computing, Inc. | Conceptual world representation natural language understanding system and method |
US7606714B2 (en) | 2003-02-11 | 2009-10-20 | Microsoft Corporation | Natural language classification within an automated response system |
CA2555280A1 (en) * | 2003-02-14 | 2004-09-02 | Nervana, Inc. | Semantic knowledge retrieval management and presentation |
US7257564B2 (en) | 2003-10-03 | 2007-08-14 | Tumbleweed Communications Corp. | Dynamic message filtering |
US20050228790A1 (en) | 2004-04-12 | 2005-10-13 | Christopher Ronnewinkel | Coherent categorization scheme |
WO2005122145A1 (en) | 2004-06-08 | 2005-12-22 | Metaphor Solutions, Inc. | Speech recognition dialog management |
US20050277410A1 (en) * | 2004-06-10 | 2005-12-15 | Sony Corporation And Sony Electronics, Inc. | Automated voice link initiation |
US20060112127A1 (en) | 2004-11-23 | 2006-05-25 | Microsoft Corporation | Method for efficiently mapping error messages to unique identifiers |
US7634406B2 (en) | 2004-12-10 | 2009-12-15 | Microsoft Corporation | System and method for identifying semantic intent from acoustic information |
US20060173776A1 (en) | 2005-01-28 | 2006-08-03 | Barry Shalley | A Method of Authentication |
US8054951B1 (en) | 2005-04-29 | 2011-11-08 | Ignite Media Solutions, Llc | Method for order taking using interactive virtual human agents |
US7512580B2 (en) | 2005-08-04 | 2009-03-31 | Sap Ag | Confidence indicators for automated suggestions |
US8024196B1 (en) | 2005-09-19 | 2011-09-20 | Sap Ag | Techniques for creating and translating voice applications |
KR100755677B1 (ko) | 2005-11-02 | 2007-09-05 | 삼성전자주식회사 | 주제 영역 검출을 이용한 대화체 음성 인식 장치 및 방법 |
US7647228B2 (en) | 2005-11-03 | 2010-01-12 | Apptera, Inc. | Method and apparatus for speech processing incorporating user intent |
EP1963959A2 (en) | 2005-12-09 | 2008-09-03 | Fraunhofer-Gesellschaft zur Förderung der Angewandten Forschung e.V. | A method and apparatus for automatic comparison of data sequences |
US8315874B2 (en) | 2005-12-30 | 2012-11-20 | Microsoft Corporation | Voice user interface authoring tool |
US7668922B2 (en) | 2006-01-19 | 2010-02-23 | International Business Machines Corporation | Identifying and displaying relevant shared entities in an instant messaging system |
US7603330B2 (en) | 2006-02-01 | 2009-10-13 | Honda Motor Co., Ltd. | Meta learning for question classification |
US8374863B2 (en) | 2006-02-10 | 2013-02-12 | Spinvox Limited | Mass-scale, user-independent, device-independent voice messaging system |
US7761321B2 (en) * | 2006-02-22 | 2010-07-20 | 24/7 Customer, Inc. | System and method for customer requests and contact management |
US8494152B1 (en) | 2006-02-28 | 2013-07-23 | Allstate Insurance Company | Systems and methods for automated call-handling and processing |
US7664644B1 (en) | 2006-06-09 | 2010-02-16 | At&T Intellectual Property Ii, L.P. | Multitask learning for spoken language understanding |
US9043197B1 (en) | 2006-07-14 | 2015-05-26 | Google Inc. | Extracting information from unstructured text using generalized extraction patterns |
US7890326B2 (en) * | 2006-10-13 | 2011-02-15 | Google Inc. | Business listing search |
US20080091423A1 (en) | 2006-10-13 | 2008-04-17 | Shourya Roy | Generation of domain models from noisy transcriptions |
US8000530B2 (en) | 2006-10-26 | 2011-08-16 | Hubin Jiang | Computer-implemented expert system-based method and system for document recognition and content understanding |
US9015301B2 (en) | 2007-01-05 | 2015-04-21 | Digital Doors, Inc. | Information infrastructure management tools with extractor, secure storage, content analysis and classification and method therefor |
US7707162B2 (en) | 2007-01-08 | 2010-04-27 | International Business Machines Corporation | Method and apparatus for classifying multimedia artifacts using ontology selection and semantic classification |
US8635243B2 (en) | 2007-03-07 | 2014-01-21 | Research In Motion Limited | Sending a communications header with voice recording to send metadata for use in speech recognition, formatting, and search mobile search application |
US8156138B2 (en) * | 2007-06-26 | 2012-04-10 | Richrelevance, Inc. | System and method for providing targeted content |
US20090306967A1 (en) | 2008-06-09 | 2009-12-10 | J.D. Power And Associates | Automatic Sentiment Analysis of Surveys |
EP2154641A1 (en) | 2008-08-14 | 2010-02-17 | Crossgate AG | Method and device for converting messages between different data formats |
US8260938B2 (en) | 2009-01-23 | 2012-09-04 | Google Inc. | Predicting user requests to reduce network connection latency |
EP2382536B1 (en) | 2009-01-29 | 2018-04-25 | Fortress Applications Ltd. | System and methods for encryption with authentication integrity |
US8949666B2 (en) | 2009-02-12 | 2015-02-03 | President And Fellows Of Harvard College | Adaptive event-guided system and method for avoiding voltage emergencies |
EP2271036B1 (en) | 2009-06-22 | 2013-01-09 | Semiocast | Method, system and architecture for delivering messages in a network to automatically increase a signal-to-noise ratio of user interests |
US9633399B2 (en) | 2009-08-19 | 2017-04-25 | Oracle International Corporation | Method and system for implementing a cloud-based social media marketing method and system |
US20140074551A1 (en) | 2012-09-09 | 2014-03-13 | Oracle International Corporation | Method and system for implementing a social media marketing and engagement application |
US8543532B2 (en) * | 2009-10-05 | 2013-09-24 | Nokia Corporation | Method and apparatus for providing a co-creation platform |
EP2488963A1 (en) | 2009-10-15 | 2012-08-22 | Rogers Communications Inc. | System and method for phrase identification |
AU2011201369A1 (en) | 2010-03-25 | 2011-10-13 | Rl Solutions | Systems and methods for redacting sensitive data entries |
US20110270771A1 (en) | 2010-05-03 | 2011-11-03 | Xerox Corporation | System and method for a flexible management of the escalation of support for devices |
US8612432B2 (en) * | 2010-06-16 | 2013-12-17 | Microsoft Corporation | Determining query intent |
US8676583B2 (en) | 2010-08-30 | 2014-03-18 | Honda Motor Co., Ltd. | Belief tracking and action selection in spoken dialog systems |
US9015093B1 (en) | 2010-10-26 | 2015-04-21 | Michael Lamport Commons | Intelligent control with hierarchical stacked neural networks |
US8533857B2 (en) | 2011-04-12 | 2013-09-10 | Teletech Holdings, Inc. | Methods for providing cross-vendor support services |
US11068954B2 (en) | 2015-11-20 | 2021-07-20 | Voicemonk Inc | System for virtual agents to help customers and businesses |
US8972240B2 (en) * | 2011-05-19 | 2015-03-03 | Microsoft Corporation | User-modifiable word lattice display for editing documents and search queries |
US9338510B2 (en) | 2011-07-31 | 2016-05-10 | Google Inc. | Systems and methods for presenting home screen shortcuts |
US9015031B2 (en) | 2011-08-04 | 2015-04-21 | International Business Machines Corporation | Predicting lexical answer types in open domain question and answering (QA) systems |
US10387536B2 (en) | 2011-09-19 | 2019-08-20 | Personetics Technologies Ltd. | Computerized data-aware agent systems for retrieving data to serve a dialog between human user and computerized system |
EP3367714A1 (en) | 2011-10-25 | 2018-08-29 | Salesforce.Com, Inc. | Two-factor authentication systems and methods |
US8812021B2 (en) | 2011-12-02 | 2014-08-19 | Yellowpages.Com, Llc | System and method for coordinating meetings between users of a mobile communication network |
SG11201402943WA (en) | 2011-12-06 | 2014-07-30 | Perception Partners Inc | Text mining analysis and output system |
US8788443B2 (en) | 2011-12-23 | 2014-07-22 | Sap Ag | Automated observational decision tree classifier |
US9665643B2 (en) | 2011-12-30 | 2017-05-30 | Microsoft Technology Licensing, Llc | Knowledge-based entity detection and disambiguation |
CN104246748B (zh) | 2012-02-22 | 2018-02-09 | 诺基亚技术有限公司 | 用于确定情境的系统和方法 |
US10417037B2 (en) * | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
US20130317808A1 (en) * | 2012-05-24 | 2013-11-28 | About, Inc. | System for and method of analyzing and responding to user generated content |
US10827011B2 (en) | 2012-07-19 | 2020-11-03 | Glance Networks, Inc. | Presence enhanced co-browsing customer support |
US8577671B1 (en) | 2012-07-20 | 2013-11-05 | Veveo, Inc. | Method of and system for using conversation state information in a conversational interaction system |
US8868905B2 (en) | 2012-08-07 | 2014-10-21 | Appsense Limited | Adaptive document redaction |
US9461876B2 (en) | 2012-08-29 | 2016-10-04 | Loci | System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction |
US9105268B2 (en) | 2012-09-19 | 2015-08-11 | 24/7 Customer, Inc. | Method and apparatus for predicting intent in IVR using natural language queries |
US9497289B2 (en) * | 2012-12-07 | 2016-11-15 | Genesys Telecommunications Laboratories, Inc. | System and method for social message classification based on influence |
US8996352B2 (en) * | 2013-02-08 | 2015-03-31 | Machine Zone, Inc. | Systems and methods for correcting translations in multi-user multi-lingual communications |
US9372674B2 (en) | 2013-03-12 | 2016-06-21 | Microsoft Technology Licensing, Llc | Dynamic generation of user interface placeholder templates |
US9336269B1 (en) | 2013-03-14 | 2016-05-10 | Google Inc. | Determining question and answer alternatives |
US9558743B2 (en) * | 2013-03-15 | 2017-01-31 | Google Inc. | Integration of semantic context information |
JP6221301B2 (ja) | 2013-03-28 | 2017-11-01 | 富士通株式会社 | 音声処理装置、音声処理システムおよび音声処理方法 |
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 |
US9110889B2 (en) | 2013-04-23 | 2015-08-18 | Facebook, Inc. | Methods and systems for generation of flexible sentences in a social networking system |
US9367880B2 (en) | 2013-05-03 | 2016-06-14 | Facebook, Inc. | Search intent for queries on online social networks |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
US10599765B2 (en) | 2013-06-27 | 2020-03-24 | Avaya Inc. | Semantic translation model training |
US10162884B2 (en) | 2013-07-23 | 2018-12-25 | Conduent Business Services, Llc | System and method for auto-suggesting responses based on social conversational contents in customer care services |
US9348947B2 (en) * | 2013-07-26 | 2016-05-24 | Helynx, Inc. | Systems and methods for visualizing and manipulating graph databases |
US9672556B2 (en) | 2013-08-15 | 2017-06-06 | Nook Digital, Llc | Systems and methods for programatically classifying text using topic classification |
US9886950B2 (en) | 2013-09-08 | 2018-02-06 | Intel Corporation | Automatic generation of domain models for virtual personal assistants |
CN104598445B (zh) * | 2013-11-01 | 2019-05-10 | 腾讯科技(深圳)有限公司 | 自动问答系统和方法 |
US9189742B2 (en) | 2013-11-20 | 2015-11-17 | Justin London | Adaptive virtual intelligent agent |
US20160163314A1 (en) * | 2013-11-25 | 2016-06-09 | Mitsubishi Electric Corporation | Dialog management system and dialog management method |
US10079013B2 (en) | 2013-11-27 | 2018-09-18 | Sri International | Sharing intents to provide virtual assistance in a multi-person dialog |
US9742916B1 (en) | 2013-12-19 | 2017-08-22 | Amazon Technologies, Inc. | Customer service agent to customer connection |
US20150178390A1 (en) * | 2013-12-20 | 2015-06-25 | Jordi Torras | Natural language search engine using lexical functions and meaning-text criteria |
US9986242B2 (en) | 2014-01-28 | 2018-05-29 | Vmware, Inc. | Enhanced image encoding in a virtual desktop infrastructure environment |
CN105940395B (zh) * | 2014-01-31 | 2019-07-16 | 谷歌有限责任公司 | 生成文档的矢量表示 |
US20150220995A1 (en) | 2014-01-31 | 2015-08-06 | Semiocast | Method, system and architecture for increasing social network user interests in messages and delivering precisely targeted advertising messages |
US9837075B2 (en) | 2014-02-10 | 2017-12-05 | Mitsubishi Electric Research Laboratories, Inc. | Statistical voice dialog system and method |
US9413597B2 (en) | 2014-03-10 | 2016-08-09 | Verizon Patent And Licensing Inc. | Method and system for providing aggregated network alarms |
US9286910B1 (en) * | 2014-03-13 | 2016-03-15 | Amazon Technologies, Inc. | System for resolving ambiguous queries based on user context |
US9591136B1 (en) | 2014-03-28 | 2017-03-07 | United Services Automobile Association (Usaa) | Methods and systems for customizing interactive voice response calls |
US20150310377A1 (en) | 2014-04-24 | 2015-10-29 | Videodesk Sa | Methods, devices and systems for providing online customer service |
US9484022B2 (en) | 2014-05-23 | 2016-11-01 | Google Inc. | Training multiple neural networks with different accuracy |
AU2015266863B2 (en) * | 2014-05-30 | 2018-03-15 | Apple Inc. | Multi-command single utterance input method |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9761222B1 (en) | 2014-06-11 | 2017-09-12 | Albert Scarasso | Intelligent conversational messaging |
US11038864B2 (en) * | 2014-06-12 | 2021-06-15 | Mastercard International Incorporated | Systems and methods for customer service access to a consumer interface system |
US10108608B2 (en) * | 2014-06-12 | 2018-10-23 | Microsoft Technology Licensing, Llc | Dialog state tracking using web-style ranking and multiple language understanding engines |
US9684904B2 (en) | 2014-06-19 | 2017-06-20 | Ebay Inc. | Issue response and prediction |
US20160019816A1 (en) | 2014-07-16 | 2016-01-21 | Nimble Knowledge, LLC | Language Learning Tool |
US10607232B2 (en) | 2014-08-26 | 2020-03-31 | Accenture Global Services Limited | Automatic assistance for resource reuse based on context extracted from a user workspace |
US10706432B2 (en) | 2014-09-17 | 2020-07-07 | [24]7.ai, Inc. | Method, apparatus and non-transitory medium for customizing speed of interaction and servicing on one or more interactions channels based on intention classifiers |
US9658854B2 (en) | 2014-09-26 | 2017-05-23 | Intel Corporation | Instructions and logic to provide SIMD SM3 cryptographic hashing functionality |
US9922015B2 (en) | 2014-10-09 | 2018-03-20 | International Business Machines Corporation | System for handling abbreviation related text using profiles of the sender and the recipient |
US9363301B2 (en) * | 2014-10-21 | 2016-06-07 | Twilio, Inc. | System and method for providing a micro-services communication platform |
US20170308523A1 (en) | 2014-11-24 | 2017-10-26 | Agency For Science, Technology And Research | A method and system for sentiment classification and emotion classification |
US9466297B2 (en) | 2014-12-09 | 2016-10-11 | Microsoft Technology Licensing, Llc | Communication system |
WO2016100717A1 (en) | 2014-12-17 | 2016-06-23 | Google Inc. | Generating numeric embeddings of images |
US9860334B2 (en) | 2014-12-22 | 2018-01-02 | Zenedge, Inc. | Dynamic content caching system |
US9508340B2 (en) * | 2014-12-22 | 2016-11-29 | Google Inc. | User specified keyword spotting using long short term memory neural network feature extractor |
US20160239846A1 (en) * | 2015-02-12 | 2016-08-18 | Mastercard International Incorporated | Payment Networks and Methods for Processing Support Messages Associated With Features of Payment Networks |
US10505885B2 (en) * | 2015-02-27 | 2019-12-10 | Microsoft Technology Licensing, Llc | Intelligent messaging |
US9538044B2 (en) * | 2015-03-20 | 2017-01-03 | Kyocera Document Solutions Inc. | Apparatus and method for data decoding |
US11322248B2 (en) | 2015-03-26 | 2022-05-03 | Surgical Safety Technologies Inc. | Operating room black-box device, system, method and computer readable medium for event and error prediction |
US10264081B2 (en) | 2015-04-28 | 2019-04-16 | Microsoft Technology Licensing, Llc | Contextual people recommendations |
US9929990B2 (en) * | 2015-04-28 | 2018-03-27 | Dropbox, Inc. | Inserting content into an application from an online synchronized content management system |
US9672814B2 (en) | 2015-05-08 | 2017-06-06 | International Business Machines Corporation | Semi-supervised learning of word embeddings |
US10185803B2 (en) | 2015-06-15 | 2019-01-22 | Deep Genomics Incorporated | Systems and methods for classifying, prioritizing and interpreting genetic variants and therapies using a deep neural network |
US10635949B2 (en) | 2015-07-07 | 2020-04-28 | Xerox Corporation | Latent embeddings for word images and their semantics |
US10133729B2 (en) | 2015-08-28 | 2018-11-20 | Microsoft Technology Licensing, Llc | Semantically-relevant discovery of solutions |
US11514096B2 (en) | 2015-09-01 | 2022-11-29 | Panjiva, Inc. | Natural language processing for entity resolution |
EP3145127B1 (en) | 2015-09-21 | 2019-07-10 | Sap Se | Short text messaging in digital mobile telecommunication networks |
US10489701B2 (en) | 2015-10-13 | 2019-11-26 | Facebook, Inc. | Generating responses using memory networks |
US10664744B2 (en) | 2015-10-13 | 2020-05-26 | Facebook, Inc. | End-to-end memory networks |
US9723151B2 (en) | 2015-10-19 | 2017-08-01 | Genesys Telecommunications Laboratories, Inc. | Optimized routing of interactions to contact center agents based on forecast agent availability and customer patience |
KR102112814B1 (ko) | 2015-10-21 | 2020-05-19 | 구글 엘엘씨 | 다이얼로그 시스템들에서의 파라미터 수집 및 자동 다이얼로그 생성 |
US9720901B2 (en) | 2015-11-19 | 2017-08-01 | King Abdulaziz City For Science And Technology | Automated text-evaluation of user generated text |
US20170177712A1 (en) * | 2015-12-21 | 2017-06-22 | Ebay Inc. | Single step cross-linguistic search using semantic meaning vectors |
US20170213138A1 (en) | 2016-01-27 | 2017-07-27 | Machine Zone, Inc. | Determining user sentiment in chat data |
US9818067B2 (en) | 2016-03-24 | 2017-11-14 | Accenture Global Solutions Limited | Self-learning log classification system |
US10504039B2 (en) | 2016-05-05 | 2019-12-10 | Hulu, Llc. | Short message classification for video delivery service and normalization |
US20170336969A1 (en) * | 2016-05-17 | 2017-11-23 | Google Inc. | Predicting next letters and displaying them within keys of a graphical keyboard |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
GB201611380D0 (en) | 2016-06-30 | 2016-08-17 | Microsoft Technology Licensing Llc | Artificial neural network with side input for language modelling and prediction |
US10083451B2 (en) | 2016-07-08 | 2018-09-25 | Asapp, Inc. | Using semantic processing for customer support |
US9715496B1 (en) | 2016-07-08 | 2017-07-25 | Asapp, Inc. | Automatically responding to a request of a user |
US20180018562A1 (en) | 2016-07-14 | 2018-01-18 | Cside Japan Inc. | Platform for providing task based on deep learning |
US10754978B2 (en) | 2016-07-29 | 2020-08-25 | Intellisist Inc. | Computer-implemented system and method for storing and retrieving sensitive information |
US20180052664A1 (en) | 2016-08-16 | 2018-02-22 | Rulai, Inc. | Method and system for developing, training, and deploying effective intelligent virtual agent |
US9762733B1 (en) | 2016-09-21 | 2017-09-12 | Genesys Telecommunications Laboratories, Inc. | System and method for recommending communication mediums based on predictive analytics |
US11128579B2 (en) | 2016-09-29 | 2021-09-21 | Admithub Pbc | Systems and processes for operating and training a text-based chatbot |
US11392645B2 (en) | 2016-10-24 | 2022-07-19 | CarLabs, Inc. | Computerized domain expert |
CA3045286C (en) | 2016-10-28 | 2024-02-20 | Axon Enterprise, Inc. | Systems and methods for supplementing captured data |
US10127908B1 (en) | 2016-11-11 | 2018-11-13 | Amazon Technologies, Inc. | Connected accessory for a voice-controlled device |
GB201619724D0 (en) | 2016-11-22 | 2017-01-04 | Microsoft Technology Licensing Llc | Trained data input system |
US10109275B2 (en) | 2016-12-19 | 2018-10-23 | Asapp, Inc. | Word hash language model |
US10650311B2 (en) | 2016-12-19 | 2020-05-12 | Asaap, Inc. | Suggesting resources using context hashing |
US10417492B2 (en) | 2016-12-22 | 2019-09-17 | Microsoft Technology Licensing, Llc | Conversion of static images into interactive maps |
US9911413B1 (en) | 2016-12-28 | 2018-03-06 | Amazon Technologies, Inc. | Neural latent variable model for spoken language understanding |
US10490182B1 (en) | 2016-12-29 | 2019-11-26 | Amazon Technologies, Inc. | Initializing and learning rate adjustment for rectifier linear unit based artificial neural networks |
US10049103B2 (en) | 2017-01-17 | 2018-08-14 | Xerox Corporation | Author personality trait recognition from short texts with a deep compositional learning approach |
US11100384B2 (en) | 2017-02-14 | 2021-08-24 | Microsoft Technology Licensing, Llc | Intelligent device user interactions |
US20180232434A1 (en) | 2017-02-16 | 2018-08-16 | Microsoft Technology Licensing, Llc | Proactive and retrospective joint weight attribution in a streaming environment |
US10628506B2 (en) | 2017-02-17 | 2020-04-21 | Microsoft Technology Licensing, Llc | Using log data to train for automated sourcing |
US10885529B2 (en) | 2017-03-03 | 2021-01-05 | Asapp, Inc. | Automated upsells in customer conversations |
US10275452B2 (en) | 2017-05-12 | 2019-04-30 | International Business Machines Corporation | Automatic, unsupervised paraphrase detection |
CN107168952B (zh) | 2017-05-15 | 2021-06-04 | 北京百度网讯科技有限公司 | 基于人工智能的信息生成方法和装置 |
US10769291B2 (en) | 2017-06-12 | 2020-09-08 | Microsoft Technology Licensing, Llc | Automatic data access from derived trust level |
US10694038B2 (en) | 2017-06-23 | 2020-06-23 | Replicant Solutions, Inc. | System and method for managing calls of an automated call management system |
US20190019197A1 (en) | 2017-07-13 | 2019-01-17 | Asapp, Inc | Determining to dispatch a technician for customer support |
US11436469B2 (en) | 2017-07-31 | 2022-09-06 | Microsoft Technology Licensing, Llc | Knowledge graph for conversational semantic search |
US9892414B1 (en) | 2017-08-16 | 2018-02-13 | Asapp, Inc. | Method, medium, and system for responding to customer requests with state tracking |
US10755051B2 (en) | 2017-09-29 | 2020-08-25 | Apple Inc. | Rule-based natural language processing |
US11106975B2 (en) | 2017-10-20 | 2021-08-31 | Asapp, Inc. | Fast neural network implementations by increasing parallelism of cell computations |
US20190182383A1 (en) | 2017-12-08 | 2019-06-13 | Asapp, Inc. | Transfer of customer support to automated processing |
US10497004B2 (en) | 2017-12-08 | 2019-12-03 | Asapp, Inc. | Automating communications using an intent classifier |
US10489792B2 (en) | 2018-01-05 | 2019-11-26 | Asapp, Inc. | Maintaining quality of customer support messages |
US10210244B1 (en) | 2018-02-12 | 2019-02-19 | Asapp, Inc. | Updating natural language interfaces by processing usage data |
US10599774B1 (en) | 2018-02-26 | 2020-03-24 | Facebook, Inc. | Evaluating content items based upon semantic similarity of text |
US10097690B1 (en) | 2018-03-15 | 2018-10-09 | Asapp, Inc. | Detecting events from customer support sessions |
US10606955B2 (en) | 2018-03-15 | 2020-03-31 | Servicenow, Inc. | Incident matching with vector-based natural language processing |
US10169315B1 (en) | 2018-04-27 | 2019-01-01 | Asapp, Inc. | Removing personal information from text using a neural network |
US20200019609A1 (en) | 2018-07-13 | 2020-01-16 | Asapp, Inc. | Suggesting a response to a message by selecting a template using a neural network |
US11216510B2 (en) | 2018-08-03 | 2022-01-04 | Asapp, Inc. | Processing an incomplete message with a neural network to generate suggested messages |
US20200081939A1 (en) | 2018-09-11 | 2020-03-12 | Hcl Technologies Limited | System for optimizing detection of intent[s] by automated conversational bot[s] for providing human like responses |
US20190051302A1 (en) | 2018-09-24 | 2019-02-14 | Intel Corporation | Technologies for contextual natural language generation in a vehicle |
US11551004B2 (en) | 2018-11-13 | 2023-01-10 | Asapp, Inc. | Intent discovery with a prototype classifier |
US10747957B2 (en) | 2018-11-13 | 2020-08-18 | Asapp, Inc. | Processing communications using a prototype classifier |
-
2016
- 2016-09-01 US US15/254,008 patent/US9715496B1/en active Active
- 2016-09-01 US US15/254,041 patent/US9807037B1/en active Active
- 2016-09-01 US US15/254,101 patent/US10387888B2/en active Active
- 2016-09-01 WO PCT/US2016/049896 patent/WO2018009231A1/en unknown
- 2016-09-01 CN CN202010107173.9A patent/CN111555954B/zh active Active
- 2016-09-01 CN CN201680089113.0A patent/CN109792402B/zh active Active
- 2016-09-01 US US15/254,061 patent/US9805371B1/en active Active
- 2016-09-01 EP EP16908347.4A patent/EP3482393A4/en active Pending
- 2016-09-01 US US15/254,086 patent/US10453074B2/en active Active
-
2017
- 2017-06-30 CN CN201780055266.8A patent/CN109661675B/zh active Active
- 2017-06-30 WO PCT/US2017/040205 patent/WO2018009432A1/en unknown
- 2017-06-30 EP EP17824734.2A patent/EP3482359A4/en not_active Withdrawn
-
2019
- 2019-06-21 US US16/448,532 patent/US10733614B2/en active Active
-
2020
- 2020-06-29 US US16/915,459 patent/US11615422B2/en active Active
-
2023
- 2023-03-10 US US18/120,075 patent/US20230214847A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633817A (zh) * | 2001-09-13 | 2005-06-29 | 诺基亚公司 | 响应用户请求的动态内容递送 |
CN105009556A (zh) * | 2013-03-11 | 2015-10-28 | 高通股份有限公司 | 用于交互式远程通信中的增强响应的意图引擎 |
Also Published As
Publication number | Publication date |
---|---|
US20230214847A1 (en) | 2023-07-06 |
US9807037B1 (en) | 2017-10-31 |
EP3482393A1 (en) | 2019-05-15 |
US20190311375A1 (en) | 2019-10-10 |
US10387888B2 (en) | 2019-08-20 |
CN109792402A (zh) | 2019-05-21 |
EP3482359A4 (en) | 2019-12-18 |
US11615422B2 (en) | 2023-03-28 |
EP3482393A4 (en) | 2019-12-18 |
US9805371B1 (en) | 2017-10-31 |
CN111555954A (zh) | 2020-08-18 |
US10453074B2 (en) | 2019-10-22 |
US9715496B1 (en) | 2017-07-25 |
CN109661675B (zh) | 2020-05-05 |
US10733614B2 (en) | 2020-08-04 |
US20200327555A1 (en) | 2020-10-15 |
US20180012231A1 (en) | 2018-01-11 |
WO2018009432A1 (en) | 2018-01-11 |
EP3482359A1 (en) | 2019-05-15 |
WO2018009231A1 (en) | 2018-01-11 |
US20180013699A1 (en) | 2018-01-11 |
CN109661675A (zh) | 2019-04-19 |
CN111555954B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109792402B (zh) | 自动响应用户的请求 | |
US9892414B1 (en) | Method, medium, and system for responding to customer requests with state tracking | |
US11249774B2 (en) | Realtime bandwidth-based communication for assistant systems | |
US10579834B2 (en) | Method and apparatus for facilitating customer intent prediction | |
US11425064B2 (en) | Customized message suggestion with user embedding vectors | |
US20230091886A1 (en) | Using semantic frames for intent classification | |
CN114424185A (zh) | 用于自然语言处理的停用词数据扩充 | |
CN114503115A (zh) | 生成丰富的动作项目 | |
US20240095454A1 (en) | Context tag integration with named entity recognition models | |
CN110709852A (zh) | 客户对话中的自动向上销售 | |
US11567788B1 (en) | Generating proactive reminders for assistant systems | |
US20230100508A1 (en) | Fusion of word embeddings and word scores for text classification | |
US20220279051A1 (en) | Generating Proactive Reminders for Assistant Systems | |
WO2022159461A1 (en) | Multi-factor modelling for natural language processing | |
US20230205999A1 (en) | Gazetteer integration for neural named entity recognition | |
Sabharwal et al. | Developing Cognitive Bots Using the IBM Watson Engine: Practical, Hands-on Guide to Developing Complex Cognitive Bots Using the IBM Watson Platform | |
US20230376700A1 (en) | Training data generation to facilitate fine-tuning embedding models | |
WO2023076754A1 (en) | Deep learning techniques for extraction of embedded data from documents | |
WO2023064033A1 (en) | Fine-tuning multi-head network from a single transformer layer of pre-trained language model | |
US20230325599A1 (en) | Training data augmentation using gazetteers and perturbations to facilitate training named entity recognition models | |
Platform | Developing Cognitive Bots Using the IBM Watson Engine |
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 |