CN112055857A - 上下文推荐 - Google Patents
上下文推荐 Download PDFInfo
- Publication number
- CN112055857A CN112055857A CN201980029748.5A CN201980029748A CN112055857A CN 112055857 A CN112055857 A CN 112055857A CN 201980029748 A CN201980029748 A CN 201980029748A CN 112055857 A CN112055857 A CN 112055857A
- Authority
- CN
- China
- Prior art keywords
- user
- domain
- electronic device
- input
- recommendation engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000009471 action Effects 0.000 claims abstract description 87
- 238000000034 method Methods 0.000 claims abstract description 79
- 230000015654 memory Effects 0.000 claims abstract description 21
- 230000006870 function Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000000007 visual effect Effects 0.000 description 43
- 238000010586 diagram Methods 0.000 description 41
- 230000000875 corresponding effect Effects 0.000 description 31
- 239000013598 vector Substances 0.000 description 25
- 230000008569 process Effects 0.000 description 13
- 238000003860 storage Methods 0.000 description 11
- 230000001276 controlling effect Effects 0.000 description 8
- 238000009826 distribution Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 6
- 238000003058 natural language processing Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000010079 rubber tapping Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000002618 waking effect Effects 0.000 description 2
- 241000287107 Passer Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/274—Converting codes to words; Guess-ahead of partial word inputs
-
- 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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
-
- 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/93—Document management systems
- G06F16/94—Hypermedia
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- User Interface Of Digital Computer (AREA)
- Machine Translation (AREA)
Abstract
提供一种用于提供上下文推荐的电子设备及其方法。所述电子设备包括:存储器,其存储指令;和至少一个处理器,被配置为执行所述指令以获得包含字符的文本,基于语言模型来识别与所述文本对应的域,基于所述域来识别所述字符的指代,并且基于所述指代来执行与所述域相关的动作。
Description
技术领域
本公开涉及电子设备、方法和计算机程序。更特别地,本公开涉及提供上下文推荐。
背景技术
通常,语言识别系统使得用户能够使用一个或多个输入模式在具有增强可靠性的用户设备上创建/键入文本。一个或多个输入模式的示例可以是但不限于文本输入模式、语音输入模式、手写输入模式等等。一个或多个输入模式可以提供预测性完成特征,并且基于用户输入来推荐单词完成、单词校正、可能的下一个单词等等。
现有语言识别系统依赖于用开放域/语料库构建的语言模型来提供推荐。然而,由现有语言识别系统提供的推荐经常不能完美地匹配用户的语言使用/用户上下文。另外,由现有语言识别系统使用的语言模型可能无法理解从虚拟助手接收的用户输入的上下文。这可能导致用户在用户设备上打字时体验不佳。
以上信息仅作为背景信息呈现以帮助理解本公开。关于以上内容中的任何内容是否可以用作本公开的现有技术,没有进行确定,并且没有进行断言。
发明内容
本公开各方面至少解决以上提及的问题和/或缺点,并且至少提供下述优点。相应地,本公开一方面提供一种电子设备,包括:存储器,其存储指令;和至少一个处理器,被配置为执行指令以获得包含字符的文本,基于语言模型来识别与所述文本对应的域,基于所述域来识别所述字符的指代(reference),并且基于所述指代来执行与所述域相关的动作。
另外的方面将在下面的描述中得到部分地阐述,并且部分地从该描述中将是明显的,或者可以通过实践所呈现的实施例而获知。
根据本公开一个方面,提供一种方法。该方法包括:获得包含字符的文本,基于语言模型来识别与所述文本对应的域,基于所述域来识别所述字符的指代,并且基于所述指代来执行与所述域相关的动作。
根据本公开另一方面,提供一种非暂时性计算机可读介质。所述非暂时性计算机可读介质包含指令,所述指令在由至少一个处理器执行时使电子设备:获得包含字符的文本,基于语言模型来识别与所述文本对应的域,基于所述域来识别所述字符的指代,并且基于所述指代来执行与所述域相关的动作。
根据本公开另一方面,提供用于基于由用户提供的一个或多个输入来向用户提供上下文推荐的方法和系统,其中上下文推荐与针对输入确定的域相关。所述方法包括:使用域特定语言模型(LM)来针对至少一个输入确定至少一个域。所述方法还包括:执行共指解析(resolution)以针对至少一个输入确定至少一个共指,其中,所述共指解析基于针对至少一个输入识别的至少一个域来执行。所述方法还包括:解析所确定的至少一个共指以提供至少一个推荐。
从下面的结合附图进行的公开了本公开各种实施例的详细描述中,本公开的其他方面、优点和显著特征对于本域技术人员将变得清楚。
附图说明
从结合附图的下面的描述中,本公开的某些实施例的以上和其他方面特征以及优点将更加清楚,在附图中:
图1是根据本公开的实施例的电子设备的框图;
图2是根据本公开的实施例的上下文推荐引擎的框图;
图3a是图示根据本公开的实施例的提供上下文推荐的方法的流程图;
图3b是根据本公开的实施例的电子设备的框图;
图3c是图示根据本公开的实施例的方法的流程图;
图4a是图示根据本公开的实施例的确定域和对象的方法的流程图;
图4b是图示根据本公开的实施例的使用训练的语言模型来确定域和对象的方法的流程图;
图5a和5b图示根据本公开的各种实施例的用于向用户提供推荐的示例用户界面;
图6a、6b、6c、6d、6e和6f图示根据本公开的各种实施例的用于向用户提供推荐的示例用户界面;
图7a是图示根据本公开实施例的确定共指(co-reference)的方法的流程图;
图7b是图示根据本公开的实施例的使用训练的语言模型来确定共指的方法的流程图;
图8是图示根据本公开的实施例的通过解析(resolve)共指来向用户提供推荐的方法的流程图;
图9是用于说明根据本公开的实施例的在所提供的推荐与由现有系统所提供的推荐之间的差异的示例表格;
图10a、10b和10c图示根据本公开的各种实施例的用于向用户提供上下文链接作为推荐的示例用户界面;
图11a和11b图示根据本公开的各种实施例的用于向用户提供文件作为推荐的示例用户界面;
图12a和12b图示根据本公开的实施例的用于向用户提供图像作为推荐的示例用户界面;
图13图示根据本公开的实施例的用于在会话中向用户提供上下文链接作为推荐的示例用户界面;
图14a、14b和14c图示根据本公开各种实施例的用于在会话中向用户提供上下文链接作为与另一个用户共享上下文链接的推荐的示例用户界面;
图15a、15b和15c图示根据本公开的各种实施例的用于在会话中向用户提供图像作为推荐的示例用户界面;
图16a、16b和16c图示根据本公开的各种实施例的用于在会话中向用户提供联系人卡作为推荐的示例用户界面;
图17a、17b、17c和17d图示根据本公开的各种实施例的用于向用户提供上下文推荐的示例用户界面;
图18a、18b和18c图示根据本公开的各种实施例的包括视觉提示的示例用户界面;
图19是用于说明根据本公开的实施例的控制物联网(IoT)用户设备的方法的图;
图20是用于说明根据本公开实施例的执行动作和添加规则的方法的图;
图21是用于说明根据本公开的实施例执行的动作的图;
图22是用于说明根据本公开的实施例的基于用户的例程来提供预测的方法的图;
图23是用于说明根据本公开的实施例的使得另一个用户能够控制用户的用户设备的方法的图;
图24是用于说明根据本公开的实施例的当用户不在时控制用户设备的方法的图;
图25是用于说明根据本公开的实施例的基于调度表来控制用户设备的方法的图;
图26是用于说明根据本公开的实施例的基于用户的位置来控制用户设备的方法的图;
图27是用于说明根据本公开的实施例的从会话添加规则的方法的图;
图28是用于说明根据本公开实施例的调整用户设备的设置的方法的图;
图29是用于说明根据本公开实施例的调整多个用户的权限的方法的图;
图30是用于说明根据本公开的实施例的用于调用用户设备的功能的用户交互的图;
图31是用于说明根据本公开实施例的用于选择用户设备的用户交互的图;以及
图32是用于说明根据本公开的实施例的预测性动作的提供的图。
贯穿附图,相似的附图标记将被理解为指相似的部件、组件和结构。
具体实施方式
提供一种电子设备,包括:存储器,其存储指令;和至少一个处理器,被配置为执行指令以:获得包含字符的文本,基于语言模型来识别与所述文本对应的域,基于所述域来识别所述字符的指代,并且基于所述指代来执行与所述域相关的动作。
根据一个实施例,其中,所述域是可由所述至少一个处理器执行的应用,并且所述动作是所述应用的功能。
根据一个实施例,所识别出的域与多个域当中的所述字符最相关。
根据一个实施例,在所述字符与所识别出的域之间的相关性通过语言模型来学习。
根据一个实施例,所述语言模型基于与所述域相关的所述动作、所述字符的所述指代和所识别出的域来训练。
根据一个实施例,至少一个处理器还被配置为执行指令以通过接收由用户键入的文本来获得所述文本。
根据一个实施例,至少一个处理器还被配置为执行指令以:显示所述指代的多个候选对象,接收对在显示的多个候选对象当中的与所述指代对应的候选对象的选择,并且基于对候选对象的选择来识别指代。
根据一个实施例,至少一个处理器还被配置为执行指令以显示包括所述文本和所述指代的自动完成的文本。
根据一个实施例,至少一个处理器还被配置为执行指令以高亮和显示所述指代。
根据一个实施例,至少一个处理器还被配置为执行指令以基于对所述指代的选择来执行与所述域相关的动作。
根据一个实施例,所述域是在所述电子设备的前景上运行的应用,并且所述文本是通过所述应用获得的,并且所述动作是所述应用的功能。
根据一个实施例,至少一个处理器还被配置为执行指令以通过从另一个用户接收消息来从所述消息获得所述文本。
根据一实施例,基于对所述指代的选择,屏幕被滚动到由所述指代指示的位置。
根据一实施例,所述指代包括超链接,并且所述动作包括超链接的传输。
根据一个实施例,所述指代包括文件,并且所述动作包括文件的附加。
根据一个实施例,所述字符包括名词,并且所述指代是名词的共指。
根据一个实施例,所述字符包括照应词(anaphora),并且至少一个处理器还被配置为执行指令以将所述照应词的先行词(antecedent)识别为所述指代。
根据一个实施例,所述字符包括动词,并且所述指代包括所述动词的对象。
提供一种方法,包括:获得包括字符的文本;基于语言模型来识别与所述文本对应的域;基于所述域来识别所述字符的指代;并且基于所述指代来执行与所述域相关的动作。
提供一种包括指令的非暂时性计算机可读介质,所述指令在由电子设备的至少一个处理器执行时使所述电子设备:获得包括字符的文本;基于语言模型来识别与所述文本对应的域;基于所述域来识别所述字符的指代;并且基于所述指代来执行与所述域相关的动作。
发明模式
提供参照附图的下面的描述以帮助全面理解如由权利要求及其等同限定的本公开的各种实施例。它包括各种具体细节以帮助理解,但是这些具体细节仅被认为是示范性的。相应地,本领域普通技术人员将认识到:可以对本文所述的各种实施例进行各种改变和修改,而不脱离本公开的范围和精神。另外,为了清楚和简洁,可以省略对公知功能和构造的描述。
在下面的描述和权利要求中使用的术语和词语不限于书目含义,而是仅被发明人用来使得能够清楚和一致地理解本公开。相应地,对于本领域技术人员而言应当清楚的是:提供下面对本公开的各种实施例的描述仅是出于说明的目的,而不是出于限制如由所附权利要求及其等同限定的本公开的目的。
应理解:单数形式的“一”、“一个”和“该”包括复数指代,除非上下文另有明确规定。因而,例如,提及“组件表面”包括提及一个或多个这样的表面。
可以注意:在可能的范围内,相似的附图标记在附图中已用于表示相似的元件。此外,本领域普通技术人员将理解:附图中的元件是为了简化而图示的,并且可能不一定按比例绘制。例如,附图中的一些元件的尺寸可能相对于其他元件被放大,以帮助提高对实施例的各方面的理解。此外,一个或多个元件可能已经在附图中由各种符号表示,并且附图可能仅示出与理解本公开的实施例有关的那些特定细节,以便不用对受益于本文描述的本领域普通技术人员十分明显的细节来模糊附图。
阐明贯穿本文档使用的某些单词和短语的定义可能是有利的。术语“包括”和“包含”以及其派生词意味着包括而不限制。术语“或”是包含性的,意味着和/或。短语“与...相关联”和“与之相关联”以及其派生词可能表示包括、被包括在……内、与……互连、包含、被包含在……内、连接到……或与……连接、耦合到……或与……耦合、与……可通信、与……合作、交织、并列、接近……、绑定至或与……绑定、具有、具有……的属性等等。
此外,以下描述的各种功能可以由一个或多个计算机程序实现或支持,每个计算机程序可以由计算机可读程序代码形成并体现在计算机可读介质中。术语“应用程序”和“程序”是指适于以合适的计算机可读程序代码实现的一个或多个计算机程序、软件组件、指令集、过程、函数、对象、类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够由计算机访问的任何类型的介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、致密盘(CD)、数字视频盘(DVD)或任何其他类型的存储器。“非暂时性”计算机可读介质不包括输送暂时性电或其他信号的有线、无线、光学或其他通信链路。非暂时性计算机可读介质包括可以永久存储数据的介质和可存储数据并随后覆盖的介质,诸如可重写光盘或可擦除存储器设备。
术语“单元”、“管理器”、“引擎”或“设备”可以指处理至少一个功能或操作并且可以由硬件、软件或硬件和软件的组合来实现的单元。
电子设备1000智能手机,平板电脑,可穿戴设备,蜂窝电话,物联网(IoT)设备,个人数字助理,媒体播放器,便携式多媒体播放器,电子书阅读器,数字广播设备,个人计算机,膝上型计算机,微型服务器,导航、车辆信息娱乐系统,医疗设备,游戏机,MP3播放器,数码相机,但不限于此。
本文的各种实施例公开用于基于至少一个用户输入来提供上下文推荐的方法和系统,其中基于针对用户输入确定的域、共指解析(co-reference resolution)和偏置的(biased)域特定语言模型(LM)来向用户提供上下文推荐。
图1是根据本公开的实施例的电子设备的框图。
电子设备100可以根据由用户提供的输入而向用户提供上下文推荐。电子设备100在本文中也可以被称为用户设备。电子设备100可以使用互联网、有线网络(局域网(LAN)、以太网等等)、无线网络(Wi-Fi网络、蜂窝网络、Wi-Fi热点、蓝牙、Zigbee等等)中的至少一个进一步连接到服务器(未示出)以用于检索所需的数据。电子设备100还可以从外部数据库(未示出)检索数据。在本文的示例中,外部数据库可以是对象-动作列表数据库、先行词数据库、照应词数据库等等。在一实施例中,可实现服务器这样的设备,用于基于由用户向电子设备100提供的至少一个输入来提供上下文推荐。在另一实施例中,电子设备100可以通过网络连接到云平台。
电子设备100包括上下文推荐引擎102、显示单元104、虚拟助手单元106和存储单元108,该存储单元108可以进一步包括本地数据库118。
显示单元104和虚拟助手单元106可以被配置成当用户正与电子设备100交互时从用户接收至少一个输入。输入可以是但不限于文本输入(使用虚拟键盘、物理键盘等等)、语音输入等等。
显示单元104可以被配置成在显示屏幕上显示虚拟键盘并且从用户接收文本输入。文本输入可以为字符的形式。文本输入的示例可以是但不限于字母、字符串(单词、句子、短语等等)以及数字等等。此外,用户可以在任何合适的应用中在虚拟键盘上键入文本输入,所述应用诸如但不限于日历应用、消息传递应用、电子邮件应用、地址簿(联系人)应用、web浏览器应用、出租车相关应用、图库应用、或者驻留在电子设备100上或通过连接到服务器和外部数据库中的至少一个而可由电子设备100访问的任何其他应用。本文的实施例可以将应用视为域。在本文的实施例中,与电子设备100耦合的物理键盘可以用于从用户接收文本输入。
虚拟助手单元106可以被配置成从用户接收语音输入。在一个实施例中,虚拟助手单元106可以与电子设备100集成。语音输入可以为表达的短语/查询/陈述等等的形式。虚拟助手单元106可以是使得用户能够使用表达的短语/查询/陈述/命令与虚拟助手单元106交互的设备。
上下文推荐引擎102可以由单个处理器、多个处理器、多个同类核、多个异类核、不同种类的多个中央处理单元(CPU)等等中的至少一个组成。上下文推荐引擎102可以耦合到显示单元104和虚拟助手单元106以接收由用户提供的输入。在从显示单元104和虚拟助手单元106中的至少一个接收由用户提供的输入时,上下文推荐引擎102在用户正在任何合适的域/应用中键入/提供输入时提供上下文推荐。本文指代的上下文推荐的示例可以是但不限于对象、针对该对象的视觉提示(带下划线的对象/该对象的链接/针对该对象的超链接等等)、可以在该视觉提示上执行的动作(轻击以自动滚动)等等。对象的示例可以是但不限于文本(单词、句子、短语、先行词、照应词等等)、自然语言生成(NLG)、联系人、图像、视频等等。
在接收到由用户提供的输入时,上下文推荐引擎102分析该输入并为该输入确定域。上下文推荐引擎102还可以确定与为该输入确定的域相关的对象。对象可以是但不限于单词、句子、短语、联系人等等。在一个实施例中,上下文推荐引擎102使用域特定语言模型(LM)来为输入确定域和与该域相关的对象。确定的对象可以被显示(由显示单元104)为向用户的推荐。因而,用户可以将用于输入完成、输入校正的推荐对象视为可能的下一个对象等等。例如,当由用户提供的文本是“connect to(连接到)”时,上下文推荐引擎102可以将“IoT家庭集线器”确定为域。此外,上下文推荐引擎102将诸如“Dex station(Dex站)”、“smart TV(智能TV)”,“refrigerator(冰箱)”等等之类的对象确定为与域相关。与域相关的对象可以被显示为对用户的推荐。
例如,当由用户提供的文本是“Call J”时,上下文推荐引擎102可以将“联系人”确定为域。此外,上下文推荐引擎102将诸如“James”、“Jessica”、“Jack”等等之类的对象确定为与该域相关。与该域相关的对象可以被显示为对用户的推荐以用于完成用户输入。
上下文推荐引擎102基于用户输入历史(从本地数据库118获得)以及来自针对输入确定的域的提示来执行共指解析。可以执行共指解析以针对包括文本字符的输入提供共指。例如,字符的共指可以与字符的指代一致。共指可以包括输入文本中存在的先行词、照应词、提及等等,但不限于此。先行词可以被包括在电子设备中获得的文本中。即,先行词可以是存储在用户输入历史中的单词。先行词可以被包括在某个时段内在电子设备中获得的文本中。上下文推荐引擎102进一步针对共指提供视觉提示。本文的视觉提示是指带下划线的先行词、带下划线的照应词和带下划线的提及等等中的至少一个。共指和视觉提示可以作为推荐提供给用户(通过显示单元104)。
上下文推荐引擎102基于针对输入确定的域、执行的共指解析和针对域特定LM计算的偏差来进一步解析共指。上下文推荐引擎102解析共指以用于确定可对视觉提示执行的动作。确定的动作可以作为建议提供给用户。
在一个实施例中,上下文推荐引擎102可以连续地或周期性地识别和解释由用户在不同域中提供的输入。上下文推荐引擎102可以将解释的输入分类到不同的域以构建域特定LM。上下文推荐引擎102在由用户在特定域中提供的当前输入上应用域特定LM,并且针对在特定域中提供的输入提供共指解析(其可以包括作为推荐的对象、动作)。
存储单元108可以被配置成将由用户提供的输入、为输入提供的推荐等等存储在本地数据库118中。
图1示出电子设备100的单元,但是应理解:其他实施例不限于此。在其他实施例中,电子设备100可包括更少或更多数量的单元。此外,单元的标签或名称仅用于说明目的,并且不限制本文各种实施例的范围。一个或多个单元可以组合在一起以在电子设备100中执行相同或实质上相似的功能。
图2是根据本公开的实施例的上下文推荐引擎的框图。
参考图2,上下文推荐引擎102可以包括各种单元,以根据由用户提供的输入而向用户提供上下文推荐。上下文推荐引擎102包括输入分析单元202、域确定单元204、域对象确定单元206、共指解析单元208、推荐单元210、记录单元212和存储器214。
输入分析单元202可以被配置为在接收由用户从显示单元104和虚拟助手单元106中的至少一个提供的输入时分析输入。在一个实施例中,输入分析单元202使用自然语言处理(NLP)技术来分析输入。使用NLP技术来说明本文的实施例以分析输入,但是对于本领域普通技术人员可能显而易见的是:可以使用任何其他文本处理技术来分析输入。另外,可以分析输入以识别输入中存在的先行词和照应词中的至少一个。本文的先行词可以指名词,并且可以是多媒体、位置、名称和链接等等中的至少一个。本文的照应词指代词(pronouns),并且可以是“it、“this”、“that”、“his”、“her”、“its”等等中的至少一个。
域确定单元204和域对象确定单元206并行操作,以分别针对输入确定域和确定与该域相关的对象。
域确定单元204可以被配置为在从输入分析单元202接收分析的输入时针对输入确定域。域确定单元204使用域特定LM(训练的语言模型)针对输入确定域。域特定LM可以是可以使用递归神经网络(RNN)和卷积神经网络(CNN)的组合构建的字符(character)感知模型。在一个实施例中,可以通过识别和解释与不同域相关联的数据集(驻留在电子设备100、外部数据库、外部服务器等等上)和由用户在不同域中提供的输入来构建域特定LM。此外,可以对不同域中识别和解释的输入进行分类以构建域特定LM。此外,域特定LM包括基于数据集和与不同域相关联的输入导出的学习的过滤器。
本文的实施例将分析的输入和域特定LM作为输入提供给域确定单元204。域确定单元204使用卷积层、轮询层、关注层和Softmax层来确定与输入相关的域。域确定单元204将输入和域特定LM的学习过滤器传递给卷积层。卷积层将输入与学习的过滤器进行卷积。卷积层的输出可以被传递给轮询层。轮询层可以对卷积层的输出执行最大(MAX)操作、最小(MIN)操作或平均(AVG)操作,并且以向量格式(输入特征向量)表示输入。域确定单元204可以将输入特征向量和先前的输入传递给关注层作为输入。关注层针对接收的输入导出上下文向量。此外,关注层的输出可以被传递给Softmax层作为输入。Softmax层使用S型函数(sigmoid function)以用于处理接收的输入,为输入确定相关域,并且为针对输入确定的相关域生成分类概率分布。基于该概率分布,Softmax层针对输入确定相关域。在本文的示例中,由用户提供的输入可以是“David,book a cab and let’s share its”。域确定单元204使用域特定LM将出租车相关应用确定为针对输入的域。
域对象确定单元206可以被配置为确定与针对输入确定的域相关的对象。在一个实施例中,域对象确定单元206使用域特定LM来为针对输入确定的域确定对象。在识别由用户提供的输入时,域对象确定单元206分析域特定LM/训练的LM的开放语料/数据集。训练的LM的数据集可以包括具有各个词汇的域的数据集。域对象确定单元206将输入馈送到字符嵌入层。字符嵌入层处理输入的字符。字符嵌入层通过处理输入的字符而形成输入的每个单词的向量。域对象确定单元206传递针对输入的每个单词形成的向量,并且将输入传递到卷积层。卷积层执行输入与针对每个单词形成的向量的卷积,以产生多个单词/对象。卷积层的输出可以被传递给高速公路层。高速公路层可以控制卷积层的输出到包括LM数据结构和推理引擎的LM引擎的流。高速公路层从卷积层的输出中选择多个单词/对象,以传递给LM引擎。此外,高速公路层以特征向量表示所选的多个单词,并且将该特征向量传递给LM引擎。特征向量可以包括与所选的多个单词相对应的浮点数。LM引擎使用长短期记忆(LSTM)层和Softmax层来处理特征向量,并且生成隐藏状态。LSTM层处理多个单词/对象的特征向量,并且提供与每个单词/对象相关的输出信息(单词是动词还是名词,或者什么可以与单词结合(conjugate)等等)。基于输出信息,Softmax层生成隐藏状态。由LM引擎输出的隐藏状态包括与域相关的多个语法校正的对象/单词。此外,域对象确定单元206基于针对输入确定的域而估计在生成的隐藏状态上的概率分布。基于估计的概率分布,域对象确定单元206确定语法校正的和域相关的对象(与针对输入确定的域相关的对象)。例如,考虑一种场景,其中由用户提供的输入可以是“David,book a cab and let’s share its”,并且针对该输入识别的域可以是出租车相关应用。基于针对输入识别的域,域对象确定单元206可以使用域特定LM将“fare”确定为用于针对输入确定的域的对象/单词。域对象确定单元206将确定的对象提供给显示单元104。当用户正在键入/将输入提供给用户设备100时,显示单元将确定的对象显示为针对用户的推荐。
共指解析单元208可以被配置为执行共指解析,以用于为由用户提供的输入确定共指(先行词、照应词、提及等等)。共指解析单元208基于针对输入确定的域和用户输入历史来执行共指解析。共指解析单元208访问本地数据库118并获得用户输入历史。共指解析单元208通过检测与用户输入历史相关联的多个单词来以特征向量的形式表示用户输入历史。特征向量包括表示先前输入的浮点数。共指解析单元208将特征向量传递给包括LM数据结构和推理引擎的LM引擎。LM引擎使用双向LSTM(Bi-LSTM)层和Softmax层来处理特征向量,并且生成隐藏状态。Bi-LSTM层处理特征向量,并且提供与每个单词相关的输出信息(单词是动词还是名词,或者什么可以与单词结合等等)。基于输出信息,Softmax层生成隐藏状态。并行地,共指解析单元208使用NLP技术来分析先前输入并针对先前输入确定先行词列表。先行词可以指多媒体、名称、位置和链接,但不限于此。
在确定先行词之后,共指解析单元208使用SLACK引擎针对先行词计算非概率分数。SLACK引擎基于针对输入和生成的隐藏状态(由Bi-LSTM引擎计算)确定的域而针对先行词计算非概率分数。共指解析单元208将具有最高概率分数的先行词(存在于先行词列表中)确定为针对由用户提供的输入的共指。在一个实施例中,在输入中仅存在照应词的情况下,共指解析单元将照应词确定为针对输入的共指。在另一个实施例中,在由用户提供的输入中存在照应词的情况下,共指解析单元208执行照应词解析,用于将输入中存在的照应词与先行词链接。具有先行词的链接的照应词可以被确定为针对输入的共指。因而,本文指代的共指可以是先行词(具有最高非概率分数)、输入中存在的照应词、输入中存在的提及、与先行词链接的照应词等等中的至少一个。在一个实施例中,被确定为针对输入的共指的先行词可以是由域对象确定单元206针对输入推荐的对象。另外,共指解析单元208通过将确定的先行词添加到先行词数据库来更新先行词数据库。类似地,共指解析单元208通过将确定的照应词添加到照应词数据库中来更新照应词数据库。
此外,共指解析单元208针对共指提供视觉提示。用户可以在视觉提示上执行预定义的手势(诸如轻击手势、滚动手势、点击手势等等),以访问与共指相关的内容。共指解析单元208将视觉提示提供给显示单元104。显示单元104将视觉提示显示为针对用户的推荐。因而,用户可以通过在视觉提示上执行手势来访问相关内容。
推荐单元210可以被配置为在输入或提供输入时解析用于向用户提供推荐的共指。推荐单元210基于针对输入识别的域、共指输入以及针对域特定LM计算的偏差来解析共指。
推荐单元210执行域特定LM的偏置(biasing),以导出与针对输入确定的对象或先行词相关的动作。域特定LM的偏置包括基于从域确定单元204获得的相关域上的分类概率分布来提高某些动作/先行词的概率。推荐单元210从本地数据库118访问用户输入历史,并且确定可用于针对输入确定的域的对象。推荐单元210用与域相关联的对象来填充先行词列表(存在于先行词数据库中)。推荐单元210进一步确定对象的功能或与对象相关的动作,并且用确定的对象的功能或与对象相关的动作来补充输入中存在的先行词。在一个实施例中,如果不存在与对象相关联的动作,则该动作可以包括针对文本实体的NULL动作。推荐单元210将对象和针对先行词列表确定的对应功能/动作存储在对象-动作列表数据库中。推荐单元210进一步针对域特定LM计算偏差,以允许针对由用户提供的输入预测对象的动作。
推荐单元210从共指解析单元208接收关于确定的共指的信息,并且解析该共指。可以解析共指以提供与对象/先行词相关的动作作为针对用户的建议。推荐单元210使用对象-动作数据库列表来解析共指。推荐单元210检查对象-动作数据库列表,以用于针对为由用户提供的输入确定的(由共指解析单元208确定的)先行词列表的前K个先行词加载对象、对应动作以及针对域特定LM的关联偏差。针对先行词加载的对象可以是联系人卡、图像、视频、音频等等中的至少一个。推荐单元210将从对象-动作数据库加载的动作提供给显示单元104。当用户在针对共指提供的视觉提示上执行手势时,显示单元104向用户显示对象和对应动作作为建议。
记录单元212可以被配置为记录由用户响应于提供给用户的推荐而执行的动作。记录单元212通过将用户对于对象/共指所执行的动作存储在对象-动作列表数据库中来更新对象-动作列表数据库。
存储器214可被配置为存储针对输入识别的域、针对输入提供的共指、针对共指提供的动作等等。存储器214可以包括一个或多个计算机可读存储介质。存储器214可以包括非易失性存储元件。这样的非易失性存储元件的示例可以包括磁性硬盘、光盘、软盘、闪存、或者电可编程存储器ROM(EPROM)或电可擦除可编程ROM(EEPROM)存储器的形式。另外,在一些示例中,存储器214可被视为非暂时性存储介质。术语“非暂时性”可指示存储介质不以载波或传播的信号来体现。然而,术语“非暂时性”不应当被解释为意味着存储器214是不可移动的。在一些示例中,存储器214可被配置为存储比存储器更大量的信息。在某些示例中,非暂时性存储介质可以存储可随时间改变(例如,在随机存取存储器(RAM)或高速缓存中)的数据。
图2示出上下文推荐引擎102的单元,但是应理解:其他实施例不限于此。在其他实施例中,上下文推荐引擎102可以包括更少或更多数量的单元。此外,单元的标签或名称仅用于说明目的,并且不限制本文各种实施例的范围。一个或多个单元可以组合在一起,以在上下文推荐引擎102中执行相同或实质上相似的功能。
图3a是图示根据本公开实施例的提供上下文推荐的方法的流程图。
在操作302处,该方法包括由上下文推荐引擎102分析从用户设备100的用户接收的输入。上下文推荐引擎102确定输入的上下文,并且确定输入中存在的先行词和照应词。
在操作304处,该方法包括由上下文推荐引擎102使用域特定LM来针对输入确定域。上下文推荐引擎102执行输入与学习的过滤器的卷积,以针对输入确定相关域。可以基于确定的输入上下文来确定相关域。上下文推荐引擎102使用轮询层、关注层和Softmax层来处理卷积的输出,并且导出域表示。域表示指示针对相关域的概率。基于域表示,上下文推荐引擎102针对输入确定域。在一个实施例中,可以针对输入确定多个域。并行地,上下文推荐引擎102为针对输入确定的域确定对象。上下文推荐引擎102使用包括LM数据结构和推理引擎的LM引擎以及针对输入确定的域来确定对象。
在操作306处,该方法包括由上下文推荐引擎102执行共指解析,以确定针对输入的共指。上下文推荐引擎102处理用户输入历史以形成特征向量,并且将特征向量传递给LM引擎。上下文推荐引擎102使用LM引擎的Bi-LSTM层和Softmax层来处理特征向量。此外,上下文推荐引擎102针对用户输入历史确定先行词列表,并且使用SLACK引擎针对先行词列表计算非概率分数。SLACK引擎基于Bi-LSTM层和Softmax层的输出以及针对输入确定的域来计算非概率分数。基于该非概率分数,上下文推荐引擎102将先行词列表的具有最高分数的先行词确定为针对输入的共指。在输入中存在照应词的情况下,上下文推荐引擎102将照应词确定为输入的共指。上下文推荐引擎102还执行照应词解析以将照应词与确定的先行词链接,并且将与先行词链接的照应词确定为针对输入的共指。此外,上下文推荐引擎102针对共指提供视觉提示。视觉提示可以通过对共指加下划线来提供。视觉提示可以允许用户访问共指的相关内容。
在操作308处,该方法包括由上下文推荐引擎102解析确定的共指以提供推荐。上下文推荐引擎102为针对输入确定的对象确定动作,并且执行域特定LM的偏置。上下文推荐引擎102进一步用对象和对应动作来补充先行词列表。另外,上下文推荐引擎102用确定的对象和对应动作来针对先行词列表更新对象-动作列表数据库。
为了解析共指,上下文推荐引擎102访问对象-动作数据库列表并针对共指确定动作,其中共指可以包括先行词、照应词和提及,但是不限于此。上下文推荐引擎102提供动作作为针对用户的建议。因而,在键入输入的同时为用户提供的推荐可以包括针对域确定的对象、针对共指提供的视觉提示、针对共指提供的动作等等中的至少一个。根据一个实施例,可以向用户提供统一和改进的打字体验。
方法中的各种动作、行动、块、操作等等以及该方法可以所呈现的顺序、以不同的顺序或同时执行。此外,在一些实施例中,动作、行动、块、操作等等中的一些可被省略、添加、修改、跳过等等,而不脱离本公开的范围。
图3b是根据本公开的实施例的电子设备的框图。
电子设备310可以包括存储器312和处理器314。电子设备310可以是电子设备100。电子设备310的存储器312可以与电子设备100的存储单元108相对应,存储器312可以存储用于执行操作系统(OS)、计算机程序、应用程序等等的指令。
电子设备310的处理器314可以被配置为执行存储在存储器312上的指令。根据实施例,该指令可以由处理器执行以使电子设备310执行功能。
电子设备310的处理器314可以执行电子设备100的上下文推荐引擎102的功能。处理器314可以包括至少一个处理器。电子设备310的处理器314可以执行电子设备100的虚拟助手单元106的功能。
图3c是图示根据本公开的实施例的方法的流程图。
在操作322,电子设备可以获得包括字符的文本。文本可以通过用户输入来接收。例如,可通过用户键入或输入文本或者通过用户表达的声音来获得文本。文本可进一步包括数字和符号。文本中包括的字符可以由单词或句子组成,但可能不使单词或句子完整。即,文本中包括的字符可以是单词的一部分或句子的一部分。文本可通过在电子设备上运行的应用来获得。
在操作324处,电子设备可以基于语言模型来识别与获得的文本相对应的域。域可以指示可由电子设备的处理器执行的应用,但是不限于此。域可以指示在电子设备的前景上运行的应用。域可以指示在虚拟助手应用在电子设备上弹出之前已经在电子设备的前景上运行的应用。可以在多个域之中识别与文本中包括的字符最相关的域。可以基于语言模型来学习与字符的相关性。通过参考图4a、4b、7a和7b,用于基于语言模型识别域的方法可以是说明的层。
例如,当获得的文本是“share this”时(如图5b中所图示),用于共享文件或图片的应用(即,图库应用、电子邮件应用或消息传递应用)可以被识别为与获得的文本相对应。
例如,当获得的文本是“Call J”时,用于进行电话呼叫的应用、消息传递应用可以被识别为与获得的文本相对应。
例如,当获得的文本是“Connect to the”时,用于连接其他设备的应用(诸如IoT控制应用、家庭集线器桥接应用、家庭集线器应用)可以被识别为与获得的文本相对应。
例如,当获得的文本是“Open the”时,用于打开内容或文件的应用(诸如文档编辑应用、云应用、文件导航应用)可以被识别为与获得的文本相对应。
在操作326处,电子设备可以基于识别的域来识别字符的指代。
在一个实施例中,当字符包括动词时,可以基于域将该动词的对象识别为指代。例如,当获得的文本是“Share this”时(如图5b中所图示),“Share”的对象可以被识别为指代。如果电子设备已经获悉用户经常与朋友共享图片,则“Share this”的指代可以是“picture”。在获得文本之前在电子设备上捕获屏幕截图(screenshot)时,“Share this”的指代可以是屏幕截图。在一个实施例中,指代可以是在多个候选对象之中识别的一个。即,可以基于域将多个对象识别为针对字符的指代的候选。例如,“picture”和“screenshot”可以被显示为电子设备上的指代候选对象,由用户在显示的多个指代之中选择的对象可以被识别为指代。
例如,当获得的文本是“send you”时,“send”的对象可以被识别为指代。动词的对象可以是直接对象,或者是间接对象。“the link”、“the files”可以被识别为“send”的指代。
在一个实施例中,包括字符的至少一部分的单词或名词可以被识别为指代。例如,当获得的文本是“Call J”(如图5a中所图示)时,包括“J”并且作为用于“Call”的对象的单词或名词可以被识别为指代。例如,存储在电子设备的联系人应用中的以“J”开头的名称可以被识别为指代或指代候选。如果电子设备已经获悉用户频繁地打“Jessica”电话,则“Jessica”可以被识别为“Call J”的指代。
稍后通过参考附图说明指代的示例、基于域识别的指代。
在一个实施例中,当字符包括名词时,字符的指代可以是字符的共指。例如,当在第一用户的电子设备处从第二用户接收的消息中获得文本时,由第二用户使用的代词“I”可以是由第一用户使用的“you”的共指。例如,当在第一用户的电子设备处从第二用户接收说“send your files”的消息时,“my files”可以被识别为在第一用户的电子设备处对“your files”的共指。
在一个实施例中,当字符包括照应词时,照应词的先行词可以被识别为字符的指代。例如,当获得的文本是“call him”时,可以在电子设备处识别出照应词“him”。如果文本是在聊天室中与另一个用户一起获得的,则可以基于聊天室的会话历史来识别照应词“him”的先行词。先行词候选者的列表被识别,并且与列表中的照应词“him”最关联的先行词(例如具有最高非概率分数的先行词)可以被识别为字符的指代。
在操作328处,电子设备可以基于识别的指代来执行与识别的域相关的动作。在一个实施例中,指代可包括超链接。例如,当在第一用户的电子设备处从第二用户接收说“send the link again please which I shared last time”的消息时(如图14a中图示),第一用户的电子设备可将由第二用户传输给第一用户的超链接识别为“the link”的指代。当指代指示超链接时,基于指代执行的动作可以包括传输或共享超链接。相应地,当在第一用户的电子设备处将由第二用户传输给第一用户的超链接识别为“the link”的指代时,电子设备可以执行将超链接传输给第二用户、或者与第二用户共享超链接的动作。
在示例实施例中,指代可包括文件。例如,当在第一用户的电子设备处从第二用户接收说“send your files”的消息时(如图11b中图示),第一用户的电子设备可以将存储在第一用户的电子设备上的文件识别为“your files”的指代。当指代指示文件时,基于指代执行的动作可以包括文件的附加、传输或共享。相应地,当在第一用户的电子设备处将存储在第一用户的电子设备上的文件识别为“your files”的指代时,电子设备可执行将文件附加到给第二用户的邮件、将文件传输给第二用户或与第二用户共享文件的动作。
图4a是图示根据本公开的实施例的确定域和对象的方法的流程图。
图4b是图示根据本公开的实施例的使用训练的语言模型来确定域和对象的方法的流程图。
根据一个实施例,可以为针对由用户提供的输入确定的域确定域和对象。如图4a中所图示,在操作401处,在识别由用户提供的输入时,上下文推荐引擎102处理考虑各个词汇的训练的LM模型(如图4b中所图示)的开放语料(open corpus)/数据集。训练的LM模型可以包括域(诸如联系人应用、图库应用、消息传递应用、电子邮件应用、出租车相关应用等等)的数据集。与和词汇有关的出租车相关应用相关联的数据集的示例可以是但不限于fare(票价)、cab(出租车)、passenger(乘客)、driver(驾驶员)、trip(旅程)等等。
在操作402处,上下文推荐引擎102将训练的LM的数据集提供给字符嵌入层。字符嵌入层对接收的数据集执行字符处理,并且将处理的数据集提供给卷积层。卷积层执行输入与处理的数据集的卷积,并且将卷积的输出提供给高速公路层。高速公路层以包括数据集的浮点数的特征向量的形式表示处理的数据集。
在操作403处,上下文推荐引擎102将特征向量传递给包括LM数据结构和推理引擎的LM引擎(如图4b中图示)。LM引擎使用LSTM层和Softmax层处理特征向量并且生成表示与域相关的语法校正对象的隐藏状态。
在一个实施例中,可以在执行操作404的同时执行操作401至403。在操作404处,上下文推荐引擎102基于分析的输入上下文来针对由用户提供的输入确定相关域,并且导出学习的过滤器。例如,当由用户提供的输入是“David,book a cab and let us share its”时,基于分析的输入上下文,上下文推荐引擎102针对输入确定相关域,诸如但不限于联系人应用、图库应用、出租车相关应用等等。上下文推荐引擎102通过执行与相关域相关联的数据集的卷积来导出学习的过滤器。上下文推荐引擎102将卷积的输出传递给轮询(polling)层、关注层和Softmax层,并且针对相关过滤器导出域表示。域表示指示相关域的概率。例如,针对联系人应用、图库应用和出租车相关应用导出的概率可以分别为0.1、0.5和0.85。基于相关域的概率,上下文推荐引擎102将出租车相关应用确定为针对针对由用户提供的输入的域。
在操作405处,上下文推荐引擎102基于针对输入确定的域来估计语法相关单词上的概率分布。基于该概率分布,上下文推荐引擎102导出语法校正的输入和针对该输入的域相关对象。例如,上下文推荐引擎102可以将单词“fare”确定为针对由用户提供的输入的相关对象。另外,上下文推荐引擎102将针对域确定的对象提供给用户体验(UX)模块(如图4b中所图示),以用于将对象作为推荐提供给用户(如图4b中所图示)。UX模块包括显示单元104a/键盘和虚拟助手单元106。
图5a和5b图示根据本公开实施例的用于向用户提供推荐的示例用户界面。
根据实施例,通过使用域特定LM,域特定对象可以被推荐给用户。参考图5a,“CallJ”的语音命令可以被提供给在电子设备500上运行的虚拟助手510。电子设备500可以显示下部菜单栏502、上部菜单栏504和小键盘506。当识别用户的输入或语音命令时,上下文推荐引擎102可以使用域特定LM来识别针对输入的域。在本文的示例中,联系人应用可以被确定为针对输入520的域。同时,上下文推荐引擎102确定与针对输入520确定的域相关的对象。在本文的示例中,以J开头(其中联系人姓名的名、中名或姓可以以“J”开头)的联系人姓名530(存储在用户设备500上)被确定为针对输入520的对象。上下文推荐引擎102可以指示显示单元104显示确定的联系人姓名530作为对用户的推荐,以用于完成由用户提供的输入520。
参考图5b,输入522“share this”可以被提供给虚拟助手510。当识别由用户提供的输入522时,上下文推荐引擎102可以使用域特定LM将图库应用识别为针对输入522的域。此外,上下文推荐引擎102可以向用户推荐与域相关的对象532,诸如但不限于“picture(图片)”、“image(图像)”532等等,以用于完成输入522。上下文推荐引擎102还基于针对输入确定的域来生成NLG(523)。针对输入生成的NLG(523)可以是“Share this picture withJack via messaging application”。因而,可向用户提供统一且改进的打字体验。
图6a、6b、6c、6d、6e和6f图示根据本公开的实施例的用于向用户提供推荐的示例用户界面。
在一个实施例中,可以向用户推荐域特定对象以用于完成至少一个输入,该至少一个输入被提供给在电子设备600上运行的虚拟助手610。在一个实施例中,用户可以使用虚拟助手610连接到IoT设备。上下文推荐引擎102将家庭IoT集线器确定为正由用户使用域特定LM提供给虚拟助手610的输入的域。此外,上下文推荐引擎102预测域相关对象630,诸如但不限于“Dex station(Dex站)”、“Smart TV(智能TV)”、“Refrigerator(冰箱)”等等。预测的域相关对象可以作为用于完成输入的建议而被显示给用户。另外,用户可以在推荐的域相关对象上轻击以用于连接到对应IoT设备。
参考图6b,用户可使用虚拟助手610来打开文件、文档、PPT等等中的至少一个。上下文推荐引擎102使用域特定LM来将多媒体应用确定为针对正由用户提供给虚拟助手610的输入的域。并行地,上下文推荐引擎102使用域特定LM来确定域相关对象632,诸如但不限于的“file(文件)”、“document(文档)”、“PPT”等等。可将域相关对象632作为输入推荐显示给用户。另外,用户可在对象632’document’/’file’/’PPT’上轻击以解密最近下载或打开的文档/文件/PPT。此外,当对象’document’/’file’/’PPT’被超链接时,用户可在对象’document’/’file’/’PPT’上轻击以打开相关文档/文件/PPT。
参考图6c,用户可使用虚拟助手610来回复消息。上下文推荐引擎102将消息传递应用确定为针对正由用户提供给虚拟助手610的输入624的域。上下文推荐引擎102还确定域相关对象,诸如但不限于’X’s Msg(X的Msg)’、’Y’s mail(Y的邮件)’、’Msg App’等等。可将域相关对象作为键入建议显示给用户。另外,用户可在任何域相关对象上轻击以解密要回复的对象。
参考图6d,用户可以使用虚拟助手610来执行与时钟或日历域相关的动作。上下文推荐引擎102使用域特定LM来将时钟/日历应用确定为针对正由用户提供给虚拟助手610的输入624的域。上下文推荐引擎102预测对象636,诸如但不限于与域相关的’alarm(警报)’、’remainder(剩余时间)’、’goals(目标)’等等,并且将这样的对象636显示为对用户的推荐。预测对象636可以是超链接的。用户可以在对象636上轻击以打开对应的应用。
参考图6e,用户可以使用虚拟助手610并提供语音命令作为“Book(预订)”628。上下文推荐引擎102使用域特定LM来针对输入628确定多个域。针对输入628确定的多个域可以是但不限于出租车相关应用、飞行相关应用、电影预订相关应用、医生预约预订相关应用等等。并行地,上下文推荐引擎102使用域特定LM来确定与多个域相关的对象,并且将确定的对象作为推荐显示给用户。针对多个域确定的对象638可以是但不限于’cab/fligh(出租车/飞行)’、’appointment(预约)’、’movie tickets(电影票)’等等。另外,用户可以在推荐的对象上轻击以执行与那些对象相关联的预期动作。
参考图6f,用户可以使用虚拟助手610并提供语音命令作为“Play(播放)”。上下文推荐引擎102使用域特定LM来针对输入629确定多个域。针对输入确定的多个域可以是但不限于音频/音乐应用、视频应用等等。并行地,上下文推荐引擎102使用域特定LM来确定与多个域相关的对象639,并且将确定的对象639作为推荐显示给用户。针对多个域确定的对象639可以是但不限于’movie(电影)’、’song(歌曲)’和’video(视频)’等等。另外,用户可以在推荐对象639上轻击以下载相关的电影/歌曲/视频。
图7a是图示根据本公开的实施例的确定共指的方法的流程图。
图7b是图示根据本公开的实施例的使用训练的语言模型来确定共指的方法的流程图。
参考图7a,在操作701处,上下文推荐引擎102访问本地数据库118以获得用户输入历史,并且以浮点数的特征向量的形式表示用户输入历史。
在操作702处,上下文推荐引擎102通过LM引擎的Bi-LSTM层和Softmax层在向前和向后两个方向上传递该特征向量。LM引擎包括LM数据结构和推理引擎,如图7b中所图示。
在操作703A处,上下文推荐引擎102确定用户输入历史中存在的先行词列表。上下文推荐引擎102将确定的先行词列表添加到先行词数据库。在本文的示例中,上下文推荐引擎102针对用户输入历史使用NLP技术而将诸如David和cab之类的名词短语确定为先行词。
在操作703B处,上下文推荐引擎102将LM引擎的Bi-LSTM层和Softmax层的输出、针对输入识别的域以及先行词列表馈入到共指引擎(如图7b中图示)。共指引擎的SLACK引擎基于针对输入确定的域而将非概率分数计算到先行词列表中。例如,为“David”和“cab”计算的分数分别可以是5.1和9.3。上下文推荐引擎102可以将先行词“cab”确定为针对为输入确定的域的共指,并且提供对于共指“cab”的视觉提示。字符“its(它的)”的共指“cab”可以是字符“its”的指代。字符“its”的指代可以是与“cab”相关的单词,例如fare、seats、distance,但不限于此。可以将共指引擎的输出(共指和视觉提示)提供给包括显示单元104/键盘和虚拟助手单元106(如图7b中图示)的UX模块。可以将视觉提示作为推荐显示给用户。用户可以在视觉提示上执行手势(轻击动作)以访问相关的出租车相关动作。
在操作704,在输入中存在先行词和照应词的情况下,上下文推荐引擎102执行照应词解析,以将输入中存在的照应词与先行词列表的具有最高分数的先行词相关。例如,上下文推荐引擎102将“its”确定为输入中存在的照应词。上下文推荐引擎102将先行词“cab”与照应词“its”相关,因为针对输入确定的域是出租车相关应用。上下文推荐引擎102将链接的照应词“its”与先行词“cab”确定为针对为输入确定的域的共指。在操作705处,上下文推荐引擎102将照应词“its”添加到照应词数据库中。
图8是图示根据本公开的实施例的通过解析共指来向用户提供推荐的方法的流程图。
在操作801处,上下文推荐引擎102处理用户输入历史并确定可用于针对输入确定的域的对象。例如,诸如“fare”、“cab”、“passenger”、“drvier”、“trip”等等之类的对象可以是可用于出租车相关应用(域)的对象。诸如“pics”、“HDR”、“filters”、“videos”等等之类的对象可以是可用于多媒体应用(域)的对象。上下文推荐引擎102用可用于包括文本实体的域的对象来填充先行词列表。例如,上下文推荐引擎102可以用对象“fare”填充先行词“cab”,因为对象“fare”具有最高分数。上下文推荐引擎102针对对象或对象的功能确定可能动作,并且将先行词列表与可能动作相关。动作可以包括针对文本实体的空动作。此外,上下文推荐引擎102为域特定LM计算偏差/权重以允许预测/对象中的可能动作。上下文推荐引擎102将针对先行词列表填充的对象和对应动作以及针对域特定LM的关联偏差添加到对象-动作列表数据库。例如,上下文推荐引擎102用对象“fare”和对应动作“split fare(拆分票价)”(示出票价)填充先行词“cab”,并且将针对先行词“fare”确定的对象-动作添加到对象-动作列表数据库中。
在操作802处,上下文推荐引擎102基于针对输入确定的域、共指解析和偏置的(biased)域LM来解析共指。上下文推荐引擎102通过访问对象-动作数据库列表来解析共指,以为先行词列表的前K个先行词加载对象、对应动作以及针对域特定LM的关联偏差。在本文的示例中,共指可以是与先行词“cab”链接的照应词“its”。上下文推荐引擎102通过检查对象-动作列表数据库来解析共指,以为先行词“cab”确定对象和对应动作。在一个实施例中,可以将“fare”确定为对象,可以将“split fare”确定为与域相关的动作。上下文推荐引擎102向用户推荐对象“fare”以用于完成输入。当用户在对象“fare”上执行任何手势时,可以向用户示出票价。
当用户提供输入“Heat dinner and set it to”时,上下文推荐引擎102将家庭集线器IoT确定为针对该输入的域。此外,上下文推荐引擎102基于针对输入识别的域以及用户输入历史而将“smart oven(智能烤箱)”确定为针对输入的先行词。上下文推荐引擎102将先行词“smart oven”与照应词“it”相关联,并且将检测的照应词“it”与先行词“smartoven”一起视为共指。上下文推荐引擎102通过使用对象-动作数据库确定对象和针对共指的对应动作来解析共指。在本文的示例中,可以针对共指确定对象“defrost(除霜)”,并且将对象“defrost”作为推荐显示该用户。
图9是根据本公开的实施例的用于说明提供的推荐与现有系统提供的推荐之间的差异的示例表格。
根据一个实施例,可以基于针对输入确定的域、共指解析和偏置的域特定LM来确定推荐。在示例表格中图示由现有系统针对正由用户键入的不同句子提供的推荐。然而,由现有系统提供的推荐可以是通用和默认的预测,其不针对终端用户的偏好。
相反,由上下文推荐引擎102提供的推荐基于针对输入确定的域、执行的共指解析和偏置的域特定LM中的至少一个。根据一个实施例,可以向用户提供统一和改进的打字体验。
图10a、10b和10c图示根据本公开的实施例的用于向用户提供上下文链接作为推荐的示例用户界面。
参考图10a,可以在电子设备1000的消息传递应用1010处接收到关于预定会议的消息1020,并且用户可以在电子设备1000中打入“I will send you”1040。上下文推荐引擎102使用域特定LM将多媒体应用识别为针对输入1040的域,并且为输入1040确定域相关对象1030,诸如“the files”、“the link”等等。上下文推荐引擎102指示显示单元104在虚拟键盘上显示域相关对象1030作为向用户的推荐以用于完成输入1040。此外,用户可以选择对象“the link”。
参考图10b,当确定用户在对象“the link”上轻击时,上下文推荐引擎102可以基于针对输入确定的域以及用户输入历史来将“the link”确定为先行词。具体地,上下文推荐引擎102确定由“the link”指示的超链接1051,并且提供视觉提示(对对象“the link”加下划线)以访问“the link”(1051)。当用户在对象“the link”1031上轻击时,上下文推荐引擎102解析共指。为了解析共指,上下文推荐引擎102检查对象-动作数据库列表,并且将与预定会议相关的上下文链接确定为针对先行词“the link”的对象,并且将上下文链接1050显示为针对先行词“the link”的动作。可以将上下文链接作为推荐显示给用户。本文的上下文链接可以指代存储在本地设备、服务器、云等等中的至少一个上的任何与会议相关的链接。
参考图10c,如果用户选择推荐的上下文链接中的任何一个,则上下文推荐引擎102将所选的链接附加到消息1044以用于发送给接收者。
图11a和11b图示根据本公开的实施例的用于向用户提供文件作为推荐的示例用户界面。
参考图11a,电子设备1100可以接收包括附件链接1024的消息1022。此外,消息1022可以包括字符“your files”1023,“your files”1023的指代可以包括存储在电子设备1100上的文件。字符1023的共指可以是字符1023的指代,上下文推荐引擎102将“yourfiles 1023”确定为共指,并且针对“你的文件1023”提供视觉提示以访问指代的文件1150。例如,视觉提示可以包括在消息1122中对“your files”加下划线。
如图11b中所图示,如果用户在消息1122中选择“your files”,则上下文推荐引擎102访问对象-动作数据库列表,并且针对与预定会议相关的先行词“files”确定文件1150。上下文推荐引擎102推荐与预定会议相关的文件1150,并且使得共享选项1151能够将用户与其他人共享文件。与会议相关的文件1150可以呈现在用户的设备1100上。
图12a和图12b图示根据本公开的实施例的用于向用户提供图像作为推荐的示例用户界面。
根据一个实施例,可以基于正被提供给虚拟助手1120的语音命令1120而向用户推荐图片或图像。参考图12a,用户可以将语音命令作为“share this picture”1220提供给虚拟助手单元106。当识别由用户提供的输入1220时,上下文推荐引擎102将联系人应用确定为针对输入的域,并且使用域特定LM模型将域相关对象确定为“with Jack”(操作2)。上下文推荐引擎102指示显示单元104在显示屏幕上显示的虚拟键盘上将对象“with Jack”显示为针对输入的打字建议。此外,上下文推荐单元102可以将NLG 1221生成作为“share thispicture with Jack via Msg App”。另外,上下文推荐单元102理解生成的NLG 1221并解析共指(解析与先行词“picture”链接的照应词“这this”),以针对输入的共指“thispicture”提供视觉提示。可以为用户提供视觉提示(带下划线的字符串(“thispicture”)),以从图库应用访问图像或图片。
参考图12b,如果用户对视觉提示1222执行任何动作(轻击动作),则上下文推荐引擎102访问对象-动作数据库,并且针对先行词“picture”确定对象(与Jack相关联的图片)和动作(在显示屏上显示与Jack相关联的图片)。上下文推荐引擎102从图库应用访问与Jack相关联的图片1223,并且作为推荐提供给用户(操作5)。因而,用户可以在访问的图片1223之中选择至少一个图片以用于与Jack共享。
图13图示根据本公开的实施例的用于在会话中向用户提供上下文链接作为推荐的示例用户界面。
电子设备1300可以在消息传递应用1310处从另一个用户接收消息1320,该消息传递说重新发送链接。当确定用户与消息传递应用的交互时,上下文推荐引擎102理解接收的消息(NLG),并且将检测的先行词“the link”与照应词“that day”链接起来。此外,上下文推荐引擎102提供对于单词“the link”的视觉提示1321以访问链接的内容。当用户在视觉提示1321上执行手势时,上下文推荐引擎102访问对象-动作列表数据库并针对先行词“thelink”确定对象和动作。针对先行词链接确定的对象可以是视频链接,并且该动作可以是启用自动滚动功能。例如,基于对“the link”1321的选择,电子设备1300的屏幕可以自动滚动到聊天室中共享对应视频链接的位置。上下文推荐引擎102启用电子设备100中存在的自动滚动功能,该功能自动滚动用户会话并将用户带到包含所需视频链接的各个位置。因而,用户可以通过在视觉提示1321上轻击来找到先前共享的视频链接。另外,上下文推荐引擎通过在消息输入区域1342中生成NLG来将链接附加到消息,并且自动与另一个用户共享包括该附加的消息。
图14a、14b和14c图示根据本公开的实施例的用于在会话中向用户提供上下文链接作为与另一个用户共享上下文链接的推荐的示例用户界面。
参考图14a、14b和14c,电子设备1400可以通过消息传递应用1410接收消息1420,该消息1420说重新发送由另一个用户上次共享的先前链接。当确定与消息传递应用1410的用户交互时,上下文推荐引擎102理解以NLG形式的接收的消息1420,将先行词“the link”与照应词“last time”(共指)链接,并且为先行词“链接”提供视觉提示1421。
当用户如图14b中所图示在视觉提示1421上执行任何手势时,上下文推荐引擎102通过识别由用户上次从另一个用户接收的链接1450来解析共指。此外,上下文推荐引擎102向用户显示识别的链接1450。
当用户选择显示的链接1450的一个链接1451时,上下文推荐引擎102将所选的链接附加到消息1430,以用于与另一个用户共享,如图14c中图示。
图15a、15b和15c图示根据本公开的实施例的用于在会话中向用户提供图像作为推荐的示例用户界面。
根据实施例,可基于共指解析向用户推荐图像。参考图15a,电子设备1500可通过消息传递应用1510接收请求发送上次共享的图片的消息。
参考图15a,上下文推荐引擎102理解消息,将先行词“the photos”与照应词“lastweek”(共指)链接/相互关联,并且提供视觉提示1521以访问相关照片。视觉可以由带下划线的短语“photos that you sent last week”指示。当用户在视觉提示1521上执行任何手势时,上下文推荐引擎102基于针对输入识别的域、共指解析和偏置的域特定LM模型来解析共指,并且识别与另一个用户共享的相关照片1550。上下文推荐引擎102指示显示单元104向用户显示识别的照片1550作为推荐。
参考图15b,当用户选择至少一个显示的照片时,上下文推荐引擎102提供选项1551以与另一个用户共享可以提供给用户的照片。参考图15c,基于对选项1551的选择,可以与另一个用户共享图片1560。
图16a、16b和16c图示根据本公开的实施例的用于在会话中向用户提供联系人卡作为推荐的示例用户界面。
根据一实施例,可基于共指解析来将联系人卡推荐给用户。参考图16a,电子设备1600可以接收消息1620以呼叫具有最新类别更新文件的某人。
在图16b中,上下文推荐引擎102分析消息,将先行词“John”与照应词“him”(共指)链接,并且提供视觉提示1621以访问John的联系人号码。视觉提示可以通过带下划线的单词“call him”指示。当用户在视觉提示1621上执行任何手势时,上下文推荐引擎102基于针对输入识别的域、共指解析和偏置的域LM模型来解析共指,并且识别“John”的联系人号码。此外,如图16b中所图示,上下文推荐引擎102指示显示单元104向用户显示John的联系人号码/联系人卡1650作为推荐。另外,上下文推荐引擎102可以为联系人卡1650提供呼叫选项和共享选项1651。因而,用户可以快速呼叫或与另一个用户共享联系人卡。
参考16c,当用户选择共享选项1651时,上下文推荐引擎102将联系人卡1652附加到消息。因而,用户可以与另一个用户快速共享联系人卡。
图17a、17b、17c和17d图示根据本公开的实施例的用于向用户提供上下文推荐的示例用户界面。
在一个实施例中,基于域特定语言模型预测和执行的共指解析,可以向用户提供上下文推荐。
参考图17a,用户可以经由电子设备1700上运行的虚拟助手1710预订出租车。上下文推荐引擎102分析正由用户提供的输入1720,并且使用域特定LM来向用户推荐位置相关对象1730(诸如但不限于“work(工作)”、“airport(机场)”、“HSR”等等)以用于完成输入1720。上下文推荐引擎基于由用户提供的先前输入而将“work”指代先行词构建为用户工作位置,并且提供位置相关对象作为共指。当用户在推荐的位置相关对象上轻击时,上下文推荐引擎102解析共指并且允许用户查看从他的家到达该位置(用户在其上轻击的位置)所花费的时间。
参考图17b,用户可以使用虚拟助手1710来键入文本。上下文推荐引擎102分析正由用户提供给虚拟助手1710的输入,并且使用域特定LM来推荐对象1723,诸如但不限于“a”、“it”、“one”等等。此外,上下文推荐引擎102可以使用来自针对输入识别的域的提示,并且提供相关文档作为针对照应词“it”的共指。另外,基于识别的共指(先行词“document”),上下文推荐引擎102将NLG 1723生成为“Email Jack this document viaEmail App”。当用户在共指(“this document”)上执行任何手势时,上下文推荐引擎102通过将文档附加到电子邮件以用于与Jack共享来解析共指。
参考图17c,用户可以使用虚拟助手1710来创建今天的计划。上下文推荐引擎102将日历应用确定为针对正由用户提供给虚拟助手1710的输入1724的域,并且用域特定LM向用户推荐日历相关对象1734,诸如但不限于“workout(锻炼)”、“dine(进餐)”、“go(去)”等等。此外,上下文推荐引擎102基于从用户接收的先前输入来将日历相关对象构建为先行词。当用户在推荐的日历相关对象上执行任何手势时,上下文推荐引擎102通过向用户建议与日历相关对象相关的动作来解析共指。例如,用户可以在日历相关对象“workout”上轻击以查看计划的锻炼。用户可以在日历相关对象“dine”上轻击以将计划添加到外出进餐。
参考图17d,用户可以使用虚拟助手1710来安装应用“TA”。上下文推荐引擎102将应用商店确定为针对输入1726的域,并且使用域特定LM来推荐应用商店相关对象1736,诸如但不限于“a”、“it”、“messaging application”等等。此外,上下文推荐引擎102分析从用户接收的先前输入和来自针对输入识别的域的提示,将旅行应用“TA”确定为先行词。基于该先行词,上下文推荐引擎102将NLG生成作为“Install the application‘TA’”。
图18a、18b和18c图示根据本公开的实施例的包括视觉提示的示例用户界面。
在一个实施例中,电子设备1800可以基于共指解析向用户显示视觉提示。参考图18a,用户从另一个用户接收消息1820,并且此外视觉提示可以被提供给接收的消息1820中的先行词“link”。当用户在先行词“link”上执行手势(轻击)时,上下文推荐引擎102可以自动滚动到共享链接的位置。上下文推荐引擎102还可以向弹出窗口提供先前共享的链接的列表。
参考图18b,用户可以从另一个用户接收消息1822,并且视觉提示可以被提供给短语“talk to him”。当用户在短语“talk to him”上执行手势(轻击动作)时,上下文推荐引擎102理解照应词“him”,用相关联系人解析照应词“him”,并且将相关联系人信息提供给用户。另外,上下文推荐引擎102将对相关联系人信息要采取的动作(呼叫/共享)作为建议提供给用户。
参考图18c,用户可以从另一个用户接收消息1824,并且视觉提示被提供给短语“shared it with you last week”。当用户在视觉提示上执行手势(轻击动作)时,上下文推荐引擎102用联系人、视频、音频、链接等等中的至少一个来解析照应词“it”,并且提供识别的联系人/视频/音频/链接中的至少一个作为向用户的推荐。上下文推荐引擎102将对相关推荐要采取的动作(呼叫/共享联系人,播放/下载/打开视频/音频)作为建议提供给用户。
图19是用于说明根据本公开的实施例的控制物联网(IoT)用户设备的方法的图。
在一个实施例中,用户可以使用他的电子设备(诸如智能手机、平板电脑、可穿戴设备、家庭集线器、家庭桥接器)来控制IoT设备。参考图19,用户可以键入请求其电话与平板电脑和电视连接的消息,并且可以从电话接收响应消息。在这里,用户可以使用自然语言与IoT设备通信。IoT设备可以经由Wi-Fi Direct相互连接。在与IoT设备连接期间,可以在IoT设备的响应消息中显示取消连接的选项。
图20是用于说明根据本公开实施例的执行动作和添加规则的方法的图。
在一个实施例中,设备可以互相连接,打开或关闭。基于用户命令或自然语言会话,可使IoT设备执行操作,或者生成执行该操作的规则。可以自动执行动作的执行和规则的生成。
图21是用于说明根据本公开的实施例执行的动作的图。
在一实施例中,基于设备的状态,可以生成规则或可以执行动作。例如,当用户的设备连接到车辆,并且在他家中烤箱处于打开时,用户可能需要找到他的设备,识别要执行的动作。在一个实施例中,当通过模型获悉当用户离开他家时烤箱被关闭时,当用户不在他家中或者他的设备连接到他的汽车上时,该模型可以使烤箱关闭。此外,基于用户是调整设置还是改变一系列动作,可以确定用户是否对动作的自动执行和自动规则生成感到满意。
图22是用于说明根据本公开的实施例的基于用户的例程提供预测的方法的图。
作为初始命令,可以将“When I WAKE UP,OPEN WINDOW BLINDS”键入到电子设备。在一个实施例中,可以基于“WAKE UP”调整警报或设备状态。可以基于“OPEN”执行“打开”、“启用”、“接通”的操作。可以基于“WINDOW BLINDS”执行对百叶窗的操作。即,可以响应于用户醒来而打开百叶窗。在一个实施例中,可以通过监视用户的行为模式来自动执行用户可能喜欢的一系列动作。例如,可以响应于用户醒来而加热水,而无需用户的请求。用户可以让该动作继续或停止该动作,这可以被反映到学习模型以分析用户的偏好。
图23是用于说明根据本公开的实施例的使得另一个用户能够控制用户的用户设备的方法的图。
在一个实施例中,用户可以允许未识别的用户与该用户的一个或多个设备通信。例如,当用户的家中有访客(未识别的用户)时,未识别的用户可能尝试与用户的设备通信。用户可以将未识别的用户添加到临时组,以允许未识别的用户与用户的设备通信。用户可以预定一个时间段,在该时间段中,未识别的用户或设备可以与用户或用户的设备通信。用户可以手动去除未识别的用户。
图24是用于说明根据本公开的实施例的当用户不在时控制用户设备的方法的图。
例如,当用户不在家的同时,用户设备可以连接到用户的汽车。一个或多个连接的设备可以向用户设备提供其状态。用户设备还可基于接收的状态而采取一个或多个动作。例如,用户可以关闭其所有设备。
图25是用于说明根据本公开的实施例的基于调度表控制用户设备的方法的图。
在一个实施例中,用户设备可以根据预先确定的调度表与一个或多个设备通信。用户可以配置用于将特定指令传送到一个或多个设备的调度表。例如,可以在用户的设备(智能手表)处从Geyser咖啡机接收打开通知。用户可以访问通知并取消通知以关掉Geyser。通信记录可能作为消息日志的一部分可见。
图26是用于说明根据本公开的实施例的基于用户的位置来控制用户设备的方法的图。
在一个实施例中,当设备发现用户正在MG道路上驾驶时,设备可以确定是否适合于处理用户的请求。例如,当用户请求应当在8:30接通Geyser咖啡机,但他预期在9:30到达家时,设备可以通知用户。
图27是用于说明根据本公开的实施例的从会话添加规则的方法的图。
在一个实施例中,该设备可以使得用户能够从会话中添加规则,并且该设备将来可以使用该规则。规则可以被自动创建,或者可以由用户添加或编辑。
图28是用于说明根据本公开的实施例调整用户设备的设置的方法的图。
在一个实施例中,用户可以使用诸如但不限于Wi-Fi Direct、蓝牙等等之类的通信手段来访问配置。用户可以选择配置,并且可以编辑/控制配置。可以将更新的配置发送到相关设备,并且可以相应地更新相关设备。
图29是用于说明根据本公开实施例的调整多个用户的权限的方法的图。
根据实施例,可以将不同的权限给予多个用户。
图30是用于说明根据本公开的实施例的用于调用用户设备的功能的用户交互的图。
参考图30,用户可以通过在IoT设备的配置映像(profile image)上长按来导航控制IoT设备。
图31是用于说明根据本公开实施例的用于选择用户设备的用户交互的图。
参考图31,用户可以基于用户在IoT设备的配置映像上的轻击或者轻扫IoT设备的消息来选择某个IoT设备。可以从IoT环境中去除所选设备,或者可以在其他设备之中调整其优先级。
图32是用于说明根据本公开的实施例的预测性动作的提供的图。
在一实施例中,用户设备可基于用户的例程或他的行为模式来提议用户可能喜欢的IoT设备设置。例如,当传感器检测运动时,传感器可以询问用户是否希望用检测到的运动来通知他(3200)。例如,可以向用户询问是否在夜间打开草坪灯(3202)。例如,可以向用户询问是否在早上打开百叶窗(3204)。
可以通过在至少一个硬件设备上运行并执行网络管理功能以控制元件的至少一个软件程序来实现本文公开的各种实施例。图1、图2和图3a中所示的元件可以是硬件设备、或者硬件设备和软件模块的组合中的至少一个。
各种实施例描述用于向用户提供上下文推荐的方法和系统。因此,应理解:当程序在服务器或移动设备或任何合适的可编程设备上运行时,保护的范围被扩展到这样的程序,并且除了其中具有消息的计算机可读装置之外,这样的计算机可读存储装置还包含用于实现该方法的一个或多个操作的程序代码装置。在优选实施例中,该方法通过例如用超高速集成电路硬件描述语言(VHDL)、其它编程语言编写的软件程序或与该软件程序一起来实现,或者由在至少一个硬件设备上执行的一个或多个VHDL或几个软件模块来实现。硬件设备可以是可以被编程的任何种类的便携式设备。该设备还可以包括装置,该装置可以是例如硬件装置,例如像专用集成电路(ASIC),或者硬件和软件装置的组合,例如ASIC和现场可编程门阵列(FPGA),或者其中装有软件模块的至少一个微处理器和至少一个存储器。本文描述的方法实施例可以部分地以硬件并且部分地以软件来实现。替代地,本公开可以在不同的硬件设备上实现,例如,使用多个CPU。
特定实施例的前述描述将如此充分地揭示本文的各种实施例的一般性质,以至于其他人可以通过应用当前的知识而容易地修改和/或适应于这样的特定实施例的各种应用,而不脱离通用概念,并且因此,这样的适应和修改应当旨在理解为在所公开的实施例的等同形式的含义和范围之内。应理解:本文采用的措词或术语是出于描述而非限制的目的。因此,尽管已经根据至少一个实施例描述了本文的实施例,但是本领域技术人员将认识到:可以在如本文所描述的各种实施例的精神和范围内进行修改来实践本文的实施例。
流程图中的各种动作、行动、块、操作等等可以以所呈现的顺序、以不同的顺序或同时执行。此外,在一些实施例中,动作、行动、块、操作等等中的一些可以被省略、添加、修改、跳过等等,而不脱离本公开的范围。
可以使用在至少一个硬件设备上运行并执行网络管理功能以控制元件的至少一个软件程序来实现本文公开的各种实施例。
虽然已经参照本公开的各种实施例示出和描述了本公开,但是本领域技术人员将理解:可以在其中进行形式和细节上的各种改变,而不脱离如由所附权利要求书及其等同物定义所限定的本公开的精神和范围。
Claims (15)
1.一种电子设备,包括:
存储器,其存储指令;和
至少一个处理器,被配置为执行所述指令以:
获得包含字符的文本,
基于语言模型来识别与所述文本对应的域,
基于所述域来识别所述字符的指代,以及
基于所述指代来执行与所述域相关的动作。
2.根据权利要求1所述的电子设备,
其中,所述域是可由所述至少一个处理器执行的应用,以及
其中,所述动作是所述应用的功能。
3.根据权利要求1所述的电子设备,其中,在多个域当中,所识别出的域与所述字符最相关。
4.根据权利要求1所述的电子设备,其中,所述语言模型基于与所述域相关的所述动作、所述字符的所述指代和所识别出的域来训练。
5.根据权利要求1所述的电子设备,其中,所述至少一个处理器还被配置为执行所述指令以:
显示所述指代的多个候选对象,
接收对在所显示的多个候选对象当中的与所述指代对应的候选对象的选择,以及
基于对所述候选对象的所述选择来识别所述指代。
6.根据权利要求1所述的电子设备,其中,所述至少一个处理器还被配置为执行所述指令以显示包含所述文本和所述指代的自动完成的文本。
7.根据权利要求1所述的电子设备,其中,所述至少一个处理器还被配置为执行所述指令以高亮和显示所述指代。
8.根据权利要求1所述的电子设备,
其中,所述域是在所述电子设备的前景上运行的应用,
其中,所述文本通过所述应用来获得,以及
其中,所述动作是所述应用的功能。
9.根据权利要求1所述的电子设备,其中,所述至少一个处理器还被配置为执行所述指令以通过从另一用户接收消息来从所述消息获得所述文本。
10.根据权利要求1所述的电子设备,其中,基于对所述指代的选择,屏幕被滚动到由所述指代指示的位置。
11.根据权利要求1所述的电子设备,
其中,所述指代包括超链接或文件中的至少一个,
其中,所述动作包括所述超链接的传输或所述文件的附加中的至少一个。
12.根据权利要求1所述的电子设备,
其中,所述字符包括名词或动词中的至少一个,以及
其中,所述指代是所述名词或针对所述动词的对象的共指中的至少一个。
13.根据权利要求1所述的电子设备,
其中,所述字符包括照应词,以及
其中,所述至少一个处理器还被配置为执行所述指令以将所述照应词的先行词识别为所述指代。
14.一种方法,包括:
获得包含字符的文本;
基于语言模型来识别与所述文本对应的域;
基于所述域来识别所述字符的指代;以及
基于所述指代来执行与所述域相关的动作。
15.一种包括指令的计算机程序,所述指令在由电子设备的至少一个处理器执行时使所述电子设备:
获得包含字符的文本;
基于语言模型来识别与所述文本对应的域;
基于所述域来识别所述字符的指代;以及
基于所述指代来执行与所述域相关的动作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201841016587 | 2018-05-02 | ||
IN201841016587 | 2018-05-02 | ||
PCT/KR2019/005287 WO2019212267A1 (en) | 2018-05-02 | 2019-05-02 | Contextual recommendation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112055857A true CN112055857A (zh) | 2020-12-08 |
Family
ID=68384504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980029748.5A Pending CN112055857A (zh) | 2018-05-02 | 2019-05-02 | 上下文推荐 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11256752B2 (zh) |
EP (1) | EP3753016A4 (zh) |
KR (1) | KR20190126734A (zh) |
CN (1) | CN112055857A (zh) |
WO (1) | WO2019212267A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11442999B2 (en) * | 2018-07-24 | 2022-09-13 | Microsoft Technology Licensing Llc | Personalized whole search page organization and relevance |
US10878005B2 (en) * | 2018-10-15 | 2020-12-29 | International Business Machines Corporation | Context aware document advising |
US11176935B2 (en) * | 2019-02-15 | 2021-11-16 | Wipro Limited | System and method for controlling devices through voice interaction |
US11025743B2 (en) * | 2019-04-30 | 2021-06-01 | Slack Technologies, Inc. | Systems and methods for initiating processing actions utilizing automatically generated data of a group-based communication system |
WO2021012263A1 (en) * | 2019-07-25 | 2021-01-28 | Baidu.Com Times Technology (Beijing) Co., Ltd. | Systems and methods for end-to-end deep reinforcement learning based coreference resolution |
CN110930985B (zh) * | 2019-12-05 | 2024-02-06 | 携程计算机技术(上海)有限公司 | 电话语音识别模型、方法、系统、设备及介质 |
US20230394241A1 (en) * | 2020-10-15 | 2023-12-07 | The Regents Of The University Of California | System and method for bridging graphics and linguistics |
US11790173B2 (en) | 2020-10-22 | 2023-10-17 | Google Llc | Recommending action(s) based on entity or entity type |
CN112231485B (zh) * | 2020-12-14 | 2021-03-26 | 平安科技(深圳)有限公司 | 文本推荐方法、装置、计算机设备及存储介质 |
WO2024058597A1 (ko) * | 2022-09-16 | 2024-03-21 | 삼성전자주식회사 | 전자 장치 및 사용자 발화 처리 방법 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
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 |
JP5475795B2 (ja) | 2008-11-05 | 2014-04-16 | グーグル・インコーポレーテッド | カスタム言語モデル |
US9858925B2 (en) * | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US9754016B1 (en) * | 2010-12-29 | 2017-09-05 | Amazon Technologies, Inc. | Dynamic content discoverability |
US8849931B2 (en) * | 2011-03-15 | 2014-09-30 | Idt Messaging, Llc | Linking context-based information to text messages |
US9185066B2 (en) | 2011-09-01 | 2015-11-10 | Sony Corporation | Enabling wireless device communication |
US8762156B2 (en) * | 2011-09-28 | 2014-06-24 | Apple Inc. | Speech recognition repair using contextual information |
MX2012011426A (es) | 2011-09-30 | 2013-04-01 | Apple Inc | Utilizar informacion de contexto para facilitar el procesamiento de comandos en un asistente virtual. |
US9672818B2 (en) | 2013-04-18 | 2017-06-06 | Nuance Communications, Inc. | Updating population language models based on changes made by user clusters |
US20150309984A1 (en) | 2014-04-25 | 2015-10-29 | Nuance Communications, Inc. | Learning language models from scratch based on crowd-sourced user text input |
US9462112B2 (en) * | 2014-06-19 | 2016-10-04 | Microsoft Technology Licensing, Llc | Use of a digital assistant in communications |
JP2018512090A (ja) * | 2015-02-27 | 2018-05-10 | キーポイント テクノロジーズ インディア プライベート リミテッド | 文脈発見技術 |
US9959328B2 (en) | 2015-06-30 | 2018-05-01 | Microsoft Technology Licensing, Llc | Analysis of user text |
US10262654B2 (en) | 2015-09-24 | 2019-04-16 | Microsoft Technology Licensing, Llc | Detecting actionable items in a conversation among participants |
KR102462365B1 (ko) | 2016-02-29 | 2022-11-04 | 삼성전자주식회사 | 사용자 데모그래픽 정보 및 콘텍스트 정보에 기초한 텍스트 입력 예측 방법 및 장치 |
US10140017B2 (en) * | 2016-04-20 | 2018-11-27 | Google Llc | Graphical keyboard application with integrated search |
-
2019
- 2019-05-02 WO PCT/KR2019/005287 patent/WO2019212267A1/en unknown
- 2019-05-02 KR KR1020190051820A patent/KR20190126734A/ko unknown
- 2019-05-02 CN CN201980029748.5A patent/CN112055857A/zh active Pending
- 2019-05-02 US US16/401,619 patent/US11256752B2/en active Active
- 2019-05-02 EP EP19795894.5A patent/EP3753016A4/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3753016A1 (en) | 2020-12-23 |
WO2019212267A1 (en) | 2019-11-07 |
KR20190126734A (ko) | 2019-11-12 |
US11256752B2 (en) | 2022-02-22 |
EP3753016A4 (en) | 2021-05-05 |
US20190340202A1 (en) | 2019-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11256752B2 (en) | Contextual recommendation | |
US11948563B1 (en) | Conversation summarization during user-control task execution for assistant systems | |
US11062270B2 (en) | Generating enriched action items | |
US11868732B2 (en) | System for minimizing repetition in intelligent virtual assistant conversations | |
US11887594B2 (en) | Proactive incorporation of unsolicited content into human-to-computer dialogs | |
KR102357685B1 (ko) | 병렬 처리용 하이브리드 클라이언트/서버 아키텍처 | |
US20160224524A1 (en) | User generated short phrases for auto-filling, automatically collected during normal text use | |
US20200012721A1 (en) | Conversational agent | |
EP3513324B1 (en) | Computerized natural language query intent dispatching | |
KR102364400B1 (ko) | 다수의 코퍼스들로부터 응답 정보 획득 | |
US20160170710A1 (en) | Method and apparatus for processing voice input | |
WO2015183699A1 (en) | Predictive messaging method | |
CN113168305A (zh) | 通过预测用户响应来加快与数字助理的交互 | |
KR101882293B1 (ko) | 문자 입력 및 컨텐츠 추천을 위한 통합 키보드 | |
KR20180120427A (ko) | 지능형 에이전트 관리 방법 및 장치 | |
US20150286486A1 (en) | System and method of guiding a user in utilizing functions and features of a computer-based device | |
US11545144B2 (en) | System and method supporting context-specific language model | |
CN110447026B (zh) | 用于在新的域中提供自动化助理的开发人员平台 | |
US20210304024A1 (en) | Managing domain competence during a computing session | |
TW202240461A (zh) | 使用輔助系統的語音和手勢輸入之文字編輯 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |