CN108268130B - 组推荐的虚拟助理生成 - Google Patents

组推荐的虚拟助理生成 Download PDF

Info

Publication number
CN108268130B
CN108268130B CN201710906362.0A CN201710906362A CN108268130B CN 108268130 B CN108268130 B CN 108268130B CN 201710906362 A CN201710906362 A CN 201710906362A CN 108268130 B CN108268130 B CN 108268130B
Authority
CN
China
Prior art keywords
user
recommendation
group
list
assistant
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
Application number
CN201710906362.0A
Other languages
English (en)
Other versions
CN108268130A (zh
Inventor
利龙·亚特齐夫
什洛莫·克雷普内尔
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
Priority to CN202110324175.8A priority Critical patent/CN113220175A/zh
Publication of CN108268130A publication Critical patent/CN108268130A/zh
Application granted granted Critical
Publication of CN108268130B publication Critical patent/CN108268130B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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
    • G06F3/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Operations Research (AREA)
  • Bioethics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Primary Health Care (AREA)

Abstract

本申请涉及组推荐的虚拟助理生成。在一个示例中,一种方法包括:响应于接收到为一组用户进行推荐的请求,并且基于该组的用户的第一隐私级别数据,生成用于该组的原始推荐列表。在该示例中,该方法还包括:由与该组的用户相关联的相应计算助理基于该组的用户的相应的第二隐私级别数据来评价来自推荐的原始列表的推荐以包括在用于该组的精简的推荐列表中,其中,第二隐私级别比第一隐私级别更受限制。在该示例中,该方法还包括响应于精简的推荐列表包括至少一项推荐而输出精简的推荐列表用于向组的用户呈现。

Description

组推荐的虚拟助理生成
技术领域
本申请涉及组推荐的虚拟助理生成。
背景技术
一些计算设备可以提供用户接口,用户可以从该用户接口与虚拟计算助理(例如,也称为“智能助理”或简称为“助理”)进行聊天、说话或以其他方式通信,以使助理响应用户的需求输出有用的信息,或以其他方式执行某些操作来帮助用户完成各种现实世界的或虚拟的任务。一些助理可以执行操作以同时帮助用户组,例如基于组成员的偏好来向用户组提供推荐。
发明内容
总的来说,本公开的技术可以使与组的用户相关联的虚拟的计算助理(例如,也称为“智能助理”或简称为“助理”)能够基于用户的私人信息为组提供推荐,而不向组的其他用户披露各个用户的私人信息。例如,计算助理可以基于用户的可用信息(例如,用户的公开信息或用户已经同意可用于推荐生成的信息)生成原始推荐列表。虽然原始推荐列表可能是该组用户普遍感兴趣的,但该组的一个或多个个人用户可能会有同意或反对某些推荐的私人偏好。因此,如果助理可以在生成推荐时访问指示私人偏好的用户的私人信息,那么原始推荐列表可能对该组更有意义。然而,可能不希望与特定用户相关联的助理访问另一私人信息和另一个用户的私人偏好。
根据本公开的一种和多种技术,每个相应的助理可以基于其相关联的用户的私人信息来评价来自原始列表的推荐,以便包括在精简的推荐列表中。如果其相关联的用户的相应私人信息指示相关联的用户对该推荐具有否定偏好,则每个相应的助理可以确定不包括(即,敲除)精简的列表中的推荐。然后,助理可以向用户呈现(即,显示或以其他方式输出)精简的列表。这样,相应的助理可以提供更高质量的组推荐,其考虑到组中每个用户的个人偏好,同时仍然保护其相关用户的私人信息的隐私。
在一个示例中,一种方法包括:响应于接收到为一组用户进行推荐的请求,并且基于该组的用户的第一隐私级别数据,生成用于该组的原始推荐列表。在该示例中,该方法还包括:由与该组的用户相关联的相应计算助理基于该组的用户的相应的第二隐私级别数据来评价来自推荐的原始列表的推荐以包括在用于该组的精简的推荐列表中,其中,第二隐私级别比第一隐私级别更受限制。在该示例中,该方法还包括响应于精简的推荐列表包括至少一项推荐而输出精简的推荐列表用于向组的用户呈现。
在另一示例中,一种计算设备包括:至少一个处理器;以及包括指令的至少一个存储器,所述指令在被执行时使得所述至少一个处理器提供助理,该助理被配置为:响应于接收到为一组用户进行推荐的请求并且基于该组的用户的第一隐私级别数据而生成用于该组的原始推荐列表;向与组的用户相关联的相应的计算助理输出原始推荐列表;从与组的用户相关联的相应的计算助理并且基于该组的用户的相应的第二隐私级别数据接收是否应将来自原始推荐列表的推荐包括在用于该组的精简的推荐列表中的指示,其中第二隐私级别比第一隐私级别更受限制;以及响应于精简的推荐列表包括至少一项推荐而输出精简的推荐列表以呈现给该组的用户。
在另一示例中,一种存储指令的非暂时性计算机可读存储介质,所述指令在被执行时使得计算设备的一个或多个处理器:响应于接收到为一组用户进行推荐的请求并且基于该组的用户的第一隐私级别数据而生成用于该组的原始推荐列表;向与组的用户相关联的相应的计算助理输出原始推荐列表;从与组的用户相关联的相应的计算助理并且基于该组的用户的相应的第二隐私级别数据接收是否应将来自原始推荐列表的推荐包括在用于该组的精简的推荐列表中的指示,其中第二隐私级别比第一隐私级别更受限制;以及响应于精简的推荐列表包括至少一项推荐而输出精简的推荐列表以呈现给该组的用户。
一个或多个示例的细节在附图和下面的描述中阐述。本公开的其它特征、目的和优点将从描述和附图以及权利要求显而易见。
附图说明
图1是示出根据本公开的一个或多个方面的执行示例虚拟助理的示例系统的概念图。
图2是示出根据本公开的一个或多个方面的示例计算设备的框图,该计算设备被配置为执行示例虚拟助理。
图3是示出根据本公开的一个或多个方面的示例计算系统的框图,该计算系统被配置为执行示例虚拟助理。
图4是示出根据本公开的一个或多个方面的由执行示例虚拟助理的一个或多个处理器执行的示例操作的流程图。
图5是示出根据本公开的一个或多个方面的由执行示例虚拟助理的一个或多个处理器执行的示例操作的流程图。
具体实施方式
图1是示出根据本公开的一个或多个方面的执行示例虚拟助理的示例系统的概念图。图1的系统100包括助理服务器系统160,其经由网络130与搜索服务器系统180和计算设备110A-110N(统称为“计算设备110”)通信。虽然系统100被示出为分布在助理服务器系统160、搜索服务器系统180和计算设备110之间,但是在其它示例中,属于系统100的特征和技术可以由计算设备110的本地组件在内部执行。类似地,助理服务器系统160可以包括某些组件并且执行在以下描述中本来归于搜索服务器系统180和/或计算设备110的各种技术。
网络130表示用于在计算系统、服务器和计算设备之间传输数据的任何公共或专用通信网络,例如蜂窝、Wi-Fi和/或其他类型的网络。助理服务器系统160可以经由网络130与计算设备110的计算设备交换数据,以提供当计算设备110连接到网络130时计算设备110可访问的虚拟助理服务。助理服务器系统160可以经由网络130与搜索服务器系统180交换数据以访问由搜索服务器系统180提供的搜索服务。计算设备110可以经由网络130与搜索服务器系统180交换数据以访问由搜索服务器系统180提供的搜索服务。
网络130可以包括一个或多个网络集线器、网络交换机、网络路由器或任何其他网络设备,其可操作地相互联接,从而提供在服务器系统160和180与计算设备110之间的信息交换。计算设备110、助理服务器系统160和搜索服务器系统180可以使用任何合适的通信技术来跨网络130发送和接收数据。计算设备110、助理服务器系统160和搜索服务器系统180可以各自使用相应的网络链路可操作地联接到网络130。将计算设备110、助理服务器系统160和搜索服务器系统180联接到网络130的链路可以是以太网或其他类型的网络连接,并且这样的连接可以是无线和/或有线连接。
助理服务器系统160和搜索服务器系统180表示任何合适的远程计算系统,例如能够向诸如网络130的网络发送和从该网络接收信息的一个或多个台式计算机、膝上型计算机、大型机、服务器、云计算系统等。助理服务器系统160托管虚拟助理服务(或至少提供对其的访问)。搜索服务器系统180托管搜索服务(或至少提供对其的访问)。在一些示例中,助理服务器系统160和搜索服务器系统180表示提供经由云对它们相应的服务的访问的云计算系统。
计算设备110中的每一个表示单独的移动或非移动计算设备。计算设备110的示例包括移动电话、平板计算机、膝上型计算机、台式计算机、服务器、大型机、机顶盒、电视机、可穿戴设备(例如、计算机化手表、计算机化眼镜、计算机化手套等)、家庭自动化设备或系统(例如、智能恒温器或家庭助理设备)、个人数字助理(PDA)、游戏系统、媒体播放器、电子书阅读器、移动电视平台、汽车导航或信息娱乐系统、或任何其他类型的移动、非移动、可穿戴和不可穿戴的计算设备,其被配置为执行或访问虚拟助理并经由诸如网络130的网络接收信息。
助理服务器系统160和/或搜索服务器系统180可以经由网络130与计算设备110通信,以使计算设备110访问由助理服务器系统160提供的虚拟助理服务和/或为计算设备110提供对由搜索服务器系统180提供的搜索服务的访问。在提供虚拟助理服务的过程中,助理服务器系统160可以经由网络130与搜索服务器系统180通信,以获得用于为用户提供虚拟助理服务信息以完成任务的搜索结果。
系统100可以向多个用户提供虚拟助理服务。虚拟助理服务可以由本地和远程组件的组合来提供。在图1的示例中,助理服务器系统160包括远程助理模块123A-123N(统称为“远程助理模块123”)和用户信息数据存储125A-125N(统称为“用户信息数据存储125”)。远程助理模块123中的每一个可以维护用户信息数据存储125中的相应用户信息数据存储作为助理服务器系统160经由网络130为特定用户提供的相应虚拟助理服务的一部分。例如,远程助理模块123A可以维护用户信息数据存储125A作为助理服务器系统160经由网络130为用户A提供的虚拟助理服务的一部分,远程助理模块123B可以维护用户信息数据存储125B作为助理服务器系统160经由网络130为用户B提供的虚拟助理服务的一部分...并且远程助理模块123N可以维护用户信息数据存储125N作为助理服务器系统160经由网络130为用户N提供的虚拟助理服务的一部分。
计算设备110A包括用户接口设备(UID)112、用户接口(UI)模块120、本地助理模块122A和用户信息数据存储124A。本地助理模块122A可以维护用户信息数据存储124A作为为诸如用户A的特定用户在计算设备110A上本地执行的虚拟助理服务的一部分。计算设备110中的其他计算设备可以包括类似于计算设备110A的组件。在一些示例中,计算设备110中的每个相应的计算设备可以包括与相应用户相关联的相应的本地助理模块和相应的用户信息数据存储。例如,计算设备110B可以包括与用户B相关联的本地助理模块122B(未示出)和用户信息数据存储124B(未示出)...并且计算设备110N可以包括与用户B相关联的本地助理模块122N(未示出)和用户信息数据存储124N(未示出)。本地助理模块122A–122N可以统称为“本地助理模块122”。用户信息数据存储124A–124N可以统称为“用户信息数据存储124”。
模块120、122、123和182可以执行使用在计算设备110、助理服务器系统160或搜索服务器系统180之一中驻留和/或在计算设备110、助理服务器系统160或搜索服务器系统180之一处执行的软件、硬件、固件或硬件、软件和固件的混合来描述的操作。计算设备110、助理服务器系统160和搜索服务器系统180可以执行具有多个处理器或多个设备的模块120、122、123和182。计算设备110、助理服务器系统160和搜索服务器系统180可以将模块120、122、123和182执行为在底层硬件上执行的虚拟机。模块120、122、123和182可以作为操作系统或计算平台的一个或多个服务执行。模块120、122、123和182可以作为在计算平台的应用层处的一个或多个可执行程序执行。
计算设备110A的UID 112可以用作计算设备110A的输入和/或输出设备。UID 112可以使用各种技术来实现。例如,UID 112可以用作使用存在敏感输入屏幕的输入设备,例如电阻式触摸屏、表面声波触摸屏、电容触摸屏、投影电容触摸屏、压敏屏幕、声学脉冲识别触摸屏或另一存在敏感显示器技术。
UID 112可以用作使用麦克风技术、红外传感器技术或用于接收用户输入的其他输入设备技术的输入设备。例如,UID 112可以使用内置麦克风技术来检测UI模块120和/或本地助理模块122处理以完成任务的语音输入。作为另一示例,UID 112可以包括可以从计算设备110A的用户接收触觉输入的存在敏感显示器。UID 112可以通过检测来自用户的一个或多个手势(例如,用户用手指或触控笔触摸或指向UID 112的一个或多个位置)来接收触觉输入的指示。
UID 112可以用作输出(例如,显示)设备并且向用户呈现输出。UID 112可以用作使用任何一个或多个显示设备的输出设备,例如液晶显示器(LCD)、点阵显示器、发光二极管(LED)显示器,有机发光二极管(OLED)显示器,电子墨水或能够向计算设备110A的用户输出可见信息的类似的单色或彩色显示器。UID 112可以用作使用扬声器技术、触觉反馈技术或用于向用户输出信息的其它输出设备技术的输出设备。UID 112可以呈现与由本地助理模块122和/或远程助理模块123A提供的虚拟助理相关的用户接口(例如,用户接口114)。UID 112可以呈现与在计算设备110处执行和/或可从计算设备110访问的计算平台、操作系统、应用和/或服务(例如,电子邮件、聊天、在线服务、电话、游戏等)的其他特征相关的用户接口。
UI模块120可以管理与UID 112和计算设备110A的其他组件的用户交互,包括与助理服务器系统160的交互,以便经由UID 112提供助理服务。当计算设备110A的用户在UID112处查看输出和/或提供输入时,UI模块120可以使UID 112输出用户接口,例如用户接口114(或其他示例用户接口)。当用户与用户接口在不同时间交互时,并且当用户和计算设备110A处于不同位置时,UI模块120和UID 112可以接收来自用户的输入(例如,语音输入、手势输入等)的一个或多个指示。UI模块120和UID 112可以解释在UID 112处检测到的输入,并且可以将关于在UID 112处检测到的输入的信息中继到本地助理模块122A和/或在例如计算设备110A处执行的一个或多个其他相关联的平台、操作系统、应用和/或服务,以使计算设备110A执行功能。
UI模块120可以从在计算设备110A和/或诸如服务器系统160和180的一个或多个远程计算系统上执行的一个或多个相关联的平台、操作系统、应用和/或服务接收信息和指令。此外,UI模块120可以充当在计算设备110A处执行的一个或多个相关联的平台、操作系统、应用和/或服务与计算设备110A的各种输出设备(例如,扬声器、LED指示器、音频或触觉输出设备等)之间的中介,以利用计算设备110A产生输出(例如,图形、闪光、声音、触觉响应等)。
搜索模块182可以执行对被确定为与搜索模块182自动生成(例如,基于与计算设备110A相关联的场境信息)或者搜索模块182从助理服务器系统160或计算设备110接收的搜索查询相关的信息的搜索(例如,作为虚拟助理代表计算设备110的计算设备的用户正在完成的任务的一部分)。搜索模块182可以基于搜索查询来进行因特网搜索以识别与各种信息源(例如,存储在本地或远程到搜索服务器系统180)当中的搜索查询相关的信息(例如,天气或交通状况、新闻、股票价格、运动分数、用户日程、运输日程、零售价格等)。在执行搜索之后,搜索模块182可以将从搜索返回的信息(例如,搜索结果)输出到助理服务器系统160或计算设备110中的计算设备。
在图1的示例中,用户接口114是与由计算设备110A访问的虚拟助理服务(例如,由助理服务器系统160的本地助理模块122和/或远程助理模块123A提供)相关联的图形用户接口。在一些示例中,用户接口114可以是可听的用户接口。如图1所示,用户接口114示出了在计算设备110A的用户(即,“用户A”),计算设备110B的用户(即,“用户B”)、计算设备110C的用户(即,“用户C”)和在计算设备110处执行或可访问的虚拟助理之间的对话的文本。用户接口114可以包括各种形式的虚拟助理信息,例如可听声、振动、文本、图形、内容卡、图像等。UI模块120可以使UID 112基于UI模块120经由网络130从助理服务器系统160接收的数据来输出用户接口114。UI模块120可以接收作为来自助理服务器系统160和/或本地助理模块122的输入以用于呈现用户接口114的信息(例如,音频数据、文本数据、图像数据等),以及来自助理服务器系统160和/或本地助理模块122的指令以用于在UID 112处在用户接口114内呈现信息。
计算设备110的本地助理模块122和助理服务器系统160的远程助理模块123可以各自执行本文所述的相似功能,以自动执行用于用户组的相应助理,该助理被配置为向该用户组提供推荐。远程助理模块123和用户信息数据存储125表示示例虚拟助理的服务器端或云实现,而本地助理模块122和用户信息数据存储124表示示例虚拟助理的客户端或本地实现。
模块122和123可以各自包括配置成作为智能个人助理执行的相应软件代理,智能个人助理可以为个人(例如,计算设备110中的计算设备的用户)执行任务或服务。模块122和123可以基于用户输入(例如,在UID 112处检测到)、位置感知(例如,基于场境)和/或访问来自各种信息源(例如,本地存储在计算设备110、助理服务器系统160上,或者经由搜索服务器系统180提供的搜索服务获得)的其他信息(例如,天气或交通状况、新闻、股票价格、运动分数、用户日程、运输日程、零售价格等)的能力来执行这些任务或服务。模块122和123可以执行人工智能和/或机器学习技术以代表用户自动识别和完成一个或多个任务。
由远程助理模块123和本地助理模块122提供的相应的助理可以自动创建、生成或以其他方式维护信息的个人记录并且将个人记录作为用户特定的值以结构化和语义的方式分别存储为用户信息数据存储124和用户信息数据存储125。数据存储124和125可以分别使由远程助理模块123和本地助理模块122执行的相应的助理能够快速访问个人信息(例如,用户特定的值)以完成真实世界任务、虚拟任务,或以其他方式响应于用户的即时或未来需求。
在首先接收到用户允许这样做的明确许可之后,助理模块122和123可以仅保留与用户相关联的个人记录。因此,用户可以完全控制他们的助理收集和使用关于其的信息的方式。例如,在保留与计算设备110A的用户A相关联的个人记录之前,助理模块122A和123A可以使UI模块120经由UID 112呈现用户接口,该用户接口请求用户A选择框、点击按钮、发出语音输入或以其他方式向用户接口提供特定输入,该特定输入由助理模块122A和123A解释为对助理模块122A和123A收集和使用用户A的个人信息的明确而肯定的同意。
在将个人信息存储在数据存储124和125之前,助理模块122和123可以将作为个人记录维护的信息加密或以其他方式处理以去除用户的实际身份。例如,该信息可以由助理模块122和123处理,使得当存储在数据存储124和125上时,任何个人可识别信息都从用户的个人记录中被移除。
助理模块122和123可以使UI模块120呈现用户接口,用户可以从用户接口修改或移除来自存储在数据存储124和125上的个人记录的信息。例如,用户接口可以提供区域,用户可以在该区域处提供输入以向助理模块122和123传送用于修改或移除个人信息的特定片段的命令。这样,计算设备110的每个用户可以完全控制由相应的助理模块122和123在数据存储124和125上保留的信息。
助理模块122和123可以使用户能够控制使用数据存储124和125中的信息的方式。例如,助理模块122和123可以将在数据存储124和125中的信息加标签、标记或以其他方式注释为具有各种隐私级别。例如,助理模块122和123可以将数据存储124和125中的一些信息标记为具有第一隐私级别,并且将数据存储124和125中的一些信息标记为具有第二隐私级别。第二隐私级别可能比第一隐私级别更具限制性。也就是说,标记为具有第二隐私级别的信息可以被认为比标记为具有第一隐私级别的信息更私密。在一些示例中,标记为具有第一隐私级别的信息可以是公共信息,或者可以其他方式公开获得的信息。
在执行各种操作的过程中,助理模块122和123可以将标记有各种隐私级别的数据存储124和125中的信息用于不同的目的。例如,信息越私密,助理模块122和123在保护信息方面可能越严格。例如,助理模块122和123可以向其他用户和/或与其他用户相关联的虚拟助理披露或以其他方式提供标记为公开的信息,而对其他用户和/或与其他用户相关联的虚拟助理隐藏或以其他方式保护标记为私密的信息。以这种方式,计算设备110的每个用户可以完全控制相应的助理模块122和123如何使用数据存储124和125上的信息。
由数据存储124和125存储的个人记录中的每个条目可以与可由助理模块122和123快速遍历或解析的预定义模式相关联,以在当前时间找到信息助理模块122和123所需要的信息,以了解用户需求并帮助用户完成任务。一旦个人信息已被记录为用户特有的一个或多个值,则与用户相关联的助理模块122和123中的助理模块可以快速地使用与用户相关联的存储在数据存储124和125上的信息来完成任务。如果没有正在进行的任务,则助理模块122和123可以向用户(例如,经由用户接口114)提供关于助理如何可以在将来使用该信息来帮助用户的示例。用户可以稍后在UID 112提供输入以命令助理模块122和123忘记或修改该信息。
由数据存储124和125存储的值可以是文本值(例如,人的姓名、地点的名称、实体的其他文本描述符)、数值(例如,年龄、身高、体重、其他生理数据、与实体相关联的其他数字信息)或指向与数据存储相关联的用户的特定值的指针(例如,指向用户的知识图中的实体的在存储器中的位置、指向地址簿中的联系人的存储器中的位置,等等)。换句话说,特定于用户的值可以采取许多形式并且特定于由记录模式定义的个人记录的字段。该值可以指示特定于用户的实际信息,或者可以是对可以从其检索特定于用户的信息的位置的引用。
计算设备110的用户可以在组中。组的示例包括但不限于社交媒体网站上的组、聊天室、群聊、用户组的特别指定或多个用户的任何其他联盟。计算设备110的用户可以自己加入组,被添加到组(在接收到用户的同意之后)或创建组。
助理模块122和123可以被配置成向一组用户提供一个或多个推荐,该推荐也称为组推荐或多用户推荐。例如,用户可以请求与该用户相关联的助理模块122和123中的助理模块为组提供一个或多个推荐。组推荐的一些示例包括但不限于娱乐(例如,组观看的电影的推荐)、食物(例如,组前往的饭店或酒吧的推荐)、旅行(例如,旅行地点、搭乘的航班或旅游的推荐)和分享的商品(例如,汽车/电视/游戏机的购买推荐)。
由与请求的用户(即,请求推荐的用户)相关联的助理模块122和123提供的组推荐的质量可以与对与请求的用户相关联的助理模块122和123可用的信息的质量有关。例如,与请求的用户相关联的助理模块122和123可以使用的关于组中的用户的信息越多,所得到的推荐的质量越高(即,该推荐将更可能被该组织的成员接受)。因此,可能需要与请求的用户相关联的助理模块122和123尽可能多地使用组中各个成员的个人信息,以便生成可能被该组的更多成员接受的推荐。
然而,该组的用户可能不希望他们的信息能够被该组的其他成员或与请求的用户相关联的助理模块122和123访问。因此,与请求的用户相关联的助理模块122和123可能对除了请求的用户之外的组的用户的信息仅具有有限的访问权。因此,与请求的用户相关联的助理模块122和123可以基于用于组的用户的第一隐私级别数据来生成原始推荐列表。第一隐私级数据可以包括该组的用户的公共信息和/或该组的用户已经同意可用于群组推荐目的的信息。由于原始推荐列表是基于该组的用户的有限数据生成的,所以原始推荐列表可能不像当与请求的用户相关联的助理模块122和123有权访问该组的其他用户的私人信息时那样质量高。
根据本公开的一种和多种技术,与组的用户相关联的助理模块122和123中的相应的助理模块可以基于该组的用户的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括用于在该组的精简的推荐列表中。例如,与该组的第一用户相关联的助理模块122和123(例如,助理模块122A和/或123A)可以基于第一用户的第二隐私级别来评价来自原始推荐列表的推荐,以包括在用于该组的精简的推荐列表中,与该组的第二用户相关联的助理模块122和123(例如,助理模块122B和/或123B)可以基于第二用户的第二隐私级别来评价来自原始推荐列表的推荐,以包括在用于该组的精简的推荐列表中,等等。第二隐私级别数据可能比第一隐私级别数据更受限制。例如,一些数据可能默认被标记为第二隐私级别数据,和/或该组的用户可能已经调整了一个或多个设置,以使数据被标记为第二隐私级别数据。
与组的用户相关联的助理模块122和123中的相应的助理模块可以将评价结果输出到与请求的用户相关联的助理模块122和123。例如,与组的用户相关联的助理模块122和123中的相应的助理模块可以针对原始推荐列表中的每个相应的推荐输出是否应将该相应推荐包括在用于该组的精简的推荐列表中的指示。当特定用户的第二隐私级别数据指示该特定用户对该推荐有任何否定偏好时,与该特定用户相关联的助理模块122和123可以确定特定推荐不应该被包括在精简的推荐列表中。当数据指示用户不接受该推荐、不喜欢该推荐、可以接受该推荐但更喜欢另一个选项、或具有任何其他否定含义时,用户的数据可以指示该用户对于推荐具有否定偏好。然而,可以不将理由或解释与评价结果一起提供给与请求的用户相关联的助理模块122和123。
与请求的用户相关联的助理模块122和123可以接收评价结果,并且确定是否应该将来自原始推荐列表的任何推荐包括在精简的推荐列表中。如果与组的用户相关联的助理模块122和123中没有相应的助理模块确定该推荐不应该被包括在精简的推荐列表中,则来自原始推荐列表的推荐应该被包括在精简的推荐列表中。
响应于精简的推荐列表包括至少一项推荐,与请求的用户相关联的助理模块122和123可以输出精简的推荐列表,以向组的用户呈现。例如,与请求的用户相关联的助理模块122和123可以将精简的推荐列表输出给与组的其他用户相关联的助理模块122和123,它们可以显示、说出或以其他方式输出以呈现给其相关联的用户。由于组的用户不知道原始推荐列表,并且该组的用户不知道哪个用户的助理模块导致推荐不被包括在精简的推荐列表中,所以与组的用户相关联的助理模块122和123中的相应助理模块可能会对来自原始推荐列表中的推荐有效地具有盲“否决权”。这样,助理模块122和123可以提供更高质量的推荐,同时仍保护其相关联的用户的私人信息的隐私。
在诸如上述示例的一些示例中,请求的用户可能被包括在为其生成推荐的用户组中。例如,用户可以请求针对该用户和一个或多个其他用户的推荐。这样,在这样的示例中,可以基于请求的用户的数据来生成推荐。在一些示例中,请求的用户可能不包括在为其生成推荐的用户组中。例如,用户可以请求针对其他用户的推荐(例如,管理助理可以请求针对一组其他用户的推荐)。因此,在这样的示例中,可以不基于请求的用户的数据来生成推荐。
上述方法提供的若干好处是:1)在利用用户的个人信息为包含该用户的组生成更高质量的推荐的同时,保持个人用户的个人信息的隐私性,2)生成更高质量的推荐,以最大限度减少达成组共识所需的时间以及由此的功率(如电池功率)的量。
图2是示出根据本公开的一个或多个方面的示例计算设备的框图,该计算设备被配置为执行示例虚拟助理。图2的计算设备210在下文中描述为图1的计算设备110中的计算设备的示例。图2仅示出了计算设备210的一个特定示例,并且计算设备210的许多其他示例可以在其他示例中使用,并且可以包括示例性计算设备210中包括的组件的子集,或者可以包括图2中未示出的附加组件。
如图2的示例所示,计算设备210包括用户接口设备(USD)212,一个或多个处理器240,一个或多个通信单元242,一个或多个输入组件244,一个或多个输出组件246以及一个或多个存储组件248。USD212包括显示组件202、存在敏感输入组件204、麦克风组件206和扬声器组件208。计算设备210的存储组件248包括UI模块220、助理模块222、搜索模块282、一个或多个应用模块226和用户信息数据存储224。
通信信道250可以互连组件212、240、242、244、246和248中的每一个,以用于组件间通信(物理地、通信地和/或可操作地)。在一些示例中,通信信道250可以包括系统总线、网络连接、进程间通信数据结构或用于传送数据的任何其它方法。
计算设备210的一个或多个通信单元242可以通过在一个或多个网络(例如,图1的系统100的网络130)上发送和/或接收网络信号而经由一个或多个有线和/或无线网络与外部设备(例如,图1的系统100的助理服务器系统160和/或搜索服务器系统180)通信。通信单元242的示例包括网络接口卡(例如,以太网卡)、光收发器、射频收发器、GPS接收器或可发送和/或接收信息的任何其他类型的设备。通信单元242的其它示例可以包括短波无线电、蜂窝数据无线电、无线网络无线电以及通用串行总线(USB)控制器。
计算设备210的一个或多个输入组件244可以接收输入。输入的示例为触觉、音频和视频输入。在一个示例中,计算设备210的输入组件242包括存在敏感输入设备(例如,触敏屏幕、PSD)、鼠标、键盘、语音应答系统、相机、麦克风或用于检测人或机器的输入的任何其他类型的设备。在一些示例中,输入组件242可以包括一个或多个传感器组件、一个或多个位置传感器(GPS组件、Wi-Fi组件、蜂窝组件)、一个或多个温度传感器、一个或多个运动传感器(例如,加速度计、陀螺仪)、一个或多个压力传感器(例如,气压计)、一个或多个环境光传感器和一个或多个其他传感器(例如,红外接近传感器、湿度计传感器等)。仅举几个其他非限制性示例,其他传感器可以包括心率传感器、磁力计、葡萄糖传感器、嗅觉传感器、罗盘传感器、计步器传感器。
计算设备110的一个或多个输出组件246可以生成输出。输出的示例为触觉、音频和视频输出。在一个示例中,计算设备210的输出组件246包括存在敏感显示器、声卡、视频图形适配器卡、扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)或用于生成到人或机器的输出的任何其他类型的设备。
计算设备210的UID 212可以类似于计算设备110的UID 112,并且包括显示组件202、存在敏感输入组件204、麦克风组件206和扬声器组件208。显示组件202可以是屏幕,在该处信息由USD 212显示,而存在敏感输入组件204可以检测显示组件202处和/或附近的对象。扬声器组件208可以是由UID 212从其播放可听信息的扬声器,而麦克风组件206可以检测在显示部件202和/或扬声器部件208处和/或附近提供的可听输入。
虽然被示出为计算设备210的内部组件,但是UID 212还可以表示与计算设备210共享数据路径以发送输入和/或接收输出的外部组件。例如,在一个示例中,UID 212表示位于计算设备210的外部包装内并物理连接到外部包装的计算设备210的内置组件(例如,移动电话上的屏幕)。在另一示例中,UID 212表示计算设备210的外部组件,其位于计算设备210的包装或外壳的外部并与包装或外壳物理分离(例如,与计算设备210共享有线和/或无线数据路径的监视器、投影仪等)。
作为一个示例范围,存在敏感输入组件204可以检测诸如在显示组件202的2英寸或更小的距离内的手指或触控笔的对象。存在敏感输入组件204可以确定对象在该处被检测的显示组件202的位置(例如,[x,y]坐标)。在另一示例范围中,存在敏感输入组件204可以检测到显示组件202的距离为6英寸或更小的对象,并且其他范围也是可能的。存在敏感输入组件204可以使用电容、电感和/或光学识别技术来确定由用户的手指选择的显示组件202的位置。在一些示例中,存在敏感输入组件204还使用如关于显示组件202所描述的触觉、音频或视频刺激向用户提供输出。在图2的示例中,PSD 212可以呈现用户接口(例如,图1的图形用户接口114)。
扬声器组件208可以包括内置于计算设备210的外壳的扬声器,并且在一些示例中,可以是内置于一组有线或无线耳机的扬声器,耳机可操作地联接到计算设备210。麦克风组件206可以检测发生在UID 212处或附近的可听输入。麦克风组件206可以执行各种噪声消除技术以去除背景噪声并将用户言语与检测到的音频信号隔离开。
计算设备210的UID 212可以检测作为来自计算设备210的用户的输入的二维和/或三维手势。例如,UID 212的传感器可以在UID 212的传感器的阈值距离内检测用户的移动(例如,移动手、手臂、笔、触控笔)。UID 212可以确定移动的二维或三维向量表示,并将向量表示与具有多个维度的手势输入(例如,挥手、捏、拍、笔画等)相关联。换句话讲,UID 212可以在不要求用户在UID 212输出信息以进行显示的屏幕或表面处或附近作手势的情况下检测多维手势。相反,UID 212可以检测在传感器处或附近执行的多维手势,该传感器可以或可以不位于UID 212输出用于显示的信息的屏幕或表面附近。
一个或多个处理器240可以实现与计算设备210相关联的功能和/或执行与计算设备210相关联的指令。处理器240的示例包括应用处理器、显示控制器、辅助处理器、一个或多个传感器集线器、以及配置成用作处理器、处理单元或处理设备的任何其他硬件。模块220、222、226和282可以由处理器240操作以执行计算设备210的各种动作、操作或功能。例如,计算设备210的处理器240可以检索和执行由存储组件248存储的指令,指令导致处理器240执行操作模块220、222、226和282。当由处理器240执行时,指令可以使计算设备210将信息存储在存储组件248内。
计算设备210内的一个或多个存储组件248可以存储用于在计算设备210的操作期间进行处理的信息(例如,在数据在计算设备210处执行期间,计算设备210可以存储由模块220、222、226和282访问的数据)。在一些示例中,存储组件248是临时存储器,这意味着存储组件248的主要目的不是长期存储。计算设备210上的存储组件248可以被配置为用于信息的短期存储的易失性存储器,因此如果断电则不保留存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)以及本领域已知的其它形式的易失性存储器。
在一些示例中,存储组件248也包括一个或多个计算机可读存储介质。在一些示例中,存储组件248包括一个或多个非暂时的计算机可读存储介质。存储组件248可以被配置成存储比通常由易失性存储器存储的更大量的信息。存储组件248还可以被配置用于信息的长期存储的非易失性存储器空间并且在电源接通/关闭循环之后保留信息。非易失性存储器的示例包括磁性硬盘、光盘、软盘、闪存或电可编程存储器(EPROM)或电可擦除和可编程(EEPROM)存储器的形式。存储组件248可以存储与模块220、222、226和282以及数据存储224相关联的程序指令和/或信息(例如,数据)。存储组件248可以包括存储器,该存储器被配置为存储与模块220、222、226和282以及数据存储224相关联的数据或其他信息。
UI模块220可以包括图1的计算设备110的UI模块120的所有功能,并且可以执行与UI模块120类似的操作,以用于管理计算设备210例如在212处提供的用户接口(例如,用户接口114),以促进计算设备110的用户与助理模块222之间的交互。例如,计算设备210的UI模块220可以从助理模块222接收包括用于输出(例如,显示或播放音频)助理用户接口(例如,用户接口114)的指令的信息。UI模块220可以通过通信信道250从助理模块222接收信息,并使用数据来生成用户接口。UI模块220可以通过通信信道250发送显示或可听输出命令和相关联的数据,以使UID 212在UID 212处呈现用户接口。
在一些示例中,UI模块220可以接收在UID 212处检测到的一个或多个用户输入的指示,并且可以将关于用户输入的信息输出到助理模块222。例如,UID 212可以检测来自用户的语音输入并向UI模块220发送关于该语音输入的数据。
UI模块220可以向助理模块222发送语音输入的指示以进一步解释。助理模块222可以基于语音输入来确定检测到的语音输入表示用户对助理模块222执行一个或多个任务的请求。
应用模块226表示在计算设备210处执行并可从计算设备210访问的所有各种单独应用和服务,其可以由诸如助理模块222的助理访问,以向用户提供信息和/或执行任务。计算设备210的用户可以与与一个或多个应用模块226相关联的用户接口进行交互,以使计算设备210执行功能。应用模块226的许多示例可以存在并且包括健身应用、日历应用、搜索应用、地图或导航应用、运输服务应用(例如,公交车或列车跟踪应用)、社交媒体应用、游戏应用、电子邮件应用、聊天或消息传递应用、因特网浏览器应用、或可以在计算设备210执行的任何和所有其他应用。
计算设备210的搜索模块282可以代表计算设备210执行集成搜索功能。搜索模块282可以由UI模块220,应用模块226中的一个或多个和/或助理模块222来调用以代表它们执行搜索。当被调用时,搜索模块282可以执行搜索功能,例如,生成搜索查询并且基于生成的搜索查询在各种本地和远程信息源上执行搜索。搜索模块282可以将执行的搜索的结果提供给调用的组件或模块。也就是说,搜索模块282可以响应于调用命令将搜索结果输出到UI模块220、助理模块222和/或应用模块226。
助理模块222可以包括图1的计算设备110中的计算设备的本地助理模块122中的本地助理模块的所有功能,并且可以执行与用于提供助理的本地助理模块类似的操作。在一些示例中,助理模块222可以在本地(例如,在处理器240处)执行以提供助理功能。在一些示例中,助理模块222可以充当计算设备210可访问的远程助理服务的接口。例如,助理模块222可以是到图1的助理服务器系统160的远程助理模块124中的远程助理模块的接口或应用编程接口(API)。
类似于图1的系统100的用户信息数据存储124和125,用户信息数据存储224可以存储由助理模块222创建的个人记录,其包括助理模块222已经学习或被提供的关于计算设备210的用户的信息。除了由搜索模块282提供的任何信息之外,助理模块222还可以依赖于存储在数据存储224处的信息,以执行助理任务。
类似于图1的助理模块122和123,助理模块222可以被配置成生成针对一组用户的推荐。例如,助理模块222可以基于该组的用户的第一隐私级别数据来生成原始推荐列表,并且输出原始推荐列表,以便由与该组的其他用户相关联的计算助理进行评价。助理模块222可以从与该组的其他用户相关联的计算助理接收关于来自原始推荐列表的推荐是否应被包括在用于该组的精简的推荐列表中的指示。在一些示例中,指示可以是肯定的。例如,与该组的另一个用户相关联的计算助理可以向助理模块222输出来自原始推荐列表的推荐的列表,这些推荐被批准包括在精简的推荐列表中。在一些示例中,指示可以是否定的。例如,与该组的另一个用户相关联的计算助理可以向助理模块222输出未被批准包括在精简的推荐列表中的来自原始推荐列表的推荐的列表(即,与另一个用户相关联的计算助理否决的来自原始推荐列表的推荐的列表)。
与该组的用户相关联的计算助理可以基于该组的用户的相应的第二隐私级别数据来生成指示。如上所述,标记有第二隐私级别的数据的使用可能比标记有第一隐私级别的数据更受限制。同样如上所述,可以向该组的用户提供用于控制哪些数据被标记为第二隐私级别的选项,并且与该组的其他用户相关联的计算助理可以接收同意以使用标记有第二隐私级别的数据用于生成组推荐。
当特定用户的第二隐私级别数据指示该特定用户对该推荐有任何否定偏好时,与该组的该特定用户相关联的计算助理可以确定特定推荐不应该被包括在精简的推荐列表中。当数据指示用户不接受该推荐、不喜欢该推荐、可以接受该推荐但更喜欢另一个选项、或具有任何其他否定含义时,用户的数据可以指示该用户对于推荐具有否定偏好。
助理模块222可以基于由计算助理执行的评价来生成精简的推荐列表。例如,助理模块222可以确定包括在原始推荐列表中的每个相应的推荐是否已被至少一个计算助理否决。如果原始推荐列表中的推荐没有被任何计算助理否决,则助理模块222可以将该推荐包括在精简的推荐列表中。
响应于精简的推荐列表包括至少一项推荐(即,在来自原始推荐列表的至少一项推荐未被与该组的用户相关联的任何计算助理否决的情况下),助理模块222可以输出精简的推荐列表以呈现给该组的用户。作为一个示例,助理模块222可以使UI模块220经由显示组件202显示包括精简的推荐列表的GUI。作为另一示例,助理模块222可以使UI模块220经由扬声器组件208输出包括精简的推荐列表的合成语音。作为另一示例,助理模块222可以将精简的推荐列表输出到与该组的其他用户相关联的计算助理,计算助理然后可以向其相应的用户显示、说出或以其他方式输出精简的推荐列表。
在一些示例中,精简的推荐列表可能不包括任何推荐。例如,来自原始推荐列表的每个推荐都可能被与该组的用户相关联的计算助理中的至少一个计算助理否决。在一些示例中,助理模块222可以通知计算设备210的用户助理模块222无法为该组生成任何推荐。然而,助理模块222不能为组生成任何推荐可能是不期望的,特别是在基于用户对推荐具有任何否定偏好而精简掉推荐的情况下。
根据本公开的一种和多种技术,助理模块222可以使与组的用户相关联的计算助理基于该组的用户的加权的第二隐私级别数据来评价来自原始推荐列表的推荐,以便包括在修改后的精简的推荐列表中。作为一个示例,响应于确定用于该组的特定用户的第二隐私级别数据指示该特定用户对该推荐具有完全否定的偏好,与该组的该特定用户相关联的计算助理可以确定来自原始推荐列表的推荐不应被包括在修改后的精简的推荐列表中。作为另一示例,响应于确定用于该组的特定用户的第二隐私级别数据指示该特定用户对该推荐具有部分否定的偏好,与该组的该特定用户相关联的计算助理可以确定来自原始推荐列表的推荐应被包括在修改后的精简的推荐列表中。
当数据指示用户不接受该推荐、不喜欢该推荐、绝不接受该推荐或具有任何其他完全否定偏好时,该用户的数据可以指示该用户对于推荐具有完全否定偏好。例如,指示用户是素食主义者的数据可能表明,如果用户对于去牛排馆会感到被冒犯,则用户具有完全否定偏好。当数据指示用户可以接受该推荐但是更喜欢另一个选项、通常不喜欢该推荐但是为了组可以接受该推荐或具有任何其他缓和的含义时,用户的数据可以指示用户对于推荐具有部分否定偏好。例如,指示用户是素食主义者的数据可能表明,如果用户对于点沙拉感觉还可以,则用户具有部分否定偏好。
助理模块222可以基于由计算助理执行的评价来生成修改后的精简的推荐列表。例如,助理模块222可以确定包括在原始推荐列表中的每个相应的推荐是否已被至少一个计算助理基于加权的数据而否决。如果来自原始推荐列表的推荐未被任何计算助理基于加权的数据而否决,助理模块222可以将该推荐包括在修改后的精简的推荐列表中。
响应于修改后的精简的推荐列表包括至少一项推荐,助理模块222可以输出修改后的精简的推荐列表以呈现给该组的用户。作为一个示例,助理模块222可以使UI模块220经由显示组件202显示包括修改后的精简的推荐列表的GUI。作为另一示例,助理模块222可以使UI模块220经由扬声器组件208输出包括修改后的精简的推荐列表的合成语音。作为另一示例,助理模块222可以将修改后的精简的推荐列表输出到与该组的其他用户相关联的计算助理,计算助理然后可以向其相应的用户显示、说出或以其他方式输出修改后的精简的推荐列表。
在一些示例中,与该组的用户相关联的计算助理(包括助理模块222)可以避免输出用于生成推荐列表(精简的或修改后的精简的)的数据的任何指示。例如,计算助理可以避免指示推荐列表是基于第二隐私级别数据(即,是精简的列表)还是加权的第二隐私级别数据(即,是修改后的精简的列表)。计算助理可以避免输出关于原始推荐列表的任何指示。因此,计算助理可以使得能够基于组成员的私人数据生成组推荐,而不会泄露私人数据。这样,计算助理可以为组生成更高质量的推荐。
图3是示出根据本公开的一个或多个方面的示例计算系统的框图,该计算系统被配置为执行示例虚拟助理。图3的助理服务器系统360在下文中描述为图1的助理服务器系统160的示例。图3仅示出了助理服务器系统360的一个特定示例,并且助理服务器系统360的许多其他示例可以在其他示例中使用,并且可以包括示例助理服务器系统360中包括的组件的子集,或者可以包括图3中未示出的附加组件。
如图3的示例中所示,助理服务器系统360包括一个或多个处理器340、一个或多个通信单元342和一个或多个存储设备348。存储设备348包括助理模块322、搜索模块382和用户信息数据存储325A–325N(统称为“用户信息数据存储325”)。
处理器340类似于图2的计算系统210的处理器240。通信单元342类似于图2的计算系统210的通信单元242。存储设备348类似于图2的计算系统210的存储设备248。通信信道350类似于图2的计算系统210的通信信道250,并且因此可以互连组件340、342和348中的每一个以进行组件间通信。在一些示例中,通信信道350可以包括系统总线、网络连接、进程间通信数据结构或用于传送数据的任何其它方法。
助理服务器系统360的搜索模块382类似于计算设备210的搜索模块282,并且可以代表助理服务器系统360执行集成搜索功能。也就是说,搜索模块482可以代表助理模块322执行搜索操作。在一些示例中,搜索模块382可以与外部搜索系统进行交互以代表助理模块322执行搜索操作。当被调用时,搜索模块382可以执行搜索功能,例如,生成搜索查询并且基于生成的搜索查询在各种本地和远程信息源上执行搜索。搜索模块382可以将执行的搜索的结果提供给调用的组件或模块。也就是说,搜索模块382可以将搜索结果输出到助理模块322。
助理模块322可以包括图1的本地助理模块122中的本地助理模块和远程助理模块123中的远程助理模块以及图2的计算设备210的助理模块222的所有功能。助理模块322可以执行与远程助理模块122中的远程助理模块类似的操作,以提供可经由助理服务器系统360访问的助理服务。也就是说,助理模块322可以用作到远程助理服务的接口,该远程助理服务对于通过网络与助理服务器系统360通信的计算设备是可访问的。例如,助理模块322可以是到图1的助理服务器系统160的远程助理模块122中的远程助理模块的接口或API。
类似于图1的系统100的用户信息数据存储124和125,用户信息数据存储325可以分别存储由助理模块322创建的个人记录,其包括助理模块322已经学习或被提供的关于相应的用户的信息。除了由搜索模块382提供的任何信息,助理模块322还可以依赖于存储在数据存储325处的信息,以执行助理任务。
图4是示出根据本公开的一个或多个方面的由执行示例虚拟助理的一个或多个处理器执行的示例操作的流程图。下面在图1的系统100的场境中描述图4。例如,根据本公开的一个或多个方面,当在计算设备110A的一个或多个处理器处执行时,本地助理模块122A可以执行操作402-420中的一个或多个。并且在一些示例中,根据本公开的一个或多个方面,当在助理服务器系统160的一个或多个处理器处执行时,远程助理模块122A可以执行操作402-420中的一个或多个。仅为了说明的目的,下面在图1的计算设备110A的场境中描述图4。
在操作中,计算设备110A可以接收对于为一组用户生成推荐的请求(402)。如在图1的示例中所示,用户A、用户B和用户C可以在群聊中。用户A可能会问:“大家还有兴趣在三月份旅行吗?”,用户B可能会回答说“我有兴趣”,用户C可能会问“你考虑去哪里?”。然而,看到聊天的情况,用户B可能会说“别再这样,我们总是说不到一起”。为了避免讨论潜在的目的地,用户A可能会说他们会“让他们的虚拟助理提供一些推荐”。在图1的示例中,用户A可以通过输入助理激活命令来向他们的虚拟助理询问一些推荐,并提供对该组用户的推荐的请求。例如,UI模块120可以在用户A的UID 112处接收用户输入的指示,其中用户A键入“@assistant我们应该在3月份去哪里旅行”。UI模块120可以将用户输入提供到助理模块122A和/或123A。
与组的用户相关联的助理模块可以获得组的用户的同意,以使用第一和第二隐私级别数据(404)。例如,助理模块122A和/或123A可以获得用户A的同意以使用用户A的第一和第二隐私级别数据,助理模块122B和/或123B可以获得用户B的同意以使用用户B的第一和第二隐私级别数据,并且助理模块122C和/或123C可以获得用户C的同意以使用用户C的第一和第二隐私级别数据。
助理模块122A和/或123A可以基于该组的用户的第一隐私级别数据来生成用于该组的原始推荐列表(406)。例如,助理模块122A和/或123A可以评价用户A、用户B和用户C的第一隐私级别数据而生成原始推荐列表。在该示例中,用于组的第一隐私级别数据可以指示用户A、用户B和用户C都喜欢冬季山地运动(例如,滑雪或滑雪板运动)、波旁酒和热带度假。基于第一隐私级别数据,助理模块122A和/或123A可以生成原始推荐列表,以包括适合冬季山地运动的博兹曼山、适合品尝波旁酒和参观酿酒厂的肯塔基州列克星敦市、以及适合海滩度假的加勒比岛。助理模块122A和/或123A可以传播或以其他方式输出原始推荐列表到与组的其他用户相关联的计算助理。例如,助理模块122A和/或123A可以将原始推荐列表输出到与用户B相关联的计算助理(例如,助理模块122B和/或123B)、以及与用户C相关联的计算助理(例如,助理模块122C和/或123C)。
与组的用户相关联的相应的计算助理可以基于该组的用户的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在精简的推荐列表中(408)。例如,助理模块122A和/或123A可以基于用户A的第二隐私级别数据来确定用户A是否对来自原始推荐列表的推荐有任何否定的偏好。类似地,与用户B相关联的计算助理可以基于用户B的第二隐私级别数据来确定用户B是否对来自原始推荐列表的推荐有任何否定的偏好,并且与用户C相关联的计算助理可以基于用户C的第二隐私级别数据来确定用户C是否对来自原始推荐列表的推荐有任何否定的偏好。
继续上述示例,助理模块122A和/或123A可以至少基于指示用户A最近去滑雪旅行的用户A的第二隐私级别数据来确定用户A对在博兹曼山的冬季山地运动具有部分否定偏好。因此,助理模块122A和/或123A可以确定在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂以及在加勒比岛的海滩度假应该被包括在精简的列表中,并且不应将在博兹曼山的冬季山地运动包括在精简的列表中。
与用户B相关联的计算助理可以至少基于用户B的第二隐私级别数据(该数据指示,用户B正打算要小孩,并且进行了关于寨卡病毒的大量搜索)和指示加勒比岛上存在寨卡病毒的数据来确定用户B对于加勒比岛具有完全否定的偏好。因此,与用户B相关联的计算助理可以确定在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂以及在博兹曼山的冬季山地运动应该被包括在精简的列表中,并且不应将在加勒比岛的海滩度假包括在精简的列表中。
与用户C相关联的计算助理可以至少基于指示用户C已尝试少饮酒的用户C的第二隐私级别数据来确定用户C对在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂具有部分否定偏好。因此,与用户C相关联的计算助理可以确定在博兹曼山的冬季山地运动和在加勒比岛的海滩度假应该被包括在精简的列表中,并且不应将在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂包括在精简的列表中。
助理模块122A和/或123A可以基于由计算助理执行的评价来生成精简的推荐列表。例如,助理模块122A和/或123A可以确定包括在原始推荐列表中的每个相应的推荐是否已被至少一个计算助理否决。如果来自原始推荐列表的推荐没有被任何计算助理否决,则助理模块122A和/或123A可以将该推荐包括在精简的推荐列表中。
助理模块122A和/或123A可以确定在所得到的精简的推荐列表中是否存在任何推荐(410)。响应于精简的推荐列表包括至少一项推荐(即,在来自原始推荐列表的至少一项推荐未被与该组的用户相关联的任何计算助理否决的情况下)(410的“是”分支),助理模块122A和/或123A可以输出精简的推荐列表(412)。作为一个示例,助理模块122A和/或123A可以使UI模块120显示包括精简的推荐列表的GUI。作为另一示例,助理模块122A和/或123A可以使UI模块120输出包括精简的推荐列表的合成语音。作为另一示例,助理模块122A和/或123A可以将精简的推荐列表输出到与该组的其他用户相关联的计算助理,计算助理然后可以向其相应的用户显示、说出或以其他方式输出精简的推荐列表。
响应于精简的推荐列表不包括至少一项推荐(410的“否”分支),与组的用户相关联的相应的计算助理可以基于该组用户的加权的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在修改后的精简的推荐列表中(414)。在一些示例中,评价可以同时执行。例如,与组的用户相关联的相应的计算助理可以基于用于该组的用户的相应的第二隐私级别数据来同时评价来自原始推荐列表的推荐以包括在精简的推荐列表中,并且基于该组的用户的加权的第二个隐私级别数据来评价来自原始推荐列表的推荐以包括在修改后的精简的推荐列表中。如果修改后的精简的列表包括至少一项推荐(416的“是”分支),则助理模块122A和/或123A可以输出修改后的精简的推荐列表(418)。例如,助理模块122A和/或123A可以以类似于上述精简的推荐列表的输出的方式输出修改后的精简的推荐列表。如果修改后的精简的列表不包括至少一项推荐(416的“否”分支),则助理模块122A和/或123A可以输出计算助理不能为该组提供任何推荐的指示(420)。
继续上述示例,其中原始推荐列表包括适合冬季山地运动的博兹曼山、适合品尝波旁酒和参观酿酒厂的肯塔基州列克星敦市、以及适合海滩度假的加勒比岛。助理模块122A和/或123A可以基于评价确定在精简列表中没有剩余的推荐。具体地讲,博兹曼山的冬季山地运动被用户A的计算助理(即助理模块122A和/或123A)否决,在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂被用户C的计算助理(即助理模块122C和/或123C)否决,并且在加勒比岛的海滩度假被用户B的计算助理(即助理模块122B和/或123B)否决。
与用户A、用户B和用户C相关联的计算助理可以基于相应的用户的加权的相应的第二隐私级别数据来评价来自原始推荐列表的推荐,以便包括在修改后的精简的推荐列表中。例如,因为用户A的第二个隐私级别数据表明,用户A只对博兹曼山的冬季山地运动有部分否定的偏好,并且没有对在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂和在加勒比岛的海滩度假的否定偏好,所以助理模块122A和/或123A可以确定在博兹曼山的冬季山地运动、在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂和在加勒比岛的海滩度假都应被包括在修改后的精简的列表中。类似地,因为用户C的第二个隐私级别数据表明,用户C只对在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂有部分否定的偏好,并且没有对博兹曼山的冬季山地运动和在加勒比岛的海滩度假的否定偏好,所以与用户C相关联的计算助理可以确定在博兹曼山的冬季山地运动、在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂和在加勒比岛的海滩度假都应被包括在修改后的精简的列表中。然而,因为用户B的第二个隐私级别数据表明,用户B对在加勒比岛的海滩度假具有完全否定偏好,并且对在博兹曼山的冬季山地运动和在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂没有否定偏好,所以与用户B相关联的计算助理可以确定在博兹曼山的冬季山地运动和在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂应被包括在修改后的精简的列表中,并且在加勒比岛的海滩度假不应被包括在修改后的精简的列表中。
助理模块122A和/或123A可以基于评价确定在博兹曼山的冬季山地运动和在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂应被包括在修改后的精简的列表中。由于修改后的精简的列表包括至少一项推荐,因此助理模块122A和/或123A可以输出修改后的精简的列表以呈现给该组的用户。
图5是示出根据本公开的一个或多个方面的由执行示例虚拟助理的一个或多个处理器执行的示例操作的流程图。下面在图1的系统100的场境中描述图5。例如,根据本公开的一个或多个方面,当在计算设备110A的一个或多个处理器处执行时,本地助理模块122A可以执行操作502-524中的一个或多个。并且在一些示例中,根据本公开的一个或多个方面,当在助理服务器系统160的一个或多个处理器处执行时,远程助理模块122A可以执行操作402-520中的一个或多个。仅为了说明的目的,下面在图1的计算设备110A的场境中描述图5。
在操作中,计算设备110A可以接收对于为一组用户生成推荐的请求(502)。如在图1的示例中所示,用户A、用户B和用户C可以在群聊中。用户A可能会问:“大家还有兴趣在三月份旅行吗?”,用户B可能会回答说“我有兴趣”,用户C可能会问“你考虑去哪里?”。然而,看到聊天的情况,用户B可能会说“别再这样,我们总是说不到一起”。为了避免讨论潜在的目的地,用户A可能会说他们会“让他们的虚拟助理提供一些推荐”。在图1的示例中,用户A可以通过输入助理激活命令来向他们的虚拟助理询问一些推荐,并提供对该组用户的推荐的请求。例如,UI模块120可以在用户A的UID 112处接收用户输入的指示,其中用户A键入“@assistant我们应该在3月份去哪里旅行”。UI模块120可以将用户输入提供到助理模块122A和/或123A。
与组的用户相关联的助理模块可以获得组的用户的同意,以使用第一和第二隐私级别数据(504)。例如,助理模块122A和/或123A可以获得用户A的同意以使用用户A的第一和第二隐私级别数据,助理模块122B和/或123B可以获得用户B的同意以使用用户B的第一和第二隐私级别数据,并且助理模块122C和/或123C可以获得用户C的同意以使用用户C的第一和第二隐私级别数据。
助理模块122A和/或123A可以基于该组的用户的第一隐私级别数据来生成用于该组的原始推荐列表(506)。例如,助理模块122A和/或123A可以评价用户A、用户B和用户C的第一隐私级别数据而生成原始推荐列表。在该示例中,用于组的第一隐私级别数据可以指示用户A、用户B和用户C都喜欢冬季山地运动(例如,滑雪或滑雪板运动)、波旁酒和热带度假。基于第一隐私级别数据,助理模块122A和/或123A可以生成原始推荐列表,以包括适合冬季山地运动的博兹曼山、适合品尝波旁酒和参观酿酒厂的肯塔基州列克星敦市、以及适合海滩度假的加勒比岛。助理模块122A和/或123A可以传播或以其他方式输出原始推荐列表到与组的其他用户相关联的计算助理。例如,助理模块122A和/或123A可以将原始推荐列表输出到与用户B相关联的计算助理(例如,助理模块122B和/或123B)、以及与用户C相关联的计算助理(例如,助理模块122C和/或123C)。
与组的用户相关联的相应的计算助理可以基于该组的用户的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在精简的推荐列表中(508)。例如,助理模块122A和/或123A可以基于用户A的第二隐私级别数据来确定用户A是否对来自原始推荐列表的推荐有任何否定的偏好。类似地,与用户B相关联的计算助理可以基于用户B的第二隐私级别数据来确定用户B是否对来自原始推荐列表的推荐有任何否定的偏好,并且与用户C相关联的计算助理可以基于用户C的第二隐私级别数据来确定用户C是否对来自原始推荐列表的推荐有任何否定的偏好。
继续上述示例,助理模块122A和/或123A可以至少基于指示用户A最近去滑雪旅行的用户A的第二隐私级别数据来确定用户A对在博兹曼山的冬季山地运动具有部分否定偏好(例如,60%的反对)。因此,助理模块122A和/或123A可以确定在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂以及在加勒比岛的海滩度假应该被包括在精简的列表中,并且不应将在博兹曼山的冬季山地运动包括在精简的列表中。
与用户B相关联的计算助理可以至少基于用户B的第二隐私级别数据(该数据指示,用户B正打算要小孩,并且进行了关于寨卡病毒的大量搜索)和指示加勒比岛上存在寨卡病毒的数据来确定用户B对于加勒比岛具有完全否定的偏好(例如,100%的反对)。因此,与用户B相关联的计算助理可以确定在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂以及在博兹曼山的冬季山地运动应该被包括在精简的列表中,并且不应将在加勒比岛的海滩度假包括在精简的列表中。
与用户C相关联的计算助理可以至少基于指示用户C已尝试少饮酒的用户C的第二隐私级别数据来确定用户C对在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂具有部分否定偏好(例如,25%的反对)。因此,与用户C相关联的计算助理可以确定在博兹曼山的冬季山地运动和在加勒比岛的海滩度假应该被包括在精简的列表中,并且不应将在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂包括在精简的列表中。
助理模块122A和/或123A可以基于由计算助理执行的评价来生成精简的推荐列表。例如,助理模块122A和/或123A可以确定包括在原始推荐列表中的每个相应的推荐是否已被至少一个计算助理否决。如果来自原始推荐列表的推荐没有被任何计算助理否决,则助理模块122A和/或123A可以将该推荐包括在精简的推荐列表中。
助理模块122A和/或123A可以确定在所得到的精简的推荐列表中是否存在任何推荐(510)。响应于精简的推荐列表包括至少一项推荐(即,在来自原始推荐列表的至少一项推荐未被与该组的用户相关联的任何计算助理否决的情况下)(510的“是”分支),助理模块122A和/或123A可以输出精简的推荐列表(512)。作为一个示例,助理模块122A和/或123A可以使UI模块120显示包括精简的推荐列表的GUI。作为另一示例,助理模块122A和/或123A可以使UI模块120输出包括精简的推荐列表的合成语音。作为另一示例,助理模块122A和/或123A可以将精简的推荐列表输出到与该组的其他用户相关联的计算助理,计算助理然后可以向其相应的用户显示、说出或以其他方式输出精简的推荐列表。
响应于精简的推荐列表不包括至少一项推荐(510的“否”分支),与组的用户相关联的相应的计算助理可以基于该组用户的加权的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在修改后的精简的推荐列表中(514)。例如,与该组的用户相关联的计算助理可以确定该用户的第二隐私级别数据是否指示用户对于该推荐具有高于初始阈值的否定偏好。在一些示例中,阈值开始可以设置得较低(例如,5%、10%、15%、...、25%等),并且如下文进一步详细讨论的,如果没有推荐能够被提供则阈值可以增加。在助理确定用户的第二隐私级别数据指示该用户对推荐的偏好高于阈值的情况下,助理可以确定该推荐不应被包括在修改后的精简的推荐列表。在一些示例中,如果助理不能够使用初始阈值提供任何推荐,则助理可以确定用户的第二隐私级别数据是否指示用户对推荐的否定偏好高于增加的阈值(例如,比先前的阈值高5%、10%等)。
如果修改后的精简的列表包括至少一项推荐(516的“是”分支),则助理模块122A和/或123A可以输出修改后的精简的推荐列表(518)。例如,助理模块122A和/或123A可以以类似于上述精简的推荐列表的输出的方式输出修改后的精简的推荐列表。如果修改后的精简的列表不包括至少一项推荐(516的“否”分支),则助理模块122A和/或123A可以确定用来评价推荐的权重是否高于最大阈值(520)。例如,助理模块122A和/或123A可以确定用来评价推荐的阈值是否高于最大总阈值水平(例如,75%、85%、90%、95%)。如果权重高于最大阈值(520的“是”分支),则助理模块122A和/或123A可以输出计算助理不能为该组提供任何推荐的指示(524)。如果权重不高于最大阈值(520的“否”分支),则助理模块122A和/或123A可以增加权重(522)。例如,助理模块122A和/或123A可以将阈值增加5%、10%、20%等。与该组的用户相关联的相应的计算助理可以基于该组的用户的相应的第二隐私级别数据的增加的权重来评价来自原始推荐列表的推荐,以包括在修改后的精简的推荐列表中(514)。例如,与该组的用户相关联的计算助理可以确定该用户的第二隐私级别数据是否指示用户对于该推荐具有高于增加的阈值的否定偏好。在一些示例中,循环可以继续,直到计算助理能够提供至少一项推荐。在一些示例中,循环可以继续,直到用来评价推荐的阈值高于最大总阈值水平。这样,助理模块可以将大多数可取的推荐包括在修改后的精简的列表中,同时不包括某些用户具有强烈否定的偏好的推荐。
继续上述示例,其中原始推荐列表包括适合冬季山地运动的博兹曼山、适合品尝波旁酒和参观酿酒厂的肯塔基州列克星敦市、以及适合海滩度假的加勒比岛。助理模块122A和/或123A可以基于评价确定在精简列表中没有剩余的推荐。具体地讲,博兹曼山的冬季山地运动被用户A的计算助理(即助理模块122A和/或123A)否决,在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂被用户C的计算助理(即助理模块122C和/或123C)否决,并且在加勒比岛的海滩度假被用户B的计算助理(即助理模块122B和/或123B)否决。
与用户A、用户B和用户C相关联的计算助理可以基于相应的用户的加权的相应的第二隐私级别数据来评价来自原始推荐列表的推荐,以便包括在修改后的精简的推荐列表中。例如,与用户A、用户B和用户C相关联的计算助理可以确定相应的用户的第二隐私数据是否指示相应的用户对来自原始推荐列表的推荐的否定偏好满足初始阈值(10%,为了本例的目的)。
例如,因为用户A的第二个隐私级别数据表明,用户A对博兹曼山的冬季山地运动有60%反对的偏好,并且没有对在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂和在加勒比岛的海滩度假的否定偏好,所以助理模块122A和/或123A可以确定在博兹曼山的冬季山地运动(例如,因为60%的反对偏好大于10%的阈值)不应被包括在修改后的精简的列表中,并且在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂和在加勒比岛的海滩度假应被包括在修改后的精简的列表中。类似地,因为用户C的第二个隐私级别数据表明,用户C对于在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂有25%反对的偏好,并且没有对在博兹曼山的冬季山地运动和在加勒比岛的海滩度假的否定偏好,所以与用户C相关联的计算助理可以确定在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂(例如,因为25%的反对偏好大于10%的阈值)不应被包括在修改后的精简的列表中,并且在博兹曼山的冬季山地运动和在加勒比岛的海滩度假应被包括在修改后的精简的列表中。另外,因为用户B的第二个隐私级别数据表明,用户B对在加勒比岛的海滩度假具有100%反对的偏好,并且对在博兹曼山的冬季山地运动和在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂没有否定偏好,所以与用户B相关联的计算助理可以确定在博兹曼山的冬季山地运动和在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂应被包括在修改后的精简的列表中,并且在加勒比岛的海滩度假不应被包括在修改后的精简的列表中。
助理模块122A和/或123A可以基于评价确定来自原始推荐列表的推荐都不应被包括在修改后的精简的列表中(例如,因为博兹曼山的冬季山地运动被用户A的计算助理否决,在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂被用户C的计算助理否决,并且在加勒比岛的海滩度假被用户B的计算助理否决)。因为修改后的精简的列表不包括任何推荐,所以助理模块122A和/或123A可以增加阈值。例如,助理模块122A和/或123A可以将阈值增加到30%。由于用户C对在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂的反对偏好25%低于30%的增加的阈值,因此与用户C相关联的计算助理可以确定在肯塔基州列克星敦市品尝波旁酒和参观酿酒厂应被包括在修改后的精简的推荐列表中。然而,由于用户A对在博兹曼山的冬季山地运动的反对偏好60%高于30%的增加的阈值,与用户A相关联的计算助理可以确定在博兹曼山的冬季山地运动仍然不应被包括在修改后的精简的推荐列表中。类似地,由于用户B对在加勒比岛的海滩度假的反对偏好100%高于30%的增加的阈值,因此与用户B相关联的计算助理可以确定在加勒比岛的海滩度假仍然不应被包括在修改后的精简的推荐列表中。由于修改后的精简的列表包括至少一项推荐,因此助理模块122A和/或123A可以输出修改后的精简的列表以呈现给该组的用户。
以下编号的示例可以示出本公开的一个或多个方面:
示例1.一种方法,包括:响应于接收到为一组用户进行推荐的请求,基于该组的用户的第一隐私级别数据而生成用于该组的原始推荐列表;由与该组的用户相关联的相应的计算助理基于该组的用户的相应的第二隐私级别数据来评价来自原始推荐列表的推荐,以包括在用于该组的精简的推荐列表中,其中第二隐私级别比第一隐私级别更受限制;以及响应于精简的推荐列表包括至少一项推荐,输出精简的推荐列表以呈现给该组的用户。
示例2.示例1的方法,其中,精简的推荐列表包括第一精简的推荐列表,该方法还包括:响应于第一精简的推荐列表包括零推荐,由该组的用户的相应的计算助理基于该组的用户的加权的相应的第二隐私级别数据评价来自原始推荐列表的推荐以用于被包括在用于该组的第二精简的推荐列表中;并且响应于第二精简的推荐列表包括至少一个推荐,输出第二精简的推荐列表用于向组的用户呈现。
示例3.示例2的方法,其中,由与该组的特定用户相关联的计算助理基于该组的该特定用户的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在用于该组的第一精简的推荐列表中包括:响应于确定该组的特定用户的相应的第二隐私级别数据指示该特定用户对该推荐具有任何否定的偏好,确定不将该推荐包括在第一精简的推荐列表中。
示例4.示例3的方法,其中,由与该组的特定用户相关联的计算助理基于该组的该特定用户的加权的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在用于该组的第二精简的推荐列表中包括:响应于确定该组的特定用户的相应的第二隐私级别数据指示该特定用户对该推荐具有完全否定偏好,确定不将该推荐包括在第二精简的推荐列表中。
示例5.示例1–4的任何组合的方法,其中,由与该组的特定用户相关联的计算助理基于该组的该特定用户的加权的相应的第二隐私级别数据来评价来自原始推荐列表的推荐以包括在用于该组的第二精简的推荐列表中包括:响应于确定该组的特定用户的相应的第二隐私级别数据指示该特定用户对该推荐具有部分否定偏好,确定将该推荐包括在第二精简的推荐列表中。
示例6.示例1–5的任何组合的方法,其中,从不包括在该组用户中的请求用户接收请求,并且其中,原始推荐列表不基于请求用户的数据而生成。
示例7.示例1–5的任何组合的方法,其中,从包括在该组用户中的请求用户接收请求,并且其中,原始推荐列表基于请求用户的数据而生成。
示例8.示例1–7的任何组合的方法,其中,请求针对下列中的一者或多者:娱乐推荐;食物推荐;旅游推荐;以及分享的商品推荐。
示例9.示例1–8的任何组合的方法,其中,该组的用户的第一隐私级别数据包括该组的用户的可公开获得的数据。
示例10.一种计算设备,包括:至少一个处理器;以及包括指令的至少一个存储器,指令在被执行时使得至少一个处理器提供计算助理,该计算助理被配置为:响应于接收到为一组用户进行推荐的请求并且基于该组的用户的第一隐私级别数据而生成用于该组的原始推荐列表;向与组的用户相关联的相应的计算助理输出原始推荐列表;从与组的用户相关联的相应的计算助理并且基于该组的用户的相应的第二隐私级别数据来接收是否应将来自原始推荐列表的推荐包括在用于该组的精简的推荐列表中的指示,其中第二隐私级别比第一隐私级别更受限制;以及响应于精简的推荐列表包括至少一项推荐而输出精简的推荐列表以呈现给该组的用户。
示例11.示例10的计算设备,其中,精简的推荐列表包括第一精简的推荐列表,计算助理还被配置成:从与组的用户相关联的相应的计算助理并且基于该组的用户的加权的相应的第二隐私级别数据接收来自原始推荐列表的推荐是否应被包括在用于该组的第二精简的推荐列表中的指示;并且响应于第二精简的推荐列表包括至少一项推荐并且为了呈现给该组的用户而输出第二精简的推荐列表。
示例12.示例11的计算设备,其中,与特定用户相关联的计算助理被配置成:响应于确定该组的特定用户的相应的第二隐私级别数据指示该特定用户对该推荐具有任何否定偏好,确定不将来自原始推荐列表的推荐包括在第一精简的推荐列表中。
示例13.示例12的计算设备,其中,与特定用户相关联的计算助理被配置成:响应于确定该组的特定用户的相应的第二隐私级别数据指示该特定用户对该推荐具有完全否定偏好,确定不将该推荐包括在第二精简的推荐列表中。
示例14.示例10–13的任何组合的计算设备,其中,与特定用户相关联的计算助理被配置成:响应于确定该组的特定用户的相应的第二隐私级别数据指示该特定用户对该推荐具有部分否定偏好,确定将该推荐包括在第二精简的推荐列表中。
示例15.示例10–14的任何组合的计算设备,其中,从不包括在该组用户中的请求用户接收请求,并且其中,原始推荐列表不基于请求用户的数据而生成。
示例16.示例10–14的任何组合的计算设备,其中,从包括在该组用户中的请求用户接收请求,并且其中,原始推荐列表基于请求用户的数据而生成。
示例17.示例10–16的任何组合的计算设备,其中,请求针对下列中的一者或多者:娱乐推荐;食物推荐;旅游推荐;以及分享的商品推荐。
示例18.示例10–17的任何组合的计算设备,其中,该组的用户的第一隐私级别数据包括该组的用户的可公开获得的数据。
示例19.一种存储指令的非暂时性计算机可读存储介质,指令在被执行时使得计算设备的一个或多个处理器:响应于接收到为一组用户进行推荐的请求并且基于该组的用户的第一隐私级别数据而生成用于该组的原始推荐列表;向与组的用户相关联的相应的计算助理输出原始推荐列表;从与组的用户相关联的相应的计算助理并且基于该组的用户的相应的第二隐私级别数据接收是否应将来自原始推荐列表的推荐包括在用于该组的精简的推荐列表中的指示,其中第二隐私级别比第一隐私级别更受限制;以及响应于精简的推荐列表包括至少一项推荐而输出精简的推荐列表以呈现给该组的用户。
示例20.示例19的非暂时性计算机可读存储介质,其中,精简的推荐列表包括第一精简的推荐列表,非暂时性计算机可读存储介质还存储使计算设备的一个或多个处理器执行以下操作的指令:从与组的用户相关联的相应的计算助理并且基于该组的用户的加权的相应的第二隐私级别数据接收来自原始推荐列表的推荐是否应被包括在用于该组的第二精简的推荐列表中的指示;并且响应于第二精简的推荐列表包括至少一项推荐并且为了呈现给该组的用户而输出第二精简的推荐列表。
示例21.示例19的非暂时性计算机可读存储介质,进一步存储指令,指令使一个或多个处理器执行示例1–9的任何组合的方法。
示例22.一种计算设备,包括用于执行示例1–9的任何组合的方法的装置。
在一个或多个示例中,所描述的功能可以在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或在计算机可读介质上传输并且由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其对应于诸如数据存储介质的有形介质;或通信介质,其包括有利于将计算机程序例如根据通信协议从一个地方传送到另一个地方的任何介质。这样,计算机可读介质通常可以对应于:(1)有形的计算机可读存储介质,其为非暂时的;或(2)诸如信号或载波的通信介质。数据存储介质可以是可由一个或多个计算机或一个或多个处理器访问的任何可用介质,以检索用于实现本公开中描述的技术的指令、代码和/或数据结构。计算机程序产品可以包括计算机可读介质。
作为示例而非限制,这样的计算机可读存储介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、闪速存储器或任何其他存储介质,该介质可用于以指令或数据结构的形式存储所需的程序代码,并且可由计算机访问。另外,任何连接被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或诸如红外线、无线电和微波的无线技术从网站、服务器或其他远程源发送指令,则同轴电缆、光纤电缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术都包括在介质的定义中。然而,应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他瞬时介质,而是涉及非瞬态有形存储介质。如本文所使用的磁盘和盘包括压缩盘(CD)、激光盘、光盘、数字通用盘(DVD)、软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而盘利用激光以光学方式再现数据。以上的组合也应包括在计算机可读介质的范围内。
指令可以由一个或多个处理器执行,例如,一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它等效的集成或分立逻辑电路。因此,如本文所使用的术语“处理器”可以指适于实现本文所述技术的任何前述结构或任何其它结构。此外,在一些方面,本文描述的功能可以在专用硬件和/或软件模块内提供。另外,这些技术可在一个或多个电路或逻辑元件中完全实现。
本公开的技术可以在各种各样的设备或装置中实现,包括无线手机、集成电路(IC)或一组IC(例如,芯片组)。在本公开中描述了各种组件、模块或单元,以强调被配置为执行所公开的技术的设备的功能方面,但不一定需要由不同硬件单元实现。相反,如上所述,各种单元可以组合在硬件单元中,或者由包括如上所述的一个或多个处理器的合作的硬件单元的集合结合合适的软件和/或固件来提供。
已经描述了各种实施例。这些和其它实施例在所附权利要求的范围内。

