使用机器学习对实例进行分类的制作方法

文档序号:18872999发布日期:2019-10-14 19:58阅读:197来源:国知局
使用机器学习对实例进行分类的制作方法

本发明涉及使用机器学习(ml)对实例进行分类的通信设备、使用ml对实例进行分类的方法、对应的计算机程序、以及对应的计算机程序产品。



背景技术:

由于机器学习(ml)对于处理能力的相对高的要求,机器学习(ml)主要在固定计算机(例如,经由互联网可访问的服务器和数据中心)中执行。随着移动设备(例如,移动电话或智能电话、平板计算机、自治交通工具、无人机等)中的多核处理器的出现,能够由移动设备执行的ml算法的数量在稳定增长。

给出几个实例,google已经引入了使用神经网络且在无需互联网连接的情况下在移动设备上良好运行的语言翻译软件。联想已经发布了使用多个传感器、高速图像处理硬件、以及用于即使在离线时也支持诸如室内路径发现、准确测量和增强现实之类的能力的软件的移动电话。nvidia——一家图形处理技术的制造商,已经引入了用于计算机视觉应用的tesla深度学习平台。高通已经引入了无需互联网连接的情况下支持诸如图像分类、语音识别和异常检测之类的ml任务的新处理器和软件平台。无人机制造商dji最近已经引入了面向消费者的无人机,其使用先进的计算机视觉硬件以实现无人机在自动避免障碍物的同时跟随移动目标。

当今的智能电话相机能够检测笑容和脸部,作为自动聚焦功能的一部分。脸部检测和识别也被社交网络使用。例如,facebook将其图像数据集用于在用户拍摄的图像中识别脸部,而google提供了使用图像识别能力开发应用的应用编程接口(api)。与ios10一起发布的苹果的相机应用创建人物相册,该人物相册按照该应用已经识别的脸部来组织。

考虑到执行ml任务所需要的相对较高的处理能力以及移动设备的处理能力、数据存储空间和电池寿命方面的限制,(us2013/0303159a1)已经设计了以合作方式在受信网络(例如,局域网)内的多个移动设备之间共享ml任务的方案。



技术实现要素:

本发明的目的是提供针对以上技术和现有技术的改进替代。

更具体地,本发明的一个目的是提供使用通信设备(特别是移动通信设备)的ml模型对实例的改进的合作的分类。

在本发明的上下文中,通信设备是能够通过有线网络或无线网络或其组合与另一个通信设备通信的任意类型的通信设备(例如,移动终端、智能电话、移动电话、智能手表、平板计算机、数字助理、数字相机、个人计算机或膝上型计算机)。

通过如独立权利要求所定义的本发明的不同方面来实现本发明的这些目的和其它目的。从属权利要求表征本发明的实施例。

根据本发明的第一方面,提供了一种使用ml对实例进行分类的通信设备。该通信设备可操作用于:获取表示实例的特征矢量;通过把特征矢量应用于通信设备的本地第一ml模型对实例进行分类;以及计算对实例的分类的置信度级别。该通信设备还可操作用于:如果计算出的置信度级别小于阈值置信度级别,则获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息,以及向所述一个或更多个其它通信设备发送包括特征矢量的分类请求消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:通信设备的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

根据本发明的第二方面,提供了一种使用ml对实例进行分类的方法。该方法包括:获取表示实例的特征矢量;通过把特征矢量应用于通信设备的本地第一ml模型对实例进行分类;以及计算用于实例的分类的置信度级别。该方法还包括:如果计算出的置信度级别小于阈值置信度级别,则获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息,以及向所述一个或更多个其它通信设备发送包括特征矢量的分类请求消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:通信设备的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

根据本发明的第三方面,提供了一种用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器。所述选择服务器可操作用于:接收用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择请求消息。选择请求消息是从使用ml对实例进行分类的通信设备接收的,并且包括关于以下中的至少一项的信息:通信设备的用户的标识、用户的联系人列表、表示实例的特征矢量中包括的数据的类型、特征矢量的起点、使用通信设备的本地第一ml模型对实例的分类、通信设备的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。所述选择服务器还可操作用于:基于以下中的至少一项选择一个或更多个其它通信设备:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。所述选择服务器还可操作用于:发送选择响应消息。选择响应消息被发送给通信设备,并且包括标识所选择的一个或更多个其它通信设备的信息。

根据本发明的第四方面,提供了一种选择使用ml对实例进行分类的一个或更多个其它通信设备的方法。所述方法包括:接收用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择请求消息。选择请求消息是从使用ml对实例进行分类的通信设备接收的,并且包括关于以下中的至少一项的信息:通信设备的用户的标识、用户的联系人列表、表示实例的特征矢量中包括的数据的类型、特征矢量的起点、使用通信设备的本地第一ml模型对实例的分类、通信设备的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。所述方法还包括基于以下中的至少一项选择所述一个或更多个其它通信设备:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。所述方法还包括发送选择响应消息。选择响应消息被发送给通信设备,并且包括标识所选择的一个或更多个其它通信设备的信息。

根据本发明的第五方面,提供了一种计算机程序。所述计算机程序包括计算机可执行指令,当在设备中包括的处理单元上执行所述计算机可执行指令时,所述计算机可执行指令使得所述设备执行根据本发明的第二或第四方面的实施例的方法。

根据本发明的第六方面,提供了一种计算机程序产品。所述计算机程序产品包括计算机可读存储介质,所述计算机可读存储介质包括包含在其中的根据本发明第五方面的计算机程序。

本发明利用了下述理解:通过对被请求用于帮助没有成功使用其本地ml模型对实例进行分类的通信设备(在下文中被称为发起通信设备或被简称为“发起设备”)的一个或更多个其它通信设备的改进选择,可以实现通过使用一组通信设备的本地ml模型对示例的改进的合作的分类。贯穿本公开,用于对实例进行分类的本地ml模型被称为“第一ml模型”。

通常,ml领域探索对能够通过根据样本输入建立ml模型而根据数据进行学习且对数据做出预测的算法的研究和构建。例如,由本发明的实施例维护的本地ml模型可以例如通过有监督学习来建立,即,本地ml模型是通过利用已标记的训练数据训练的。训练数据包括训练示例的集合(例如,捕获了人的脸部的图像和标识各个人的对应信息的集合)。在有监督学习中,每个示例是包括输入(例如,表示捕获了个人的人脸的图像的特征矢量)和期望的输出值(在这种情况下是个人的姓名)的数据对。有监督的学习算法分析训练数据,且产生推测出的函数,该推测出的函数能够被用于映射新的示例(即,用于对未见过的实例正确分类)。这需要学习算法根据训练数据对未见过的情形进行归纳。作为有监督学习的备选,本发明的实施例可以维护以无监督的方式更新或训练的第一ml模型。

为了说明本发明,按照三种不同的角色描述其实施例。除了发起通信设备(或简称为发起设备)的角色之外,还有下述角色:接收分类请求消息的通信设备被称为分类通信设备(或被简称为“分类设备”)或被称为转发通信设备(或被简称为“转发设备”),这取决于该通信设备是否成功地对利用分类请求消息接收的特征矢量进行了分类(成功,则该设备为分类设备;不成功,则该设备为转发设备)。在后一种情况下,分类请求可以被发送给又一个通信设备。本发明的实施例可以仅实现这些角色中的任意一种角色、或可以组合实现两种角色或三种角色。

在当前的上下文中,实例是要被分类的数据的集合,诸如表示对象(例如,个人的人脸)的图像、记录声音(例如,人类的话音)的音频、电子邮件、或表示网络节点之间的网络业务的通信日志。特征矢量是表示实例的数字特征的多维矢量。例如,如果实例是表示对象的图像,则特征矢量可以是图像自身或图像的代表(例如,具有减小的分辨率或减小的颜色空间的图像、图像的经裁剪的部分或图像的统计表示)。作为另外的示例,如果实例是声音的音频记录,则特征矢量可以是音频记录自身、音频记录的无损或有损编码、音频记录的声学指纹、或音频记录的剪辑。最后,如果实例是电子邮件,则特征矢量可以是电子邮件自身、电子邮件的词频表示、或描述电子邮件标题的元数据。

一个或更多个其它通信设备是基于以下中的任意一项或其组合选择的:

-用户的标识(例如,用户的姓名、电子邮件地址、别名、用于社交网络的登录、与用户的通信设备关联的标识符等)。

-通信设备的用户的联系人列表。例如,这可以是通信设备中存储的或通信设备可访问的且包括其它通信设备的用户的联系信息的联系人列表,或是用户通过社交网络(例如,google+的facebook)关联的联系人列表。有利地,对被请求用于帮助对实例进行分类的一个或更多个其它通信设备的选择由此考虑了该通信设备的用户和一个或更多个其它通信设备的用户可能共享共同的经历(他们可能已访问了共同的地方或事件)、共同的朋友或共同的兴趣。因此,其各自的本地第一ml模型可能被训练用于对相关用户(即,作为社交网络好友的用户)的通信设备所遇到的实例进行分类。

-特征矢量中包括的数据的类型,例如,图像数据、音频数据、通信日志或电子邮件数据。备选地,这也可以是特征矢量的起点,描述从其导出特征矢量的数据的类型,例如,图像、音频记录、通信日志或电子邮件。例如,如果特征矢量包括图像数据,则一个或更多个其它通信设备可以被选择为已知具有大型图像库的通信设备,因为能够期望它们各自的本地第一ml模型在对这些图像进行分类时已经被训练过。

-使用本地第一ml模型对实例的分类。即使本地第一ml模型不能够成功地对实例进行分类,即,计算出的置信度级别低于阈值置信度级别,根据本地第一ml模型获得的分类也可以被用于选择一个或更多个其它通信设备。这种情况是因为:所述选择可以在所有可用的通信设备的子集上执行,所述可用的通信设备具有很可能比从其接收用于对实例进行分类的请求的通信设备更好地适用于成功对实例进行分类的本地第一ml模型。

-通信设备的位置、一个或更多个其它通信设备各自的位置、和/或与实例关联的位置。选择与发起通信设备在同一位置或在发起通信设备的附近的一个或更多个其它通信设备是有利的,因为很可能所述其它通信设备已经遇到且已经成功分类了与发起设备要分类的实例相同或类似的实例。

-与由特征矢量表示的实例有关的一个或更多个已分类的实例。例如,这可以是与要分类的示例具有相同的资源的实例(例如,捕获了几个人脸的图像)。

对一个或更多个其它通信设备的选择可以基于规则集或ml算法,即,使用与第一ml模型不同的“第二ml模型”。例如,标识一个或更多个其它通信设备的信息可以通过选择一个或更多个其它通信设备来获取。换言之,由通信设备执行该选择。备选地,对一个或更多个其它通信设备的选择可以基于使用ml对实例进行分类的通信设备的请求且基于所述通信设备提供的信息,由根据本发明的第三方面的选择服务器的实施例执行。例如,选择服务器可以由社交网络提供方维护。

虽然已经在上文中关于选择作为分类请求消息的接收方的一个或更多个其它通信设备的情形描述了选择一个或更多个其它通信设备的不同方式的优点,但应该了解的是,类似的推理适用于选择作为分类成功消息的接收方的一个或更多个其它通信设备的情形,这将在下文中进行描述。

根据本发明的实施例,从使用ml对实例进行分类的另一个通信设备接收分类成功消息。分类成功消息包括对实例的分类,并且可以可选地包括计算出的置信度级别和关于分类的其它信息。例如,分类成功消息可以作为对通信设备已发送的分类请求消息的响应而被接收。

根据本发明的实施例,实例是捕获对象(例如,人、脸部、动物、建筑、汽车、自行车、植物等)的图像或视频帧,而表示实例的特征矢量是通过下述方式获取的:获取图像或视频帧,并从图像或视频帧导出表示实例的特征矢量。该实施例与发起设备(即,着手对实例进行分类的设备)的角色对应。例如,可以使用可操作地连接至通信设备的相机(例如,经常为当今的智能电话或平板计算机配置的内置相机)获取图像或视频帧。备选地,可以通过从通信设备的本地存储设备检索图像或视频帧、或通过从另一个通信设备接收(例如,添加至电子邮件或多媒体消息服务(mms)消息的)图像或视频帧、通过类似facebook或instagram的社交网络、经由照片共享服务(类似共享影集或照片流)、或通过从互联网下载,获取图像或视频帧。

根据本发明的实施例,实例是捕获声音(例如,话音、由动物发出的声音、一段音乐、由车辆发出的声音等)的音频记录,且表示实例的特征矢量是通过下述方式获取的:获取音频记录,并且从音频记录导出表示实例的特征矢量。该实施例与发起设备(即,着手对实例进行分类的设备)的角色对应。例如,可以使用可操作地连接至通信设备的麦克风(例如,内置麦克风或外部的头戴式耳机)获取音频记录。备选地,可以通过从通信设备的本地存储设备检索音频记录、或通过从另一个通信设备接收(例如,添加至电子邮件或mms消息的)音频记录、通过类似facebook或instagram的社交网络、或通过从互联网下载,获取音频记录。

根据本发明的实施例,表示实例的特征矢量是通过从使用ml对实例进行分类的另一个通信设备接收分类请求消息获取的。所述分类请求消息包括特征矢量,并且可以可选地包括阈值置信度级别和/或使用分类请求消息接收自的通信设备的本地第一ml模型得到的分类。该实施例与转发设备或分类设备的角色对应。

根据本发明的实施例,如果计算出的置信度级别等于或大于阈值置信度级别,则向分类请求消息接收自的其它通信设备发送和/或分类请求消息源自的通信设备(即,发起设备)发送分类成功消息。

分类成功消息包括对实例的分类,并且可以可选地包括计算出的置信度级别和关于分类的其它信息。该实施例与分类设备的角色对应。

根据本发明的实施例,获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息,并且向一个或更多个其它通信设备发送分类成功消息。一个或更多个其它通信设备是基于以下中的任意一项选择的:用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、计算出的置信度级别等于或大于阈值置信度级别的对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。有利地,对实例进行分类中涉及的任意通信设备,不论其角色,出于更新和训练其各自的本地第一ml模型的目的,可以向其它通信设备转发、分发、广播关于成功分类的信息。以这种方式选择一个或更多个其它通信设备与对用于发送分类请求消息的其它通信设备的选择具有类似的优点,区别在于如上文所述的该选择是基于对实例的成功分类而不是基于置信度级别低于阈值置信度级别的分类。

根据本发明的实施例,计算出的置信度级别被发送给以下中的至少一项:分类请求消息源自的通信设备(发起设备),以及用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器。响应于在发起设备或在选择服务器处分别从一个或更多个其它通信设备中的至少一个其他通信设备接收计算出的置信度级别,基于所接收的计算出的置信度级别更新用于选择一个或更多个其它通信设备的第二ml模型。由此能够训练和改进用于选择被请求用于帮助对实例进行分类的一个或更多个其它通信设备的第二ml模型。这种情况是因为:所接收的计算出的置信度级别构成了对第二ml模型对应的其它通信设备的选择的反馈。

尽管已经在一些情况下参考本发明的第一方面和第三方面描述了本发明的优点,但相应的推理适用于本发明的其它方面的实施例。

当研读以下的详细公开、附图和所附的权利要求时,本发明的另外的目的、特征和优点将变得明显。本领域技术人员意识到可以组合本发明的不同特征,以创建不同于以下描述的实施例的实施例。

附图说明

参照附图,通过以下对本发明的实施例的说明性且非限制性的详细描述,将更好地理解本发明的以上目的、特征和优点和附加目的、特征和优点,其中:

图1示出了根据本发明的实施例的使用ml对实例进行分类的通信设备。

图2示出了根据本发明的另一个实施例的使用ml对实例进行分类的通信设备。

图3说明了根据本发明的实施例的使用通信设备的本地第一ml模型对实例进行分类。

图4示出了使用ml对实例进行分类的通信设备中包括的处理装置的实施例。

图5示出了使用ml对实例进行分类的通信设备中包括的处理装置的另一个实施例。

图6示出了根据本发明的实施例的使用ml对实例进行分类的方法。

图7示出了根据本发明的另外的实施例的使用ml对实例进行分类的方法。

图8示出了根据本发明的实施例的用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器。

图9示出了根据本发明的另一个实施例的用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器。

图10示出了根据本发明的实施例的选择使用ml对实例进行分类的一个或更多个其它通信设备的方法。

