CN114041145A - 用于生成和提供建议动作的系统和方法 - Google Patents

用于生成和提供建议动作的系统和方法 Download PDF

Info

Publication number
CN114041145A
CN114041145A CN201980098094.1A CN201980098094A CN114041145A CN 114041145 A CN114041145 A CN 114041145A CN 201980098094 A CN201980098094 A CN 201980098094A CN 114041145 A CN114041145 A CN 114041145A
Authority
CN
China
Prior art keywords
context data
user
computing system
suggested
model
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
Application number
CN201980098094.1A
Other languages
English (en)
Inventor
T.万特兰
M.L.巴恩哈特
B.L.杰克逊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN114041145A publication Critical patent/CN114041145A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/041Abduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Human Computer Interaction (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

计算系统可以包括人工智能系统,该人工智能系统包括一个或多个机器学习模型,其被配置为接收包括上下文数据的模型输入,并且作为响应,输出描述由上下文数据引用的一个或多个语义实体的模型输出。计算系统可以被配置成在第一时间间隔期间获得上下文数据;将包括上下文数据的模型输入输入到(多个)机器学习模型中;接收描述由上下文数据引用的一个或多个语义实体的模型输出作为(多个)机器学习模型的输出;将模型输出存储在至少一个有形的、非暂时性的计算机可读介质中;以及在第一时间间隔之后的第二时间间隔期间,提供关于由模型输出所描述的一个或多个语义实体的建议动作,用于在用户界面中显示。

Description

用于生成和提供建议动作的系统和方法
技术领域
本公开总体上涉及人工智能系统。更具体地,本公开涉及用于生成并向计算设备的用户提供建议动作的系统和方法。
背景技术
人工智能和机器学习已经被用来帮助计算设备的用户,例如通过提供人工智能代理和个人助理。然而,这种人工智能代理和个人助理缺乏主动地帮助用户来记住动作或项目的能力。
发明内容
本公开的实施例的方面和优点将在以下描述中部分阐述,或者可以从描述中获知,或者可以通过实施例的实践获知。
本公开的一个方面针对包括至少一个处理器的计算系统和包括一个或多个机器学习模型的人工智能系统。一个或多个机器学习模型可以被配置成接收包括上下文数据的模型输入,并且响应于模型输入的接收,输出描述由上下文数据引用的一个或多个语义实体的模型输出。计算系统可以包括至少一种有形的、非暂时性的计算机可读介质,其存储指令,当由至少一个处理器运行该指令时,使至少一个处理器执行操作。操作可以包括在第一时间间隔期间获得上下文数据;将包括上下文数据的模型输入输入到一个或多个机器学习模型中;接收描述由上下文数据引用的一个或多个语义实体的模型输出作为一个或多个机器学习模型的输出;将模型输出存储在至少一种有形的、非暂时性的计算机可读介质中;以及在第一时间间隔之后的第二时间间隔期间,提供关于由模型输出描述的一个或多个语义实体的建议动作,用于在用户界面中显示。
本公开的另一方面针对一种用于生成和提供建议动作的计算机实现的方法。该方法可以包括由一个或多个计算设备在第一时间间隔期间获得上下文数据。该方法可以包括由一个或多个计算设备将包括上下文数据的模型输入输入到一个或多个机器学习模型中,该机器学习模型被配置为接收包括上下文数据的模型输入,并且响应于模型输入的接收,输出描述由上下文数据引用的一个或多个语义实体的模型输出。该方法可以包括由一个或多个计算设备接收描述由上下文数据引用的一个或多个语义实体的模型输出作为一个或多个机器学习模型的输出。该方法可以包括由一个或多个计算设备将模型输出存储在至少一种有形的、非暂时性的计算机可读介质中。该方法可以包括由一个或多个计算设备在第一时间间隔之后的第二时间间隔期间提供关于由模型输出描述的一个或多个语义实体的建议动作,用于在一个或多个计算设备的用户界面中显示。
本公开的其他方面针对多种系统、装置、非暂时性计算机可读介质、用户界面和电子设备。
参考以下描述和所附权利要求,本公开的多个实施例的这些和其他特征、方面和优点将变得更好理解。并入本说明书并构成其一部分的附图示出了本公开的示例实施例,并且与描述一起用于解释相关原理。
附图说明
参考附图,在说明书中阐述了针对本领域普通技术人员的实施例的详细讨论,其中:
图1A描绘了根据本公开的示例实施例的用于生成并向计算系统的用户提供建议动作的示例计算系统的框图。
图1B描绘了根据本公开的示例实施例的用于生成并向计算系统的用户提供建议动作的示例计算系统的框图。
图1C描绘了根据本公开的示例实施例的用于生成并向计算系统的用户提供建议动作的示例计算系统的框图。
图2描绘了根据本公开的示例实施例的用于生成和提供建议动作的示例人工智能系统。
图3描绘了根据本公开的示例实施例的用于生成和提供建议动作的示例计算系统,其包括一个或多个计算机应用。
图4描绘了根据本公开的方面的示例建议动作。
图5A、图5B和图5C描绘了根据本公开的方面的额外示例建议动作。
图6描绘了根据本公开的方面的包括在计算设备的锁定屏幕中显示的多个建议动作的示例面板。
图7描绘了显示用通知显示建议动作的示例通知面板的计算设备。
图8描绘了根据本公开的方面的在第一状态中的计算设备,在该第一状态中,与分类的建议动作对应的多个类别标签被显示。
图9描绘了根据本公开的方面的其中多个类别标签中的一个类别标签已经被选择且与选择的类别标签对应的建议动作被显示的图8的计算设备。
图10描绘了根据本公开的方面的建议动作,其中语义实体已经被选择且搜索响应于语义实体被选择而被执行。
图11描绘了显示其中用户可以为一种类型的建议动作选择默认计算机应用的设置面板的计算系统。
图12描绘了根据本公开的方面的用于生成并向计算系统的用户提供建议动作的方法的流程图。
具体实施方式
概述
一般而言,本公开针对一种人工智能系统,其用于识别感兴趣的信息、存储该信息、并基于存储的信息在稍后的时间向计算系统的用户提供建议动作。人工智能系统可以被配置为代表用户智能地处理信息,包括例如由计算设备显示、播放和/或以其他方式处理或检测的视觉和/或音频信息。换句话说,当计算设备被用于全天执行任务时,人工智能系统可以捕获感兴趣的信息。例如,在用户在多种计算机应用之间导航和/或在不同任务或活动之间切换的同时,人工智能系统可以识别和存储语义实体。替换地,人工智能系统可以识别和存储由用户的周围(surrounding)环境引用的或包括的语义实体(例如,通过分析捕获的关于周围环境的成像、音频或其他数据)。因此,人工智能系统可以捕获和处理由用户主动地识别或强调的信息(例如,为识别语义实体),而在其他实例中,人工智能系统可以捕获和处理由用户的外界(ambient)环境简单地引用的或包括的信息(例如,为识别语义实体)(例如,包含在周围环境中但没有特别地由用户主动地识别或强调的信息)。
当语义实体随着时间的推移而被识别时,人工智能系统可以保存或以其他方式留存与语义实体相关联的数据。例如,基于用户的偏好和/或用户的计划或日程安排,可以对保存的语义实体进行排名、排序、分类、优先化等。作为另一示例,人工智能系统可以为用户生成与一个或多个识别的语义实体相关的一个或多个建议动作。例如,建议动作可以包括能够由人工智能系统和/或计算机应用在人工智能系统的指导下为用户和/或代表用户相对于识别的语义实体所采取的动作。作为示例,建议动作可以包括通信动作(例如,向某个联系人发电子邮件)、信息检索动作(例如,检索选项以购买或购物某个项目、提供机会来收听某首歌曲、访问地理信息,诸如兴趣点的位置)、预订动作(例如,请求乘坐共享交通工具或购买飞机票)、信息储存(例如,记笔记或将项目插入用户的日历)和/或许多其他建议动作。
稍后的时间,可以提供保存的建议动作用于显示。例如,建议动作可以由用户经由特定菜单来访问、可以在通知菜单中提供、可以在稍后的上下文相关时间自动出现,和/或可以以其他方式来访问。建议动作可以包括链接或按钮以执行建议动作(例如,用计算机应用)。用户还可以可选地向人工智能系统提供反馈和/或指令,以定制人工智能系统如何捕获信息和/或建议动作。可选地,人工智能系统也可以基于用户如何与建议动作交互来学习用户的偏好。
重要的是,可以向用户提供允许用户对本文描述的系统、程序或特征是否以及何时可以使能用户信息(例如,外界音频、用户界面中呈现的文本等)的收集做出选择的控制。此外,某些数据在其被存储或使用之前可能会以一种或多种方式进行处理,使得个人可识别信息被移除。例如,可以如此处理用户的身份,使得对该用户没有个人可识别信息能够被确定。因此,用户可以控制收集关于用户的什么信息、如何使用该信息以及向用户提供什么信息。
本公开的方面针对一种人工智能系统,该系统在多个不同的时间周期内操作,以提供在上下文中有意义的建议动作。尤其是,人工智能系统可以在第一时间间隔内识别语义实体,存储语义实体,并且然后在第一时间间隔之后的第二时间间隔期间显示建议动作。例如,建议动作可以在第二时间间隔期间充当对用户的提醒,以完成用户早先开始的任务。以这种方式,在第一时间间隔内汇总相关信息,并且然后在第二时间间隔、更晚的时间间隔期间基于该信息提供多个建议动作可以对用户的干扰较小。这对于用户也更有用,因为用户更有可能过一段时间后已经忘记有关任务了。因此,通过存储建议的和上下文衍生的动作用于稍后使用,人工智能系统可以作为智能记忆助手来操作,其基于用户当天、周、月等早先时候参与的活动来帮助用户记忆他们可能想要采取的动作。
作为一个示例,用户可以在第一时间间隔中购物的同时拍摄项目的“截屏(screenshot)”。响应于该用户动作,人工智能系统可以生成并存储项目的名称或描述。稍后,用户可以在电话呼叫期间建议具体会议时间和日期。人工智能系统可以生成并存储可以包括人名、会议时间等的第二语义实体。在第二时间间隔期间(例如,下班后、晚饭后等),人工智能系统可以显示关于来自截屏和建议会议的每个项目的建议动作。对项目的建议动作可以包括购买截屏中显示的项目,并且对会议的建议动作可以包括基于在电话呼叫期间搜集的信息创建日历事件。
在一些实现中,人工智能系统可以基于模板(例如,预定义的模板)生成(多个)建议动作。利用模板可以减少生成这样的建议动作所需的计算资源。代替训练和利用机器学习模型来生成完整的建议动作,建议动作的关键词可以使用(多个)机器学习模型来生成,并然后根据模板来组装以生成建议动作。例如,模板可以包括动词、由机器学习模型的模型输出描述的语义实体以及计算机应用,例如如下:
[动词]+[语义实体]+[计算机应用]
人工智能系统可以选择将被插入模板的相应占位符中的适当的动词和计算机应用。基于上述模板生成的建议动作的一个示例是“向日历添加与Dr.Sherrigan的预约”。应当理解,可以采用多种模板。此外,人工智能系统可以学习用户的关于使用哪些模板和/或是否使用模板的偏好。因此,本文描述的系统和方法可以采用一个或多个模板来生成建议动作。
在一些实现中,相同的一个或多个模板可用于生成多个建议动作,使得多个建议动作对用户具有相同的总体外观和感觉。这样,用户可以快速评估建议动作,因为它们以已知且可预测的格式向用户呈现。因此,本文描述的模板可以促进建议动作的更多使用。
根据本公开的方面,本文的系统和方法可以利用一个或多个机器学习模型。更具体地,人工智能系统可以包括一个或多个机器学习模型,其被配置为接收包括上下文数据(例如,外界音频、显示在计算设备的屏幕中的信息等)的模型输入。计算系统可以被配置成获得上下文数据并将包括上下文数据的模型输入输入到机器学习模型中。计算系统可以接收描述由上下文数据引用的一个或多个语义实体的模型输出作为机器学习模型的输出。计算系统可以将模型输出存储在至少一种有形的、非暂时性的计算机可读介质中。计算系统可以提供关于一个或多个语义实体的建议动作。
本文讨论的上下文数据可以包括多种信息,诸如在用户界面中当前显示的信息、在用户界面中先前显示的信息、从用户的先前动作中提取的信息(例如,由用户写入或读取的文本、由用户查看的内容等),和/或类似物。上下文数据可以包括描述与用户相关联的偏好或其他信息的用户数据和/或描述与用户的联系人相关联的偏好或其他信息的联系人数据。示例上下文数据可以包括由计算系统为用户接收的消息、用户的与一个或多个用户的联系人的先前交互(例如,提及用户对餐馆或食物类型的偏好的文本消息)、与位置相关联的先前交互(例如,去公园、博物馆、其他景点等)、商务等(例如,发布对餐馆的评论、阅读餐馆的菜单、在餐馆订座等),和/或关于用户的偏好或用户的任何其他合适的信息。进一步示例包括由计算系统播放或处理的音频、由计算系统检测的音频、关于用户的位置的信息(例如,计算系统的移动计算设备的位置),和/或日历数据。例如,上下文数据可以包括由计算系统的麦克风检测到的外界音频和/或在电话呼叫期间处理的电话音频。日历数据可以描述未来的事件或计划(例如,航班、酒店预订、晚餐计划等)。能够由模型输出描述的示例语义实体可以包括在文本和/或音频中识别的单词或短语。额外示例可以包括关于用户的位置的信息,诸如城市名、州名、街道名、附近景点的名称等。
在一些实现中,在第一时间间隔期间收集上下文数据之后,多个建议动作可以在第二时间间隔中一起显示。更具体地,至少一个额外建议动作可以与建议动作在用户界面中一起显示。(多个)额外建议操作可以与建议动作有区别。(多个)额外建议动作也可以由人工智能系统基于区别的语义实体来生成和存储(例如,在第一时间期间)。例如,人工智能系统可以获得与上下文数据有区别的额外上下文数据,并将包括额外上下文数据的(多个)额外模型输入输入到(多个)机器学习模型中。人工智能系统可以接收由(多个)额外建议动作描述的描述(多个)额外建议动作的数据,作为(多个)机器学习模型的额外输出。因此,人工智能系统可以利用(多个)机器学习模型在第一时间间隔内存储多个语义实体,并且然后在第二时间间隔期间显示多个建议动作。
在一些实现中,人工智能系统可以例如基于用户数据对建议动作进行排名、分类和优先化等。用户数据可以包括用户偏好、日历数据(例如,用户的计划或日程安排)和/或关于用户或计算设备的其他信息。例如,人工智能系统可以对建议动作进行排名,并基于排名在用户界面内排列建议动作。因此,人工智能系统可以对建议动作进行优先化(prioritize),并在用户界面中选择性地向用户显示一组最重要和/或相关的建议动作。
在一些实现中,人工智能系统可以关于多个类别对建议动作进行分类。类别标签可以在与类别对应的用户界面中显示,使得用户可以使用类别标签(例如,在分离的面板或页面中)在建议动作的类别之间导航。例如,计算系统可以检测关于一个类别标签的用户触摸动作。响应于检测到用户触摸动作,计算系统可以显示关于选择的建议动作所分类的建议动作。因此,人工智能系统可以对建议动作进行分类,并为用户提供在建议动作的类别之间导航的直观方式,以供用户选择。
在一些实现中,计算系统可以显示关于建议动作的解释。解释可以描述关于获得上下文数据的信息,其包括例如获得上下文数据的时间、获得上下文数据时计算设备的位置和/或上下文数据的源。作为示例,解释可以指示建议动作是基于在具体时间发生的与具体用户联系人的电话对话的音频而生成的。作为另一示例,解释可以指示建议动作是基于用户的在具体时间用具体购物应用的购物会话而生成的。数据的(多个)源可以包括当获得上下文数据时正在显示的计算机应用;上下文数据是否是从外界音频、文本、图形信息等获得的;和/或与获得上下文数据相关联的任何其他信息。这样的解释可以向用户提供对人工智能系统的操作更好地理解。因此,用户可能对人工智能系统操作更加舒适或信任,其可以使人工智能系统更加有用。
在一些实现中,除了(多个)解释之外,计算系统可以向用户提供查看与获得上下文数据相关联的额外信息的方式。例如,计算系统可以检测请求关于解释的额外信息的用户触摸输入。响应于检测到用户触摸输入,计算系统可以显示关于获得上下文数据的额外解释信息。额外解释信息可以包括获得上下文数据的时间或者获得上下文数据时计算设备的位置。额外解释信息可以包括上下文数据的源(如果尚未显示)。额外信息可以包括关于以类似方式(例如,从相同源、在类似时间等)获得上下文数据的其他时间的信息。
在一些实现中,关于人工智能系统如何收集上下文数据,计算系统可以向用户提供调整偏好的方式。额外解释信息还可以包括关于人工智能系统可以何时以及如何获得上下文数据的偏好和/或规则。用户可以在用户界面内调整规则和/或偏好。
计算系统可以自动地或响应于用户请求并在多个位置显示(多个)建议动作。例如,显示(多个)建议动作的面板可以显示在计算设备的“锁定屏幕”或“主屏幕”中。面板可以从下拉面板、导航栏等在系统级别可访问。面板可以在全天中的一个或多个常规时间自动显示。在其他实现中,人工智能系统可以基于用户数据(例如,偏好)和/或上下文数据智能地挑选何时显示面板。人工智能系统可以基于建议动作的内容,在建议动作与用户最相关时显示面板。
在一些实现中,计算系统可以被配置成与一个或多个计算机应用进行接口连接,以提供可以用(多个)计算机应用执行的建议动作。计算系统可以向(多个)计算机应用提供描述(多个)建议动作的、(多个)机器学习模型的模型输出的数据描述。计算系统可以经由预定义的应用编程接口分别从(多个)计算应用接收一个或多个应用输出。建议动作可以描述(多个)应用输出中的至少一个。
在一些实现中,用户可以选择建议动作的一部分(例如,语义实体)以执行关于建议动作的选择的部分的、与建议动作有区别另一动作。作为示例,在检测到指向建议动作的语义实体的用户触摸动作的用户响应中,计算系统可以显示包括语义实体的搜索(例如,网络搜索)的面板。额外示例包括编辑语义实体、改变建议动作的计算机应用、编辑建议动作的详情等。例如,建议动作可以包括使用具体的购物应用对具体品牌的产品(例如,烤架)购物。用户可以选择语义实体(例如,“Webster经典烤架”)并手动编辑实体,例如改变品牌名称或产品类型。用户可以在选择使用购物应用对项目购买或购物的建议动作之前将“Webster经典烤架”改变为“Webster经典烤架罩”。作为另一个示例,用户可以改变购物应用。
作为一个示例,本公开的系统和方法可以被包括在应用、浏览器插件的上下文内或其他上下文中,或者在应用、浏览器插件的上下文内或其他上下文中以其他方式被采用。因此,在一些实现中,本公开的模型可以被包括在诸如膝上型电脑、平板电脑或智能手机的用户计算设备中,或者由其以其他方式存储和实现。作为又一示例,模型可以被包括在根据客户端-服务器关系与用户计算设备通信的服务器计算设备中,或者由其以其他方式存储和实现。例如,模型可以由服务器计算设备实现为网络服务的一部分(例如,网络电子邮件服务)。
例如,本公开的系统和方法可以在操作系统级别操作,而不是在需要用户选择来启动它们的操作的一个或多个特定应用的级别操作。例如,在系统的正常使用期间,可以从系统的一个或多个源(诸如麦克风、相机、浏览的网页、系统的位置和系统的方向中的一个或多个)自动获取上下文数据,而无需用户必须打开特定应用。只要系统被开启和/或当适当的密码、口令和/或生物识别符被验证时,就可以获取上下文数据。因此,用户不需要记忆以启动特定功能来获取上下文数据。上下文数据可以自动存储在系统级别“剪贴板”上。如果需要,用户可以禁用某些上下文数据的源。
例如,本公开的系统和方法可以限制存储在存储器上和/或分配给这种系统和方法的数据量。例如,系统和方法可以基于一个或多个规则自动移除或覆盖获取的上下文数据和/或建议动作。例如,可以自动移除或覆盖早于预定周期(例如,早一天或一周)的上下文数据。规则(例如,预定周期)可以是用户可配置的。可以基于在先用户交互为特定上下文数据和/或建议动作动态更新预定周期。例如,在先用户交互可以是与建议动作相关的用户选择。例如,如果用户比从建议动作打开购物应用更频繁地选择从建议动作创建日历预约,则链接到购物动作的上下文数据可以比用于日历预约的上下文数据更早被删除或覆盖。可以设置对存储的数据量的最大限制,以便避免占用应用数据的储存资源。在建议动作按优先级顺序排名的情况下,只有前N个建议动作可以被保留用于输出。
例如,利用在建议动作旁边或以其他方式一起显示的至少一个可选按钮或类似物,本公开的系统和方法可以提供与一个或多个应用相链接或相关联的一个或多个建议动作,以准许单次或减少的次数的点击、触摸或轻扫(swipe)手势来影响建议动作。此处,影响建议动作(诸如向日历事件添加预约、播放音乐或视频曲目、打开购物网站等)的物理用户交互的数量,可能比打开特定应用和做出选择和/或手动键入数据需要更少的与用户界面的用户交互和/或使用更少的电能和处理资源。例如,打开用于购买特定产品的购物应用或网站可以使用单个手势来达成,而不是打开相关购物应用或浏览器窗口、键入搜索项目并然后从建议列表中选择项目。
例如,建议动作可以在用户界面的相关联的部分中显示,并且除了具有与建议动作的启动相关联的可选按钮等之外,一个或多个进一步的按钮等可以呈现在相同部分中,用于通常可能需要打开应用的相关功能的单触(single-touch)启动。例如,关于涉及播放音频或视频的建议动作,以及打开音乐或视频应用以播放音频或视频的建议动作,可以呈现与该应用相关联的一个或多个进一步的按钮等,诸如“喜欢”按钮或“共享”按钮,对其的选择使得相关联的动作被执行。例如,关于创建日历预约的建议动作,如果检测到提议预约与现有预约冲突,则可以提供一个或多个进一步的按钮等来发起取消和/或重新安排现有预约。
在人工智能系统基于用户数据(例如,用户偏好)和/或上下文数据智能地挑选何时显示面板的情况下,人工智能系统可以基于建议动作的内容,在建议动作对用户是最相关、或者较少干扰或侵扰的时候显示面板。例如,如果建议动作包括播放音频或视频,那么人工智能系统可以挑选在工作时间期间不显示这样的建议动作,而诸如建议预约或建议购物动作的“无声”建议动作可以在所述时间显示。如上所述,将建议动作汇总到稍后的第二时间间隔,避免了过度打扰用户和/或使其受侵扰。
例如,本公开的系统和方法可以在操作系统级别操作,而不是在需要用户选择来启动它们的操作的一个或多个特定应用的级别操作。例如,在系统的正常使用期间,可以从系统的一个或多个源(诸如麦克风、相机、浏览的网页、系统的位置和系统的方向中的一个或多个)自动获取上下文数据,而无需用户必须打开特定应用。只要系统被开启和/或当适当的密码、口令和/或生物识别符被验证时,就可以获取上下文数据。因此,用户不需要记忆以启动特定功能来获取上下文数据。上下文数据可以自动存储在系统级别“剪贴板”上。然而,如果需要,用户可以禁用某些上下文数据的源。
例如,本公开的系统和方法可以限制存储在存储器上和/或分配给这种系统和方法的数据量。例如,系统和方法可以基于一个或多个规则自动移除或覆盖获取的上下文数据和/或建议动作。例如,可以自动移除或覆盖早于预定周期(例如,早一天或一周)的上下文数据。规则(例如,预定周期)可以是用户可配置的。可以基于在先用户交互为特定的上下文数据和/或建议动作动态更新预定周期。例如,在先用户交互可以包括与建议动作相关的用户选择。例如,如果用户比从建议动作打开购物应用更频繁地选择从建议动作创建日历预约,则链接到购物动作的上下文数据可能比用于日历预约的上下文数据更早被删除或覆盖。可以设置对存储的数据量的最大限制,以便避免占用应用数据的储存资源。在建议动作按优先级顺序排名的情况下,只有前N个建议动作可以被保留用于输出。
例如,利用在建议动作旁边或以其他方式一起显示的至少一个可选按钮或类似物,本公开的系统和方法可以提供与一个或多个应用相链接或相关联的一个或多个建议动作,以准许单次或减少的次数的点击、触摸或轻扫(swipe)手势来影响建议动作。此处,影响建议动作(诸如向日历事件添加预约、播放音乐或视频曲目、打开购物网站等)的物理用户交互的数量,可能比打开特定应用和做出选择和/或手动键入数据需要更少的与用户界面的用户交互和/或使用更少的电能和处理资源。例如,打开用于购买特定产品的购物应用或网站可以使用单个手势来达成,而不是打开相关的购物应用或浏览器窗口、键入搜索项目并然后从建议列表中选择项目。
例如,建议动作可以在用户界面的相关联的部分中显示,并且除了具有与建议动作的启动相关联的可选按钮等之外,一个或多个进一步的按钮等可以呈现在相同部分中,用于通常可能需要由用户手动打开应用的相关功能的单触启动。例如,关于涉及播放音频或视频的建议动作,以及打开音乐或视频应用以播放音频或视频的建议动作,可以呈现与该应用相关联的一个或多个进一步的按钮等,诸如“喜欢”按钮或“共享”按钮。这种按钮的选择可以使得相关联的动作被执行。例如,关于创建日历预约的建议动作,如果检测到提议预约与现有预约冲突,则可以提供一个或多个进一步的按钮等来发起取消和/或重新安排现有预约。
在人工智能系统基于用户数据(例如,偏好)和/或上下文数据智能地挑选何时显示面板的情况下,人工智能系统可以基于建议动作的内容,在建议动作对用户是最相关、或者较少干扰或侵扰的时候显示面板。例如,如果建议动作包括播放音频或视频,那么人工智能系统可以挑选在工作时间期间不显示这样的建议动作,而诸如建议预约或建议购物动作的“无声”建议动作可以在所述时间显示。如上所述,将建议动作汇总到稍后的第二时间间隔,避免了过度打扰用户和/或使其受侵扰。
现在参考附图,将进一步详细讨论本公开的示例实施例。
示例设备和系统
图1A描绘了根据本公开的示例实施例的用于生成和提供建议动作的示例计算系统100的框图。系统100包括通过网络180通信耦合的用户计算设备102、服务器计算系统130和训练计算系统150。
用户计算设备102可以是任何类型的计算设备,诸如例如个人计算设备(例如,膝上型或台式)、移动计算设备(例如,智能手机或平板电脑)、游戏控制台或控制器、可穿戴计算设备、嵌入式计算设备或任何其他类型的计算设备。
用户计算设备102包括一个或多个处理器112和存储器114。一个或多个处理器112可以是任何合适的处理设备(例如,处理器内核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是可操作地连接的一个处理器或多个处理器。存储器114可以包括一种或多种非暂时性计算机可读储存介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等,及其组合。存储器114可以存储由处理器112运行的数据116和指令118,以使用户计算设备102执行操作。
用户计算设备102可以存储或包括一个或多个计算机应用119。(多个)计算机应用119可以被配置成执行多种操作并提供如本文所述的(多个)应用输出。
用户计算设备102可以存储或包括人工智能系统120。人工智能系统120可以执行本文描述的一些或所有操作。人工智能系统120可以与一个或多个计算机应用119分离并且与之有区别,但是可以能够与一个或多个计算机应用119通信。
用户计算设备102可以存储或包括一个或多个机器学习模型122。例如,机器学习模型122可以是或可以以其他方式包括多种机器学习模型,诸如神经网络(例如,深度神经网络)或其他多层非线性模型。神经网络可以包括循环神经网络(例如,长短期记忆循环神经网络)、前馈神经网络或其他形式的神经网络。参考图2和3讨论示例机器学习模型122。
在一些实现中,一个或多个机器学习模型122可以通过网络180从服务器计算系统130接收,存储在用户计算设备存储器114中,并且由一个或多个处理器112使用或以其他方式实现。在一些实现中,用户计算设备102可以实现单个机器学习模型122的多个并行实例(例如,为跨机器学习模型120的多个实例执行并行操作)。
额外地或替代地,人工智能系统140可以被包括在服务器计算系统130中,或者由服务器计算系统130以其他方式存储和实现,该服务器计算系统130根据客户端-服务器关系与用户计算设备102通信。例如,人工智能系统140可以包括机器学习模型142。例如,机器学习模型142可以由服务器计算系统140实现为基于网络的服务的一部分。因此,一个或多个模型122可以在用户计算设备102处存储和实现,和/或一个或多个模型142可以在服务器计算系统130处存储和实现。
用户计算设备102还可以包括接收用户输入的一个或多个用户输入组件124。例如,用户输入组件124可以是对用户输入对象(例如,手指或触笔)的触摸敏感的触敏组件(例如,触敏显示屏或触摸板)。触敏组件可以用来实现虚拟键盘。其他示例用户输入组件包括麦克风、传统键盘或用户可以键入通信的其他装置。
服务器计算系统130包括一个或多个处理器132和存储器134。一个或多个处理器132可以是任何合适的处理设备(例如,处理器内核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是可操作地连接的一个处理器或多个处理器。存储器134可以包括一种或多种非暂时性计算机可读储存介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等,及其组合。存储器134可以存储由处理器132运行的数据136和指令138,以使服务器计算系统130执行操作。
在一些实现方式中,服务器计算系统130包括一个或多个服务器计算设备或者由一个或多个服务器计算设备以其他方式来实现。在服务器计算系统130包括多个服务器计算设备的情况下,这种服务器计算设备可以根据顺序计算架构、并行计算架构或其某种组合来操作。
如上所述,服务器计算系统130可以存储或以其他方式包括一个或多个机器学习模型142。例如,模型142可以是或可以以其他方式包括多种机器学习模型,诸如神经网络(例如,深度循环神经网络)或其他多层非线性模型。参考图2和3讨论示例模型142。
服务器计算系统130可以经由与通过网络180通信耦合的训练计算系统150的交互来训练模型142。训练计算系统150可以与服务器计算系统130分离,或者可以是服务器计算系统130的一部分。
训练计算系统150包括一个或多个处理器152和存储器154。一个或多个处理器152可以是任何合适的处理设备(例如,处理器内核、微处理器、ASIC、FPGA、控制器、微控制器等),并且可以是可操作地连接的一个处理器或多个处理器。存储器154可以包括一种或多种非暂时性计算机可读储存介质,诸如RAM、ROM、EEPROM、EPROM、闪存设备、磁盘等,及其组合。存储器154可以存储由处理器152运行的数据156和指令158,以使训练计算系统150执行操作。在一些实现中,训练计算系统150包括一个或多个服务器计算设备或者由一个或多个服务器计算设备以其他方式来实现。
训练计算系统150可以包括使用多种训练或学习技术(诸如误差的反向传播)来训练存储在服务器计算系统130中的机器学习模型142的模型训练器160。在一些实现中,执行误差的反向传播可以包括随时间执行截断的反向传播。模型训练器160可以执行多种泛化技术(例如,权重衰减、随机失活(dropout)等)来提高被训练模型的泛化能力。
在一些实现中,如果用户已经提供同意,则可以从用户计算设备102获得训练数据162(例如,基于由用户计算设备102的用户先前提供的通信)。因此,在这样的实现中,提供给用户计算设备102的模型122可以通过训练计算系统150对从用户计算设备102接收的用户具体通信数据来训练。在某些情况下,该过程可以称为个性化模型。
模型训练器160包括用于提供所需功能的计算机逻辑。模型训练器160可以用控制通用处理器的硬件、固件和/或软件来实现。例如,在一些实现中,模型训练器160包括存储在储存设备上、加载到存储器中并由一个或多个处理器运行的程序文件。在其他实现中,模型训练器160包括存储在有形的计算机可读储存介质(诸如RAM硬盘或光学或磁性介质)中的一组或多组计算机可运行指令。
网络180可以是任何类型的通信网络,诸如局域网(例如,内联网)、广域网(例如,互联网)或其某种组合,并且可以包括任何数量的有线或无线链路。通常,通过网络180的通信可以经由任何类型的有线和/或无线连接来承载,使用多种多样的通信协议(例如,TCP/IP、HTTP、SMTP、FTP)、编码或格式(例如,HTML、XML)和/或保护方案(例如,VPN、安全HTTP、SSL)。
图1A示出了可用于实现本公开的一个示例计算系统。也可以使用其他计算系统。例如,在一些实现中,用户计算设备102可以包括模型训练器160和训练数据集162。在这样的实现中,模型122可以在用户计算设备102处被本地训练和使用。在一些这样的实现中,用户计算设备102可以实现模型训练器160,以基于用户具体数据来个性化模型122。
图1B描绘了可用于实现本公开的示例计算设备10的框图。计算设备10可以是用户计算设备或服务器计算设备。
计算设备10包括多个应用(例如,应用1至应用N)。每个应用都包含其自己的机器学习库和(多个)机器学习模型。例如,每个应用都可以包括机器学习模型。示例应用包括文本消息应用、电子邮件应用、听写应用、虚拟键盘应用、浏览器应用等。
如图1B所示,每个应用可以与计算设备的多个其他组件通信,诸如例如一个或多个传感器、上下文管理器、设备状态组件和/或额外组件。在一些实现中,每个应用可以使用API(例如,公有API)与每个设备组件通信。在一些实现中,每个应用使用的API具体于该应用。
图1C描绘了根据本公开的示例实施例执行的示例计算设备50的框图。计算设备50可以是用户计算设备或服务器计算设备。
计算设备50包括多个应用(例如,应用1至应用N)。每个应用都与一个中央智能层通信。示例应用包括文本消息应用、电子邮件应用、听写应用、虚拟键盘应用、浏览器应用等。在一些实现中,每个应用可以使用API(例如,跨所有应用的公共API)与中央智能层(以及存储在其中的(多个)模型)通信。
中央智能层包括多个机器学习模型。例如,如图1C所示,可以为每个应用提供相应的机器学习模型(例如,模型),并由中央智能层管理。在其他实现中,两个或更多个应用可以共享单个机器学习模型。例如,在一些实现中,中央智能层可以为所有应用提供单个模型(例如,单个模型)。在一些实现中,中央智能层被包括在计算设备50的操作系统内或者由计算设备50的操作系统以其他方式来实现。
中央智能层可以与中央设备数据层通信。中央设备数据层可以是计算设备50的集中式数据资源库。如图1C所示,中央设备数据层可以与计算设备的许多其他组件通信,诸如例如一个或多个传感器、上下文管理器、设备状态组件和/或额外组件。在一些实现中,中央设备数据层可以使用API(例如,私有API)与每个设备组件通信。
示例模型排列
图2描绘了根据本公开的示例实施例的示例人工智能系统200的框图。人工智能系统200可以包括一个或多个机器学习模型202,其被训练以接收上下文数据204,并且作为上下文数据204的接收的结果,提供描述由上下文数据204引用的一个或多个语义实体的模型输出206。
本文讨论的上下文数据204可以包括多种信息,诸如在用户界面中当前显示的信息、在用户界面中先前显示的信息、从用户的先前动作中提取的信息(例如,由用户写入或读取的文本、由用户查看的内容等),和/或类似物。上下文数据204可以包括描述与用户相关联的偏好或其他信息的用户数据和/或描述与用户的联系人相关联的偏好或其他信息的联系人数据。示例上下文数据204可以包括由计算系统为用户接收的消息、用户的与一个或多个用户的联系人的先前交互(例如,提及用户对餐馆或食物类型的偏好的文本消息)、与位置相关联的先前交互(例如,去公园、博物馆、其他景点等)、商务等(例如,发布对餐馆的评论、阅读餐馆的菜单、在餐馆订座等),和/或关于用户的偏好或用户的任何其他合适的信息。进一步示例包括由计算系统播放或处理的音频、由计算系统检测的音频、关于用户的位置的信息(例如,计算系统的移动计算设备的位置),和/或日历数据。例如,上下文数据204可以包括由计算系统的麦克风检测到的外界音频和/或在电话呼叫期间处理的电话音频。日历数据可以描述未来的事件或计划(例如,航班、酒店预订、晚餐计划等)。能够由模型输出206描述的示例语义实体可以包括在文本和/或音频中识别的单词或短语。额外示例可以包括关于用户的位置的信息,诸如城市名、州名、街道名、附近景点的名称等。
在一些实现中,模型输出206可以更直接地描述建议动作。例如,(多个)机器学习模型202可以被训练成输出描述建议动作的文本(例如,包括动词、应用和语义实体)的数据,例如参考图4至图9所述。可以训练单个机器学习模型202来接收上下文数据204并输出这种模型输出206。
在一些实现中,多个机器学习模型202可以被训练(例如,端到端)以产生这样的模型输出206。例如,机器学习模型202的第一模型可以输出描述包括在上下文数据204中的语义实体的数据。机器学习模型的第二模型可以接收描述包括在上下文数据204中的语义实体的数据,并输出描述关于语义实体的建议动作的模型输出206。(多个)第二机器学习模型可以额外接收一些或全部上下文数据204。本领域的普通技术人员将理解,在本公开的范围内,额外的配置是可能的。
图3描绘了包括人工智能系统301的示例计算系统300的框图。根据本公开的示例实施例,人工智能系统301可以包括一个或多个机器学习模型302。(多个)机器学习模型302可以被训练成接收上下文数据304,并且作为上下文数据304的接收的结果,提供描述由上下文数据304引用的一个或多个语义实体的模型输出306。
计算系统300可以被配置成与一个或多个计算机应用308进行接口连接,以提供可以与(多个)计算机应用308一起执行的建议动作。计算系统300可以向(多个)计算机应用308提供(多个)机器学习模型302的描述(多个)建议动作的模型输出306的数据描述。计算系统300可以经由预定义的应用编程接口分别从(多个)计算应用308接收一个或多个应用输出310。建议动作可以描述(多个)应用输出310中的至少一个或与之对应。
图4描绘了根据本公开的方面的示例建议动作400。建议动作400可以描述可以用计算机应用执行的可用动作。在该示例中,建议动作400可以包括用日历应用创建日历事件。更具体地,在该示例中,建议动作400包括文本“向日历添加与Dr.Sherrigan的预约”。计算系统可以被配置为响应于接收到请求该动作的用户触摸输入来执行该动作。例如,用户可以点击按钮401、滑动滑动条或以其他方式与建议动作400交互,以请求计算系统执行动作。
在一些实现中,人工智能系统可以基于模板(例如,预定义的模板)生成(多个)建议动作400。利用模板可以减少生成这样的建议动作400所需的计算资源。代替训练和利用机器学习模型来生成建议动作400的所有文本,可以使用(多个)机器学习模型来生成建议动作400的关键词,并然后根据模板来组装以生成建议动作400。例如,模板可以包括动词402、语义实体404和/或计算机应用406的相应占位符。语义实体404可以由(多个)机器学习模型202的模型输出206来描述,例如如上参考图2所述。模板可以按如下方式排列:
[动词]+[语义实体]+[计算机应用]
人工智能系统可以选择适当的动词和/或计算机应用来插入模板的相应占位符中。可以基于上下文数据和/或语义实体来选择动词和/或计算机应用。应当理解,在本公开的范围内可以采用多种模板变体。此外,人工智能系统可以学习用户的关于使用哪些模板和/或是否使用模板的偏好。因此,本文描述的系统和方法可以采用一个或多个模板来生成建议动作。
在一些实现中,相同的一个或多个模板可用于生成多个建议动作,使得多个建议动作对用户具有相同的总体外观和感觉。这样,用户可以快速评估建议动作,因为它们以已知且可预测的格式向用户呈现。因此,本文描述的模板可以促进建议动作的更多使用。
可以显示关于建议动作400的解释410。解释410可以描述关于获得上下文数据的信息,其包括例如获得上下文数据的时间、获得上下文数据时计算设备的位置和/或上下文数据的源。在该示例中,解释410声明上下文数据是在“上午8:06”“在家保存的”。解释410可以通过显示图标来指示用于生成建议动作400的上下文数据的源。在该示例中,解释410可以包括电话图标412,以指示上下文数据是在电话呼叫期间从音频收集的。解释410可以鼓励用户对人工智能系统操作更加舒适或信任,其可以使人工智能系统对用户更加有用。
在一些实现中,除了解释410之外,计算系统可以向用户提供查看与获得上下文数据相关联的额外信息的方式。例如,计算系统可以检测请求关于解释410的额外信息的用户触摸输入。在该示例中,响应于接收针对“详情”414的用户触摸输入,计算系统可以显示关于获得上下文数据的额外解释信息。额外解释信息可以包括获得上下文数据的时间或者获得上下文数据时计算设备的位置。额外解释信息可以包括上下文数据的源(如果尚未显示)。额外信息可以包括关于以类似方式(例如,从相同源、在类似时间、在类似时间、计算设备在相同位置的同时等)获得上下文数据的其他时间的信息。
图5A描绘了根据本公开的方面的额外示例建议动作500。该示例建议动作500描述了可以用购物应用执行的可用动作。在该示例中,建议动作500可以包括使用购物应用对项目“Webster经典烤架”购物。更具体地,在该示例中,建议动作500包括文本“在Amazon上购买Webter经典烤架”。该文本可以基于上面参考图4描述的预定义模板来生成。如上所述,模板可以包括动词502、语义实体504和计算机应用506的相应占位符。计算系统可以被配置成响应于接收到请求该动作的用户触摸输入来执行该动作。例如,用户可以点击按钮501、滑动滑动条或以其他方式与建议动作500交互,以请求计算系统执行动作。
可以显示关于建议动作500的解释510,其描述了关于获得上下文数据的信息,其包括例如获得上下文数据时计算设备的时间和位置和/或上下文数据的源。在该示例中,解释510声明上下文数据是在“上午8:38”“在家得宝(Home Depot)保存的”。解释510可以指示用于生成建议动作500的上下文数据的源,例如通过显示图标512。在该示例中,图标512可以指示上下文数据是从图像(例如,相片或截屏)获得的。解释510可以鼓励用户对人工智能系统操作更加舒适或信任,其可以使人工智能系统对用户更加有用。计算系统可以被配置成检测请求关于解释510的额外信息的用户触摸输入。在该示例中,响应于接收到针对“详情”514的用户触摸输入,计算系统可以显示关于获得上下文数据的额外解释信息。
图5B描绘了根据本公开的方面的额外示例建议动作520。在该示例中,建议动作520可以包括使用购物应用对项目“在Amazon上购买BKR水瓶”的购物。该文本可以基于上面参考图4描述的预定义模板来生成。如上所述,模板可以包括动词522、语义实体524和计算机应用526的相应占位符。建议动作520可以包括用于执行建议动作520的按钮525和解释530。在该示例中,解释530指示保存上下文数据时的位置和时间(例如,“在家保存的·上午8:06”)。解释530可以通过显示图标532来指示用于生成建议动作520的上下文数据的源。在该示例中,图标532可以指示上下文数据是从音频(例如,语音备忘录或外界音频)获得的。如上所指示的,解释530可以鼓励用户对人工智能系统操作更加舒适或信任,其可以使人工智能系统对用户更加有用。计算系统可以被配置成检测请求关于解释530的额外信息的用户触摸输入。在该示例中,响应于接收到针对“详情”534的用户触摸输入,计算系统可以显示关于获得上下文数据的额外解释信息。
图5C描绘了根据本公开的方面的额外示例建议动作540。该示例建议动作540描述了可以用音乐流应用执行的可用动作。在该示例中,建议动作540可以包括收听特定艺术家546的特定歌曲544,其可以与存储的语义实体对应。用户可以点击按钮541来执行建议动作540。额外地,在该示例中,建议动作540可以包括用于将建议动作540保存到稍后的时间的保存按钮548和/或用于例如经由社交媒体、文本消息、电子邮件等共享建议动作的共享按钮550。
可以显示关于建议动作540的解释552,其描述关于获得上下文数据的信息,其包括例如获得上下文数据时计算设备的时间和位置和/或上下文数据的源。在该示例中,解释552声明上下文数据是在“下午11:06”“在Linda’sTavern保存的”。解释552的一部分,诸如位置“Linda’s Tavern”可以包括链接,例如到关于该位置的进一步信息(例如,网络搜索或地图应用搜索)。
解释552可以通过显示图标554来指示用于生成建议动作540的上下文数据的源。在该示例中,图标554可以指示上下文数据是从外界音乐获得的(例如,由计算设备的麦克风检测到的)。解释552可以鼓励用户对人工智能系统操作更加舒适或信任,其可以使人工智能系统对用户更加有用。计算系统可以被配置成检测请求关于解释552的额外信息的用户触摸输入。在该示例中,响应于接收到针对“详情”556的用户触摸输入,计算系统可以显示关于获得上下文数据的额外解释信息。
图6描绘了根据本公开的方面的显示包括在锁定屏幕中显示的多个建议动作604、606、608的示例面板602的计算设备600。当计算设备600被锁定并且需要认证以访问主菜单或执行其他操作时,可以显示锁定屏幕。
在第一时间间隔期间收集上下文数据之后,多个建议动作604、606、608可以在第二时间间隔期间一起显示。更具体地,至少一个额外建议动作606、608可以与建议动作604一起显示在用户界面中。(多个)额外建议动作606、608可以与建议动作604有区别。(多个)额外建议动作606、608也可以由人工智能系统基于区别的语义实体来生成和存储(例如,在第一时间间隔期间)。例如,人工智能系统可以获得与上下文数据区别的额外上下文数据,并将包括额外上下文数据的(多个)额外模型输入输入到(多个)机器学习模型中。人工智能系统可以接收描述由(多个)额外建议动作描述的(多个)额外建议动作的数据,作为(多个)机器学习模型的额外输出,例如如上面参考图2和3所述。因此,人工智能系统可以利用(多个)机器学习模型在第一时间间隔内(例如,当用户持续他们的一天时)存储多个语义实体,然后在第二时间间隔期间(例如,在一天结束时)显示多个建议动作。
还可以在面板602中为用户显示额外按钮,以控制或操纵建议动作604、606、608和/或调整人工智能系统的设置。作为一个示例,设置图标610可以显示在面板602中。响应于针对设置图标610的用户触摸动作,计算系统可以显示设置面板,例如如下面参考图11所述。用户可以使用设置面板调整人工智能系统的设置。
作为另一个示例,搜索图标612可以显示在面板602中。响应于针对搜索图标612的用户触摸动作,用户可以搜索在面板602中当前未显示的建议动作。
作为另一个示例,“查看全部”按钮614可以在面板602中显示。响应于针对“查看全部”按钮614的用户触摸动作,用户可以查看在面板602中当前未显示的额外建议动作。
图7描绘了显示具有通知706、708的建议动作704的显示示例通知面板702的计算设备700。通知面板702可以自动显示或者响应于请求显示通知面板702的用户输入而显示。
图8描绘了根据本公开的方面的在第一状态中的计算设备800,在该第一状态中,与分类的建议动作对应的多个类别标签802、804、806、808、810、812、814被显示。多个建议动作816、818可以显示在具有多个类别标签802、804、806、808、810、812的面板820中。人工智能系统可以关于与多个类别标签802、804、806、808、810、812、814对应的多个类别来对建议动作816、818、822、824进行分类。类别标签802、804、806、808、810、812、814可以显示在用户界面中。类别标签802、804、806、808、810、812、814可以描述多个类别中的两个或更多个,使得用户可以使用类别标签802、804、806、808、810、812、814(例如,在分离的面板或页面中)在建议动作816、818、822、824的类别之间导航。例如,计算系统可以检测关于一个类别标签814的用户触摸动作,并显示与选择的类别标签814对应的建议动作,例如如下面结合图9所述。
图9描绘了其中多个类别标签中的一个类别标签814已经被选择的图8的计算设备800。根据本公开的方面,显示与选择的类别标签814对应的建议动作822、824。更具体地,响应于检测到用户触摸动作,计算系统可以显示关于选择的类别标签814分类的建议动作822、824。因此,人工智能系统可以对建议动作816、818、822、824进行分类,并为用户提供在建议动作816、818、822、824的类别之间导航的直观方式,以供用户选择。
在一些实现中,人工智能系统可以(例如,基于用户数据)对建议动作816、818、822、824进行排名、排序、分类和优先化等。用户数据可以包括用户偏好、日历数据(例如,用户的计划或日程安排)和/或关于用户或计算设备的其他信息。例如,人工智能系统可以对建议动作816、818、822、824进行排名,并基于排名在用户界面内排列建议动作816、818、822、824。因此,人工智能系统可以优先化建议动作816、818、822、824,并且在用户界面中选择性地向用户显示一组最重要和/或相关的建议动作816、818、822、824。
图10描绘了根据本公开的方面的显示建议动作1002的计算系统1000,其中语义实体1004已经被选择且搜索响应于语义实体被选择而正在覆盖的面板1006上执行。
图11描绘了显示设置面板1102的计算系统1100,其中用户可以为一种类型的建议动作(例如,包括购物的建议动作)选择默认计算机应用1104。设置面板1102可以允许用户来调整与人工智能系统相关联的其他设置。
示例方法
图12描绘了用于识别感兴趣的信息、存储该信息并基于存储的信息在稍后时间向计算系统的用户提供建议动作的示例方法1200的流程图。尽管出于说明和讨论的目的,图12描绘了以特定顺序执行的步骤,但是本公开的方法不限于特定示出的顺序或排列。方法1200的各个步骤可以以多种方式省略、重新排列、组合和/或改编,而不脱离本公开的范围。
在(1202),计算系统可以在第一时间间隔期间获得上下文数据。随着计算设备全天执行任务,人工智能系统可以在第一时间间隔期间捕获感兴趣的信息。例如,当用户在多种计算机应用之间导航和/或在不同任务或活动之间切换时,人工智能系统可以识别和存储语义实体。
在(1204),计算系统可以将包括上下文数据的模型输入输入到一个或多个机器学习模型中,例如如上面参考图2和3所述。
在(1206),计算系统可以接收描述由上下文数据引用的一个或多个语义实体的模型输出,作为一个或多个机器学习模型的输出,例如如上参考图2和3所述。
在(1208),计算系统可以将模型输出存储在有形的、非暂时性的计算机可读介质中。
在(1210),计算系统可以提供关于由模型输出描述的一个或多个语义实体的建议动作,用于在第一时间间隔之后的第二时间间隔期间在用户界面中显示。例如,计算系统可以在方便用户查看的时间(例如,下班后、晚饭后、以常规安排的时间间隔等)显示建议动作。作为示例实现,第一时间间隔可以被定义为与特定商务相关联的呼叫的持续时间。上下文数据可以包括在呼叫期间讨论的支付日期、支付金额或其他信息。
作为另一个示例,建议动作可以响应于事件而显示(例如,第二时间间隔可以响应于事件而开始)。例如,计算系统可以提供包括在事件之前的某个时间间隔(例如,7天)向用户安排日历事件的建议动作。在一些实现中,获得上下文数据和提供建议动作之间的持续时间可以基于用户交互(例如,与在先的建议动作、与要提供的建议动作相关联的应用等)来学习。作为进一步示例,项目的促销或其价格的降低可以使计算系统基于包括用户在较早时间与该项目交互的上下文数据来提供关于该项目的建议动作。
在一些实现中,可以在获得上下文数据之后的数小时、数天、数周甚至数月来提供(多个)建议动作。例如,可以在获得上下文数据之后至少4小时(或8小时,或更长)来提供(多个)建议动作,使得引起获得上下文数据的原始事件在用户的脑海中可能不那么新鲜。这样,建议动作作为对用户的“提醒”可能更加有用。
额外公开
本文所讨论的技术涉及服务器、数据库、软件应用和其他基于计算机的系统,以及所采取的动作和发送到这些系统和从这些系统发送的信息。基于计算机的系统的固有灵活性允许任务和功能在组件之间或其中的多种可能的配置、组合及划分。例如,本文讨论的过程可以使用单个设备或组件或者组合工作的多个设备或组件来实现。数据库和应用可以在单个系统上实现,也可以分布在多个系统上。分布式组件可以顺序或并行操作。
虽然已经参照本主题的多个具体示例实施例详细描述了本主题,但是每个示例都是以解释的方式提供的,而不是对本公开的限制。本领域技术人员在理解了前述内容后,可以容易地对这些实施例产生改变、变体和等同。因此,本主题公开不排除对本主题的修改、变体和/或添加,这对于本领域普通技术人员来说是显而易见的。例如,作为一个实施例的一部分示出或描述的特征可以与另一个实施例一起使用,以产生又一个实施例。因此,本公开旨在覆盖这些改变、变体和等同。

Claims (20)

1.一种计算系统,包括:
至少一个处理器;
人工智能系统,包括一个或多个机器学习模型,所述一个或多个机器学习模型被配置为接收包括上下文数据的模型输入,并且响应于模型输入的接收,输出描述由上下文数据引用的一个或多个语义实体的模型输出;
至少一种有形的、非暂时性的计算机可读介质,其存储指令,当所述指令被所述至少一个处理器运行时,使所述至少一个处理器执行操作,所述操作包括:
在第一时间间隔期间获得上下文数据;
将包括上下文数据的模型输入输入到所述一个或多个机器学习模型中;
接收描述由上下文数据引用的所述一个或多个语义实体的模型输出作为所述一个或多个机器学习模型的输出;
将模型输出存储在所述至少一种有形的、非暂时性的计算机可读介质中;以及
在第一时间间隔之后的第二时间间隔期间,提供关于由模型输出描述的所述一个或多个语义实体的建议动作,用于在用户界面中显示。
2.根据权利要求1所述的计算系统,其中,所述操作还包括使用模板生成关于由模型输出描述的所述一个或多个语义实体的建议动作。
3.根据权利要求2所述的计算系统,其中,所述模板包括一个或多个语义实体占位符以及动词占位符或计算机应用占位符中的至少一个,并且其中使用模板生成关于由模型输出描述的所述一个或多个语义实体的建议动作包括将由模型输出描述的所述一个或多个语义实体插入到模板的所述一个或多个语义实体占位符中。
4.根据权利要求3所述的计算系统,其中,使用模板生成关于由模型输出描述的所述一个或多个语义实体的建议动作包括:
基于上下文数据或语义实体中的至少一个选择动词;以及
将动词插入模板的动词占位符中。
5.根据权利要求3至4中任一项所述的计算系统,其中,使用模板生成关于由模型输出描述的所述一个或多个语义实体的建议动作包括:
基于上下文数据或语义实体中的至少一个来选择计算机应用;以及
将描述计算机应用的计算机应用标签插入模板的计算机应用占位符中。
6.根据任一前述权利要求所述的计算系统,其中,所述操作还包括在第二时间间隔期间提供与建议动作有区别的至少一个额外建议动作,用于在所述用户界面中显示。
7.根据任一前述权利要求所述的计算系统,还包括一个或多个计算机应用,并且其中所述操作还包括:
向所述一个或多个计算机应用提供描述模型输出的数据;以及
经由预定义的应用编程接口分别从所述一个或多个计算机应用接收描述来自所述一个或多个计算机应用的一个或多个可用动作的一个或多个应用输出;
其中,被提供用于在用户界面中显示的建议动作描述了基于所述一个或多个应用输出中的至少一个的来自所述一个或多个计算机应用的可用动作。
8.根据任一前述权利要求所述的计算系统,其中所述操作还包括:
获得与上下文数据有区别的额外上下文数据;
将包括额外上下文数据的至少一个额外模型输入输入到所述一个或多个机器学习模型中;以及
接收描述由所述额外上下文数据引用的一个或多个额外语义实体的额外模型输出,作为所述一个或多个机器学习模型的额外输出。
9.根据任一前述权利要求所述的计算系统,其中所述操作还包括:
关于由所述一个或多个机器学习模型先前接收的至少一个额外模型输出对模型输出进行排名;以及
在用户界面内,相对于关于由额外模型输出描述的一个或多个额外语义实体的至少一个额外建议动作来排列建议动作。
10.根据任一前述权利要求所述的计算系统,其中所述操作还包括:
关于多个类别对建议动作进行分类;
在用户界面中显示描述所述多个类别中的至少两个类别的多个类别标签。
11.根据权利要求10所述的计算系统,其中所述操作还包括:
检测关于所述多个类别标签中的一个类别标签的用户触摸动作;以及
响应于检测到用户触摸动作,显示关于所述多个类别标签中的所述一个类别标签被分类的建议动作或至少一个额外建议动作中的至少一个。
12.根据任一前述权利要求所述的计算系统,其中,所述操作还包括提供关于建议动作的解释,用于在用户界面中显示,所述解释描述关于获得上下文数据的信息。
13.根据权利要求12所述的计算系统,其中,由所述解释描述的信息包括获得上下文数据时的时间或获得上下文数据时计算系统的位置中的至少一个。
14.根据权利要求12所述的计算系统,其中,由所述解释描述的信息包括从其中获得上下文数据的源。
15.根据权利要求12至14中任一项所述的计算系统,其中所述操作还包括:
检测指向用户界面内的解释的用户触摸输入;
响应于检测到用户触摸输入,显示关于获得上下文数据的额外解释信息。
16.根据任一前述权利要求所述的计算系统,其中建议动作被提供用于在用户界面中显示,而无需接收请求用户界面的显示的用户输入。
17.根据任一前述权利要求所述的计算系统,还包括多个计算机应用,并且其中:
人工智能系统包括在计算系统的操作系统中;以及
响应于在计算系统的系统级别上的用户输入,提供建议动作用于显示,使得建议动作跨所述多个计算机应用可用。
18.根据任一前述权利要求所述的计算系统,其中所述上下文数据包括在用户界面中显示的信息、由计算系统播放的音频或由计算系统检测的外界音频中的至少一个。
19.一种用于生成和提供建议动作的计算机实现的方法,所述方法包括:
由一个或多个计算设备在第一时间间隔期间获得上下文数据;
由所述一个或多个计算设备将包括上下文数据的模型输入输入到一个或多个机器学习模型中,所述机器学习模型被配置为接收包括上下文数据的模型输入,并且响应于模型输入的接收,输出描述由上下文数据引用的一个或多个语义实体的模型输出;
由所述一个或多个计算设备接收描述由上下文数据引用的所述一个或多个语义实体的模型输出作为所述一个或多个机器学习模型的输出;
由所述一个或多个计算设备将模型输出存储在至少一种有形的、非暂时性的计算机可读介质中;以及
由所述一个或多个计算设备在第一时间间隔之后的第二时间间隔期间提供关于由模型输出描述的所述一个或多个语义实体的建议动作,用于在所述一个或多个计算设备的用户界面中显示。
20.根据权利要求19所述的计算机实现的方法,还包括使用模板生成关于由模型输出描述的所述一个或多个语义实体的建议动作。
CN201980098094.1A 2019-08-02 2019-08-02 用于生成和提供建议动作的系统和方法 Pending CN114041145A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2019/044900 WO2021025668A1 (en) 2019-08-02 2019-08-02 Systems and methods for generating and providing suggested actions

Publications (1)

Publication Number Publication Date
CN114041145A true CN114041145A (zh) 2022-02-11

Family

ID=67587975

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980098094.1A Pending CN114041145A (zh) 2019-08-02 2019-08-02 用于生成和提供建议动作的系统和方法

Country Status (4)

Country Link
US (1) US20220245520A1 (zh)
EP (1) EP3973469A1 (zh)
CN (1) CN114041145A (zh)
WO (1) WO2021025668A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220272055A1 (en) * 2021-02-25 2022-08-25 Google Llc Inferring assistant action(s) based on ambient sensing by assistant device(s)
US20220413689A1 (en) * 2021-06-28 2022-12-29 Citrix Systems, Inc. Context-based presentation of available microapp actions
WO2023239638A1 (en) * 2022-06-09 2023-12-14 MagicX Inc. Digital interface with user input guidance

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPQ439299A0 (en) * 1999-12-01 1999-12-23 Silverbrook Research Pty Ltd Interface system
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7853888B1 (en) * 2007-01-12 2010-12-14 Adobe Systems Incorporated Methods and apparatus for displaying thumbnails while copying and pasting
US20100268661A1 (en) * 2009-04-20 2010-10-21 4-Tell, Inc Recommendation Systems
US9959263B2 (en) * 2010-12-07 2018-05-01 Microsoft Technology Licensing, Llc. User interface form field expansion
US20140149330A1 (en) * 2012-11-29 2014-05-29 Elon Kaplan Contextual knowledge management system and method
US10417567B1 (en) * 2013-02-14 2019-09-17 Verint Americas Inc. Learning user preferences in a conversational system
WO2015123751A1 (en) * 2014-02-21 2015-08-27 Rna Labs Inc. Systems and methods for automatically collecting user data and making a real-world action for a user
US10649635B2 (en) * 2014-09-26 2020-05-12 Lenovo (Singapore) Pte. Ltd. Multi-modal fusion engine
US10078440B2 (en) * 2015-03-25 2018-09-18 Ebay Inc. Media discovery and content storage within and across devices
WO2017112813A1 (en) * 2015-12-22 2017-06-29 Sri International Multi-lingual virtual personal assistant
US10627993B2 (en) * 2016-08-08 2020-04-21 Microsoft Technology Licensing, Llc Interacting with a clipboard store
WO2018081020A1 (en) * 2016-10-24 2018-05-03 Carlabs Inc. Computerized domain expert
US10514833B2 (en) * 2016-12-30 2019-12-24 Google Llc Contextual paste target prediction
US11100384B2 (en) * 2017-02-14 2021-08-24 Microsoft Technology Licensing, Llc Intelligent device user interactions
US10467509B2 (en) * 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Computationally-efficient human-identifying smart assistant computer
US10909980B2 (en) * 2017-02-27 2021-02-02 SKAEL, Inc. Machine-learning digital assistants
US20180321949A1 (en) * 2017-05-04 2018-11-08 Dell Products L.P. Information Handling System Adaptive and Automatic Workspace Creation and Restoration
US10599772B2 (en) * 2017-11-01 2020-03-24 International Business Machines Corporation Cognitive copy and paste
US10929613B2 (en) * 2017-12-29 2021-02-23 Aiqudo, Inc. Automated document cluster merging for topic-based digital assistant interpretation
US11120326B2 (en) * 2018-01-09 2021-09-14 Fujifilm Business Innovation Corp. Systems and methods for a context aware conversational agent for journaling based on machine learning
US10496382B2 (en) * 2018-02-22 2019-12-03 Midea Group Co., Ltd. Machine generation of context-free grammar for intent deduction
WO2019204086A1 (en) * 2018-04-18 2019-10-24 HelpShift, Inc. System and methods for processing and interpreting text messages
US11600194B2 (en) * 2018-05-18 2023-03-07 Salesforce.Com, Inc. Multitask learning as question answering
US11288566B2 (en) * 2018-05-31 2022-03-29 International Business Machines Corporation Building a gossip group of domain-specific chatbots
US11151175B2 (en) * 2018-09-24 2021-10-19 International Business Machines Corporation On-demand relation extraction from text
US10922493B1 (en) * 2018-09-28 2021-02-16 Splunk Inc. Determining a relationship recommendation for a natural language request
US11468071B2 (en) * 2018-11-30 2022-10-11 Rovi Guides, Inc. Voice query refinement to embed context in a voice query
US11544475B2 (en) * 2019-03-22 2023-01-03 Predictika Inc. System and method for providing a model-based intelligent conversational agent
WO2020205817A1 (en) * 2019-04-04 2020-10-08 Verint Americas Inc. Systems and methods for generating responses for an intelligent virtual assistant
US10629191B1 (en) * 2019-06-16 2020-04-21 Linc Global, Inc. Methods and systems for deploying and managing scalable multi-service virtual assistant platform
US20200410392A1 (en) * 2019-06-27 2020-12-31 Adobe Inc. Task-aware command recommendation and proactive help
US11354504B2 (en) * 2019-07-10 2022-06-07 International Business Machines Corporation Multi-lingual action identification

Also Published As

Publication number Publication date
EP3973469A1 (en) 2022-03-30
WO2021025668A1 (en) 2021-02-11
US20220245520A1 (en) 2022-08-04

Similar Documents

Publication Publication Date Title
US11704898B2 (en) Machine learning system and method for determining or inferring user action and intent based on screen image analysis
US11650712B2 (en) Selection ring user interface
US20220351296A1 (en) Educational decision-making tool
KR101213929B1 (ko) 컴퓨팅 및 통신 애플리케이션에서 기억도 모델을 구성 및사용하기 위한 시스템 및 방법
US20090049405A1 (en) System and method for implementing session-based navigation
US20120259926A1 (en) System and Method for Generating and Transmitting Interactive Multimedia Messages
US20200364099A1 (en) Task-Related Sorting, Application Discovery, and Unified Bookmarking for Application Managers
EP3942490B1 (en) Enhanced task management feature for electronic applications
CN110476162B (zh) 使用导航助记符控制显示的活动信息
US20190138165A1 (en) Web parts integration in social networking system
CN114041145A (zh) 用于生成和提供建议动作的系统和方法
CN113168354B (zh) 用于从一个或多个计算机应用中选择并提供可用动作给用户的系统和方法
Pozzi et al. Individuation and diversity: the need for idiographic HCI
CN107111657A (zh) 基于web内容的信息与web内容的web应用检索和显示
US20170140342A1 (en) Value-based organization
US20180348878A1 (en) Service Provider to Customer Gateway System
US20170048341A1 (en) Application usage monitoring and presentation
Pan Interface Design for the Memory Machine
Ying Design and Development of Mobile Application to Co-Create and Collect Local Heritage Stories
Beute Navigating distributed services

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