Claims (13)

1.一种用于生成组推荐的方法,所述方法包括:
响应于接收到为使用相应的计算设备参与对话的用户组进行推荐的请求,基于所述用户组中的每个用户的相应的第一隐私级别数据而生成用于所述用户组的原始推荐列表,
其中,所述请求是经由所述相应的计算设备中的对应的计算设备而从包括在所述用户组中的请求用户接收的,以及
其中,所述原始推荐列表是至少部分地基于所述请求用户的相应的第一隐私级别数据来生成的;
通过与所述用户组的每个用户相关联的相应的计算助理,基于所述用户的相应的第二隐私级别数据,评价所述原始推荐列表中的每个推荐以用于包括在用于所述用户组的精简的推荐列表中,其中,通过所述第二隐私级别数据比所述第一隐私级别数据更受限制;以及
响应于所述精简的推荐列表包括至少一项推荐,输出所述精简的推荐列表以呈现给所述用户组。
2.根据权利要求1所述的方法,其中,所述精简的推荐列表包括第一精简的推荐列表,所述方法还包括:
响应于所述第一精简的推荐列表不包括推荐,通过所述用户组的每个用户的相应的计算助理,基于所述用户的加权的相应的第二隐私级别数据,评价所述原始推荐列表中的每个推荐以用于包括在用于所述组的第二精简的推荐列表中;以及
响应于所述第二精简的推荐列表包括至少一项推荐,输出所述第二精简的推荐列表以呈现给所述用户组。
3.根据权利要求2所述的方法,其中,通过与所述用户组的每个用户相关联的相应的计算助理,基于所述用户的相应的第二隐私级别数据,评价在所述原始推荐列表中的每个推荐以用于包括在用于所述用户组的所述第一精简的推荐列表中包括:
响应于确定所述用户的相应的第二隐私级别数据指示所述用户对所述推荐具有任何否定偏好,确定不将所述推荐包括在所述第一精简的推荐列表中。
4.根据权利要求3所述的方法,其中,通过与所述用户组的每个用户相关联的相应的计算助理,基于所述用户的加权的相应的第二隐私级别数据,评价在所述原始推荐列表中的每个推荐以用于包括在用于所述用户组的所述第二精简的推荐列表中包括:
响应于确定所述用户的相应的第二隐私级别数据指示所述用户对所述推荐具有完全否定偏好,确定不将所述推荐包括在所述第二精简的推荐列表中。
5.根据权利要求3所述的方法,其中,通过与所述用户组的每个用户相关联的相应的计算助理,基于所述用户的加权的相应的第二隐私级别数据,评价在所述原始推荐列表中的每个推荐以用于包括在用于所述用户组的所述第二精简的推荐列表中包括:
响应于确定所述用户的相应的第二隐私级别数据指示所述用户对所述推荐具有部分否定偏好,确定将所述推荐包括在所述第二精简的推荐列表中。
6.根据权利要求1-5的任何一项所述的方法,其中,所述请求针对下列中的一者或多者:
娱乐推荐;
食物推荐;
旅游推荐;以及
分享的商品的推荐。
7.根据权利要求1-5的任何一项所述的方法,其中,所述用户组中的每个用户的所述第一隐私级别数据包括所述用户组中的每个用户的可公开获得的数据。
8.一种计算设备,包括:
至少一个处理器;以及
至少一个存储器,所述至少一个存储器包括指令,所述指令在被执行时使所述至少一个处理器提供特定计算助理,所述特定计算助理被配置成:
响应于接收到为用户组进行推荐的请求并且基于所述用户组中的每个用户的第一隐私级别数据而生成用于所述用户组的原始推荐列表,
其中,所述用户组使用相应的计算设备来参与对话,
其中,所述请求是经由所述相应的计算设备中的对应的计算设备而从包括在所述用户组中的请求用户接收的,以及
其中,所述原始推荐列表是至少部分地基于所述请求用户的相应的第一隐私级别数据来生成的;
向与所述用户组的每个用户相关联的相应的计算助理传送所述原始推荐列表;
从与所述用户组的每个用户相关联的相应的计算助理并且基于所述用户的相应的第二隐私级别数据接收关于在所述原始推荐列表中的推荐是否应被包括在用于所述用户组的精简的推荐列表中的指示,其中,所述第二隐私级别数据比所述第一隐私级别数据更受限制;以及
响应于所述精简的推荐列表包括至少一项推荐,输出所述精简的推荐列表以呈现给所述用户组。
9.根据权利要求8所述的计算设备,其中,所述精简的推荐列表包括第一精简的推荐列表,所述特定计算助理还被配置成:
从与所述用户组的每个用户相关联的相应的计算助理并且基于所述用户的加权的相应的第二隐私级别数据接收关于在所述原始推荐列表中的推荐是否应被包括在用于所述用户组的第二精简的推荐列表中的指示;并且
响应于所述第二精简的推荐列表包括至少一项推荐并且为了呈现给所述用户组而输出所述第二精简的推荐列表。
10.根据权利要求9所述的计算设备,其中,与所述用户组中的每个用户相关联的相应的计算助理被配置成:
响应于确定所述用户的相应的第二隐私级别数据指示所述用户对所述原始推荐列表中的推荐具有任何否定偏好,确定不将所述推荐包括在所述第一精简的推荐列表中。
11.根据权利要求10所述的计算设备,其中,与所述用户组中的每个用户相关联的相应的计算助理被配置成:
响应于确定所述用户的相应的第二隐私级别数据指示所述用户对所述推荐具有完全否定偏好,确定不将所述推荐包括在所述第二精简的推荐列表中;或者
响应于确定所述用户的相应的第二隐私级别数据指示所述用户对推荐具有部分否定偏好,确定将所述推荐包括在所述第二精简的推荐列表中。
12.根据权利要求8-11的任何一项所述的计算设备,其中,所述特定计算助理还被配置成执行根据权利要求6-7的任何一项所述的方法。
13.一种存储指令的非暂时性计算机可读存储介质,所述指令在被执行时使计算设备的一个或多个处理器执行根据权利要求1-7的任何一项所述的方法。
CN201710906362.0A 2016-12-30 2017-09-29 组推荐的虚拟助理生成 Active CN108268130B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110324175.8A CN113220175A (zh) 2016-12-30 2017-09-29 组推荐的虚拟助理生成

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/394,979 US10699181B2 (en) 2016-12-30 2016-12-30 Virtual assistant generation of group recommendations
US15/394,979 2016-12-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202110324175.8A Division CN113220175A (zh) 2016-12-30 2017-09-29 组推荐的虚拟助理生成