所有的附图是示意性的,不一定按比例绘制,并且通常只示出了为了解释本发明所必需的部分,其中其他部分可被省略或仅仅暗示。

具体实施方式

以下将参照附图更全面地描述本发明,附图中示出了本发明的特定实施例。然而,本发明可以按多种不同形式来具体化,并且不应当被解释为受到本文阐述的实施例的限制。相反,通过示例的方式给出这些实施例,使得本公开将是透彻和完整的,并且向本领域技术人员充分地传达本发明的范围。

在图1和图2中,将使用ml对实例进行分类的通信设备的实施例100示出为移动电话或智能电话,其包括处理装置101、通信模块102、显示器103(例如,触摸屏)、麦克风104、以及前置相机105。处理装置101可操作用于使通信设备100根据本文阐述的本发明的实施例执行,并且将参考图4和图5更详细地描述。通信模块102可操作用于通过无线局域网(wlan)/wi-fi网络、蓝牙、zigbee或任意其它短距离通信技术实现无线通信。备选地或附加地,通信模块102还可以可操作用于基于诸如全球移动通信系统(gsm)、通用移动通信系统(umts)、长期演进(lte)或5g标准(例如,下一代(ng)和新无线电(nr))之类的蜂窝电信技术实现与无线电接入网络(ran)的无线通信。

应该理解,使用ml对实例进行分类的通信设备的实施例可以包括未在图1和图2中示出的附加的组件(例如,后置相机、扬声器或用于连接头戴式耳机和其它附件的一个或多个连接器),并且组件101-105中的一些组件可以是可选的。而且,虽然参考图1和图2中示出的移动电话100说明了本发明的实施例,但是使用ml对实例进行分类的通信设备可以备选地由能够通过有线网络或无线网络或它们的组合与另一个通信设备通信的任意类型的计算设备(例如,移动终端、智能电话、智能手表、平板计算机、数字助理、数字相机、个人计算机或膝上型计算机)实现。

通常,实例可以是从其可以导出适合作为ml算法的输入的特征矢量的任意类型的数据集合(即,可以使用ml算法进行分类)。给出几个示例,例如,实例可以是表示诸如个人的脸部(如图1中所示)、动物、建筑、植物、一件家具、汽车、自行车等对象的图像帧110或视频帧110。备选地,实例还可以是捕获声音210(如图2中所示)(例如,个人的话音、由动物发出的声音、由车辆发出的声音、一段音乐等)的音频记录。实例还可以是电子邮件、表示网络节点之间的网络业务的通信日志、或手写签名的数字表示、指纹或虹膜图案。

特征矢量是表示实例的数字特征的多维矢量。例如,如果实例是图像,则特征矢量可以是图像自身或图像的表示(例如,具有减小的分辨率或减小的颜色空间的图像、图像的经裁剪的部分)。如果实例是音频记录,则特征矢量可以是音频记录自身、音频记录的无损或有损编码、音频记录的声学指纹或音频记录的剪辑。最后,如果实例是电子邮件,则特征矢量可以是电子邮件自身、电子邮件的词频表示或电子邮件的标题或其中的一部分。

在下文中描述本发明的实施例时,参考了图3中示出的信令图300,信令图300就通信设备320、330以及340所承担的不同角色,说明了使用通信设备(例如,通信设备100)的本地第一ml模型对实例进行分类。更具体地,使用ml对实例进行分类的通信设备的实施例可以承担以下角色中的任意一个或其组合:

-发起通信设备320或“发起设备”。这是这样的通信设备,其尝试使用其本地第一ml模型对实例进行分类,并且响应于不成功分类(计算出的置信度级别低于阈值置信度级别)向一个或更多个其它通信设备发送包括表示实例的特征矢量的分类请求消息。

-转发通信设备330或“转发设备”。这是这样的通信设备,其接收包括表示实例的特征矢量的分类请求消息,尝试使用其本地第一ml模型对实例进行分类,以及响应于不成功分类向一个或更多个其它通信设备发送包括表示实例的特征矢量的分类请求消息或重新发送其所接收的包括表示实例的特征矢量的分类请求消息。

-分类通信设备340或“分类设备”。这是这样的通信设备,其接收包括表示实例的特征矢量的分类请求消息,尝试使用其本地第一ml模型对实例进行分类,以及响应于成功分类(计算出的置信度级别等于或大于阈值置信度级别)直接或经由一个或更多个转发设备向发起设备发送包括分类的分类成功消息。

在下文中,更详细地描述通信设备100的实施例可以承担的不同角色320、330和340、以及它们的交互。为了简单起见,假设实例是如图1中所示的图像110,但是本发明的实施例不限于这一具体的实例类型。图3中示出的步骤、动作和消息中的一些是可选的。

通信设备320——发起设备,可操作用于获取表示实例(例如,表示诸如个人的脸部之类的对象的图像110)的特征矢量。图像110可以是静态图像或视频序列的帧。例如,发起设备320可以可操作用于通过下述方式获取特征矢量:使用可操作地连接至发起设备320的相机(例如,前置相机104、内置后置相机或可操作地连接至发起设备320的任意的外部相机)捕获351a图像110,以及从图像110导出352特征矢量。备选地,发起设备320可以可操作用于通过下述方式获取图像110:经由通信模块102(例如,从另一个通信设备或从互联网)接收351b图像110。例如,图像110可以作为电子邮件附件或作为mms消息、通过类似facebook或instagram的社交网络、经由照片共享服务(类似共享影集或照片流)、或通过从互联网下载,而被接收351b。作为又一种备选,发起设备320可以可操作用于通过下述方式获取图像110:从发起设备320的本地存储设备(例如,内置的存储器或存储卡)检索图像110。

发起设备320还可操作用于:通过把所接收的特征矢量应用于发起设备320的本地第一ml模型,来对图像110进行分类353。例如,对实例进行分类可以由发起设备320上执行的软件应用(也被称为程序或应用)发起或请求。例如,这可以是用于组织发起设备320中存储的图像或照片的应用。如现有技术中已知的,这些影集应用可以具有用于索引图像和识别图像中的人脸的功能,使得发起设备320的用户能够检索和查看对捕获了某个人的脸部的图像的选择。

在ml技术中,使用分析作为输入提供给ml算法的数据并且从所述数据进行学习的计算算法。这可以是已有的历史数据或实时反馈的数据。ml算法基于适合于用作ml算法的输入的数据的类型的ml模型或模式来操作。ml算法能够被用于基于ml模型和输入数据(而不是严格地遵循静态的指令)做出预测或判断。

根据训练和更新ml模型的方式,ml算法通常被分类到几个宽的类别:

-有监督学习:ml算法被给定已标记的数据,即,成对的数据和对应的期望的输出。在这种情况下,例如,可以训练ml模型,以通过自身学习把输入映射到输出的一般规则。例如,被用于训练ml模型的已标记的数据可以包括电子邮件和分为“垃圾邮件”或“非垃圾邮件”的对应分类的集合。已训练的ml模型后续可以被用于对新来的电子邮件进行分类,并过滤掉垃圾邮件。作为另外的示例,已标记的数据可以包括捕获了个人的人脸的图像和对应的个人姓名的集合。

-无监督学习:用于训练ml模型的数据是未标记的,但是ml算法在无需任何监督的情况下发现把输入数据映射到输出的结构。

-半监督学习:介于有监督学习和无监督学习之间,利用部分已标记的输入数据训练ml模型。

-增强学习:ml算法与动态环境交互,在所述动态环境中ml算法执行特定的任务并接收从其动作得到的反馈。

存在若干基本的ml方法,其能够被组合以实现更复杂的任务:

-利用已标记的训练数据的分类:为ml算法提供了已经使用多个不同的类标记的数据。该ml算法使用已训练的ml模型把新的未标记的数据分配到这些类中的一个或更多个类。一个示例是垃圾邮件过滤,在该示例中电子邮件被分类成“垃圾邮件”类或“非垃圾邮件”类。

-不使用已标记的训练数据的聚类:ml算法把输入数据划分成多个类,无需任何的已标记的输入数据。更确切地说,是ml算法决定了输出类的数量或结构。

-回归:回归算法估计变量之间的关系,且提供连续的输出。

-异常检测:异常检测算法检测与期望的通常训练的模式或输入数据集合中的其它数据不一致的特定的输入数据。

