CN110462730B - 促进以多种语言与自动化助理的端到端沟通 - Google Patents
促进以多种语言与自动化助理的端到端沟通 Download PDFInfo
- Publication number
- CN110462730B CN110462730B CN201880001823.2A CN201880001823A CN110462730B CN 110462730 B CN110462730 B CN 110462730B CN 201880001823 A CN201880001823 A CN 201880001823A CN 110462730 B CN110462730 B CN 110462730B
- Authority
- CN
- China
- Prior art keywords
- language
- output
- natural language
- user
- intent
- 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
- 238000004891 communication Methods 0.000 title abstract description 11
- 238000013519 translation Methods 0.000 claims abstract description 61
- 238000000034 method Methods 0.000 claims description 48
- 230000004044 response Effects 0.000 claims description 16
- 238000010801 machine learning Methods 0.000 claims description 13
- 230000015654 memory Effects 0.000 claims description 9
- 238000005516 engineering process Methods 0.000 abstract description 2
- 230000014616 translation Effects 0.000 description 51
- 238000012549 training Methods 0.000 description 28
- 238000012545 processing Methods 0.000 description 15
- 230000009471 action Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 241000282414 Homo sapiens Species 0.000 description 9
- 235000013550 pizza Nutrition 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 6
- 230000002452 interceptive effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 235000013305 food Nutrition 0.000 description 5
- 239000000463 material Substances 0.000 description 5
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000001537 neural effect Effects 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000624575 Hemiramphus balao Species 0.000 description 1
- 241000282412 Homo Species 0.000 description 1
- 240000005561 Musa balbisiana Species 0.000 description 1
- 235000018290 Musa x paradisiaca Nutrition 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000008267 milk Substances 0.000 description 1
- 210000004080 milk Anatomy 0.000 description 1
- 235000013336 milk Nutrition 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000013442 quality metrics Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013518 transcription Methods 0.000 description 1
- 230000035897 transcription Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3334—Selection or weighting of terms from queries, including natural language queries
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- 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/3332—Query translation
- G06F16/3337—Translation of the query language, e.g. Chinese to English
-
- 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/3343—Query execution using phonetics
-
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- 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
- G06F40/42—Data-driven translation
- G06F40/47—Machine-assisted translation, e.g. using translation memory
-
- 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
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/005—Language recognition
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Machine Translation (AREA)
Abstract
这里描述的技术涉及促进与自动化助理的端到端多语言沟通。在各种实施方式中,可以基于以第一语言的话音输入生成语音识别输出。可以基于语音识别输出识别第一语言意图并且履行第一语言意图以便以第一语言生成第一自然语言输出候选。语音识别输出的至少一部分可以被翻译成第二语言以生成至少部分翻译,然后可以使用该至少部分翻译来识别履行的第二语言意图以便以第二语言生成第二自然语言输出候选。可以为第一和第二自然语言输出候选确定分数,并且基于分数,可以选择自然语言输出用于呈现。
Description
背景技术
人类可以与这里称为“自动化助理(automated assistants)”(也称为“聊天机器人(chatbots)”,“交互式个人助理(interactive personal assistants)”,“智能个人助理(intelligent personal assistants)”,“个人语音助理(personal voice assistants)”,“会话代理人(conversational agents)”等)的交互式软件应用进行人机对话。例如,人(当其与自动化助理交互时可以被称为“用户(users)”)可以使用自由形式的自然语言输入来提供命令、查询和/或请求(这里统称为“查询(queries)”),自由形式的自然语言输入可以是被转换为文本然后被处理的声音话语和/或键入的自由形式的自然语言输入。通常使用预定的声音话语(例如,“OK Assistant”)来调用自动化助理,并且经常仅对在调用短语之后的那些声音话语执行各种类型的处理,诸如语音到文本处理和/或自然语言处理。
自动化助理擅长以一些广泛使用的语言例如英语与用户沟通,但是不太能够以其他语言进行沟通。然而,用于配置自动化助理以新语言进行沟通的传统技术是资源密集型的。对于每种新语言,可能需要生成新的触发语法(即,用于调用自动化助理的特定动作的单词或短语),识别以新语言的查询意图(需要针对不同语言的不同自然语言处理组件),并以新语言生成可理解的自然语言输出。除了该挑战之外,每种语言都有无数的特性(例如,形态丰富、支持性、性别中立等),并且可能很难找到能够以特定语言构建这些***的语言专家。
发明内容
本文描述了用于通过利用以特定语言进行处理来促进以各种语言的人机对话的端到端处理的技术。换句话说,这里描述的技术增加了自动化助理的语言覆盖范围。在各种实施方式中,可以使用多个管线来处理提供给自动化助理的用户查询。例如,在一些实施方式中,可以采用第一管线来尝试以查询的原始语言处理用户的查询。可以采用第二管线将用户的查询翻译成自动化助理更好处理的不同语言,并使用所述翻译来识别和履行用户的意图。经由第二管线返回的自然语言输出可能会或可能不会被翻译回用户的原始语言。在各种实施方式中,可以例如基于置信度分数对经由多个管线生成的自然语言输出进行排序,并且可以向用户呈现排序最高的自然语言输出。
可能希望以用户说出的语言来保留用户的原始查询的部分。例如,在一些实施方式中,可以在用户的原始查询中(或者更具体地,在从用户的原始话音输入生成的语音识别输出中)识别槽(slot)值。这些槽值可能不需要翻译,在某些情况下,翻译它们可能会导致错误。例如,假设用户说出短语“What is Akash’s phone number?(Akash的电话号码是什么?)”,名称“Akash”可以翻译成具有与用户意图无关的特定含义(例如,天空)的英语单词。然而,如果单词“Akash”可以被识别为槽值并由此以用户说出的语言进行保存,则可以正确地翻译用户查询的剩余部分,以便可以采取适当的响应动作。
大多数语言具有各种口语(colloquialism)。此外,可以在自然语言输出生成过程中构建口语,以便自动化助理可以提供听起来更“人性化”的输出。例如,假设用户以当前尚未得到良好支持的语言询问天气。用户的查询可以被翻译成更广泛支持的语言,例如英语,然后可以识别和履行用户的意图。然而,对于像这样的常见查询,很可能非正式(例如,“像人类的”)自然语言输出可用作直接自然语言输出的替选。例如,假设今天将热且晴天。自动化助理不是简单地生成诸如“It will be 90 degrees and sunny.(将是90度和晴天)”的自然语言输出,而是可以选择例如手动生成的自然语言输出以听起来更人性化,例如“Better grab your sunglasses because it’s gonna be a scorcher.(最好带上你的太阳镜,因为将是个大热天。)”。将这种听起来口语的自然语言输出翻译回用户的母语可能会产生对用户毫无意义的结果。因此,在一些实施方式中,例如因为其包括手动生成的口语、俚语等可能难以翻译的自然语言输出可以用更有可能适当地翻译成用户的母语的更直接的自然语言输出替换。
在一些实施方式中,提供了一种由一个或多个处理器执行的方法,包括:接收用户在客户端设备的输入组件处以第一语言提供的话音输入;从所述话音输入生成语音识别输出,其中,所述语音识别输出是以所述第一语言;基于所述语音识别输出识别所述用户的第一语言意图;履行所述第一语言意图以生成第一履行信息;基于所述第一履行信息,以所述第一语言生成第一自然语言输出候选;将所述语音识别输出的至少一部分从所述第一语言翻译成第二语言,以生成所述语音识别输出的至少部分翻译;基于所述至少部分翻译识别所述用户的第二语言意图;履行所述第二语言意图以生成第二履行信息;基于所述第二履行信息,以所述第二语言生成第二自然语言输出候选;确定所述第一和第二自然语言输出候选的分数;基于所述分数,从所述第一和第二自然语言输出候选中选择要呈现给所述用户的自然语言输出;以及使所述客户端设备在所述客户端设备的输出组件处呈现所选择的自然语言输出。
本文中公开的技术的这些和其他实施方式可以可选地包括以下特征中的一个或多个。
在各种实施方式中,该方法还可以包括以所述第一语言生成响应于所述第二语言意图的第三自然语言输出候选。在一些这样的实施方式中,确定所述分数还可以包括确定所述第一、第二和第三内容的分数。
在各种实施方式中,该方法还可以包括在评分之前将所述第二自然语言输出候选翻译成所述第一语言。在各种实施方式中,翻译所述第二自然语言输出候选可以基于机器学习模型,所述机器学习模型是使用在人机对话期间由一个或多个自动化助理提供的一个或多个自然语言输出日志来训练的。
在各种实施方式中,翻译以生成所述语音识别输出的所述至少部分翻译基于机器学习模型,所述机器学习模型是使用在人机对话期间提交给一个或多个自动化助理的一个或多个用户查询日志来训练的。在各种实施方式中,在各种实施方式中,评分可以是基于指派给所述第一和第二自然语言意图的相应置信度分数。在各种实施方式中,评分是可以基于获得所述第一和第二自然语言输出候选所需的时间。
在各种实施方式中,该方法还可以包括识别所述语音识别输出中的槽值。在一些这样的实施方式中,所述语音识别输出的所述至少部分翻译可以排除所述槽值,并且所述第二语言意图是可以基于为所述第一语言的所述槽值而被进一步识别的。
在另一方面,一种方法可以包括以下操作:接收用户在客户端设备的输入组件处以第一语言提供的话音输入;以所述第一语言生成所述话音输入的语音识别输出;将所述语音识别输出的至少一部分从所述第一语言翻译成第二语言,以生成所述语音识别输出的至少部分翻译;基于所述至少部分翻译识别所述用户的第二语言意图;履行所述第二语言意图以生成履行信息;基于所述第二语言意图以所述第二语言生成自然语言输出;将所述自然语言输出翻译成所述第一语言以生成翻译的自然语言输出;确定所述翻译的自然语言输出是否满足一个或多个准则;基于所述确定,选择基于所述翻译的自然语言输出或替选自然语言输出的输出;以及使所述客户端设备在所述客户端设备的输出组件处呈现所述输出。
另外,一些实施方式包括一个或多个计算设备的一个或多个处理器,其中一个或多个处理器可操作以执行存储在相关存储器中的指令,并且其中指令被配置成使得执行上述任何一个方法。一些实施方式还包括存储可由一个或多个处理器执行以执行任何前述方法的计算机指令的一个或多个非暂时性计算机可读存储介质。
应当理解,本文更详细描述的前述概念和附加概念的所有组合都被认为是本公开的主题的一部分。例如,出现在本公开结尾处的所要求保护的主题的所有组合被认为是本公开的主题的一部分。
附图说明
图1是可以实现本文中所公开的实施方式的示例环境的框图。
图2描绘了根据各种实施方式的示例过程流,其展示了本公开的各个方面。
图3A和3B描绘了根据各种实施方式的用户和自动化助理之间的示例对话。
图4描绘了示出根据本文中所公开的实施方式的示例方法的流程图。
图5描绘了示出根据本文中所公开的实施方式的示例方法的流程图。
图6示出了计算设备的示例架构。
具体实施方式
现在转到图1,示出了可以实现本文中所公开的技术的示例环境。示例环境包括多个客户端计算设备1061-N。每个客户端设备106可以执行自动化助理客户端118的相应实例。一个或多个基于云的自动化助理组件119(诸如自然语言理解引擎135)可以在经由总体在110指示的一个或多个局域网和/或广域网(例如,互联网)通信地耦合到客户端设备1061-N的一个或多个计算***(统称为“云”计算***)上实现。
在一些实施方式中,多个客户端计算设备1061-N(这里也简称为“客户端设备”)可以以各种方式彼此相关联以便促进本文描述的技术的执行。例如,在一些实施方式中,多个客户端计算设备1061-N可以因为它们是由一个或多个用户(例如,个人、家庭、组织的雇员、其他预定义组等)操作的客户端设备106的协同生态***的成员来彼此相关联。
如背景技术中所述,自动化助理客户端118的实例通过其与一个或多个基于云的自动化助理组件119的交互,可以形成从用户的角度看起来是用户可以与之参与人机对话的自动化助理120的逻辑实例。图1中描绘了这种自动化助理120的两个实例。由虚线包围的第一自动化助理120A服务于操作第一客户端设备1061的第一用户(未示出)并且包括自动化助理客户端1181和一个或多个基于云的自动化助理组件119。由点划线包围的第二自动化助理120B服务于操作另一客户端设备106N的第二用户(未示出),并且包括自动化助理客户端118N和一个或多个基于云的自动化助理组件119。因此,应当理解,与在客户端设备106上执行的自动化助理客户端118进行交互的每个用户可以实际上与他或她自己的自动化助理120的逻辑实例进行交互。为了简洁和简单,这里用作“服务”特定用户的术语“自动化助理”将指代在由用户操作的客户端设备106上执行的自动化助理客户端118和一个或多个基于云的自动化助理组件119(其可以在多个自动化助理客户端118之间共享)的组合。还应当理解,在一些实施方式中,自动化助理120可以响应于来自任何用户的请求,而不管用户是否实际上由自动化助理120的特定实例“服务”。
客户端设备1061-N可以包括例如以下中的一个或多个:桌面计算设备、膝上型计算设备、平板计算设备、移动电话计算设备、用户的车辆的计算设备(例如、车载通信***、车载娱乐***、车载导航***)、独立的交互式扬声器、诸如智能电视的智能电器、和/或包括计算设备的用户的可穿戴设备(例如,具有计算设备的用户的手表,具有计算设备、虚拟或增强现实计算设备的用户的眼镜)。可以提供附加的和/或替选客户端计算设备。
客户端计算设备1061-N中的每一个可以操作各种不同的应用,诸如多个消息交换客户端1071-N中的对应的一个。消息交换客户端1071-N可以以各种形式出现,并且形式可以在客户端计算设备1061-N之间变化和/或可以在客户端计算设备1061-N中的单个客户端计算设备上操作多个形式。在一些实施方式中,消息交换客户端1071-N中的一个或多个可以以短消息收发服务(“SMS”)和/或多媒体消息收发服务(“MMS”)客户端、在线聊天客户端(例如,即时消息收发器、互联网中继聊天或“IRC”等)、与社交网络相关联的消息传递应用、专用于与自动化助理120的对话的个人助理消息传递服务等。在一些实施方式中,消息交换客户端1071-N中的一个或多个可以经由网页或由web浏览器(未示出)或客户端计算设备106的其他应用呈现的其他资源来实现。
如本文更详细描述的,自动化助理120经由一个或多个客户端设备1061-N的用户接口输入和输出设备与一个或多个用户进行人机对话会话。在一些实施方式中,响应于用户经由客户端设备1061-N之一的一个或多个用户接口输入设备提供的用户接口输入,自动化助理120可以参与与用户的人机对话会话。在这些实施方式中的一些中,用户接口输入被明确地指向自动化助理120。例如,消息交换客户端1071-N之一可以是专用于与自动化助理120的对话的个人助理消息收发服务,以及经由该个人助理消息收发服务提供的用户接口输入可以被自动提供给自动化助理120。此外,例如,用户接口输入可以基于指示要调用自动化助理120的特定用户接口输入被明确地引导到消息交换客户端1071-N中的一个或多个中的自动化助理120。例如,特定用户接口输入可以是一个或多个键入的字符(例如,@AutomatedAssistant)、用户与硬件按钮和/或虚拟按钮的交互(例如,点击、长按)、口头命令(例如,“Hey Automated Assistant”)和/或其他特定用户接口输入。
在一些实施方式中,自动化助理120可以响应于用户接口输入参与人机对话会话,即使该用户接口输入未被明确地引导到自动化助理120。例如,自动化助理120可以检查用户接口输入的内容并响应于用户接口输入中存在的某些词项和/或基于其他提示参与对话会话。在许多实施方式中,自动化助理120可以参与交互式语音响应(“IVR”),使得用户可以发出命令、搜索等,并且自动化助理可以利用语音识别将话语转换为文本,并且例如通过提供搜索结果,一般信息和/或采取一个或多个响应动作(例如,播放媒体、启动游戏、订购食物等)相应地对文本做出响应。在一些实施方式中,自动化助理120可以附加地或替选地在不将话语转换为文本的情况下对话语做出响应。例如,自动化助理120可以将话音输入转换为嵌入、转换为实体表示(其指示存在于话音输入中的实体/多个实体)、和/或其他“非文本”表示,并且对这种非文本表示进行操作。因此,这里描述的基于从话音输入转换的文本操作的实施方式可以附加地和/或替选地直接对话音输入和/或话音输入的其他非文本表示进行操作。
操作基于云的自动化助理组件119的客户端计算设备1061-N和计算设备中的每一个可以包括用于存储数据和软件应用的一个或多个存储器、用于访问数据和执行应用的一个或多个处理器和其他有助于通过网络进行通信的组件。由一个或多个客户端计算设备1061-N和/或由自动化助理120执行的操作可以分布在多个计算机***上。自动化助理120可以被实现为例如在通过网络彼此耦合的一个或多个位置中的一个或多个计算机上运行的计算机程序。
如上所述,在各种实施方式中,客户端计算设备1061-N中的每一个可以操作自动化助理客户端118。在各种实施方式中,每个自动化助理客户端118可以包括相应的语音捕获/文本到语音(“TTS”)/语音到文本(“STT”)模块114。在其他实施方式中,语音捕获/TTS/STT模块114的一个或多个方面可以与自动化助理客户端118分开实现。在各种实施方式中,语音捕获/TTS/STT模块114可以基于声音查询生成语音识别输出。可以根据本文描述的技术分析该语音识别输出。
每个语音捕获/TTS/STT模块114可以被配置成执行一个或多个功能:例如经由麦克风来捕获用户的语音;将捕获的音频转换为文本(和/或转换为其他表示或嵌入);和/或将文本转换为语音。例如,在一些实施方式中,因为客户端设备106在计算资源(例如,处理器周期、存储器、电池等)方面可能相对受限,所以每个客户端设备106本地的语音捕获/TTS/STT模块114可以被配置成将有限数量的不同的说出的短语——特别是调用自动化助理120的短语——转换为文本(或者转换为其他形式,例如低维嵌入)。其他语音输入可以被发送到基于云的自动化助理组件119,其可以包括基于云的TTS模块116和/或基于云的STT模块117。
基于云的STT模块117可以被配置成利用云的几乎无限的资源来将由语音捕获/TTS/STT模块114捕获的音频数据转换为文本(然后可以将其提供给自然语言处理器122)。基于云的TTS模块116可以被配置成利用云的几乎无限的资源来将文本数据(例如,由自动化助理120制定的自然语言响应)转换为计算机生成的语音输出。在一些实施方式中,TTS模块116可以将计算机生成的语音输出提供给客户端设备106以例如使用一个或多个扬声器直接输出。在其他实施方式中,由自动化助理120生成的文本数据(例如,自然语言响应)可以被提供给语音捕获/TTS/STT模块114,其然后可以将文本数据转换为本地输出的计算机生成的语音。
自动化助理120(并且特别地,基于云的自动化助理组件119)可以包括自然语言理解引擎135、前述TTS模块116、前述STT模块117、以及下面更详细描述的其他组件。在一些实施方式中,可以在与自动化助理120分开的组件中省略、组合和/或实现自动化助理120的一个或多个引擎和/或模块。在一些实施方式中,为了保护隐私,自动化助理120的一个或多个组件例如自然语言处理器122、语音捕获/TTS/STT模块114等可以至少部分地在客户端设备106上实现(例如,排除云)。
在一些实施方式中,自动化助理120响应于在与自动化助理120的人机对话会话期间由客户端设备1061-N之一的用户生成的各种输入来生成响应内容。自动化助理120可以提供响应内容(例如,当与用户的客户端设备分离时通过一个或多个网络)以作为对话会话的一部分呈现给用户。例如,自动化助理120可以响应于经由客户端设备1061-N之一提供的自由形式的自然语言输入而生成响应内容。如这里所使用的,自由形式输入是由用户制定并且不限于呈现给用户选择的一组选项的输入。
如本文所使用的,“对话会话”可以包括在用户和自动化助理120(以及在一些情况下,其他人类参与者)之间的一个或多个消息的逻辑上自包含的交换。自动化助理120可以基于各种信号来区分与用户的多个对话会话,诸如会话之间的时间流逝、会话之间的用户场境(例如、位置、在预定会议之前/期间/之后等)的改变、检测除了用户和自动化助理之间的对话之外用户和客户端设备之间的一个或多个介入交互(例如、用户切换应用一段时间、用户走开离开然后返回到独立的话音激活产品)、在会话之间客户端设备锁定/睡眠、用于与自动化助理120的一个或多个实例接口连接的客户端设备的改变等。
自然语言理解引擎135的自然语言处理器122处理由用户经由客户端设备1061-N生成的自然语言输入,并且可以生成注释输出(例如,以文本形式)以供自动化助理120的一个或多个其他组件使用。例如,自然语言处理器122可以处理由用户经由客户端设备1061的一个或多个用户接口输入设备生成的自然语言自由形式输入。生成的注释输出包括自然语言输入的一个或多个注释以及自然语言输入的词项的一个或多个(例如,所有)。
在一些实施方式中,自然语言处理器122被配置成在自然语言输入中识别和注释各种类型的语法信息。例如,自然语言处理器122可以包括形态引擎,该形态引擎可以将单个单词分成语素和/或例如用其类别来注释语素。自然语言处理器122还可以包括词性标注器,其被配置成用其语法角色来注释词项。例如,词性标注器可以用其词性标记每个词项,例如“名词(noun)”、“动词(verb)”、“形容词(adjective)”、“代词(pronoun)”等。此外,例如,在一些实施方式中,自然语言处理器122可以附加地和/或替选地包括依赖性解析器(未示出),其被配置成确定自然语言输入中的词项之间的句法关系。例如,依赖性解析器可以确定哪些词项修饰其他词项、句子的主语和动词等等(例如,解析树)——并且可以对这种依赖性进行注释。
在一些实施方式中,自然语言处理器122可以附加地和/或替选地包括实体标记器(未示出),其被配置成在一个或多个段中注释实体引用,诸如对人的引用(包括例如文学角色、名人、公众人物等)、组织、地点(真实的和想象的)等等。在一些实施方式中,关于实体的数据可以存储在一个或多个数据库中,例如存储在知识图(未示出)中。在一些实施方式中,知识图可以包括表示已知实体(并且在一些情况下,实体属性)的节点、以及连接节点并表示实体之间的关系的边。例如,“香蕉”节点可以连接(例如,作为子节点)到“水果”节点,“水果”节点又可以连接(例如,作为子节点)到“产品”和/或“食物”节点。作为另一示例,称为“Hypothetical Café”的餐厅可以由节点表示,该节点还包括诸如其地址、所服务的食物的类型、小时、联系信息等属性。在某些实施方式中,“Hypothetical Café”节点可以通过边(例如,表示子到父关系)被连接到一个或多个其他节点,例如“餐厅”节点、“商业”节点、表示餐厅所位于的城市和/或州的节点等。
自然语言处理器122的实体标记器可以以高粒度水平(例如,以便能够识别对诸如人们的实体类的所有引用)和/或较低粒度水平(例如,以便能够识别对例如特定人的特定实体的所有引用)注释对实体的引用。实体标记器可以依赖于自然语言输入的内容来解析特定实体和/或可以可选地与知识图或其他实体数据库通信以解析特定实体。
在一些实施方式中,自然语言处理器122可以附加地和/或替选地包括共同引用解析器(未示出),其被配置成基于一个或多个场境提示对相同实体的引用进行分组或“聚类”。例如,可以利用共同引用解析器将自然语言输入“I liked Hypothetical Cafélasttime we ate there(我们上次在那里吃时我喜欢Hypothetical Café)”中的“there(那里)”解析为“Hypothetical Café”。
在一些实施方式中,自然语言处理器122的一个或多个组件可以依赖于来自自然语言处理器122的一个或多个其他组件的注释。例如,在一些实施方式中,命名实体标记器可以依赖来自共同引用解析器和/或依赖性解析器的注释来注释对特定实体的所有提及。而且,例如,在一些实施方式中,共同引用解析器可以依赖来自依赖性解析器的注释来聚类对同一实体的引用。在一些实施方式中,在处理特定自然语言输入时,自然语言处理器122的一个或多个组件可以使用特定自然语言输入之外的相关先前输入和/或其他相关数据来确定一个或多个注释。
自然语言理解引擎135还可以包括意图匹配器136,其被配置成确定参与与自动化助理120的人机对话会话的用户的意图。虽然与图1中的自然语言处理器122分开描绘,在其他实施方式中,意图匹配器136可以是自然语言处理器122的(或更一般地,包括自然语言处理器122的管线的)组成部分。在一些实施方式中,自然语言处理器122和意图匹配器136可以共同形成前述“自然语言理解”引擎135。
意图匹配器136可以使用各种技术来确定用户的意图,例如基于来自自然语言处理器122的输出(其可以包括自然语言输入的注释和词项)。在一些实施方式中,意图匹配器136可以访问一个或多个数据库137,其包括例如语法和响应动作(或更一般地,意图)之间的多个映射。在许多情况下,可以随时间选择和/或学习这些语法,并且这些语法可以表示用户的最常见意图。例如,可以将一个语法“play<artist>(播放<艺术家>)”映射到调用使得<artist>的音乐在由用户操作的客户端设备106上播放的响应动作的意图。另一种语法“[weather|forecast]today([今天的天气|预报])”可能与诸如“what’s the weathertoday(今天的天气是什么)”和“what’s the forecast for today?(今天的预报是什么?)”的用户查询匹配。如下面将更详细描述的那样,在一些实施方式中,除了或代替语法,意图匹配器136可以单独地或与一个或多个语法组合地使用一个或多个经训练的机器学习模型。这些经训练的机器学习模型也可以存储在一个或多个数据库137中。
如在“play<artist>”示例语法中所见,一些语法具有可以用槽值(或“参数”)填充的槽(例如,<artist>)。可以以各种方式确定槽值。用户通常会主动提供槽值。例如,对于语法“Order me a<topping>pizza(为我点一个<配料>比萨饼)”,用户可能会说出“order mea sausage pizza(为我点一个香肠比萨饼)”这一短语,在这种情况下,槽<topping>被自动填充。附加地或替选地,如果用户调用包括要用槽值填充的槽的语法,而用户没有主动提供槽值,自动化助理120可以从用户征求那些槽值(例如,“what type of crust do you wanton your pizza?(你想要你的比萨饼什么类型的外壳?)”)。
在一些实施方式中,自动化助理120可以促进(或“代理(broker)”)用户与第三方应用之间的交易。这些第三方应用可以或可以不在与操作例如基于云的自动化助理组件119的计算***分开的计算***上操作。因此,可以由意图匹配器136识别的一种用户意图是接合第三方应用。例如,自动化助理120可以提供对比萨饼递送服务的应用编程接口(“API”)的访问。用户可以调用自动化助理120并提供诸如“I’d like to order a pizza.(我想订购比萨饼)”的命令。意图匹配器136可以将该命令映射到触发自动化助理120与第三方比萨饼递送服务接合的语法(其在某些情况下可以由第三方添加到数据库137)。第三方比萨饼递送服务可以向自动化助理120提供为完成比萨饼递送订单需要填充的最小槽列表。自动化助理120可以生成并向用户(经由客户端设备106)提供征求槽的参数的自然语言输出。
在人机对话域中,用户和自动化助理120使用的词汇可能比日常会话、文学、写作等中使用的词汇更不全面。换言之,在人机对话期间使用的有限的语言空间通常将是用于更通用目的的人与人沟通(例如,谈话、写作等)的更全面的语言空间的子集。例如,用户倾向于与自动化助理120接合以使得执行一个或多个任务。即使在一般搜索查询的环境中,用户也倾向于与自动化助理接合来执行特定类型的查询,例如询问天气、交通、运输时间、餐厅营业时间等。
因此,在一些实施方式中,自然语言理解引擎135例如通过自然语言处理器122或意图匹配器136可以访问以特定语言训练以理解通常在与自动化助理129的人机对话中使用的特定和有限词汇表的一个或多个模型(例如,在数据库137中)。这些模型可以用特定语言训练,例如使用翻译成特定语言的自然语言输入的日志,以确定用户特定语言的意图。这对于尚未完全支持的语言(即,尚未提供全面翻译的语言)尤其有用。例如,可以从日志中获得广泛支持的语言例如英语的常见查询(例如,订购食物、检查天气、设置计时器等)并且将其(例如,由翻译器138自动地,由语言学家/翻译者手动地)翻译成不太广泛支持的第二语言。这些翻译的公共查询可以与它们的匹配意图一起用作训练示例,以训练用于不太广泛支持的第二语言的模型。
例如,英语查询可以例如使用翻译器138和/或人类语言学家/翻译者翻译成不太广泛支持的语言。翻译可以用作训练示例,用相应的意图(其也可以被翻译成不太广泛支持的语言)标记,以训练模型。如果模型是神经网络的某种风格,则标记的训练示例可以作为跨神经网络的输入应用以生成输出。可以将输出与相应的标签进行比较以生成错误。基于该错误,可以采用各种训练技术,例如梯度下降(随机或批量)和反向传播来调整神经网络的一个或多个隐藏层的权重。
在一些实施方式中,可以将以较不广泛支持的语言的先前未见过的查询应用为跨模型的输入以生成输出。在一些这样的实施方式中,输出可以采用嵌入到与语言相关联的降维空间的形式。基于它们与降维空间中的其他嵌入的接近度(例如,欧几里德距离、余弦相似性等),可以将意图与这些先前未见过的查询匹配。如果提供先前未见过的查询的用户拒绝最终结果,则用户的查询可以用作消极训练示例以进一步训练模型。如果提供新查询的用户提供积极反馈(或者没有反馈,其可以指示用户满意),则用户的查询可以用作积极训练示例以进一步训练模型。以这种方式,自动化助理120可以“学习”如何以新语言预测意图。
履行引擎124可以被配置成接收由意图匹配器136输出的意图以及相关联的槽值(无论是由用户主动提供还是从用户请求)并履行意图。在各种实施方式中,用户意图的履行可以使得例如由履行引擎124生成/获得各种履行信息(在某些情况下可以是语言不可知的)。如下所述,在某些实施方式中,履行信息可以被提供给自然语言生成器(在一些图中的“NLG”)126,其可以基于履行信息生成自然语言输出。
履行信息可以采用各种形式,因为可以以各种方式实现意图。假设用户请求纯信息,例如“Where were the outdoor shots of‘The Shining’filmed?(拍摄‘The Shining’的室外镜头在哪里?)”可以例如由意图匹配器136将用户的意图确定为搜索查询。搜索查询的意图和内容可以被提供给履行引擎124,其如图1所示可以与被配置成针对响应信息搜索文档和/或其他数据源(例如知识图等)的语料库的一个或多个搜索引擎150通信。履行引擎124可以向搜索引擎150提供指示搜索查询的数据(例如,查询的文本、降维嵌入等)。搜索引擎150可以提供响应信息,例如GPS坐标,或其他更明确的信息,例如“Timberline Lodge,Mt.Hood,Oregon”。该响应信息可以形成履行引擎124生成的履行信息的一部分。
附加地或替选地,履行引擎124可以被配置成例如从自然语言理解引擎135接收用户的意图和由用户提供的或者使用其他手段(例如,用户的GPS坐标、用户偏好等)确定的任何槽值并触发响应动作。响应动作可以包括例如订购商品/服务、启动计时器、设置提醒、发起电话呼叫、播放媒体、发送消息等。在一些这样的实施方式中,履行信息可以包括与履行、确认响应(在某些情况下可以从预定的回答中选择)等关联的槽值。
如上所述,自然语言生成器126可以被配置成基于从各种源获得的数据生成和/或选择自然语言输出(例如,被设计为模仿人类语音的说出的语言单词/短语)。在一些实施方式中,自然语言生成器126可以被配置成接收与意图的履行相关联的履行信息作为输入,并且基于履行信息生成自然语言输出。附加地或替选地,自然语言生成器126可以从诸如第三方应用接收信息(例如,所需的槽)的其他源,其可以用于为用户组成自然语言输出。
如果用户的意图是搜索一般信息,则自然语言生成器126可以生成自然语言输出,其响应于用户例如以句子形式而传达信息。在某些情况下,可以例如由自然语言生成器126提取自然语言输出,从文档不改变(例如,因为它已经是完整的句子形式)并按原样提供。附加地或替选地,在一些实施方式中,响应内容可以不是完整的句子形式(例如,对今天的天气的请求可以包括高温和降水概率作为独立数据),在这种情况下,自然语言生成器126可以编写呈现响应内容的一个或多个完整的句子或短语作为自然语言输出。
与自然语言理解引擎135(例如,意图匹配器136)的情况一样,自然语言生成器126可以在比用于一般目的沟通的更全面的语言空间要小(例如,是其子集)的语言空间中操作。因此,并且与自然语言理解引擎135的情况一样,在一些实施方式中,自然语言生成器126可以访问一个或多个数据库127,其可以存储例如专门训练以在人机对话场境中生成自然语言输出的一个或多个语言特定模型。训练这些简化模型可能比训练全面模型的密集程度更低,因此可以促进针对语言对自动化助理120的早期部署,该语言在尚未支持以特定语言的全面自动翻译和/或一般能力。
在一些实施方式中,可以利用以诸如英语的良好支持的语言的人机对话期间获得的人机对话知识来训练特定于其他较少支持的语言的模型。例如,可以将自然语言输出的语料库诸如短语、模板(下面更详细地描述)等翻译(例如、由语言学家和/或翻译者手动)成第二语言,然后用作训练数据以训练第二语言的自然语言生成模型,其可由自然语言生成器126使用以便以第二语言生成自然语言输出。
在一些实施方式中,训练数据的每个训练示例可以包括导致生成特定的英语自然语言输出短语/句子的意图以及用户提供的插槽值(如果有的话)作为输入(例如,作为输入向量)。训练示例可以用英语自然语言输出短语/句子的翻译版本标记。可以跨自然语言生成模型(例如,神经网络等)应用输入以生成输出,然后将该输出与标签进行比较以确定错误。基于该错误,可以应用各种训练技术诸如反向传播、梯度下降(随机或批量)等以调整自然语言生成模型的权重。
一旦经过训练,就可以使用这样的自然语言生成模型以例如生成随后确定的用户意图到降维空间(例如,与采用第二语言的潜在自然语言输出相关联的嵌入空间)中的嵌入。嵌入与其他类似意图的嵌入的接近度(例如,使用欧几里德距离、余弦相似度等确定)可以用于识别响应于其他嵌入而使用的自然语言输出。然后,自然语言生成器126可以使用相同或相似的自然语言输出。
在一些实施方式中,自然语言生成器126可以依赖于本文中将被称为“自然语言生成模板”(或“NLG模板”)的内容来生成自然语言输出。在一些实施方式中,NLG模板可以存储在数据库127中。NLG模板可以包括响应于来自各种源的各种信息诸如由履行引擎124生成的履行信息中包括的数据片段来规定自然语言输出的公式的逻辑。在某些方面,NLG模板实际上可以构成状态机,并且可以使用任何已知的编程语言或其他建模语言(例如,统一建模语言、规范和描述语言等)来创建。
作为示例,英语NLG模板可以被配置成响应于针对天气信息的英语语言请求。NLG模板可以指定在多种情况下提供多个候选自然语言输出中的哪一个。例如,假设由履行引擎124生成的履行信息指示温度将高于例如80华氏度并且将没有云。NLG模板中提出的逻辑(例如,if/else语句)可以规定由自然语言生成器126选择的自然语言输出是诸如“It’sgonna be a scorcher,don’t forget your sunglasses.(将是一个大热天,不要忘记你的太阳镜)”之类的短语。假设由履行引擎124生成的履行信息指示温度将低于例如30华氏度并且将有雪。NLG模板中提出的逻辑可以规定由自然语言生成器126选择的自然语言输出是诸如“It’s gonna be chilly,you might want a hat and gloves,and be careful onthe road.(将很冷,你可能想要帽子和手套,并且在路上小心)”的短语。等等。
在一些实施方式中,可以将一种良好支持的语言诸如英语中的NLG模板翻译成另一种较少支持的语言。例如,语言学家和/或翻译者可以用一种语言手动编辑NLG模板,以便将其中包含的自然语言输出选项翻译成另一种语言。在一些实施方式中,可以提供设计应用,其使计算设备呈现图形用户界面(“GUI”)。GUI可以包括以直观方式呈现的NLG模板中包含的逻辑的图形表示,例如逻辑流程图(例如,具有表示状态的节点和表示状态之间的转换的边)。在一些这样的实施方式中,逻辑流程图的节点可以在适用的情况下包括可由语言学家和/或翻译人员编辑的候选自然语言输出语句(有时用占位符替换依赖于履行引擎124提供的履行信息和/或槽值的单词/短语)。这可能允许缺乏广泛编程知识但接受翻译培训的人只翻译自然语言输出,而不必处理基础逻辑。
一些语言比其他语言更说话者/听者不可知,因此以这些语言的自然语言输出在各种情况下可能相对一致。然而,其他语言包括规定如何说出特定单词或短语的规则,例如基于性别的规则,基于形式的规则等。因此,在一些实施方式中,为一个说话者/听者不可知的语言生成NLG模板,当翻译成另一种不那么说话者/听者不可知的语言,可能需要附加逻辑。例如,当将英语NLG模板翻译成西班牙语NLG模板时,可能需要向翻译的NLG模板添加附加逻辑以考虑用户的性别和/或与自动化助理120使用的语音相关联的性别(例如,可以有从不同的计算机生成的话音例如男性和女性的话音中选择的选项)。反之亦然,在将NLG模板从西班牙语翻译成英语(或其他说话者/听者不可知语言)时,可能有必要简化模板,以便去除不必要的性别选择逻辑(和/或形式选择逻辑)。
如背景技术中所述,自动化助理擅长以一些广泛使用的语言诸如英语与用户沟通。这可能是出于各种原因,例如自动化助理是在英语是最常用的语言的国家中开发的。但是,自动化助理可能不太善于与其他语言的用户沟通。每种语言都具有无数的特性,这使得使自动化助理120适应以这些语言的沟通变得困难,通常需要语言专家进行大量的人为干预。此外,第三方应用开发人员可能缺乏使其***适应以多种语言沟通的资源。
存在各种用于将一种语言的文本自动翻译成另一种语言的技术。存在各种被配置成以第一语言接收输入并以第二语言提供输出的模型。例如,许多web浏览器提供将web页面翻译成不同语言的功能。另外,一些web服务被配备为以一种语言接收用户输入,并以用户选择的另一种语言提供输出。
因此,在各种实施方式中,可以例如作为基于云的自动化助理组件119的一部分或单独地提供翻译器138,其可以被配置成在各种语言之间翻译内容。在图1中,翻译器138可以访问一个或多个数据库139,数据库139可以包括可用于从一种语言翻译到另一种语言的各种类型的数据(例如,词典、经训练的翻译模型等)。例如,第一数据库可以促进从第一语言到第二语言的翻译,反之亦然。第二数据库可以促进从第一语言到第三语言的翻译,反之亦然。等等。
在一些实施方式中,翻译器138可以实现统计机器翻译服务,该服务将来自各种源语言的文本翻译成规范语言(例如,英语),然后从规范语言翻译成目标语言。附加地或替选地,在一些实施方式中,翻译器138可以实现神经机器翻译(“NMT”)引擎,其一次翻译整个句子或短语,而不是单独的令牌,从而可以利用文本输入的整体场境。
在一些实施方式中,例如已经由翻译器138用于执行通用翻译的传统神经机器翻译(“NMT”)模型可以被增强(即,经过特殊训练)以更好地翻译和理解在人机对话会话期间具体使用的语言。这种增强的NMT模型在本文中将称为“自然语言理解-神经机器翻译”(“NLU-NMT”)模型。
首先,可以从在用户和自动化助理120之间的人机对话期间生成的查询/意图的日志中收集训练数据。例如,可以从日志中获得以良好支持的语言(例如,英语)的随机样本查询以及以另一个不太良好支持的语言(本例中为“语言L”)的随机查询样本。附加地或替选地,还可以获得以英语和语言L做出的一些“顶部”查询(例如,最常见的)。
该数据可以例如由人类语言学家/翻译者手动翻译成英语和/或从英语翻译以生成第一对集合<sentence-en,sentence-L>。该对集合将用作NLU-NMT的训练数据。接下来,可以通过以下方式将更多训练数据添加到NLU-NMT模型的训练数据:(i)从相同的自动化助理日志获得相对大量的附加查询,以及(ii)例如由翻译器138对这些附加查询进行机器翻译生成第二对集合<sentence-en,sentence-L>。第一和第二对集合可以组合并用于重新训练(即增强)已经由翻译器138使用的现有NMT模型,例如以生成NLU-NMT模型。此后,NLU-NMT模型可能比单独的传统NMT模型在从语言L到英语翻译用户通常询问自动化助理120的查询类型方面更好。
使用第二语言(例如,英语)的查询作为收集训练数据的基础允许提前准备NLU-NMT模型,甚至在开始以第一语言实现自动化助理120之前。在一些实施方式中,当可获得以第二语言(例如,英语)的日志时,可以通过提供以第二语言获取日志并经由人类翻译者并经由机器翻译来翻译它们获得的新训练集,可以进一步重新训练NLU-NMT模型。
与用户在与自动化助理120接合时使用的语言的情况一样,由自动化助理120生成的自然语言的类型是在通用人与人沟通期间使用的语言的子空间。因此,在一些实施方式中,可以例如由自然语言生成器126使用如上关于NLU-NMT模型描述的类似过程,以生成自然语言输出。
如上所述,一些传统的翻译器已经采用神经机器翻译(“NMT”)模型来执行两种语言之间的通用翻译。因此,并且类似于先前描述的NLU-NMT模型,传统的NMT模型可以用从在与用户的人机对话期间由自动化助理120提供的自然语言输出的日志中收集的训练数据增强(即,重新训练)以生成自然语言生成-神经翻译模型(“NLG-NMT”)。例如,从日志获得的这些自然语言输出可以例如由语言学家/翻译者手动翻译和/或由翻译器138自动翻译成<sentence-en,sentence-L>对,如前所述。然后,这些对可以用于将已经由翻译器138使用的NMT模型重新训练成NLG-NMT模型,该模型能够更好地翻译在人机对话会话期间通常由自动化助理120使用的自然语言输出。
在一些实施方式中,可以训练NLG-NMT模型以翻译经由一个或多个NLG语言模板生成的语言输出。可以通过提供新的训练集来实现再训练。在一些实施方式中,可以通过经由人类翻译者以更广泛支持的语言诸如英语翻译最频繁生成的句子来获得训练集。在一些实施方式中,可以通过例如经由翻译器138自动翻译NLG模板的大量算法生成的示例实现来增强该集合。
在各种实施方式中,可以训练NLG-NMT模型以更精确地翻译源自各种其他来源的答案。例如,可以训练NLG-NMT模型以更精确地训练对从web文档获得的一般查询的答案。特别地,可以以广泛支持的语言(例如,英语)提供来自在线文档的对普通查询的最高答案的手动翻译版本,作为用于重新训练NLG-NMT模型的附加训练集。作为另一示例,在一些实施方式中,可以训练NLG-NMT模型以翻译源自“个性”数据库的答案。“个性”答案(可能包括口语)是创意作者为回答特定类型的用户查询而编写的答案。可以由创意作者编写的答案的示例可以包括例如本文其他地方描述的“It’s gonna be a scorcher(将是一个大热天)”示例。这些个性答案可以手动翻译,然后用作NLG-NMT模型的另一个训练集。
图2描绘了根据各种实施方式的可以使用多个管线处理用户的自由形式输入(例如,说出或键入)的一个示例过程流。在框250处,例如在客户端设备106的麦克风处接收自由形式输入(或“查询”)。查询可以搜索信息(例如,“what’s the weather today(今天的天气是什么?)”,“what’s the capitol of France?(法国的首都是什么?)”)和/或发起一个或多个动作(例如,订购食物、播放音乐、创建提醒、创建日历条目、向其他人发送消息、设置计时器等)。出于说明目的,假设以用户的母语接收查询。对于该示例,还可以假设框250处的查询已经被语音识别(例如,通过图1中的模块114和/117),使得查询是文本形式的(尽管其他形式,例如用户话语的降维嵌入也是可能的)。所接收的查询可以被提供给多个处理管线,每个管线被配置成(i)识别用户的意图(以及履行意图所需的任何槽值),(ii)履行所识别的意图,以及(iii)基于所识别的意图的履行生成自然语言输出。
第一管线可以在框252处开始,此时,目标匹配器136可以尝试以用户的母语(在图2中被称为“第一语言”)来确定用户的意图。如上所述,在一些实施方式中,意图匹配器136可以使用一个或多个训练机器学习模型(例如,神经网络)来将查询嵌入到降维空间中并确定其与其他意图相关联的其他嵌入的接近度。附加地或替选地,意图匹配器136可以利用一个或多个语法来确定用户的意图。
在一些实施方式中,可以例如通过评分引擎140来对在框252处确定的意图(其也可以被称为“第一语言意图”)进行评分,以确定匹配意图真的是用户的意图的置信度度量。如果对用户的母语的支持已经相对较强,则与匹配意图相关联的置信度度量可能相对较高。然而,在用户的母语尚未得到良好支持的情况下,置信度度量可能相对较低。在一些实施方式中,如果匹配的第一语言意图中的置信度度量不满足某些准则(诸如预定阈值),则可以在其进一步行进之前放弃第一管线的处理。在一些实施方式中,可以将与该匹配意图相关联的置信度度量与针对使用其他管线确定的其他匹配意图(下面描述)确定的置信度度量进行比较,并且可以使用最高置信度意图来履行用户的请求。
在框253处,可以例如由履行引擎124使用在框252处以用户的母语识别的第一语言意图来履行用户的请求。在各种场景中,用户的意图也可以用其他数据点来履行,例如用户提供的槽值和/或从各种其他源获得的数据点。如前所述,用户意图的履行可以使履行引擎124生成包括响应内容的履行信息。在一些实施方式中,这可以包括来自用户的母语的各种文档的语料库(例如,由传统搜索引擎搜索的类似语料库)的内容和/或来自向以用户语言的文档更重偏斜的更一般的语料库的内容作为搜索结果。在一些实施方式中,这可以包括由用户控制的内容,诸如来自用户的日历、提醒列表等的信息。附加地或替选地,履行信息可以包括响应动作,诸如播放媒体、订购产品/服务等。
在框254处,可以例如由自然语言生成器126使用履行信息来以用户的母语生成第一自然语言输出候选。如前所述,在一些实施方式中,这可以包括自然语言生成器126应用履行信息作为在以用户的母语训练的机器学习模型上的输入,以生成用于制定第一自然语言输出候选的输出。附加地或替选地,这可以包括实现包含在以用户的母语的NLG模板中的逻辑以生成自然语言输出。如下面将描述的,然后可以将在框254处生成的自然语言输出提供给评分引擎140以在框264处进行评分。
在各种实施方式中,例如与由框252-254定义的管线并行,可以实现一个或多个附加管线。例如,第二管线可以在框256开始,其中用户的查询可以例如由翻译器138翻译成可以更完全支持的第二语言。虽然在本文描述的示例中英语被指示为完全支持的语言,但这并不意味着限制。在一些实施方式中,翻译器138可以使用先前描述的NLU-NMT模型来执行框256的翻译。如上所述,将应用用户的查询作为跨NLU-NMT模型的输入可以生成比已经用于通用翻译的传统NMT模型生成的输出更可能准确预测用户的意图的输出。
在框258处,用户的查询的翻译例如由意图匹配器136与以第二语言的一个或多个意图(也称为“第二语言意图”)匹配。与框252的情况一样,在各种实施方式中,可以例如由评分引擎140对在框258处匹配的第二语言意图进行评分,以确定例如置信度度量。例如,可以将该置信度度量与针对框252的匹配的第一语言意图确定的置信度度量进行比较。在一些实施方式中,可以选择具有最高置信度度量(或者具有足够高的置信度度量)的意图,并且只有与所选意图相关联的管线可以继续处理。
在框259,可以例如由履行引擎124履行在框258处匹配的第二语言意图,以生成第二履行信息,类似于框253。在框260,在框259处生成的履行信息可以例如由自然语言生成器126使用以便以第二语言生成第二自然语言输出候选,类似于框254。在一些实施方式中,然后可以例如由翻译器138翻译第二自然语言输出候选(其为第二语言),在框262处返回到第一语言(即用户的母语),从而产生翻译的第二自然语言输出候选。
在各种实施方式中,在框254(以第一语言)生成的第一自然语言输出候选和在框260(以第二语言)生成的、在框262已经被翻译回第一语言的第二自然语言输出候选可以例如由评分引擎140来进行评分。在各种实施方式中,可以选择具有最高分数的自然语言输出候选(现在都是第一语言)以呈现给用户。在对自然语言输出候选进行评分时可以使用各种准则。在一些实施方式中,可以至少部分地基于针对产生自然语言输出的意图确定的置信度度量(框252和258)对自然语言输出候选进行评分。附加地或替选地,在一些实施方式中,可以基于翻译的质量(一些翻译模型被配置成对其各自的翻译进行评分)对在框262处被翻译成第一语言的第二自然语言输出候选进行评分。
在一些实施方式中,可以将另一(第三)管线建立为分别由框252-254和256-262定义的第一和第二管线的“混合”。例如,在一些实施方式中,在框258处以第二语言匹配用户的意图之后,可以在框261处尝试以第一语言履行该匹配的意图,如标记为“混合(HYBRID)”的箭头所示。在框254,可以例如由自然语言生成器126使用在框261处生成的履行信息来生成第三自然语言输出候选。在一些实施方式中,可以在框264处将该第三自然语言输出候选与其他自然语言输出候选一起评分。
实现该管线系列(例如,层级)可以改善以已经支持的语言的自动化助理120的质量。通过激活新管线,可以正确理解和执行更多查询。此外,多个管线的使用在不牺牲其对用户查询的响应的质量的情况下加速了自动化助理120的开发。在一些实施方式中,致力于以新语言实现自动化助理120的语言学家可以编写语法,训练本地理解模型,和/或为那些使用第二和第三管线不能开箱即用的查询提供语言模板(256-262,或分别为256->258->261->254)。
图2中描绘的三个管线中的每一个可以特别擅长处理某些类型的查询。第一管线252-254可以特别适合于处理简单和/或在人机对话场境中通常遇到的查询。假设尚未完全支持塞尔维亚语的全面翻译,但是塞尔维亚语的一些语法已经可用和/或已经例如使用翻译成塞尔维亚语的英语查询/意图对的日志训练对意图匹配器136可用的机器学习模型(例如,存储在数据库137中)以理解自动化助理对话框场境中常见的基本查询。进一步假设塞尔维亚语用户说“Zovi Ivana”,其英文意思是“Call Ivan(呼叫伊万)”。这种类型的查询是自动化助理120能力的核心。因此,这个查询很容易使用第一管线252-254来处理。在框264处指派给得到的自然语言输出候选的分数可能高于与从其他两个管线产生的任何其他自然语言输出候选相关联的分数(如果其甚至有时间完成的话)。
第二管线256-262可能更适合于自然语言输出生成将被证明是最复杂和/或困难的查询。例如,假设一名塞尔维亚语说话者发出命令,“'Koliko je brz najbrzi covek nasvetu?”。在方框256,这个查询可以被(例如,由翻译器138)从塞尔维亚语翻译成英语为“How fast is the fastest man in the world?(世界上最快的人有多快?)”在框258,该翻译可用于确定GET_INFORMATION的意图,其中查询的词项形成一个或多个参数/槽值。在框259,可以例如通过对相关文档执行标准互联网搜索并从那些文档中提取所请求的信息来履行意图。在这个示例中,英语的答案将会是“The data on Usain Bolt showed thathe reached at top speed of 12.27 metres per second,which is 27.44 miles perhour(Usain Bolt的数据显示他达到了每秒12.27米的最高速度,即每小时27.44英里。)”因为这个陈述是信息性的并且相对冗长,所以在框260,自然语言生成器126可以简单地逐字使用该语言作为自然语言输出。在框262处,翻译器138可将该英语陈述翻译成塞尔维亚语,并且可在框264处对塞尔维亚语翻译进行评分。
第三混合管线256->258->261->254可能更适合于生成相对简单的意图和/或履行信息的查询。假设塞尔维亚语说话者发出查询“Podesi alarm za 9 ujutru.”。在框256,该查询可以(例如由翻译器138)从塞尔维亚语翻译成英语“Set an alarm for 9 in themorning(在早上9点设置闹钟)”。在框258,该翻译可用于确定SET_ALARM的意图和第二天9AM的参数。一旦在框261处履行了该意图,自然语言生成器126通常将例如从英语NLG模板生成自然语言输出“Alright,alarm set for 9am(好的,闹钟设置为早上9点)”。然而,这样的NLG模板(并且特别地,其中包含的输出候选)从英语翻译成塞尔维亚语可能相对简单。因此,并且假设已经(例如,由语言学家和/或翻译者)生成NLG模板的塞尔维亚语翻译,则可以在框254处例如由自然语言生成器126使用该塞尔维亚语NLG模板来生成塞尔维亚语的输出。
上面描述的和图2中描绘的管线可以以各种方式实现。在一些实施方式中,可以例如在另一个管线的启动期间递归地启动一个或多个管线。例如,可以首先启动第一管线252-254,然后其启动可以触发第二管线(256-262)的启动。在一些这样的实施方式中,如果第一管线在第二管线有机会完成之前返回具有足够高分的内容(例如,因为说话者的语言得到良好支持),则对第一管线的调用可以简单地在对第二管线的调用已经完成之前返回。
当使用第二管线(256-262)时,可能希望保留用户查询的一些词项不翻译(例如,以用户的母语保留它们)。对于用户以其母语提供的槽值或参数尤其如此。图3A和3B描绘了一个这样的示例。在图3A中,用户101与采用交互式独立扬声器的形式的客户端设备306接合,该交互式独立扬声器至少部分地操作自动化助理120的实例。用户101用印地语说出话语“Kol Akash”,其在英语中应该被解释为呼叫一个名叫“Akash”的人。但是,“Akash”听起来类似于印地语单词“aakaash”,其在英语中翻译成“sky(天空)”。因此,存在这样的风险:当用户的话语被语音识别然后被翻译时(在框256),它可以被翻译成“Call sky(呼叫天空)”。这样的翻译不可能产生与用户101的真实意图相匹配的意图。因此,在图3A中,至少部分在客户端设备306上操作的自动化助理120响应“mujhe kshama karen,mujhe samajhnahin aa raha hai”,其翻译成“I’m sorry,I don’t understand(对不起,我不明白)”。
然而,在一些实施方式中,可以例如由意图匹配器136和/或通过其他基于云的自动化助理组件119在从用户的查询生成的语音识别输出中识别槽值。在各种实施方式中,在图2的框256处发生的翻译可以具体地排除该标识的槽值,例如使得在框258处识别出匹配意图时保留它。因此,可以至少部分地基于第一语言的槽值在框258处识别第二语言意图。例如,在图3B中,代替将“aakaash”翻译成“sky”,可以(例如由自然语言处理器122)将翻译成“call”的词项“Kol”识别作为通常在槽值前面的词项,并用于确定下一个词项“Akash”可能是一个人的名字。因此,用户的查询的翻译将是“Kol Akash”而不是“Kol aakaash”,并且自动化助理120可以用“theek hai,ab aakrti ko bulao”来响应,这意味着“OK,callingAkash now(好的,现在呼叫Akash)”。
作为另一个示例,假设用户用意大利语问“Aggiungi latte alla lista dellaspesa”,其用英语翻译成“add milk to the shopping list(将牛奶添加到购物清单)”。这里,用户希望看到“latte”这个词而不是“milk”添加到购物清单中。因此,使用各种技术,例如由自然语言处理器122应用的注释,或基于先前描述的NLU-NMT模型应用的注释,可以在用户的原始意大利语查询中注释词项“latte”,使得用户的意图(例如,ADD_TO_SHOPPING_LIST)可以用用户意图的正确参数“latte”来履行。
作为又一示例,假设用户用印地语询问“dil se bajao”,其在英语中直译成“Playfrom the heart(从心脏播放)”。然而,用户可能实际上想要自动化助理120来发起标题为“Dil Se”的印度语电影。在这个示例中,可以例如通过上面提到的实体标签来将“dil se”注释为印度电影。因此,“dil se”可以保留在印地语中,而用户查询的剩余部分(bajao)可以被翻译成英语,使得自动化助理120将按照用户的意图发起电影的回放。
在一些实施方式中,如图2中所示实现多个处理管线可能在人机对话中引入等待时间。例如,翻译器138的一些实施方式可以添加大约几百毫秒的等待时间。因此,在各种实施方式中,可以采取各种缓解动作来减少等待时间的影响。
例如,假设第一管线(252-254)生成与高置信水平相关联的意图和/或自然语言输出。这可能是用户提供查询所使用的语言得到良好支持的情况,或者用户的查询恰好匹配以用户的支持良好的语言的几种语法之一。因此,在第二管线(256-262)有时间完成之前,可以以用户的语言生成自然语言输出。在这种情况下,一旦第一管线返回以用户的语言的自然语言输出,就可以放弃第二管线的处理。
作为另一示例,可以例如由翻译器138在索引139中以各种语言缓存常见问题的查询(也称为“头部(long-tail)”查询,而不是不太常见的“长尾(long-tail)”查询)的翻译。作为又一示例,在一些实施方式中,翻译器138使用的翻译模型可以比可以用于翻译整个文档的全面翻译模型更简单。在一些实施方式中,简化的翻译模型可以针对人机对话而定制,并且特别地可以针对在人机对话中经常遇到的语法来定制。
在一些实施方式中,可以仅当确定用户提供初始查询所使用的语言未得到良好支持时才采用翻译(即第二管线256-262)。附加地或替选地,在一些实施方式中,可以仅例如因为在框252处匹配的意图或在框254处生成的自然语言输出候选具有低关联置信度度量当第一管线(252-254)不成功之后,才采用翻译(即第二管线256-262)。
在一些实施方式中,如果特定查询在第一管线(252-254)中成功,则可以例如用“触发”位标记该查询,并且可以存储触发位(例如,在数据库中)137)使得当稍后接收到相同语言的相同查询(或相同语言的语法/语义相似的查询)时,可以检查触发的位。假设该位已设置(意味着先前在第一管线中相同或类似的查询成功),则可以启动第一管线的处理,并且可以不启动第二管线(或者可以仅在某些原因第一管线失败时启动)。
在一些实施方式中,可以通过构建机器学习分类器来扩展该想法,该机器学习分类器将查询分类为例如在第一管线中可能成功或可能不成功。例如,如果使用第一管线(252-254)处理的查询产生成功的结果,则该查询可以用作分类器(例如,神经网络、支持向量机等)的积极训练示例,以及与积极训练示例相关联的标签可以指示它是成功的。类似地,在一些实施方式中,通过第一管线未成功处理的查询可以用作否定训练示例。可以通过在模型中应用这些积极和/或消极训练示例来训练诸如神经网络的模型以生成输出,确定输出和标签之间的差异(或错误),以及执行各种学习技术,例如梯度下降(随机或批量)和/或反向传播以调整模型的权重。此后,可以在训练模型上应用新查询作为输入以生成输出,该输出指示例如使用第一管线是否可能成功处理它们。如果答案是肯定的,那么可能不会启动第二管线。
图4是示出根据本文中所公开的实施方式的示例方法400的流程图。为方便起见,参考执行操作的***来描述流程图的操作。该***可以包括各种计算机***的各种组件,例如履行自动化助理120的计算***的一个或多个组件。此外,虽然方法400的操作以特定顺序示出,但这并不意味着是限制性的。可以重新排序、省略或添加一个或多个操作。
在框402处,***可以以第一语言例如用户的母语接收由用户在客户端设备的输入组件处提供的话音输入。在框404处,***例如通过STT引擎117或语音捕获/TTS/STT 114可以从话音输入生成语音识别输出。在各种实施方式中,语音识别输出可以包括从语音生成的文本数据,并且在许多情况下,语音识别输出也可以是第一语言。在用户提供查询作为键入文本的其他实施方式中(例如,通过消息交换客户端107),可以省略框402-404。
在框406处,***例如通过意图匹配器136可以基于在框404处生成的语音识别输出来识别用户的第一语言意图。这可以对应于图2中的框252,并且可以构成前面描述的第一管线的开始。例如,意图匹配器136可以将语音识别输出与例如存储在数据库137中的第一语言的一个或多个语法进行比较。即使对于在自动化助理生态***中相对不支持的语言,在数据库137中仍可能提供有至少一些基本语法。可以以各种方式找到匹配,例如语音识别输出与一个或多个语法足够相似(语义和/或语法上)。附加地或替选地,在一些实施方式中,***可使用一个或多个特定于域的经训练的机器学习模型来识别第一语言意图。
在框408处,***可以履行第一语言意图。这可以对应于图2中的框253。例如,***可以从至少部分地以第一语言编写的文档的语料库中获得响应内容。附加地或替选地,***可以识别响应于第一语言意图的一个或多个动作(例如,匹配一个或多个语法的命令)。可以基于框408的履行来生成第一履行信息。在框410,***例如通过自然语言生成器126可以基于在框408处生成的第一履行信息以第一语言生成第一自然语言输出(图4中的“NLO”)候选。
在框412处,***可以将语音识别输出的至少一部分从第一语言翻译成第二语言,以生成语音识别输出的至少部分翻译。这可以对应于图2的框256,并且可以是先前描述的第二和第三管线的开始。因此,在一些实施方式中,框406-410的操作和框412-420的操作可以并行操作,和/或操作集可以递归地调用另一组。
在框414处,***可以基于该至少部分翻译来识别用户的第二语言意图(例如,对应于图2的框258)。在框416处,***可以履行第二语言意图以生成第二履行信息,类似于图2的框259。此时,第二和第三管线发散。在框418,第二管线继续,并且***可以例如通过自然语言生成器126以第二语言生成第二自然语言输出候选。在框419,可以将第二自然语言输出候选翻译成第一语言。同时,在框420处,作为第三管线的一部分,***可以例如通过自然语言生成器126例如使用如前所述的翻译的NLG模板或使用其他技术直接以第一语言生成第三自然语言输出候选。
在框422处,***可以例如通过评分引擎140确定第一、第二和第三自然语言输出候选的分数,如图2的框264所示。基于在框422处确定的分数,在框424处,***可以选择并使得自然语言输出被输出给用户。例如,如果用户声音地提供了初始话语,则可以通过扬声器可听地向用户提供自然语言输出。如果用户提供初始查询作为文本输入(例如,使用消息交换客户端107),则可以在视觉上呈现自然语言输出,例如作为消息交换客户端107中正在进行的转录的一部分。
在所选内容是动作(例如,播放音乐、订购食物)的一些实施方式中,所生成的自然语言候选可包括将执行动作的确认。如下面将更详细描述的,在一些实施方式中,自然语言输出可以以第二语言生成,然后被翻译成第一语言(例如,因为用户最初以第一语言讲话)。在一些这样的实施方式中,可以确定翻译的自然语言输出是否满足一个或多个准则,且如果不满足则可以生成、翻译替换自然语言输出并将其提供给用户。
当以第二语言生成自然语言输出然后翻译成第一语言供用户消费时,可能的情况是,用第二语言生成的自然语言输出不易翻译,或者翻译未能通过对翻译质量的一些测试。例如,在各种场景中(例如,如NLG模板所指示的),有时可以用口语来代替更严格和/或正式的自然语言输出,以使自动化助理120听起来或看起来更生活化。假设用户询问今天天气,预报为85华氏度和晴天。在某些情况下,代替简单地生成直接的自然语言输出来传达该信息,自动化助理120可以替代地选择(例如,基于NLG模板)预定的口语短语,诸如“It’sgonna be a scorcher,don’t forget your sunglasses(将是一个大热天,不要忘记你的太阳镜)”。但是,在使用自动化助理不完全支持的语言的用户的场境下,这样的口语短语可能无法很好地翻译成用户的母语。
因此,在一些实施方式中,例如当在框418处生成自然语言输出时,可以采用各种技术,以确保用户接收作为输出的内容在用户的母语中是有意义的。图5描绘了可以实现为图2的第二管线256-262的一部分的一种这样的技术500。
在框520处,***可以以第二语言生成自然语言输出,类似于图2中的框260。在框522,***例如通过翻译器138可以将自然语言输出从第二语言(例如,英语或其他完全支持的语言)翻译成第一语言,类似于图2的方框262。在方框524,***可以确定与方框522的翻译相关联的质量度量是否满足某些准则,例如最小阈值。如果答案为是,则用户可能以第一语言理解翻译,因此,在框526,可以在用户的客户端设备处呈现翻译的自然语言输出。
然而,如果框524处的答案为否,则翻译可能质量差,并且用户可能不容易理解它(或者它可能看起来笨拙或有错误)。在这种情况下,在框528,***可以用替选自然语言输出替换在框520处以第二语言生成的自然语言输出。这种替选自然语言输出可以更正式、通用、缺乏口语、或者以其它方式可以被选择为更容易地从第二语言翻译成用户使用的第一语言。在框530处,***例如通过翻译器138可以翻译并使得替选自然语言输出被呈现在用户的客户端设备处。
图6是可选地用于执行本文描述的技术的一个或多个方面的示例计算设备610的框图。在一些实施方式中,客户端计算设备、用户控制的资源引擎130和/或其他组件中的一个或多个可以包括示例计算设备610的一个或多个组件。
计算设备610通常包括至少一个处理器614,其经由总线子***612与多个***设备通信。这些***设备可以包括存储子***624,包括例如存储器子***625和文件存储子***626、用户接口输出设备620、用户接口输入设备622和网络接口子***616。输入和输出设备允许用户与计算设备610交互。网络接口子***616提供到外部网络的接口并且耦合到其他计算设备中的相应接口设备。
用户接口输入设备622可以包括键盘,诸如鼠标、轨迹球、触摸板或图形输入板的指示设备、扫描仪、结合到显示器中的触摸屏、诸如语音识别***的音频输入设备、麦克风和/或其他类型的输入设备。通常,术语“输入设备”的使用旨在包括所有可能类型的设备和将信息输入计算设备610或通信网络的方式。
用户接口输出设备620可以包括显示子***、打印机、传真机或诸如音频输出设备的非可视显示器。显示子***可包括阴极射线管(CRT)、诸如液晶显示器(LCD)的平板装置、投影装置或用于产生可见图像的一些其他机构。显示子***还可以提供非可视显示,例如经由音频输出设备。通常,术语“输出设备”的使用旨在包括将信息从计算设备610输出到用户或另一机器或计算设备的所有可能类型的设备及方式。
存储子***624存储提供本文描述的一些或所有模块的功能的编程和数据构造。例如,存储子***624可以包括执行图4和5A-B的方法的所选方面以及实现图1中描绘的各种组件的逻辑。
这些软件模块通常由处理器614单独执行或与其他处理器组合执行。存储子***624中使用的存储器625可以包括多个存储器,包括用于在程序执行期间存储指令和数据的主随机存取存储器(RAM)630和存储固定指令的只读存储器(ROM)632。文件存储子***626可以为程序和数据文件提供持久存储,并且可以包括硬盘驱动器、软盘驱动器以及相关联的可移动介质、CD-ROM驱动器、光盘驱动器或可移动介质盒。实现某些实施方式的功能的模块可以由文件存储子***626存储在存储子***624中,或者存储在处理器614可访问的其他机器中。
总线子***612提供用于使计算设备610的各种组件和子***按预期彼此通信的机制。尽管总线子***612被示意性地示为单个总线,但是总线子***的替代实施方式可以使用多个总线。
计算设备610可以是各种类型,包括工作站、服务器、计算集群、刀片服务器、服务器群、或任何其他数据处理***或计算设备。由于计算机和网络的不断变化的性质,图6中描绘的计算设备610的描述仅旨在作为用于说明一些实施方式的目的的特定示例。计算设备610的许多其他配置可能具有比图6中描绘的计算设备更多或更少的组件。
虽然本文已经描述和说明了若干实施方式,但是可以利用用于执行功能和/或获得结果和/或本文描述的一个或多个优点的各种其他手段和/或结构,并且每个这些变化和/或修改被认为是在本文描述的实施方式的范围内。更一般地,本文描述的所有参数、尺寸、材料和配置旨在是示例性的,并且实际参数、尺寸、材料和/或配置将取决于使用该教导的特定应用或多个应用。本领域技术人员将认识到或能够使用不超过常规的实验确定本文所述具体实施方式的许多等同物。因此,应该理解,前述实施方式仅作为示例呈现,并且在所附权利要求及其等同物的范围内,可以以不同于具体描述和要求保护的方式实施实施方式。本公开的实施方式涉及本文描述的每个单独的特征、***、物品、材料、套件和/或方法。此外,如果这些特征、***、物品、材料、套件和/或方法不相互矛盾,则两个或更多个这样的特征、***、物品、材料、套件和/或方法的任何组合被包括在本公开的范围内。
Claims (16)
1.一种用于呈现自然语言输出的方法,包括:
接收用户在客户端设备的输入组件处以第一语言提供的话音输入;
从所述话音输入生成语音识别输出,其中,所述语音识别输出为所述第一语言;
基于所述语音识别输出识别所述用户的第一语言意图;
履行所述第一语言意图以生成第一履行信息;
基于所述第一履行信息,以所述第一语言生成第一自然语言输出候选;
将所述语音识别输出的至少一部分从所述第一语言翻译成第二语言,以生成所述语音识别输出的至少部分翻译;
基于所述至少部分翻译识别所述用户的第二语言意图;
履行所述第二语言意图以生成第二履行信息;
基于所述第二履行信息,以所述第二语言生成第二自然语言输出候选;
确定所述第一和第二自然语言输出候选的分数;
基于所述分数,从所述第一和第二自然语言输出候选中选择要呈现给所述用户的自然语言输出;以及
使所述客户端设备在所述客户端设备的输出组件处呈现所选择的自然语言输出。
2.根据权利要求1所述的方法,还包括以所述第一语言生成响应于所述第二语言意图的第三自然语言输出候选,其中,确定所述分数还包括确定所述第一、第二和第三自然语言输出候选的分数。
3.根据权利要求1所述的方法,还包括在评分之前将所述第二自然语言输出候选翻译成所述第一语言。
4.根据权利要求3所述的方法,其中,翻译所述第二自然语言输出候选是基于机器学习模型,所述机器学习模型是使用在人机对话期间由一个或多个自动化助理提供的一个或多个自然语言输出日志来训练的。
5.根据权利要求1所述的方法,其中,翻译以生成所述语音识别输出的所述至少部分翻译是基于机器学习模型,所述机器学习模型是使用在人机对话期间提交给一个或多个自动化助理的一个或多个用户查询日志来训练的。
6.根据权利要求1所述的方法,其中,评分是基于指派给所述第一和第二自然语言意图的相应置信度分数。
7.根据权利要求1所述的方法,其中,评分是基于获得所述第一和第二自然语言输出候选所需的时间。
8.根据权利要求1所述的方法,还包括识别所述语音识别输出中的槽值,其中,所述语音识别输出的所述至少部分翻译排除所述槽值,并且其中,所述第二语言意图是基于为所述第一语言的所述槽值而被进一步识别的。
9.一种用于呈现自然语言输出的***,所述***包括一个或多个处理器和与所述一个或多个处理器可操作地耦合的存储器,其中,所述存储器存储指令,所述指令响应于由一个或多个处理器执行而使得所述一个或多个处理器执行以下操作:
接收用户在客户端设备的输入组件处以第一语言提供的话音输入;
从所述话音输入生成语音识别输出,其中,所述语音识别输出为所述第一语言;
基于所述语音识别输出识别所述用户的第一语言意图;
履行所述第一语言意图以生成第一履行信息;
基于所述第一履行信息,以所述第一语言生成第一自然语言输出候选;
将所述语音识别输出的至少一部分从所述第一语言翻译成第二语言,以生成所述语音识别输出的至少部分翻译;
基于所述至少部分翻译识别所述用户的第二语言意图;
履行所述第二语言意图以生成第二履行信息;
基于所述第二履行信息,以所述第二语言生成第二自然语言输出候选;
确定所述第一和第二自然语言输出候选的分数;
基于所述分数,从所述第一和第二自然语言输出候选中选择要呈现给所述用户的自然语言输出;以及
使所述客户端设备在所述客户端设备的输出组件处呈现所选择的自然语言输出。
10.根据权利要求9所述的***,还包括用于以所述第一语言生成响应于所述第二语言意图的第三自然语言输出候选的指令,其中,确定所述分数还包括确定所述第一、第二和第三自然语言输出候选的分数。
11.根据权利要求9所述的***,还包括用于在评分之前将所述第二自然语言输出候选翻译成所述第一语言的指令,其中,翻译所述第二自然语言输出候选是基于机器学习模型,所述机器学习模型是使用在人机对话期间由一个或多个自动化助理提供的一个或多个自然语言输出日志来训练的。
12.根据权利要求9所述的***,其中,翻译以生成所述语音识别输出的所述至少部分翻译是基于机器学习模型,所述机器学习模型是使用在人机对话期间提交给一个或多个自动化助理的一个或多个用户查询日志来训练的。
13.根据权利要求11所述的***,其中,选择所述自然语言输出包括确定所翻译的第二内容不满足翻译准则,并用为所述第一语言的替选自然语言输出替换所翻译的第二内容。
14.根据权利要求9所述的***,其中,评分是基于指派给所述第一和第二自然语言意图的相应置信度分数。
15.根据权利要求9所述的***,其中,评分是基于获得所述第一和第二自然语言输出候选所需的时间。
16.根据权利要求9所述的***,还包括用于识别所述语音识别输出中的槽值的指令,其中,所述语音识别输出的所述至少部分翻译排除所述槽值,并且其中,所述第二语言意图是基于为所述第一语言的所述槽值而被进一步识别的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110289889.XA CN113128239B (zh) | 2018-03-07 | 2018-04-16 | 促进以多种语言与自动化助理的端到端沟通 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862639740P | 2018-03-07 | 2018-03-07 | |
US62/639,740 | 2018-03-07 | ||
PCT/US2018/027774 WO2019172946A1 (en) | 2018-03-07 | 2018-04-16 | Facilitating end-to-end communications with automated assistants in multiple languages |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110289889.XA Division CN113128239B (zh) | 2018-03-07 | 2018-04-16 | 促进以多种语言与自动化助理的端到端沟通 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110462730A CN110462730A (zh) | 2019-11-15 |
CN110462730B true CN110462730B (zh) | 2021-03-30 |
Family
ID=62116597
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110289889.XA Active CN113128239B (zh) | 2018-03-07 | 2018-04-16 | 促进以多种语言与自动化助理的端到端沟通 |
CN201880001823.2A Active CN110462730B (zh) | 2018-03-07 | 2018-04-16 | 促进以多种语言与自动化助理的端到端沟通 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110289889.XA Active CN113128239B (zh) | 2018-03-07 | 2018-04-16 | 促进以多种语言与自动化助理的端到端沟通 |
Country Status (7)
Country | Link |
---|---|
US (3) | US10984784B2 (zh) |
EP (4) | EP3716267B1 (zh) |
JP (1) | JP6678764B1 (zh) |
KR (1) | KR102048030B1 (zh) |
CN (2) | CN113128239B (zh) |
AU (3) | AU2018412575B2 (zh) |
WO (1) | WO2019172946A1 (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6678764B1 (ja) | 2018-03-07 | 2020-04-08 | グーグル エルエルシー | 多言語での自動化されたアシスタントを用いたエンドツーエンドコミュニケーションの促進 |
US11354521B2 (en) | 2018-03-07 | 2022-06-07 | Google Llc | Facilitating communications with automated assistants in multiple languages |
CN111368565B (zh) * | 2018-09-05 | 2022-03-18 | 腾讯科技(深圳)有限公司 | 文本翻译方法、装置、存储介质和计算机设备 |
EP3707703A1 (en) * | 2018-11-28 | 2020-09-16 | Google LLC. | Training and/or using a language selection model for automatically determining language for speech recognition of spoken utterance |
US11361169B2 (en) * | 2019-02-28 | 2022-06-14 | Yandex Europe Ag | Method and server for training a machine learning algorithm for translation |
KR20200107057A (ko) * | 2019-03-06 | 2020-09-16 | 삼성전자주식회사 | 음성 인식 모델에서 사용되는 언어를 확장시키는 방법 및 음성 인식 모델을 포함하는 전자 장치 |
US11551012B2 (en) * | 2019-07-05 | 2023-01-10 | Electronics And Telecommunications Research Institute | Apparatus and method for providing personal assistant service based on automatic translation |
US11308289B2 (en) * | 2019-09-13 | 2022-04-19 | International Business Machines Corporation | Normalization of medical terms with multi-lingual resources |
US11288293B2 (en) * | 2019-11-07 | 2022-03-29 | International Business Machines Corporation | Methods and systems for ensuring quality of unstructured user input content |
KR102333611B1 (ko) * | 2019-12-05 | 2021-12-01 | 주식회사 케이티 | 다국어 대화 서비스를 제공하는 장치, 방법 및 컴퓨터 프로그램 |
US11095578B2 (en) * | 2019-12-11 | 2021-08-17 | International Business Machines Corporation | Technology for chat bot translation |
US11397762B2 (en) | 2020-01-24 | 2022-07-26 | Accenture Global Solutions Limited | Automatically generating natural language responses to users' questions |
US11449556B2 (en) * | 2020-02-04 | 2022-09-20 | Accenture Global Solutions Limited | Responding to user queries by context-based intelligent agents |
JP7434978B2 (ja) * | 2020-02-10 | 2024-02-21 | トヨタ自動車株式会社 | 情報処理装置、情報処理方法、及び、プログラム |
WO2021162489A1 (en) | 2020-02-12 | 2021-08-19 | Samsung Electronics Co., Ltd. | Method and voice assistance apparatus for providing an intelligence response |
CN111324727B (zh) | 2020-02-19 | 2023-08-01 | 百度在线网络技术(北京)有限公司 | 用户意图识别方法、装置、设备和可读存储介质 |
US11301645B2 (en) * | 2020-03-03 | 2022-04-12 | Aziza Foster | Language translation assembly |
KR20230010624A (ko) | 2020-03-10 | 2023-01-19 | 밋카이, 인크. | 다중 언어, 다중 턴, 다중 도메인 가상 어시스턴트를 강화하기 위한 병렬 가설적 추론 |
US11995561B2 (en) | 2020-03-17 | 2024-05-28 | MeetKai, Inc. | Universal client API for AI services |
US11991253B2 (en) | 2020-03-17 | 2024-05-21 | MeetKai, Inc. | Intelligent layer to power cross platform, edge-cloud hybrid artificial intelligence services |
CN111581362A (zh) * | 2020-04-29 | 2020-08-25 | 联想(北京)有限公司 | 一种处理方法及装置 |
US11741317B2 (en) * | 2020-05-25 | 2023-08-29 | Rajiv Trehan | Method and system for processing multilingual user inputs using single natural language processing model |
WO2021262605A1 (en) * | 2020-06-24 | 2021-12-30 | MeetKai, Inc. | A system and method for handling out of scope or out of domain user inquiries |
US11356480B2 (en) * | 2020-08-26 | 2022-06-07 | KnowBe4, Inc. | Systems and methods of simulated phishing campaign contextualization |
US11921712B2 (en) | 2020-10-05 | 2024-03-05 | MeetKai, Inc. | System and method for automatically generating question and query pairs |
US11557300B2 (en) * | 2020-10-16 | 2023-01-17 | Google Llc | Detecting and handling failures in other assistants |
CN114416931A (zh) * | 2020-10-28 | 2022-04-29 | 华为云计算技术有限公司 | 标签生成方法、装置及相关设备 |
US11967319B2 (en) | 2020-12-22 | 2024-04-23 | Direct Cursus Technology L.L.C | Method and electronic device for processing a spoken utterance |
WO2022169565A1 (en) * | 2021-02-03 | 2022-08-11 | Arris Enterprises Llc | Interactive smart media device |
CN113378586B (zh) * | 2021-07-15 | 2023-03-28 | 北京有竹居网络技术有限公司 | 语音翻译方法、翻译模型训练方法、装置、介质及设备 |
US11983554B2 (en) * | 2022-04-21 | 2024-05-14 | X Development Llc | Automating semantically-related computing tasks across contexts |
US11763097B1 (en) * | 2022-08-02 | 2023-09-19 | Fmr Llc | Intelligent dialogue recovery for virtual assistant communication sessions |
WO2024050487A1 (en) * | 2022-08-31 | 2024-03-07 | Onemeta Inc. | Systems and methods for substantially real-time speech, transcription, and translation |
US11908476B1 (en) * | 2023-09-21 | 2024-02-20 | Rabbit Inc. | System and method of facilitating human interactions with products and services over a network |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1350685A (zh) * | 1999-03-09 | 2002-05-22 | 皇家菲利浦电子有限公司 | 采用多个语音识别器的方法 |
CN101154220A (zh) * | 2006-09-25 | 2008-04-02 | 株式会社东芝 | 机器翻译装置和方法 |
CN102799579A (zh) * | 2012-07-18 | 2012-11-28 | 西安理工大学 | 具有错误自诊断和自纠错功能的统计机器翻译方法 |
WO2013134106A2 (en) * | 2012-03-08 | 2013-09-12 | Mobile Technologies, Llc | Device for extracting information from a dialog |
CN104991892A (zh) * | 2015-07-09 | 2015-10-21 | 百度在线网络技术(北京)有限公司 | 语音翻译方法和装置 |
CN107170453A (zh) * | 2017-05-18 | 2017-09-15 | 百度在线网络技术(北京)有限公司 | 基于人工智能的跨语种语音转录方法、设备及可读介质 |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3059413B2 (ja) * | 1998-03-16 | 2000-07-04 | 株式会社エイ・ティ・アール音声翻訳通信研究所 | 自然言語理解装置及び自然言語理解システム |
US20020072914A1 (en) * | 2000-12-08 | 2002-06-13 | Hiyan Alshawi | Method and apparatus for creation and user-customization of speech-enabled services |
US20040162724A1 (en) * | 2003-02-11 | 2004-08-19 | Jeffrey Hill | Management of conversations |
US9552354B1 (en) | 2003-09-05 | 2017-01-24 | Spoken Traslation Inc. | Method and apparatus for cross-lingual communication |
GB2417103A (en) * | 2004-08-11 | 2006-02-15 | Sdl Plc | Natural language translation system |
US7797688B1 (en) * | 2005-03-22 | 2010-09-14 | Dubagunta Saikumar V | Integrating applications in multiple languages |
US20070022134A1 (en) | 2005-07-22 | 2007-01-25 | Microsoft Corporation | Cross-language related keyword suggestion |
JP2007220045A (ja) | 2006-02-20 | 2007-08-30 | Toshiba Corp | コミュニケーション支援装置、コミュニケーション支援方法およびコミュニケーション支援プログラム |
CN101443759B (zh) | 2006-05-12 | 2010-08-11 | 北京乐图在线科技有限公司 | 多语言信息检索的方法和*** |
US8799307B2 (en) * | 2007-05-16 | 2014-08-05 | Google Inc. | Cross-language information retrieval |
US7890493B2 (en) | 2007-07-20 | 2011-02-15 | Google Inc. | Translating a search query into multiple languages |
US8140335B2 (en) * | 2007-12-11 | 2012-03-20 | Voicebox Technologies, Inc. | System and method for providing a natural language voice user interface in an integrated voice navigation services environment |
US7984034B1 (en) | 2007-12-21 | 2011-07-19 | Google Inc. | Providing parallel resources in search results |
JP2009205579A (ja) * | 2008-02-29 | 2009-09-10 | Toshiba Corp | 音声翻訳装置およびプログラム |
US8521516B2 (en) | 2008-03-26 | 2013-08-27 | Google Inc. | Linguistic key normalization |
US9305548B2 (en) | 2008-05-27 | 2016-04-05 | Voicebox Technologies Corporation | System and method for an integrated, multi-modal, multi-device natural language voice services environment |
US8589157B2 (en) * | 2008-12-05 | 2013-11-19 | Microsoft Corporation | Replying to text messages via automated voice search techniques |
JP5471106B2 (ja) * | 2009-07-16 | 2014-04-16 | 独立行政法人情報通信研究機構 | 音声翻訳システム、辞書サーバ装置、およびプログラム |
USH2269H1 (en) | 2009-11-20 | 2012-06-05 | Manuel-Devadoss Johnson Smith Johnson | Automated speech translation system using human brain language areas comprehension capabilities |
US8655901B1 (en) * | 2010-06-23 | 2014-02-18 | Google Inc. | Translation-based query pattern mining |
US9092425B2 (en) | 2010-12-08 | 2015-07-28 | At&T Intellectual Property I, L.P. | System and method for feature-rich continuous space language models |
US9064006B2 (en) * | 2012-08-23 | 2015-06-23 | Microsoft Technology Licensing, Llc | Translating natural language utterances to keyword search queries |
US9164985B1 (en) | 2011-11-29 | 2015-10-20 | Google Inc. | Techniques for detecting poor machine translations of key terms |
US8386477B1 (en) | 2011-11-30 | 2013-02-26 | Google Inc. | System and method for determining user language intent |
US10088853B2 (en) * | 2012-05-02 | 2018-10-02 | Honeywell International Inc. | Devices and methods for interacting with an HVAC controller |
US20140006012A1 (en) * | 2012-07-02 | 2014-01-02 | Microsoft Corporation | Learning-Based Processing of Natural Language Questions |
US9105268B2 (en) * | 2012-09-19 | 2015-08-11 | 24/7 Customer, Inc. | Method and apparatus for predicting intent in IVR using natural language queries |
US9164961B2 (en) | 2012-11-30 | 2015-10-20 | Xerox Corporation | Methods and systems for predicting learning curve for statistical machine translation system |
US9070366B1 (en) * | 2012-12-19 | 2015-06-30 | Amazon Technologies, Inc. | Architecture for multi-domain utterance processing |
KR101857648B1 (ko) * | 2013-03-15 | 2018-05-15 | 애플 인크. | 지능형 디지털 어시스턴트에 의한 사용자 트레이닝 |
US9201865B2 (en) | 2013-03-15 | 2015-12-01 | Bao Tran | Automated assistance for user request that determines semantics by domain, task, and parameter |
US10176167B2 (en) * | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
US9633317B2 (en) * | 2013-06-20 | 2017-04-25 | Viv Labs, Inc. | Dynamically evolving cognitive architecture system based on a natural language intent interpreter |
US9613027B2 (en) * | 2013-11-07 | 2017-04-04 | Microsoft Technology Licensing, Llc | Filled translation for bootstrapping language understanding of low-resourced languages |
US9189742B2 (en) | 2013-11-20 | 2015-11-17 | Justin London | Adaptive virtual intelligent agent |
CN103744843B (zh) * | 2013-12-25 | 2017-01-04 | 北京百度网讯科技有限公司 | 一种在线语音翻译方法及装置 |
US9535904B2 (en) | 2014-03-26 | 2017-01-03 | Microsoft Technology Licensing, Llc | Temporal translation grammar for language translation |
US10726831B2 (en) * | 2014-05-20 | 2020-07-28 | Amazon Technologies, Inc. | Context interpretation in natural language processing using previous dialog acts |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9548066B2 (en) * | 2014-08-11 | 2017-01-17 | Amazon Technologies, Inc. | Voice application architecture |
US9607102B2 (en) * | 2014-09-05 | 2017-03-28 | Nuance Communications, Inc. | Task switching in dialogue processing |
US9767091B2 (en) * | 2015-01-23 | 2017-09-19 | Microsoft Technology Licensing, Llc | Methods for understanding incomplete natural language query |
US10719524B1 (en) * | 2015-04-15 | 2020-07-21 | Arimo, LLC | Query template based architecture for processing natural language queries for data analysis |
US9747279B2 (en) | 2015-04-17 | 2017-08-29 | Microsoft Technology Licensing, Llc | Context carryover in language understanding systems or methods |
CN106484682B (zh) | 2015-08-25 | 2019-06-25 | 阿里巴巴集团控股有限公司 | 基于统计的机器翻译方法、装置及电子设备 |
JP6471074B2 (ja) * | 2015-09-30 | 2019-02-13 | 株式会社東芝 | 機械翻訳装置、方法及びプログラム |
US10963497B1 (en) * | 2016-03-29 | 2021-03-30 | Amazon Technologies, Inc. | Multi-stage query processing |
US10388274B1 (en) * | 2016-03-31 | 2019-08-20 | Amazon Technologies, Inc. | Confidence checking for speech processing and query answering |
WO2017197187A1 (en) | 2016-05-13 | 2017-11-16 | Google Llc | Media transfer among media output devices |
US10713593B2 (en) | 2016-11-04 | 2020-07-14 | Google Llc | Implicit bridging of machine learning tasks |
US10467510B2 (en) * | 2017-02-14 | 2019-11-05 | Microsoft Technology Licensing, Llc | Intelligent assistant |
US10347244B2 (en) * | 2017-04-21 | 2019-07-09 | Go-Vivace Inc. | Dialogue system incorporating unique speech to text conversion method for meaningful dialogue response |
CN110546603A (zh) | 2017-04-25 | 2019-12-06 | 惠普发展公司,有限责任合伙企业 | 机器学习命令交互 |
US11631026B2 (en) | 2017-07-13 | 2023-04-18 | Meta Platforms, Inc. | Systems and methods for neural embedding translation |
US9959272B1 (en) | 2017-07-21 | 2018-05-01 | Memsource a.s. | Automatic classification and translation of written segments |
US10885026B2 (en) | 2017-07-29 | 2021-01-05 | Splunk Inc. | Translating a natural language request to a domain-specific language request using templates |
KR102069692B1 (ko) | 2017-10-26 | 2020-01-23 | 한국전자통신연구원 | 신경망 기계번역 방법 및 장치 |
US10489507B2 (en) | 2018-01-02 | 2019-11-26 | Facebook, Inc. | Text correction for dyslexic users on an online social network |
US10733982B2 (en) * | 2018-01-08 | 2020-08-04 | Apple Inc. | Multi-directional dialog |
US10741176B2 (en) * | 2018-01-31 | 2020-08-11 | International Business Machines Corporation | Customizing responses to users in automated dialogue systems |
US10452782B1 (en) * | 2018-02-20 | 2019-10-22 | Facebook, Inc. | Systems and methods for distributing intent models |
JP6678764B1 (ja) | 2018-03-07 | 2020-04-08 | グーグル エルエルシー | 多言語での自動化されたアシスタントを用いたエンドツーエンドコミュニケーションの促進 |
US11354521B2 (en) | 2018-03-07 | 2022-06-07 | Google Llc | Facilitating communications with automated assistants in multiple languages |
US11386131B2 (en) * | 2018-05-29 | 2022-07-12 | Microsoft Technology Licensing, Llc | System and method for multi-language search |
US10733222B1 (en) * | 2018-06-04 | 2020-08-04 | Amazon Technologies, Inc. | Profile disambiguation |
-
2018
- 2018-04-16 JP JP2018548678A patent/JP6678764B1/ja active Active
- 2018-04-16 EP EP20176134.3A patent/EP3716267B1/en active Active
- 2018-04-16 EP EP18722831.7A patent/EP3559946B1/en active Active
- 2018-04-16 AU AU2018412575A patent/AU2018412575B2/en active Active
- 2018-04-16 CN CN202110289889.XA patent/CN113128239B/zh active Active
- 2018-04-16 EP EP22198670.6A patent/EP4138074A1/en active Pending
- 2018-04-16 KR KR1020187028532A patent/KR102048030B1/ko active IP Right Grant
- 2018-04-16 CN CN201880001823.2A patent/CN110462730B/zh active Active
- 2018-04-16 US US16/082,175 patent/US10984784B2/en active Active
- 2018-04-16 WO PCT/US2018/027774 patent/WO2019172946A1/en active Application Filing
- 2018-04-16 EP EP20175953.7A patent/EP3723084A1/en not_active Withdrawn
-
2021
- 2021-03-24 US US17/211,488 patent/US11915692B2/en active Active
- 2021-04-30 AU AU2021202694A patent/AU2021202694B2/en active Active
-
2022
- 2022-05-26 US US17/825,778 patent/US11942082B2/en active Active
- 2022-08-22 AU AU2022221387A patent/AU2022221387B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1350685A (zh) * | 1999-03-09 | 2002-05-22 | 皇家菲利浦电子有限公司 | 采用多个语音识别器的方法 |
CN101154220A (zh) * | 2006-09-25 | 2008-04-02 | 株式会社东芝 | 机器翻译装置和方法 |
WO2013134106A2 (en) * | 2012-03-08 | 2013-09-12 | Mobile Technologies, Llc | Device for extracting information from a dialog |
CN102799579A (zh) * | 2012-07-18 | 2012-11-28 | 西安理工大学 | 具有错误自诊断和自纠错功能的统计机器翻译方法 |
CN104991892A (zh) * | 2015-07-09 | 2015-10-21 | 百度在线网络技术(北京)有限公司 | 语音翻译方法和装置 |
CN107170453A (zh) * | 2017-05-18 | 2017-09-15 | 百度在线网络技术(北京)有限公司 | 基于人工智能的跨语种语音转录方法、设备及可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113128239A (zh) | 2021-07-16 |
US10984784B2 (en) | 2021-04-20 |
EP3559946B1 (en) | 2020-09-23 |
JP6678764B1 (ja) | 2020-04-08 |
EP3723084A1 (en) | 2020-10-14 |
KR102048030B1 (ko) | 2019-11-22 |
JP2020518870A (ja) | 2020-06-25 |
WO2019172946A1 (en) | 2019-09-12 |
AU2018412575A1 (en) | 2020-10-01 |
AU2022221387B2 (en) | 2023-11-30 |
AU2022221387A1 (en) | 2022-10-06 |
AU2018412575B2 (en) | 2021-03-18 |
AU2021202694A1 (en) | 2021-06-03 |
US20210210076A1 (en) | 2021-07-08 |
US20220284198A1 (en) | 2022-09-08 |
US11915692B2 (en) | 2024-02-27 |
EP3716267A1 (en) | 2020-09-30 |
CN113128239B (zh) | 2024-04-09 |
EP3716267B1 (en) | 2023-04-12 |
EP3559946A1 (en) | 2019-10-30 |
US11942082B2 (en) | 2024-03-26 |
EP4138074A1 (en) | 2023-02-22 |
AU2021202694B2 (en) | 2022-06-02 |
CN110462730A (zh) | 2019-11-15 |
US20200320984A1 (en) | 2020-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110462730B (zh) | 促进以多种语言与自动化助理的端到端沟通 | |
US11354521B2 (en) | Facilitating communications with automated assistants in multiple languages | |
US11113481B2 (en) | Adapting automated assistants for use with multiple languages | |
JP6667504B2 (ja) | オーファン発話検出システム及び方法 | |
US9805718B2 (en) | Clarifying natural language input using targeted questions | |
KR102364400B1 (ko) | 다수의 코퍼스들로부터 응답 정보 획득 | |
CN116368459A (zh) | 用于智能听写的自动化助理的话音命令 | |
Trivedi | Fundamentals of Natural Language Processing | |
Varma et al. | Improving College Assistance with the Help of Richer Human Computer Interaction and Speech Recognition |
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 |