Publications (2)

Publication Number Publication Date
CN108268130A CN108268130A (zh) 2018-07-10
CN108268130B true CN108268130B (zh) 2021-04-06

Family

ID=60270156

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202110324175.8A Pending CN113220175A (zh) 2016-12-30 2017-09-29 组推荐的虚拟助理生成
CN201710906362.0A Active CN108268130B (zh) 2016-12-30 2017-09-29 组推荐的虚拟助理生成

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202110324175.8A Pending CN113220175A (zh) 2016-12-30 2017-09-29 组推荐的虚拟助理生成

Country Status (7)

Country Link
US (2) US10699181B2 (zh)
JP (1) JP6549682B2 (zh)
CN (2) CN113220175A (zh)
DE (1) DE202017105676U1 (zh)
GB (1) GB2558354A (zh)
TW (1) TWI720255B (zh)
WO (1) WO2018125377A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10699181B2 (en) 2016-12-30 2020-06-30 Google Llc Virtual assistant generation of group recommendations
US10176808B1 (en) * 2017-06-20 2019-01-08 Microsoft Technology Licensing, Llc Utilizing spoken cues to influence response rendering for virtual assistants
EP3528460A1 (en) * 2018-02-20 2019-08-21 Darktrace Limited Artificial intelligence privacy protection for cybersecurity analysis
US10978056B1 (en) 2018-04-20 2021-04-13 Facebook, Inc. Grammaticality classification for natural language generation in assistant systems
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US10963273B2 (en) 2018-04-20 2021-03-30 Facebook, Inc. Generating personalized content summaries for users
US11115410B1 (en) 2018-04-20 2021-09-07 Facebook, Inc. Secure authentication for assistant systems
US10949616B1 (en) 2018-08-21 2021-03-16 Facebook, Inc. Automatically detecting and storing entity information for assistant systems
US10896295B1 (en) 2018-08-21 2021-01-19 Facebook, Inc. Providing additional information for identified named-entities for assistant systems
CN111158803B (zh) 2018-11-07 2024-05-10 财团法人工业技术研究院 虚拟助理磋商系统及其方法
CN109615699B (zh) * 2018-12-11 2023-12-08 光禹莱特数字科技(上海)有限公司 增强现实的分组方法、系统、可读存储介质及设备
CN110162694B (zh) * 2019-04-02 2021-01-05 莫毓昌 一种基于成对关联规则的推荐系统和方法
US11657094B2 (en) 2019-06-28 2023-05-23 Meta Platforms Technologies, Llc Memory grounded conversational reasoning and question answering for assistant systems
US11442992B1 (en) 2019-06-28 2022-09-13 Meta Platforms Technologies, Llc Conversational reasoning with knowledge graph paths for assistant systems
US11636438B1 (en) 2019-10-18 2023-04-25 Meta Platforms Technologies, Llc Generating smart reminders by assistant systems
US11567788B1 (en) 2019-10-18 2023-01-31 Meta Platforms, Inc. Generating proactive reminders for assistant systems
US11562744B1 (en) 2020-02-13 2023-01-24 Meta Platforms Technologies, Llc Stylizing text-to-speech (TTS) voice response for assistant systems
US11159767B1 (en) 2020-04-07 2021-10-26 Facebook Technologies, Llc Proactive in-call content recommendations for assistant systems
US11658835B2 (en) 2020-06-29 2023-05-23 Meta Platforms, Inc. Using a single request for multi-person calling in assistant systems
US11563706B2 (en) 2020-12-29 2023-01-24 Meta Platforms, Inc. Generating context-aware rendering of media contents for assistant systems
US11809480B1 (en) 2020-12-31 2023-11-07 Meta Platforms, Inc. Generating dynamic knowledge graph of media contents for assistant systems
US11861315B2 (en) 2021-04-21 2024-01-02 Meta Platforms, Inc. Continuous learning for natural-language understanding models for assistant systems
US11983329B1 (en) 2022-12-05 2024-05-14 Meta Platforms, Inc. Detecting head gestures using inertial measurement unit signals

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103493463A (zh) * 2011-04-25 2014-01-01 阿尔卡特朗讯 推荐服务中的隐私保护
CN104050267A (zh) * 2014-06-23 2014-09-17 中国科学院软件研究所 基于关联规则满足用户隐私保护的个性化推荐方法及系统
CN105631703A (zh) * 2015-12-16 2016-06-01 北京奇虎科技有限公司 实现过滤隐私的提示窗广告数据处理方法及系统
JP5944251B2 (ja) * 2012-07-11 2016-07-05 Kddi株式会社 アイテム推薦システム、アイテム推薦方法およびプログラム
JP2016126623A (ja) * 2015-01-06 2016-07-11 株式会社Nttドコモ 行動支援装置、行動支援システム、行動支援方法及びプログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT1136295B (it) 1980-02-29 1986-08-27 Rossi & Catelli & C Snc Dispositivo di alimentazione di oggetti presterilizzati,racchiusi in contenitori internamente sterili per impianto di confezionamento sterile
US7603356B2 (en) * 2001-01-26 2009-10-13 Ascentive Llc System and method for network administration and local administration of privacy protection criteria
JP4066237B2 (ja) 2002-06-17 2008-03-26 コニカミノルタホールディングス株式会社 光学素子用成形金型の製造方法
JP4339557B2 (ja) 2002-07-05 2009-10-07 富士通株式会社 情報共有方法、情報共有装置及び情報共有プログラム
JP2008542870A (ja) 2005-05-27 2008-11-27 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ コンテンツに対するユーザの群の全体の関心を推定するため方法及び装置
EP1955266A4 (en) 2005-11-30 2012-01-25 Nokia Corp SOCYNAMIC PROCESS FOR COLLABORATIVE FILTERING AND ASSOCIATED ARRANGEMENT
US20110270774A1 (en) * 2010-04-30 2011-11-03 Microsoft Corporation Group Recommendations in Social Networks
WO2012056463A1 (en) 2010-10-29 2012-05-03 Hewlett-Packard Development Company, L.P. Content recommendation for groups
US8949232B2 (en) 2011-10-04 2015-02-03 Microsoft Corporation Social network recommended content and recommending members for personalized search results
CN103186539B (zh) 2011-12-27 2016-07-27 阿里巴巴集团控股有限公司 一种确定用户群体、信息查询及推荐的方法及系统
WO2013133879A1 (en) 2012-03-08 2013-09-12 Thomson Licensing A method of recommending items to a group of users
US9734531B2 (en) 2012-05-30 2017-08-15 Intel Corporation Determining a profile for a recommendation engine based on group interaction dynamics
EP2862337B1 (en) * 2012-06-15 2020-03-04 Alcatel Lucent Architecture of privacy protection system for recommendation services
JP5631366B2 (ja) 2012-07-30 2014-11-26 株式会社ゼンリンデータコム ナビゲーションシステム、ナビゲーション方法、および、コンピュータプログラム
US9680959B2 (en) 2012-08-30 2017-06-13 Google Inc. Recommending content based on intersecting user interest profiles
US9536049B2 (en) * 2012-09-07 2017-01-03 Next It Corporation Conversational virtual healthcare assistant
EP2747371B1 (en) * 2012-12-24 2018-02-07 Alcatel Lucent Access policy definition with respect to a data object
US9449077B2 (en) * 2013-02-14 2016-09-20 Wine Ring, Inc. Recommendation system based on group profiles of personal taste
US9679062B2 (en) * 2013-09-18 2017-06-13 Excalibur Ip, Llc Local recommendation engine
US9558242B2 (en) * 2013-10-15 2017-01-31 Google Inc. Social where next suggestion
KR101595178B1 (ko) * 2014-03-26 2016-03-02 주식회사 브릿지랩 추천인 시스템 및 그 동작 방법
US9710546B2 (en) * 2014-03-28 2017-07-18 Microsoft Technology Licensing, Llc Explicit signals personalized search
US9507960B2 (en) * 2015-02-25 2016-11-29 Citigroup Technology, Inc. Systems and methods for automated data privacy compliance
US20170083962A1 (en) * 2015-09-18 2017-03-23 Rovi Guides, Inc. Methods and systems for recommending gifts using a supplemental profile
CN105718239B (zh) * 2016-01-27 2019-03-08 百度在线网络技术(北京)有限公司 一种语音输入的方法和装置
CN105959740A (zh) * 2016-05-17 2016-09-21 康佳集团股份有限公司 一种基于用户行为分析的电视节目导航方法及系统
CN106503566A (zh) * 2016-10-22 2017-03-15 肇庆市联高电子商务有限公司 用于电子商务的服务器
US10699181B2 (en) 2016-12-30 2020-06-30 Google Llc Virtual assistant generation of group recommendations

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103493463A (zh) * 2011-04-25 2014-01-01 阿尔卡特朗讯 推荐服务中的隐私保护
JP5944251B2 (ja) * 2012-07-11 2016-07-05 Kddi株式会社 アイテム推薦システム、アイテム推薦方法およびプログラム
CN104050267A (zh) * 2014-06-23 2014-09-17 中国科学院软件研究所 基于关联规则满足用户隐私保护的个性化推荐方法及系统
JP2016126623A (ja) * 2015-01-06 2016-07-11 株式会社Nttドコモ 行動支援装置、行動支援システム、行動支援方法及びプログラム
CN105631703A (zh) * 2015-12-16 2016-06-01 北京奇虎科技有限公司 实现过滤隐私的提示窗广告数据处理方法及系统