已知的ml算法包括但不限于:线性回归、逻辑回归、决策树、支持向量机(svm)、朴素贝叶斯、人工神经网络、k最近邻(knn)、k均值、随机森林、降维算法、梯度增强、自适应提升(adaboost)、以及递增算法。后者是基于数据递增学习的算法,即,模型在其每次被用于新的实例时都被更新。这些算法中的一个或更多个算法通常被组合使用。例如,在“patternrecognitionandmachinelearning(模式识别和机器学习)”(c.m.bishop著,springer,纽约,2006)中能够找到ml算法和模式识别的概述。

训练ml模型(也被称为更新ml模型或学习ml模型)的过程,涉及为ml算法提供用于学习的数据(也被称为训练数据)。训练数据包含有被称为目标或目标属性的正确答案。ml算法在训练数据中找出把输入数据的属性映射至目标的模式,并输出捕获了这些模式的ml模型。术语“ml模型”指代作为训练过程的结果的模型产物。ml模型可以在使用时逐渐地改进,即,其可以在成功地对实例分类时被更新或训练。作为示例,用于垃圾邮件过滤的ml模型可以通过用户反馈对电子邮件的人工分类(“垃圾邮件”或“非垃圾邮件”)来进行训练。作为另外的示例,用于脸部识别的ml模型可以通过反馈用户已经识别出的个人的姓名(如图1中所示——向用户提供了他/她可以通过按下按键120来确认的分类“alice”,以更新通信设备100的本地第一ml模型)来进行训练。

如现有技术中已知的,脸部识别通常包括:检测图像中的脸部,从检测出的脸部提取特征,以及基于提取出的特征来识别脸部(即,识别个人)。例如,在“facerecognitionalgorithms(脸部识别算法)”(i.marqués著,西班牙basque大学,西班牙,2010)中能够找到脸部识别算法的概述。