Also Published As

Publication number Publication date
CN108268130A (zh) 2018-07-10
GB2558354A (en) 2018-07-11
DE202017105676U1 (de) 2018-04-04
US20200285931A1 (en) 2020-09-10
CN113220175A (zh) 2021-08-06
US11562198B2 (en) 2023-01-24
US20180189629A1 (en) 2018-07-05
WO2018125377A1 (en) 2018-07-05
JP6549682B2 (ja) 2019-07-24
TW201828120A (zh) 2018-08-01
GB201715905D0 (en) 2017-11-15
US10699181B2 (en) 2020-06-30
JP2018109954A (ja) 2018-07-12
TWI720255B (zh) 2021-03-01

Similar Documents

Publication Publication Date Title
CN108268130B (zh) 组推荐的虚拟助理生成
US11380331B1 (en) Virtual assistant identification of nearby computing devices
US20230274205A1 (en) Multi computational agent performance of tasks
US11029979B2 (en) Dynamically generating custom application onboarding tutorials
US10854188B2 (en) Synthesized voice selection for computational agents
US11048995B2 (en) Delayed responses by computational assistant
KR102293281B1 (ko) 가상 어시스턴트의 개인화
US20240037414A1 (en) Proactive virtual assistant
US20180096283A1 (en) Selection of computational agent for task performance
US20180336045A1 (en) Determining agents for performing actions based at least in part on image data
US11663535B2 (en) Multi computational agent performance of tasks

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