对图像110进行分类353包括:计算对图像110的分类的置信度级别。计算出的置信度级别反映了实例与所产生的分类之间的一致程度。以多种方式导出计算出的置信度级别,但是通常被定义成使得大的值指示分类的高的置信度级别。即,计算出的置信度级别值越大,所产生的分类就越好地匹配实例。优选地,置信度级别被归一化,使得实例和分类结果之间的完美匹配将得到最大值,如一(“1”)或100%。如果实例与最匹配的分类相同,则就是这种情况。置信度级别的最基本的形式是ml模型的概率分类输出p(yi|xi),其是应该被分类为分类标记的yi的实例xi的后验概率。上文提及的ml算法自身或者能够直接输出这些概率,或者能够对应地表示等同概率(参见,例如,“patternrecognitionandmachinelearning(模式识别和机器学习)”(c.m.bishop著,springer,纽约,2006)。

在下文中,描述了使用所谓的mondrian一致性预测如何计算置信度级别同时保证预测中的高的确定度的示例。为了使用mondrian一致性预测,针对每个类标记训练一个ml模型。首先把训练集分成两个集合:合适的训练集合t、以及大小为c的校准集合c。针对给定的类标记的ml模型m是在其合适的训练集合t上训练的。随后使用ml模型m对校准数据集合进行分类,以产生c个不一致分数a=a1,...,ac。不一致分数是使用所选择的不一致函数计算的,所述不一致函数如a1=1-p(yi|xi),其中p(yi|xi)是针对正确标记yi的ml模型m对来自校准集合c的实例xi的分类概率估计。不一致分数被存储用于稍后为新实例计算置信度级别时使用。

为了对新实例进行分类并计算分类的置信度级别,ml模型m被用于获取针对对应的类标记的分类概率估计。随后,如下计算分类的p值

如果该p值低于用户指定的阈值重要性值,则可以把针对该类标记的分类看作是不重要的且因此能够去除。作为示例,如果用户指定的重要性值是0.05,则接收的p值低于0.05的任意分类被看作是不重要的。该步骤因此产生了对于给定的重要性值被视为是正确的零个、一个或更多个分类。具有对于给定的重要性级别被视为正确的分类的最高分类概率的分类被作为具有相关联的置信度级别的输出标记。

对于回归算法,可以使用所谓的“一致回归”的类似过程。

发起设备320还可操作用于:比较354计算出的置信度级别与阈值置信度级别。例如,阈值置信度级别可以由发起设备320的用户配置,通过已发起或已请求对实例进行分类的应用(例如,请求脸部识别的影集应用)配置,或通过依赖于借助ml的分类的互联网服务配置。配置阈值置信度级别以便定义成功分类与不成功分类之间的区别,在成功分类的情况下,计算出的置信度级别等于或大于阈值置信度级别,而在不成功分类的情况下,计算出的置信度级别小于阈值置信度级别。给出一个示例,如果识别出了单个个人,则可以认为对表示人脸的图像进行的分类是成功的,即,该分类得到的图像和与识别出的个人对应的分类之间的匹配显著好于该图像和与其他的个人对应的分类之间的匹配。

作为比较354的结果,如果计算出的置信度级别小于阈值置信度级别,则发起设备320可操作用于获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息。例如,发起设备320可以可操作用于:通过选择355a一个或更多个其它通信设备(图3中的“cd”),获取标识一个或更多个其它通信设备的信息。备选地,发起设备320可以可操作用于:通过向选择服务器310发送用于选择一个或更多个其它通信设备的选择请求消息355b,获取标识一个或更多个其它通信设备的信息。选择请求消息355b包括关于以下中的至少一项的信息:发起设备320的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用发起设备320的本地第一ml模型对图像110的分类(即,对图像110进行分类353的结果)、发起设备320的类别、与图像110关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。例如,与由特征矢量表示的实例有关的一个或更多个已分类的实例可以是:标识也是在图像110中捕获的且已被成功分类(即,已经识别出了他们各自的脸部)的一个或更多个其他个人的信息。发起设备320还可操作用于:从选择服务器310接收选择响应消息355d,该选择响应消息355d包括标识由选择服务器310选择355c的一个或更多个其它通信设备的信息。参考图8至图10在下文中进一步描述选择服务器310。

发起设备320还可操作用于:如果计算出的置信度级别小于阈值置信度级别,则向一个或更多个其它通信设备发送分类请求消息356。分类请求消息356包括所导出的特征矢量,且可以可选地包括:阈值置信度级别、使用发起设备320的本地第一ml模型得到的分类、在分类353期间计算的置信度级别、关于已请求对图像110进行分类的应用或服务的类型的标识符或信息、和/或发起设备320的标识符或地址。

向一个或更多个其它通信设备发送分类请求消息356的目的是:请求其帮助对实例(例如,图像110)进行分类。这是基于以下理解:由这些其它通信设备(例如,通信设备330和通信设备340)维护的本地第一ml模型可能比发起设备320的本地第一ml模型更适合于对实例进行分类。在下文更具体地描述选择一个或更多个其它通信设备。

进一步参考图3,作为承担转发设备的角色示出的通信设备330可操作用于:通过从发起设备320接收包括特征矢量的分类请求消息356,获取表示实例(例如,表示诸如个人的脸部之类的对象的图像110)的特征矢量。如在上文中描述的,分类请求消息356可以可选地包括:阈值置信度级别、使用发起设备320的本地第一ml模型得到的分类、在分类353期间计算的置信度级别、关于已请求对图像110进行分类的应用或服务的类型的标识符或信息、和/或发起设备320的标识符或地址。

与已经参考发起设备320描述的内容对应,转发设备330还可操作用于:通过把特征矢量应用于转发设备330的本地第一ml模型(其包括计算对图像110的分类的置信度级别),对图像110进行分类363。转发设备330还可操作用于:比较364计算出的置信度级别与阈值置信度级别。阈值置信度级别优选地利用分类请求消息356来接收,但是可以可选地由转发设备330的用户配置、通过已发起或已请求对实例进行分类的应用(例如,请求脸部识别的影集应用)配置、或通过依赖于借助ml的分类的互联网服务配置。作为比较364的结果,如果计算出的置信度级别小于阈值置信度级别,则转发设备330可操作用于:获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息。例如,转发设备330可以可操作用于:通过选择365a一个或更多个其它通信设备,获取标识一个或更多个其它通信设备的信息。备选地,转发设备330可以可操作用于:通过向选择服务器310发送用于选择一个或更多个其它通信设备的选择请求消息365b,获取标识一个或更多个其它通信设备的信息。选择请求消息365b包括关于以下中的至少一项的信息:转发设备330的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用转发设备330的本地第一ml模型对图像110的分类(即,对图像110进行分类363的结果)、转发设备330的位置、与图像110关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。例如,与由特征矢量表示的实例有关的一个或更多个已分类的实例可以是:标识也是在图像110中捕获的且已被成功分类(即,已经识别出了他们各自的脸部)的一个或更多个其他个人的信息。转发设备330还可操作用于:从选择服务器310接收选择响应消息365d,该选择响应消息365d包括标识由选择服务器310选择365c的一个或更多个其它通信设备的信息。

转发设备330还可操作用于:如果计算出的置信度级别小于阈值置信度级别,则向一个或更多个其它通信设备发送分类请求消息366。分类请求消息366包括特征矢量,且可以可选地包括:阈值置信度级别、使用转发设备330的本地第一ml模型的分类、在分类363期间计算的置信度级别、关于已请求对图像110进行分类的应用或服务的类型的标识符或信息、发起设备320的标识符或地址、和/或转发设备330的标识符或地址。作为发送分类请求消息366的备选,转发设备330可以可操作用于重新发送或转发分类请求消息356,将其作为分类请求消息366。

向一个或更多个其它通信设备发送分类请求消息366的目的是:请求其帮助对实例(例如,图像110)进行分类。这是基于以下理解:由其它通信设备维护的本地第一ml模型可能比转发设备320的本地第一ml模型更适合于对实例进行分类。虽然在下文中更详细地描述选择一个或更多个其它通信设备,但是这里要注意的是:由转发设备330选择的或由选择服务器310基于转发设备330的请求而选择的一个或更多个其它通信设备的集合可以不同于由发起设备320选择的或由选择服务器310基于发起设备320的请求而选择的一个或更多个其它通信设备的集合。

有利地,没有成功对实例进行分类以达到足够的置信度级别的每个通信设备,例如发起设备320(图3中的353)和转发设备330(图3中的363)能够对通过下述方式对实例进行分类的尝试做出贡献:选择并请求一个或更多个其它通信设备基于特定于该通信设备和/或其用户的信息来帮助对实例进行分类。这种情况是因为:每个通信设备的本地第一ml模型以特定方式训练,并且通过本地第一ml模型的分类因此对选择其它通信设备会有影响。此外,用户通过他的/她的(例如,通过通信设备中存储的或通信设备可访问的联系人列表、或通过社交网络(例如,google+的facebook)关联用户的联系人的列表所反应的)社交网络、经历和兴趣影响对其它通信设备的选择。用户特定的信息也反映在第二ml模型中,特别是如果本地第二ml模型被用于选择一个或更多个其它通信设备(图3中的355a和365a且这些模型被更新,则更是如此,这将在下文进一步描述。

进一步参考图3,作为承担分类设备的角色示出的通信设备340可操作用于:通过从转发设备330接收包括特征矢量的分类请求消息366,获取表示实例(例如,表示诸如个人的脸部之类的对象的图像110)的特征矢量。如上文描述的,分类请求消息366可以可选地包括:阈值置信度级别、使用转发设备330的本地第一ml模型的分类、在分类363期间计算的置信度级别、关于已请求对图像110进行分类的应用或服务的类型的标识符或信息、发起设备320的标识符或地址、和/或转发设备330的标识符或地址。还要了解,分类设备340可以直接从发起设备320(在图3中未示出)接收分类请求消息366。例如,如果分类设备340被发起设备320选择355a/355c或被选择服务器310基于发起设备320的请求而选择355a/355c为所述其它通信设备中的一个通信设备,则可以是这种情况。

与已经参考发起设备320和转发设备330描述的内容对应,分类设备340还可操作用于:通过把特征矢量应用于分类设备340的本地第一ml模型(其包括计算对图像110的分类的置信度级别),对图像110进行分类373。分类设备340还可操作用于:比较374计算出的置信度级别与阈值置信度级别。阈值置信度级别优选地利用分类请求消息366来接收,但是可以可选地由分类设备340的用户配置。作为比较374的结果,如果计算出的置信度级别等于或大于阈值置信度级别,即,分类373是成功的,则分类设备340可操作用于:向从其接收分类请求消息366的转发设备330发送包括对图像110的分类的分类成功消息375。备选地或附加地,分类设备340可以可操作地直接向发起设备320发送包括对图像110的分类的分类成功消息375。作为又一个备选,转发设备330可以(可选地经由另外的转发设备)向发起设备320转发其从分类设备340接收的分类成功消息375。分类成功消息375还可以包括:作为由分类设备340对图像110进行分类373的结果获得的计算出的置信度级别,以及可选择的关于分类的其它信息。

可选地,分类设备340还可以可操作用于:获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息。例如,分类设备340可以可操作用于:通过选择395a一个或更多个其它通信设备,获取标识一个或更多个其它通信设备的信息。备选地,分类设备340可以可操作用于:通过向选择服务器310发送用于选择一个或更多个其它通信设备的选择请求消息395b,获取标识一个或更多个其它通信设备的信息。选择请求消息395b包括关于以下中的至少一项的信息:分类设备340的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用分类设备340的本地第一ml模型对图像110的分类、分类设备340的位置、与图像110关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。例如,与由特征矢量表示的实例有关的一个或更多个已分类的实例可以是:标识也是在图像110中捕获的且已被成功分类(即,已经识别出了他们各自的脸部)的一个或更多个其他个人的信息。分类设备340还可操作用于:从选择服务器310接收包括标识由选择服务器310选择395c的一个或更多个其它通信设备的信息的选择响应消息395d。

分类设备340还可操作用于:向一个或更多个其它通信设备发送分类成功消息396。分类成功消息396类似于分类成功消息375,并且包括使用分类设备340的本地第一ml模型对图像110的成功分类,并且可以可选地包括作为由分类设备340对图像110进行分类373的结果获得的计算出的置信度级别、以及可选的关于分类的其它信息。分类设备340由此可操作用于:向其它通信设备分发或广播关于成功分类373的信息,其它通信设备可以使用该信息更新(即,训练)其各自的本地第一ml模型。

作为基于以下中的至少一项选择一个或更多个其它通信设备的备选或附加:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、针对计算出的置信度级别等于或大于阈值置信度级别的对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例,分类设备340可以向已请求要接收关于成功分类的信息的一个或更多个其它通信设备发送分类成功消息396,以用于更新(即,训练)其本地第一ml模型的目的。例如,这可以通过使用ml对实例进行分类的通信设备的实施例的用户可能订购的服务来实现。为了这一目的,分类成功消息396被发送给订购用户的通信设备,和/或由订购用户的通信设备发送给其它订购用户的通信设备。分类成功消息396可以直接在设备之间发送或者可以经由与订购服务关联的服务器发送。

转发设备330还可以可操作用于:从发起设备340接收分类成功消息375。对应地,发起设备320还可以可操作用于:从转发设备330或从分类设备340接收分类成功消息375。

要了解的是:本发明的实施例不限于如图3中所示的三个参与通信的设备——发起设备320、转发设备330、以及分类设备340。相反,在基于发起设备320的请求对实例进行分类时,可能涉及任意数量的其它通信设备。如果分类设备340经由多于一个中间转发设备接收到来自发起设备340的分类请求,则可以直接向发起设备320发送分类响应消息,或在沿着从发起设备320接收分类请求消息的路径的相反的方向上、经过曾转发分类请求消息的所有的中间转发设备发送对应的分类响应消息。

发起设备320还可以可操作用于:向从其发起要求对图像110进行分类的请求的应用或服务(例如,由发起设备320执行的影集应用)提供382利用分类成功消息接收的对实例的分类。

转发设备330和发起设备320以及使用ml对实例进行分类的通信设备的任意其它实施例还可以可操作为:响应于接收到分类成功消息375或396,利用所接收的对实例的分类,更新383a/b其各自的本地第一ml模型。通过更新或训练本地第一ml模型,逐渐地提高了其对将来的实例进行分类的能力。可选地,所接收的分类可以被呈现给用户,并且本地第一ml模型只基于用户的请求(例如,如果用户按下了按键120(图1中的“接受”))才进行更新。

如上文中所描述的,本发明的实施例依靠一个或更多个所选择(图3中的选择355a/355c和365a/365c)的通信设备的帮助,所述一个或更多个所选择的通信设备使用ml对实例进行分类,或向一个或更多个选择(图3中的选择395a/395c)的其它通信设备分发关于成功分类的信息。由选择服务器310、发起设备320、转发设备330或分类设备340基于以下中的任意一项或其组合,选择一个或更多个其它通信设备:

-用户的标识和通信设备的用户的联系人列表,所述通信设备选择一个或更多个其它通信设备或向选择服务器310(在下文中被称为“选择设备”)请求选择一个或更多个其它通信设备。例如,这可以是选择设备中存储的或选择设备可访问的且包括其它通信设备的用户的联系信息的联系人列表,所述联系信息如电话号码、电子邮件地址、或与社交网络和其它互联网服务的用户关联的别名和姓名。备选地,这可以是通过诸如google+的facebook之类的社交网络关联用户的联系人列表。这样的社交网络联系人的列表通常维护和存储在由社交网络运营的服务器上,并且包括社交网络的其他用户的别名或姓名。有利地,对被请求用于帮助对实例进行分类的一个或更多个其它通信设备的选择由此考虑选择设备的用户和一个或更多个其它通信设备的用户可能共享共同的经历(他们可能已访问了共同的地点或事件)、共同的朋友或共同的兴趣。例如,共同的兴趣可以通过专门针对诸如体育、文化等特定主题的某些社交网络组或社交网络中的用户的成员身份来反映。因此,有可能将所选择的其它通信设备的本地第一ml模型训练用于对相关用户的通信设备所遇到的实例进行分类。

-特征矢量中包括的数据的类型,例如,图像数据、音频数据、通信日志、电子邮件数据等。备选地,这也可以是特征矢量的起点,描述从其导出特征矢量的数据的类型,例如图像、音频记录、通信日志、电子邮件等。例如,如果特征矢量包括图像数据,则可以从有可能具有可能适合于对图像进行分类的本地第一ml模型的通信设备的子集之中选择所述一个或更多个其它通信设备。例如,这可以是已知的具有大型图像库的通信设备,因为能够期望它们各自的本地第一ml模型在对这些图像进行分类时已经被训练过。

-使用选择设备的本地第一ml模型对实例的分类。即使选择设备的本地第一ml模型不能够成功地对图像110进行分类,即,计算出的置信度级别低于阈值置信度级别,仍可以把该分类用于选择所述一个或更多个其它通信设备。这种情况是因为:所述选择可以在所有可用的通信设备的子集上执行,其中,子集中的通信设备具有的本地第一ml模型有可能比选择设备的本地第一ml模型更好地适用于成功地对实例进行分类。例如,如果图像110已经由发起设备320分类353为表示人脸,则可以把一个或更多个其它通信设备选择为通过社交网络与发起设备320的用户关联的用户的通信设备。有利地,属于发起设备320的用户的朋友的通信设备比任何一个任意选择的通信设备更可能具有能够对图像110进行分类的本地第一ml模型。这种情况是因为:图像110可能表示已经被发起设备320的用户的社交网络朋友的通信设备分类过的共同朋友的脸部。相应的推理适用于转发设备330。如果选择设备是分类设备340,对图像110的成功分类有利地被与分类设备340的用户有关的用户的其它通信设备共享,使得可以利用对可能是共同朋友的人的成功分类来更新其它通信设备的本地第一ml模型。进一步参考作为“人脸”的对实例的部分分类的上述示例,可以备选地从已知的维护捕获人脸的图像的相对较大集合的通信设备的子集中选择一个或更多个其它通信设备。还要了解的是,本发明的实施例还可以尝试使用其本地第一ml模型将实例分类到不同级别的分类中。作为示例,“人体部分”可以是包括诸如“脸部”和“手部”之类的子类别的类别,但是“脸部”又可以包括“男性脸部”和“女性脸部”的子类别。如果使用了不同级别的分类,则计算出的置信度级别可以可选地反映最匹配的分类的级别。例如,如果实例是表示女性个人的脸部的图像,则计算出的置信度级别的第一个值可以指示通信设备已经以高的置信度将图像分类为表示人脸。计算出的置信度级别的第二个值(其大于第一个值)可以指示通信设备已经以高的置信度把图像分类为表示女性人脸。最后,计算出的置信度级别的第三个值(其大于第二个值且可能也超过阈值置信度级别)可以指示通信设备已经以高的置信度级别将图像分类为表示已识别的女性个人。

-选择设备的位置、一个或更多个其它通信设备各自的位置、和/或与图像110关联的位置。选择与选择设备在同一位置处或在其附近的一个或更多个其它通信设备是有利的,因为其它通信设备可能已经遇到并成功分类了与选择设备类似的实例。例如,如果发起设备320把图像110分类为人脸,则正在或曾经在发起设备320附近的其它通信设备可能曾经捕获并成功地分类过相同的脸部图像。相应的推理适用于转发设备330。如果分类设备340把图像110分类为某个个人,则正在或曾经在分类设备340附近的其它通信设备可以把该成功分类用于更新其本地第一ml模型,由此提高其对后续可能捕获且尝试分类的同样的脸部图像进行分类的能力。除了人脸,所捕获的图像还可以表示诸如建筑、雕像或绘画(例如,当图像是在博物馆捕获的情况下)之类的固定对象。在这种情况下,可以基于其各自的当前位置或以前的位置以及与实例关联的位置选择其它通信设备。在当前的上下文中,例如,与实例关联的位置可以是由图像所表示的对象的位置、或由音频记录捕获话音的人的位置。这是有利的,因为正在或曾经在与实例关联的位置附近的其它通信设备可能已经捕获并成功分类过相同对象的图像。例如,关于通信设备的各自的位置的信息可以通过通信设备之间的消息交换进行共享。备选地,如果由选择服务器310选择一个或更多个其它通信设备,则关于所述一个或更多个其它通信设备的各自的位置的信息对选择服务器310可能是可用的。例如,这可以通过使用ml对实例进行分类的通信设备的实施例的用户订购的服务来实现。例如,作为服务的一部分,通信设备可以向选择服务器310报告其各自的位置。

-与由特征矢量表示的实例有关的一个或更多个已分类的实例。例如,这可以是与要被分类的实例具有相同的源的实例。例如,实例可以是由图像捕获的多个人脸中的一个人脸。如果通信设备能够分类人脸中的一个或更多个人脸,即,辨认出人脸并能够识别个人,则可以向与已识别的个人关联的通信设备发送包括表示未识别的脸部的特征矢量的分类请求消息。这是有利的,因为与已识别的个人(其被捕获在与要被识别的脸部相同的图像中)关联的通信设备很可能具有被更好地训练用于识别脸部的本地第一ml模型,因为这些本地第一ml模型可能已经捕获并成功地分类过相同脸部的图像。这种情况是因为在相同的图像中捕获的其它个人可能认识要被分类的个人。类似的推理适用于特征矢量中包括的其它类型的数据(例如,当实例是音频记录捕获的多个人的话音之一时)。

对使用ml对实例进行分类的一个或更多个其它通信设备的选择可以或者基于规则集合,或者基于使用第二ml模型的ml算法。类似于上文所述的本地第一ml模型,第二ml模型可以基于任意已知类型的ml算法,具有与用于对实例进行分类的本地第一ml模型相同或不同的类型。与本地第一ml模型(其用于对实例进行分类,可选地基于其它通信设备的请求对实例进行分类)相反,第二ml模型可被用于选择一个或更多个通信设备,这可以或者出于请求帮助对实例进行分类的目的,或出于向其它通信设备分发关于成功分类的信息的目的。第二ml模型可以由使用ml对实例进行分类的通信设备的实施例(即,作为本地第二ml模型)或由选择服务器310维护。

优选地,出于更新第二ml模型的目的,关于由所选择的其它通信设备执行的分类的信息被反馈至选择设备——例如,发起设备320(图3中的355a)、转发设备330(图3中的365a)或选择服务器310(图3中的355c/365c)。这可以通过分别向选择设备或选择服务器310发送计算出的置信度级别来实现。

更具体地,并且参考图3,如果发起设备320已选择355a一个或更多个其它通信设备(包括转发设备330),则转发设备330可以向发起设备320发送置信度级别报告消息367,该置信度级别报告消息367包括对图像110进行分类363时计算出的置信度级别和描述分类、特征矢量等的可选的附加信息。如果选择服务器310已选择355c一个或更多个其它通信设备(包括转发设备330),则转发设备330可以向发起设备320发送置信度级别报告消息367,发起设备320把计算出的置信度级别和可选的附加信息作为置信度级别报告消息357转发给选择服务器310。备选地,转发设备330可以直接向选择服务器310发送置信度级别报告消息367。

对应地,如果转发设备330已选择365a一个或更多个其它通信设备(包括分类设备340),则分类设备340可以向转发设备330发送计算出的置信度级别,该计算出的置信度级别可以包括在与置信度级别报告消息367类似的信度报告消息377中。备选地,计算出的置信度级别可以利用分类成功消息375来发送,分类成功消息375可以可选地包括描述分类、特征矢量等的附加信息。如果选择服务器310已选择365c一个或更多个其它通信设备(包括分类设备340),则分类设备340可以直接向选择服务器310发送包括计算出的置信度级别和可选择的描述分类、特征矢量等的附加信息的置信度级别报告消息377。

置信度级别报告消息可以可选地仅在分类成功时(即,当计算出的置信度级别等于或大于阈值置信度级别时)才发送。在这种情况下,仅发送图3中的置信度级别报告消息377。

通信设备320、330和340与选择服务器310之间的消息的交换,特别是选择请求消息(例如,图3中的355b、365b、以及395b)、选择响应消息(例如,图3中的355d、365d、以及395d)、分类请求消息(例如,图3中的356和366)、分类成功消息(例如,图3中的375和396)、以及置信度级别报告消息(例如,图3中的367和377)的交换,可以通过现有技术中已知的任意合适的协议来实行。例如,可以使用依赖于诸如传输控制协议(tcp)和网际互联协议(ip)之类的下层传输协议的超文本传输协议(http)或受限应用协议(coap)传输这些消息。

虽然参考图像110举例说明了本发明的实施例,但人们可以容易地设想使用ml对不同于图像的实例进行分类的通信设备。例如,实例可以是如图2中示出的捕获声音210的音频记录等。在这种情况下,通信设备100可以可操作用于通过下述方式获取表示音频记录的特征矢量:获取音频记录(例如,通过使用可操作地连接至通信设备100的麦克风——例如,麦克风104,记录声音210),以及从音频记录导出表示声音的特征矢量。

在下文中,参考图4和图5描述使用ml对实例进行分类的通信设备100(例如,发起设备320、转发设备330、以及分类设备340)的实施例中包括的处理装置101的实施例。

在图4中示出了处理装置101的第一实施例400。处理装置400包括处理单元402(例如,通用处理器)和计算机可读存储介质403(例如,随机存取存储器(ram)、闪存等)。另外,处理装置400包括:一个或更多个接口401(图4中的“i/o”),用于控制通信设备100中包括的其它组件和/或从其它组件(例如,通信模块102、显示器103、麦克风104、以及前置相机105)接收信息。存储器403包含有计算机可执行的指令404(即,计算机程序或软件),所述指令用于使通信设备100变为可操作用于:当在处理单元402上执行计算机可执行的指令404时,根据如本文所述的本发明的实施例来执行。

在图5中示出了处理装置101的备选实施例500。类似于处理装置400,处理装置500包括:一个或更多个接口501(图5中的“i/o”),用于控制通信设备100中包括的其它组件(例如,通信模块102、显示器103、麦克风104、以及前置相机105)和/或从其它组件接收信息。处理装置500还包括:被配置为使通信设备100根据如本文所述的本发明的实施例执行的特征模块502、分类模块503、设备选择模块504、消息收发模块505、以及可选的应用模块506。

具体地,特征模块502被配置为获取表示实例的特征矢量;而分类模块503被配置为:通过把特征矢量应用于通信设备的本地第一ml模型并且计算对实例的分类的置信度级别来对实例进行分类。设备选择模块504被配置为:如果计算出的置信度级别小于阈值置信度级别,则获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息,以及经由消息收发模块505向一个或更多个其它通信设备发送包括特征矢量的分类请求消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:通信设备的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,分类模块503还被配置为:经由消息收发模块505从使用ml对实例进行分类的另一个通信设备接收包括对实例的分类的分类成功消息,并且分类模块503还可以被配置为利用所接收的对实例的分类来更新本地第一ml模型。备选地或附加地,分类模块503还可以被配置为:向由应用模块506执行的发起要求对实例进行分类的请求的应用提供所接收的对实例的分类。

如果实例是捕获对象的图像或视频帧,则特征模块502可以被配置为通过下述方式获取表示实例的特征矢量:获取图像或视频帧,并且从图像或视频帧导出表示实例的特征矢量。可选地,特征模块502还可以被配置为:使用可操作地被连接至通信设备的相机,获取图像或视频帧。

如果实例是捕获声音的音频记录,则特征模块502可以被配置为通过下述方式获取表示实例的特征矢量:获取音频记录,并且从音频记录导出表示实例的特征矢量。可选地,特征模块502还可以被配置为:使用可操作地被连接至通信设备的麦克风,获取音频记录。

备选地,特征模块502可以被配置为通过下述方式获取表示实例的特征矢量:经由消息收发模块505从使用ml对实例进行分类的另一个通信设备接收包括特征矢量的分类请求消息。

优选地,分类模块503还可以被配置为:在计算出的置信度级别等于或大于阈值置信度级别时,经由消息收发模块505向以下中的至少一项发送包括对实例的分类的分类成功消息:分类请求消息接收自的其它通信设备和分类请求消息源自的通信设备。可选地,设备选择模块504还可以被配置为:获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息,并且经由消息收发模块505向一个或更多个其它通信设备发送分类成功消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、针对计算出的置信度级别等于或大于阈值置信度级别的对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,分类模块503还可以被配置为经由消息收发模块505向以下中的至少一项发送计算出的置信度级别:分类请求消息源自的通信设备、以及用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器。

设备选择模块504可以被配置为:通过选择一个或更多个其它通信设备,获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息。优选地,设备选择模块504还被配置为,通过使用第二ml模型,选择使用ml对实例进行分类的一个或更多个其它通信设备。可选地,设备选择模块504还可以被配置为:经由消息收发模块505从一个或更多个其它通信设备中的至少一个其他通信设备接收计算出的置信度级别,并且基于所接收的计算出的置信度级别更新第二ml模型。

备选地,设备选择模块504可以被配置为通过下述方式获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息:经由消息收发模块505向用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器发送用于选择一个或更多个其它通信设备的选择请求消息,并且经由消息收发模块505从选择服务器接收包括标识一个或更多个其它通信设备的信息的选择响应消息。选择请求消息包括关于以下中的至少一项的信息:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,消息收发模块505还可以被配置为:从一个或更多个其它通信设备中的至少一个其他通信设备接收计算出的置信度级别,并且向选择服务器发送所接收的计算出的置信度级别。

接口401和接口501、及模块502至模块506,以及处理装置500中包括的任意附加模块,可以通过任何一种电子电路装置(例如,模拟电子电路装置、数字电子电路装置、以及执行合适的计算机程序(即软件)的处理装置中的任意一个或其组合)来实现。

在下文中,参考图6和图7描述了使用ml对实例进行分类的方法的实施例600和实施例700。方法600由实现发起设备320的角色的本发明的实施例执行。方法700由实现转发设备330和/或分类设备340的角色的本发明的实施例执行。虽然已经针对实现不同角色的本发明的实施例分别说明了使用ml对实例进行分类的方法的实施例,但要了解的是,本发明的实施例可以实现本文讨论的不同的角色中的任意一个或其任意组合。因此,可以设想不与图6或图7直接对应的使用ml对实例进行分类的方法的实施例。

方法600包括:获取表示实例的特征矢量;通过把特征矢量应用于通信设备的本地第一ml模型对实例进行分类603;以及,计算603对实例的分类的置信度级别。例如,如果实例是通过图像或视频帧捕获的对象,则获取表示实例的特征矢量可以包括:通过接收601b图像或视频帧或通过使用可操作地被连接至通信设备的相机捕获601a图像或视频帧,来获取图像或视频帧;以及,从图像或视频帧导出602表示对象的特征矢量。例如,如果实例是通过音频记录捕获的声音,则获取表示所述实例的特征矢量可以包括:通过接收601b音频记录或通过使用可操作地被连接至通信设备的麦克风捕获601a音频记录,来获取音频记录;以及,从音频记录导出602表示声音的特征矢量。

方法600还包括:比较605计算出的置信度级别与阈值置信度级别;以及,如果计算出的置信度级别小于阈值置信度级别,则获取621-623标识使用ml对实例进行分类的一个或更多个其它通信设备的信息;以及,向一个或更多个其它通信设备发送624包括特征矢量的分类请求消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:通信设备的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,方法600还包括:从使用ml对实例进行分类的另一个通信设备接收625包括对实例的分类的分类成功消息。优选地,方法600还可以包括:利用所接收的对实例的分类,更新613本地第一ml模型。备选地或附加地,方法600还可以包括:将所接收的对实例的分类提供612给要求对实例进行分类的请求所源自的应用。

获取标识一个或更多个其它通信设备的信息可以包括:选择621一个或更多个其它通信设备。优选地,选择621一个或更多个其它通信设备包括:使用第二ml模型。

备选地,获取标识一个或更多个其它通信设备的信息可以包括:向用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器发送622用于选择一个或更多个其它通信设备的选择请求消息;以及,从选择服务器接收623包括标识一个或更多个其它通信设备的信息的选择响应消息。选择请求消息包括关于以下中的至少一项的信息:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、对所述实例的分类、通信设备的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,方法600还包括:从一个或更多个其它通信设备中的至少一个其他通信设备接收626计算出的置信度级别;以及,基于所接收的计算出的置信度级别更新627第二ml模型。备选地,方法600还可以包括:向选择服务器发送628所接收的计算出的置信度级别。

例如,方法700包括:获取表示实例的特征矢量,这例如可以通过从使用ml对实例进行分类的另一个通信设备接收701包括特征矢量的分类请求消息来实现;通过将特征矢量应用于通信设备的本地第一ml模型,对实例进行分类703;以及,计算703对实例的分类的置信度级别。

方法700还包括:比较705计算出的置信度级别与阈值置信度级别;以及,如果计算出的置信度级别小于阈值置信度级别,则获取721-723标识使用ml对实例进行分类的一个或更多个其它通信设备的信息;以及,向一个或更多个其它通信设备发送724包括特征矢量的分类请求消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:通信设备的用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,方法700还包括:从使用ml对实例进行分类的另一个通信设备接收725包括对实例的分类的分类成功消息。优选地,方法700还可以包括:利用所接收的对实例的分类,更新713本地第一ml模型。

获取标识一个或更多个其它通信设备的信息可以包括:选择721一个或更多个其它通信设备。优选地,选择721一个或更多个其它通信设备包括:使用第二ml模型。

备选地,获取标识一个或更多个其它通信设备的信息可以包括:向用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器发送722用于选择一个或更多个其它通信设备的选择请求消息;以及,从选择服务器接收723包括标识一个或更多个其它通信设备的信息的选择响应消息。选择请求消息包括关于以下中的至少一项的信息:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、对实例的分类、通信设备的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

可选地,方法700还包括:从一个或更多个其它通信设备中的至少一个其他通信设备接收726计算出的置信度级别;以及,基于所接收的计算出的置信度级别更新727第二ml模型。备选地,方法700还可以包括:向选择服务器发送728所接收的计算出的置信度级别。

方法700还可以包括:如果计算出的置信度级别等于或大于阈值置信度级别,则向以下中的至少一项发送712包括对实例的分类的分类成功消息:所述分类请求消息接收自的其它通信设备和所述分类请求消息源自的通信设备。可选地,方法700还可以包括:获取标识使用ml对实例进行分类的一个或更多个其它通信设备的信息;以及,向一个或更多个其它通信设备(在图7中未示出)发送分类成功消息。所述一个或更多个其它通信设备是基于以下中的至少一项选择的:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、针对计算出的置信度级别等于或大于阈值置信度级别的对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

方法700还可以包括:向以下中的至少一项发送704计算出的置信度级别:所述分类请求消息源自的通信设备、以及用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器。

要了解的是,方法600和方法700可以包括附加的步骤或根据贯穿本公开描述的内容修改的步骤。方法600或方法700的实施例可以被实现为诸如由通信设备中包括的处理单元执行的计算机程序404之类的软件,通信设备由此变得可操作为根据本文描述的本发明的实施例来执行。

在下文中,参考图8和图9描述了用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择服务器310的实施例。

在图8中示出了选择服务器310的第一实施例800。选择服务器800包括:通信模块801、处理单元802(例如,通用处理器)、以及计算机可读存储介质803(例如,随机存取存储器(ram)、闪存等)。通信模块801可操作用于通过通信网络(例如,局域网(lan)、wlan/wi-fi网络、广域网(wan)、互联网等)、或几个这样的通信网络的组合来实行通信。例如,通信模块801可以是诸如以太网接口卡之类的网络接口卡。存储器803包含有计算机可执行的指令804(即,计算机程序或软件),用于使选择服务器800变为可操作用于:当在处理单元802上执行计算机可执行的指令804时,根据如本文所述的本发明的实施例来执行。

在图9中示出了选择服务器310的备选实施例900。类似于选择服务器800,选择服务器900包括类似于通信模块801的通信模块901。选择服务器900还包括:设备选择模块902和消息收发模块903,它们被配置为使选择服务器900根据本文描述的本发明的实施例执行。

具体地,设备选择模块902被配置为:经由消息收发模块903从使用ml对实例进行分类的通信设备接收用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择请求消息。选择请求消息包括关于以下中的至少一项的信息:通信设备的用户的标识、用户的联系人列表、表示实例的特征矢量中包括的数据的类型、特征矢量的起点、使用通信设备的本地第一ml模型对实例的分类、通信设备的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

设备选择模块902还被配置为基于以下中的至少一项选择一个或更多个其它通信设备:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

设备选择模块902还被配置为:经由消息收发模块903向通信设备发送包括标识所选择的一个或更多个其它通信设备的信息的选择响应消息。

优选地,设备选择模块902被配置为:通过使用第二ml模型,选择使用ml对实例进行分类的一个或更多个其它通信设备;并且还被配置为:经由消息收发模块903从通信设备和一个或更多个其它通信设备中的至少一项接收计算出的置信度级别,并且基于所接收的计算出的置信度级别更新第二ml模型。

模块801和模块901至模块903以及选择服务器900中包括的任意附加模块,可以通过任何一种电子电路装置(例如,模拟电子电路装置、数字电子电路装置、以及执行合适的计算机程序(即软件)的处理装置中的任意一个或其组合)来实现。

在下文中,参考图10描述了选择使用ml对实例进行分类的一个或更多个其它通信设备的方法的实施例1000。方法1000由(例如,可以由社交网络提供方维护的)选择服务器执行。

方法1000包括:从使用ml对实例进行分类的通信设备接收1001用于选择使用ml对实例进行分类的一个或更多个其它通信设备的选择请求消息。选择请求消息包括关于以下中的至少一项的信息:通信设备的用户的标识、用户的联系人列表、表示实例的特征矢量中包括的数据的类型、特征矢量的起点、使用通信设备的本地第一ml模型对实例的分类、通信设备的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

方法1000还包括基于以下中的至少一项选择1002一个或更多个其它通信设备:用户的标识、用户的联系人列表、特征矢量中包括的数据的类型、特征矢量的起点、使用本地第一ml模型对实例的分类、通信设备的位置、一个或更多个其它通信设备各自的位置、与实例关联的位置、以及与由特征矢量表示的实例有关的一个或更多个已分类的实例。

方法1000还包括:向通信设备发送1003包括标识所选择的一个或更多个其它通信设备的信息的选择响应消息。

优选地,选择1002使用ml对实例进行分类的一个或更多个其它通信设备包括使用第二ml模型,并且方法1000还包括:从通信设备和一个或更多个其它通信设备中的至少一项接收1004计算出的置信度级别,并且基于所接收的计算出的置信度级别更新1005第二ml模型。

要理解的是,方法1000可以包括附加步骤或根据贯穿本公开描述的内容修改的步骤。方法1000的实施例可以被实现为诸如由选择服务器中包括的处理单元执行的计算机程序804之类的软件,选择服务器由此变为可操作为根据本文描述的本发明的实施例来执行。

本领域技术人员意识到本发明绝不限于上述实施例。相反,可以在所附的权利要求的范围内做出许多修改和变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1