首页 / 专利库 / 人工智能 / 特征向量 / 预测对象类别的系统和方法

预测对象类别的系统和方法

阅读:2发布:2020-10-14

专利汇可以提供预测对象类别的系统和方法专利检索,专利查询,专利分析的服务。并且本 申请 披露了预测对象类别的系统和方法。可以获取与第一对象组有关的数据。第一对象组可包括至少两个第一对象(1010,1030)和至少两个第二对象(1020,1040)。可以为第一对象组中的每个对象确定预测标签。可以确定关于第一对象组的初始标签转换矩阵(1065)。可以获取一个或以上第二对象(1020,1040)的子集(1050)。可以生成一个或以上对象组合子集(1060)。可以确定与一个或以上对象组合子集(1060)中的每个对象组合子集相关联的类别 预测模型 (1070)和更新的标签转换矩阵(1080)。可以预测至少两个第二对象(1020,1040)中的至少一个第二对象的类别。,下面是预测对象类别的系统和方法专利的具体信息内容。

1.一种预测对象类别的方法,所述方法在至少一个设备上实现,所述至少一个设备中的每个设备具有至少一个处理器和存储器,所述方法包括:
获取与第一对象组相关的数据,所述第一对象组包括至少两个第一对象和至少两个第二对象,其中,所述至少两个第一对象中的每个第一对象包括类别标签,以及所述至少两个第二对象中的每个第二对象是未被标记的;
基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中每个对象的预测标签;
基于与所述第一对象组相关的所述类别标签和所述预测标签,确定关于所述第一对象组的初始标签转换矩阵;
通过对所述至少两个第二对象进行采样,获取一个或以上第二对象子集;
基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集;
基于标签噪声容限分类算法和所述初始标签转换矩阵,确定与所述一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵;以及基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和所述更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别。
2.根据权利要求1所述的方法,其特征在于,与所述第一对象组相关的所述数据包括与所述第一对象组中的每个对象相关的特征数据和所述第一对象组之间的关系数据,以及基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中的每个对象的预测标签,包括:
将与所述第一对象组中的每个对象相关的所述特征数据转换为特征向量,以获取至少两个特征向量;
基于所述关系数据和所述至少两个特征向量,确定两个相关的特征向量之间的一个或以上余弦相似度值;以及
基于所述一个或以上余弦相似度值,通过将所述至少两个第一对象的至少两个类别标签传播给所述第一对象组,确定所述第一对象组中的每个对象的所述预测标签。
3.根据权利要求1所述的方法,其特征在于,所述一个或以上第二对象子集包括所述至少两个第二对象的不同样本。
4.根据权利要求1所述的方法,其特征在于,所述一个或以上第二对象子集中的每个第二对象子集包括来自所述至少两个第二对象的一定百分比的样本。
5.根据权利要求4所述的方法,其特征在于,所述基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集,包括:
通过将所述一个或以上第二对象子集中的每个第二对象子集与所述至少两个第一对象组合,生成所述一个或以上对象组合子集中的每个对象组合子集。
6.根据权利要求1所述的方法,其特征在于,所述基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别,包括:
基于所述类别预测模型和与所述至少两个第二对象中的所述至少一个第二对象相关联的特征数据,确定关于所述至少两个第二对象中的所述至少一个第二对象的至少一个第一类别概率向量;
基于所述更新的标签转换矩阵和所述至少两个第二对象中的所述至少一个第二对象的所述预测标签,确定关于所述至少两个第二对象中的所述至少一个第二对象的至少一个第二类别概率向量;以及
基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定所述至少两个第二对象中的所述至少一个第二对象的所述类别。
7.根据权利要求6所述的方法,其特征在于,所述基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定所述至少两个第二对象中的所述至少一个第二对象的所述类别,包括:
基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定目标类别概率向量;以及
将与所述目标类别概率向量的最大值相关的标签指定为所述至少两个第二对象中的所述至少一个第二对象的所述类别。
8.根据权利要求7所述的方法,其特征在于,所述基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定目标类别概率向量,包括:
将关于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量的一个或以上平均值指定为所述目标类别概率向量的一个或以上元素;或
将所述至少一个第一类别概率向量和所述至少一个第二类别概率向量的加权和指定为所述目标类别概率向量。
9.根据权利要求1所述的方法,其特征在于,所述第一对象组中的每个对象是用户,并且所述第一对象组中的每个对象的所述类别包括所述用户的年龄组、所述用户的出行偏好、所述用户的出行时间、所述用户的消费平或所述用户的消费倾向中的至少一个。
10.根据权利要求1所述的方法,其特征在于,所述第一对象组中的每个对象是用户,与所述第一对象组有关的所述数据包括与所述第一对象组中的每个对象相关联的特征数据,并且与所述第一对象组中的每个对象相关联的所述特征数据包括与所述用户的一个或以上历史出行位置有关的第一信息或者与安装在与所述用户相关联的终端设备上的一个或以上应用程序有关的第二信息中的至少一个。
11.根据权利要求1所述的方法,其特征在于,所述第一对象组中的每个对象是用户,与所述第一对象组有关的所述数据包括关系数据,并且所述关系数据包括与所述第一对象组中的两个或以上对象之间发送一个或以上红包有关的第三信息或与所述第一对象组中的两个或以上对象之间的一个或以上关系有关的第四信息中的至少一个。
12.根据权利要求1所述的方法,其特征在于,所述标签噪声容限分类算法是鲁棒的多类逻辑回归算法。
13.根据权利要求1所述的方法,其特征在于,所述初始标签转换矩阵表示与所述至少两个第一对象相关联的类别标签被转换为与所述至少两个第一对象相关联的预测标签的概率。
14.一种系统,包括:
至少一个计算机可读存储介质,包括用于管理服务供应的指令集;以及
与所述至少一个存储介质通信的至少一个处理器,其中,当执行所述指令集时,所述至少一个处理器用于:
获取与第一对象组相关的数据,所述第一对象组包括至少两个第一对象和至少两个第二对象,其中,所述至少两个第一对象中的每个第一对象包括类别标签,以及所述至少两个第二对象中的每个第二对象是未被标记的;
基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中每个对象的预测标签;
基于与所述第一对象组相关的所述类别标签和所述预测标签,确定关于所述第一对象组的初始标签转换矩阵;
通过对所述至少两个第二对象进行采样,获取一个或以上第二对象子集;
基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集;
基于标签噪声容限分类算法和所述初始标签转换矩阵,确定与所述一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵;以及基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和所述更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别。
15.根据权利要求14所述的系统,其特征在于,与所述第一对象组相关的所述数据包括与所述第一对象组中的每个对象相关的特征数据和所述第一对象组之间的关系数据,以及所述基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中的每个对象的预测标签,包括:
将与所述第一对象组中的每个对象相关的所述特征数据转换为特征向量,以获取至少两个特征向量;
基于所述关系数据和所述至少两个特征向量,确定两个相关的特征向量之间的一个或以上余弦相似度值;以及
基于所述一个或以上余弦相似度值,通过将所述至少两个第一对象的至少两个类别标签传播给所述第一对象组,确定所述第一对象组中的每个对象的所述预测标签。
16.根据权利要求14所述的系统,其特征在于,所述一个或以上第二对象子集包括所述至少两个第二对象的不同样本。
17.根据权利要求14所述的系统,其特征在于,所述一个或以上第二对象子集中的每个第二对象子集包括来自所述至少两个第二对象的一定百分比的样本。
18.根据权利要求17所述的系统,其特征在于,所述基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集,包括:
通过将所述一个或以上第二对象子集中的每个第二对象子集与所述至少两个第一对象组合,生成所述一个或以上对象组合子集中的每个对象组合子集。
19.根据权利要求14所述的系统,其特征在于,所述基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别,包括:
基于所述类别预测模型和与所述至少两个第二对象中的所述至少一个第二对象相关联的特征数据,确定关于所述至少两个第二对象中的所述至少一个第二对象的至少一个第一类别概率向量;
基于所述更新的标签转换矩阵和所述至少两个第二对象中的所述至少一个第二对象的所述预测标签,确定关于所述至少两个第二对象中的所述至少一个第二对象的至少一个第二类别概率向量;以及
基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定所述至少两个第二对象中的所述至少一个第二对象的所述类别。
20.根据权利要求19所述的系统,其特征在于,所述基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定所述至少两个第二对象中的所述至少一个第二对象的所述类别,包括:
基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定目标类别概率向量;以及
将与所述目标类别概率向量的最大值相关的标签指定为所述至少两个第二对象中的所述至少一个第二对象的所述类别。
21.根据权利要求20所述的系统,其特征在于,所述基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定目标类别概率向量,包括:
将关于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量的一个或以上平均值指定为所述目标类别概率向量的一个或以上元素;或
将所述至少一个第一类别概率向量和所述至少一个第二类别概率向量的加权和指定为所述目标类别概率向量。
22.根据权利要求14所述的系统,其特征在于,所述第一对象组中的每个对象是用户,并且所述第一对象组中的每个对象的所述类别包括所述用户的年龄组、所述用户的出行偏好、所述用户的出行时间、所述用户的消费水平或所述用户的消费倾向中的至少一个。
23.根据权利要求14所述的系统,其特征在于,所述第一对象组中的每个对象是用户,与所述第一对象组有关的所述数据包括与所述第一对象组中的每个对象相关联的特征数据,并且与所述第一对象组中的每个对象相关联的所述特征数据包括与所述用户的一个或以上历史出行位置有关的第一信息或者与安装在与所述用户相关联的终端设备上的一个或以上应用程序有关的第二信息中的至少一个。
24.根据权利要求14所述的系统,其特征在于,所述第一对象组中的每个对象是用户,与所述第一对象组有关的所述数据包括关系数据,并且所述关系数据包括与所述第一对象组中的两个或以上对象之间发送一个或以上红包有关的第三信息或与所述第一对象组中的两个或以上对象之间的一个或以上关系有关的第四信息中的至少一个。
25.根据权利要求14所述的系统,其特征在于,所述标签噪声容限分类算法是鲁棒的多类逻辑回归算法。
26.根据权利要求14所述的系统,其特征在于,所述初始标签转换矩阵表示与所述至少两个第一对象相关联的类别标签被转换为与所述至少两个第一对象相关联的预测标签的概率。
27.一种非暂时性计算机可读介质,包括至少一组用于提供按需服务的指令,其中,当由处理器执行时,所述至少一组指令指示所述处理器执行以下动作:
获取与第一对象组相关的数据,所述第一对象组包括至少两个第一对象和至少两个第二对象,其中,所述至少两个第一对象中的每个第一对象包括类别标签,以及所述至少两个第二对象中的每个第二对象是未被标记的;
基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中每个对象的预测标签;
基于与所述第一对象组相关的所述类别标签和所述预测标签,确定关于所述第一对象组的初始标签转换矩阵;
通过对所述至少两个第二对象进行采样,获取一个或以上第二对象子集;
基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集;
基于标签噪声容限分类算法和所述初始标签转换矩阵,确定与所述一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵;以及基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和所述更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别。

说明书全文

预测对象类别的系统和方法

交叉引用

[0001] 本申请要求于2017年3月23日提交的中国专利申请号为2017101790311的优先权,其全部内容通过引用结合于此。

技术领域

[0002] 本申请一般涉及数据处理系统,更具体地,涉及预测对象类别的系统和方法。

背景技术

[0003] 随着计算机科学和信息技术的发展,已经在各个领域(例如,制造业、电信业、商业、金融业、医疗保健、医疗、环境工业等)中生成了多个数据集。预测分析可以分析与多个当前和/或历史事实相关联的多个数据集,以对未来或未知的对象进行预测。预测分析可应用于多个方面,例如,分析客户关系管理、临床决策支持、收集分析、交叉销售、客户保留、直接营销、欺诈检测等。
[0004] 预测对象的类别可能是预测分析中的常见问题。基于因特网的按需服务,例如在线出租车呼叫服务,由于其使用服务的便利性而变得越来越流行。对象的预测类别可以促进按需服务系统为对象提供更好的服务。按需服务系统可以自己预测对象的类别和/或利用预测的类别。各种统计技术(例如,预测建模、机器学习数据挖掘等)可用于预测对象的类别。例如,标签噪声可用于对象类别。然而,标签噪声可能在对象类别中引起潜在的负面后果。因此,预测和/或归类未被标记的对象的准确度可能相对较低。期望提供一种系统和方法,以提高预测对象的类别的准确性和效率。发明内容
[0005] 根据本申请的一个方面,提供了一种方法。该方法可以用于预测对象的类别,其可以在至少一个设备上实现,每个设备具有至少一个处理器和存储器。所述方法可以包括一个或以上下述操作。所述至少一个处理器可以获取与第一对象组有关的数据。所述第一对象组可以包括至少两个第一对象和至少两个第二对象。所述至少两个第一对象中的每个第一对象可以包括类别标签,以及所述至少两个第二对象中的每个第二对象可以是未被标记的。所述至少一个处理器可以基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中每个对象的预测标签。所述至少一个处理器可以基于与所述第一对象组相关的所述类别标签和所述预测标签,确定关于所述第一对象组的初始标签转换矩阵。所述至少一个处理器可以通过对所述至少两个第二对象进行采样,获取一个或以上第二对象子集。所述至少一个处理器可以基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集。所述至少一个处理器可以基于标签噪声容限分类算法和所述初始标签转换矩阵,确定与所述一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵。所述至少一个处理器可以基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和所述更新的标
签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别。
[0006] 根据本申请的另一方面,提供了一种系统。所述系统可以包括至少一个计算机可读存储介质,其包括一组用于管理服务供应的指令。所述至少一个处理器可以与至少一个存储介质通信。当执行该组指令时,可以指示所述至少一个处理器执行一个或以上以下操作。所述至少一个处理器可以获取与第一对象组有关的数据。所述第一对象组可以包括至少两个第一对象和至少两个第二对象。所述至少两个第一对象中的每个第一对象可以包括类别标签,以及所述至少两个第二对象中的每个第二对象可以是未被标记的。所述至少一个处理器可以基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中每个对象的预测标签。所述至少一个处理器可以基于与所述第一对象组相关的所述类别标签和所述预测标签,确定关于所述第一对象组的初始标签转换矩阵。所述至少一个处理器可以通过对所述至少两个第二对象进行采样,获取一个或以上第二对象子集。所述至少一个处理器可以基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集。所述至少一个处理器可以基于标签噪声容限分类算法和所述初始标签转换矩阵,确定与所述一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵。所述至少一个处理器可以基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和所述更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别。
[0007] 根据本申请的另一方面,一种非暂时性计算机可读介质可以包括至少一组用于提供按需服务的指令。所述至少一组指令可以由处理器执行。当执行该组指令时,可以指示所述至少一个处理器执行一个或以上以下操作。所述至少一个处理器可以获取与第一对象组有关的数据。所述第一对象组可以包括至少两个第一对象和至少两个第二对象。所述至少两个第一对象中的每个第一对象可以包括类别标签,以及所述至少两个第二对象中的每个第二对象可以是未被标记的。所述至少一个处理器可以基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中每个对象的预测标签。所述至少一个处理器可以基于与所述第一对象组相关的所述类别标签和所述预测标签,确定关于所述第一对象组的初始标签转换矩阵。所述至少一个处理器可以通过对所述至少两个第二对象进行采样,获取一个或以上第二对象子集。所述至少一个处理器可以基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集。所述至少一个处理器可以基于标签噪声容限分类算法和所述初始标签转换矩阵,确定与所述一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵。所述至少一个处理器可以基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类
别预测模型和所述更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别。
[0008] 在一些实施例中,与所述第一对象组相关的所述数据可以包括与所述第一对象组中的每个对象相关的特征数据和所述第一对象组之间的关系数据。为了基于与所述第一对象组相关的所述数据和标签传播算法,确定所述第一对象组中的每个对象的预测标签,所述至少一个处理器可以将与所述第一对象组中的每个对象相关的所述特征数据转换为特征向量,以获取至少两个特征向量;基于所述关系数据和所述至少两个特征向量,确定两个相关的特征向量之间的一个或以上余弦相似度值;以及基于所述一个或以上余弦相似度
值,通过将所述至少两个第一对象的至少两个类别标签传播给所述第一对象组,确定所述第一对象组中的每个对象的所述预测标签。
[0009] 在一些实施例中,所述一个或以上第二对象子集可以包括所述至少两个第二对象的不同样本。
[0010] 在一些实施例中,所述一个或以上第二对象子集中的每个第二对象子集可以包括来自所述至少两个第二对象的一定百分比的样本。
[0011] 在一些实施例中,为了基于所述一个或以上第二对象子集和所述至少两个第一对象,生成一个或以上对象组合子集,所述至少一个处理器可以通过将所述一个或以上第二对象子集中的每个第二对象子集与所述至少两个第一对象组合,生成所述一个或以上对象组合子集中的每个对象组合子集。
[0012] 在一些实施例中,为了基于与所述一个或以上对象组合子集中的每个对象组合子集相关联的所述类别预测模型和更新的标签转换矩阵,预测所述至少两个第二对象中的至少一个第二对象的类别,所述至少一个处理器可以基于所述类别预测模型和与所述至少两个第二对象中的所述至少一个第二对象相关联的特征数据,确定关于所述至少两个第二对象中的所述至少一个第二对象的至少一个第一类别概率向量;基于所述更新的标签转换矩阵和所述至少两个第二对象中的所述至少一个第二对象的所述预测标签,确定关于所述至少两个第二对象中的所述至少一个第二对象的至少一个第二类别概率向量;以及基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定所述至少两个第二对象中的所述至少一个第二对象的所述类别。
[0013] 在一些实施例中,为了基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定所述至少两个第二对象中的所述至少一个第二对象的所述类别,所述至少一个处理器可以基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定目标类别概率向量;以及将与所述目标类别概率向量的最大值相关的标签指定为所述至少两个第二对象中的所述至少一个第二对象的所述类别。
[0014] 在一些实施例中,为了基于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量,确定目标类别概率向量,所述至少一个处理器可以将关于所述至少一个第一类别概率向量和所述至少一个第二类别概率向量的一个或以上平均值指定为所述目标类别概率向量的一个或以上元素,或者将所述至少一个第一类别概率向量和所述至少一个第二类别概率向量的加权和指定为所述目标类别概率向量。
[0015] 在一些实施例中,所述第一对象组中的每个对象可以是用户。所述第一对象组中的每个对象的所述类别可以包括所述用户的年龄组、所述用户的出行偏好、所述用户的出行时间、所述用户的消费平或所述用户的消费倾向中的至少一个。
[0016] 在一些实施例中,所述第一对象组中的每个对象可以是用户。与所述第一对象组有关的所述数据可以包括与所述第一对象组中的每个对象相关联的特征数据,并且与所述第一对象组中的每个对象相关联的所述特征数据可以包括与所述用户的一个或以上历史出行位置有关的第一信息或者与安装在与所述用户相关联的终端设备上的一个或以上应
用程序有关的第二信息中的至少一个。
[0017] 在一些实施例中,所述第一对象组中的每个对象可以是用户。与所述第一对象组有关的所述数据可以包括关系数据,并且所述关系数据可以包括与所述第一对象组中的两个或以上对象之间发送一个或以上红包有关的第三信息,或与所述第一对象组中的两个或以上对象之间的一个或以上关系有关的第四信息中的至少一个。
[0018] 在一些实施例中,所述标签噪声容限分类算法可以是鲁棒的多类逻辑回归算法。
[0019] 在一些实施例中,所述初始标签转换矩阵可以表示与所述至少两个第一对象相关联的类别标签被转换为与所述至少两个第一对象相关联的预测标签的概率。
[0020] 本申请的一部分附加特征将在下面的描述中进行说明。通过对以下描述和相应附图的检查研究或者对实例的生产或操作的了解,本申请的一部分附加特征对于本领域技术人员会变得清楚。本申请的特征可以通过对以下描述的具体实施例的各种方面的方法、手段和组合的实践或使用得以实现和达到。

附图说明

[0021] 本申请将结合示例性实施例进一步进行描述。这些示例性的实施例将结合参考图示进行详细描述。这些实施例并非限制性实施例,其中,相同的组件符号表示相同的结构,其中:
[0022] 图1是根据本申请的一些实施例所示的示例性按需服务系统的示意图;
[0023] 图2是被配置为实现本申请中披露的特定系统的示例性移动设备的框图
[0024] 图3是根据本申请的一些实施例所示的示例性计算设备的框图。
[0025] 图4是根据本申请的一些实施例所示的示例性处理引擎的框图。
[0026] 图5是根据本申请的一些实施例所示的示例性预测标签确定模的框图;
[0027] 图6是根据本申请的一些实施例所示的示例性组合子集确定模块的框图;
[0028] 图7是根据本申请的一些实施例所示的示例性类别预测模块的框图;
[0029] 图8是根据本申请的一些实施例所示的预测未被标记的对象的类别的示例性过程的流程图
[0030] 图9是根据本申请的一些实施例所示的预测未被标记的对象的类别的示例性过程的流程图。
[0031] 图10A是根据本申请的一些实施例所示的确定第一对象组中的每个对象的预测标签的示例性过程的示意图;
[0032] 图10B是根据本申请的一些实施例所示的生成对象的一个或以上组合子集的示例性过程的示意图;
[0033] 图10C是根据本申请的一些实施例所示的确定一个或以上类别预测模型和一个或以上更新的标签转换矩阵的示例性过程的示意图;
[0034] 图11是根据本申请的一些实施例所示的确定第一对象组中的每个对象的预测标签的示例性过程的流程图;以及
[0035] 图12是根据本申请的一些实施例所示的基于一个或以上类别预测模型和一个或以上更新的标签转换矩阵来预测未被标记的对象的类别的示例性过程的流程图。

具体实施方式

[0036] 下述描述是为了使本领域技术人员能制造和使用本申请,并且该描述是在特定的应用场景及其要求的背景下提供的。对于本领域的技术人员来讲,对本申请披露的实施例进行的各种修改是显而易见的,并且本申请定义的通则可以适用于其他实施例和应用,而不背离本申请的精神和范围。因此,本申请不限于所示的实施例,而是符合与申请专利范围一致的最广泛范围。
[0037] 本文中所使用的术语仅用于描述特定示例性实施例,并不限制本申请的范围。如本文使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本说明书中所示,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、组件、部件和/或其组合的情况。
[0038] 应当理解,这里使用的术语“系统”、“模块”和/或“块”是用于区分升级中的不同级别的不同组件、元件、部件、部分或组件的一种方法。但是,如果这些术语达到同样的目的,则可能会被另一个术语所取代。
[0039] 这里使用的术语“模块”或“块”是指体现在硬件固件中的逻辑,或者是软件指令的集合。这里描述的模块或块可以实现为软件和/或硬件,并且可以存储在任何类型的非暂时性计算机可读介质或其他存储设备中。在一些实施例中,可以编译软件模块/单元/块并将其链接到可执行程序中。应当理解,软件模块可以从其他模块/单元/块或它们自身调用,和/或可以响应检测到的事件或中断来调用。被配置用于在计算设备(例如,如图3所示的处理器320)上执行的软件模块/单元/块可以在计算机可读介质上提供,例如光盘、数字视频光盘、闪存驱动器、磁盘或任何其他有形介质,或数字下载(并且最初可以以压缩或可安装的格式存储,在执行之前需要安装、解压缩或解密)。这里的软件代码可以被部分的或全部地储存在执行操作的计算设备的存储设备中,并应用在计算设备的操作之中。软件指令可以嵌入固件中,例如电可编程只读存储器(EPROM)。还应当理解,硬件模块/单元/块可以包括在连接的逻辑组件中,例如和触发器,和/或可以包括在可编程单元中,例如可编程门阵列或处理器。这里描述的模块/单元/块或计算设备功能可以实现为软件模块/单元/块,但是可以用硬件或固件表示。通常,这里描述的模块/单元/块指的是逻辑模块/单元/块,其可以与其他模块/单元/块组合或者分成子模块/子单元/子块,而不管它们的物理组织或存储。该描述可适用于系统、引擎或其一部分。
[0040] 应当理解,当模块或块被称为“连接到”或“耦合到”其他模块或块时,除非上下文另有明确说明,否则它可以直接连接或耦合到其他模块或块或与其通信,或者可以存在中间单元、引擎、模块或块。在本申请中,术语“和/或”可包括任何一个或以上相关所列条目或其组合。
[0041] 在考虑了作为本申请一部分的附图的描述内容后,本申请的特征和特点以及操作方法、结构的相关元素的功能、各部分的组合、制造的经济性变得显而易见。然而,应当理解,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是附图并不是按比例的。
[0042] 本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或以上其他操作添加到这些流程图中。一个或以上操作也可以从流程图中删除。
[0043] 而且,本申请的系统或方法可以应用于任何其他种类的在线按需服务。例如,本申请的系统和方法可以应用于不同的运输系统,包括陆地、海洋、航空航天等或上述举例的任意组合。运输服务的车辆可以包括出租车、私家车、挂车、公共汽车、火车、子弹头火车、高速路、地铁、船只、飞机、宇宙飞船、热气球、无人驾驶车辆、自行车、三轮车、摩托车等或其任意组合。本申请的系统或方法可以应用于出租车呼叫、司机服务、送货服务、拼车、公共汽车服务、外卖服务、司机租用、车辆租赁、自行车共享服务、火车服务、地铁服务、班车服务、定位服务等。又例如,本申请的系统或方法可以应用于购物服务、学习服务、健身服务、金融服务、社交服务等。本申请的系统或方法的应用场景可以包括网页、浏览器插件、客户端终端、定制系统、内部分析系统、人工智能机器人等或其任意组合。
[0044] 按需服务的对象可以是任何产品。在一些实施例中,该产品可以是有形产品或无形产品。有形产品可以包括食物、药物、日用品、化学产物、电器用品、衣服、汽车、住宅、奢侈品等或其任意组合。无形产品可以包括服务产品、金融产品、知识产品、因特网产品等或其任意组合。互联网产品可以包括个人主机产品、网站产品、移动互联网产品、商业主机产品、嵌入式产品等或上述举例的任意组合。移动互联网产品可以用于移动终端的软件、程序、系统等或其任意组合。移动终端可以包括平板计算机、膝上型计算机、移动电话个人数字助理(PDA)、智能手表、POS设备、机上计算机、机上电视、可穿戴设备等或其任意组合。例如,产品可以是在计算机或移动电话上使用的任一软件和/或应用程序。软件和/或应用程序可以与社交、购物、运输、娱乐、学习、投资等或其任意组合相关。在一些实施例中,与运输相关联的所述软件和/或应用程序可以包括出行软件和/或应用程序、车辆调度软件和/或应用程序、地图软件和/或应用程序等。对于车辆调度软件和/或应用程序,车辆可以是、马车、人车(例如,独轮手推车脚踏车、三轮车等)、汽车(例如,出租车、公交车、私人汽车等)、火车、地铁、船只、航空器(例如,飞机、直升机、航天飞机、火箭、热气球等)或其任意组合。
[0045] 另外,本申请描述的“用户”可以指可以请求服务、订购服务、提供服务或促进提供服务的个人、实体或工具。在本申请中,术语“用户”和“用户终端”可以互换使用。
[0046] 本申请的一个方面涉及预测对象的类别的系统和方法。该系统可以获取与第一对象组有关的数据。第一对象组可包括至少两个第一对象和至少两个第二对象。至少两个第一对象中的每个第一对象可以包括类别标签,并且至少两个第二对象中的每个第二对象可以是未被标记的。系统可以基于与第一对象组有关的数据和标签传播算法,为第一对象组中的每个对象确定预测标签。系统可以基于第一对象的类别标签和第一对象组中每个对象的预测标签,确定关于第一对象组的初始标签转换矩阵。系统可以通过对至少两个第二对象进行采样,获取一个或以上第二对象子集。系统可以基于一个或以上第二对象子集和至少两个第一对象,生成一个或以上对象组合子集。系统可以基于标签噪声容限分类算法和初始标签转换矩阵,确定与一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵。系统可以基于与一个或以上对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵,预测至少一个第二对象的类别。
[0047] 图1是根据一些实施例的示例性按需服务系统100的框图。例如,按需服务系统100可以是用于运输服务(例如出租车呼叫、司机服务、送货服务、拼车、巴士服务、外卖服务、司机租用、车辆租用、火车服务、地铁服务、班车服务)、购物服务、健身服务、学习服务、金融服务等的在线按需服务系统。
[0048] 按需服务系统100可以包括服务器110、网络120、一个或以上用户终端(例如,一个或以上乘客终端130、司机终端140)和存储器150。
[0049] 服务器110可包含处理引擎112。应当注意的是,图1中所示的按需服务系统100仅仅是一个例子,并不是限制性的。在一些实施例中,按需服务系统100可以包括乘客终端130或司机终端140。在一些实施例中,按需服务系统100可以确定或预测对象(例如,与乘客终端130相关联的乘客、与司机终端140相关联的司机等)的类别。在一些实施例中,按需服务系统100可以获取与对象的类别有关的信息和/或基于类别为对象提供定制服务。
[0050] 在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。该服务器组可以是集中式或分布式的(例如,服务器110可以是分布式系统)。在一些实施例中,服务器110可以是本地的或远程的。例如,服务器110可以通过网络120访问存储于一个或以上用户终端(例如,一个或以上乘客终端130、司机终端140)和/或存储器150中的信息和/或数据。
再例如,服务器110可以直接连接到一个或以上用户终端(例如,一个或以上乘客终端130、司机终端140)和/或存储器150以访问存储在其中的信息和/或数据。在一些实施例中,服务器110可以在平台上实施。仅作为示例,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在图3中描述的包含了一个或者多个组件的计算设备300上执行。
[0051] 在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与一个或以上对象有关的信息和/或数据。在一些实施例中,处理引擎112可以通过处理与对象有关的信息和/或数据,来确定或预测一个或以上对象的一个或以上类别。在一些实施例中,对象可以包括一个或以上用户(例如,乘客、司机等)。例如,处理引擎112可以确定或预测用户的年龄组或性别。在一些实施例中,处理引擎112可包括一个或以上处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。仅作为示例,处理引擎112可以包括中央处理单元(CPU)、特定应用集成电路(ASIC)、特定应用指令集处理器(ASIP)、图形处理单元(GPU)、物理处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器微控制器单元、精简指令集计算机(RISC)、微处理器等或其任意组合。
[0052] 网络120可以促进信息和/或数据的交换。在一些实施例中,按需服务系统100中的一个或以上组件(例如,服务器110、一个或以上乘客终端130、一个或以上司机终端140或存储器150)可以通过网络120将信息和/数据发送到按需服务系统100中的其他组件。例如,服务器110可以通过网络120从乘客终端130获取/得到服务请求。又例如,服务器110可以直接或通过网络120从存储器150接收与一个或以上对象有关的信息。作为另一示例,服务器110可以通过网络120从乘客终端130和/或司机终端140接收与一个或以上对象有关的信息。在一些实施例中,网络120可以是任意形式的有线网络或无线网络,或其任意组合。仅作为示例,网络120可以包括缆线网络、有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共开关电话网络(PSTN)、蓝牙网络、紫蜂网络、近场通信(NFC)网络等或上述举例的任意组合。在一些实施例中,网络120可以包括一个或多个网络接入点。例如,网络120可以包括有线或无线网络接入点,如基站和/或互联网交换点120-1、120-2、……。通过接入点,按需服务系统100的一个或多个组件可以连接到网络120以交换数据和/或信息。
[0053] 在一些实施例中,乘客终端130可包括移动设备130-1、平板电脑130-2、膝上型计算机130-3,机动车辆内置设备130-4等或者任何组合。在一些实施例中,移动设备130-1可以包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、增强现实设备等或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等或其任意组合。在一些实施例中,该可穿戴设备可包括智能手镯、智能袜、智能眼镜、智能头盔、智能手表、智能衣物、智能背包、智能配件等或其任意组合。在一些实施例中,智能移动设备可以包括智能电话、个人数字助理(PDA)、游戏设备、导航设备、POS机等或其任意组合。在一些实施例中,虚拟现实设备和/或增强现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实补丁、增强现实头盔、增强现实眼镜、增强现实补丁等或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括Google Glass、Oculus Rift、HoloLens或Gear VR等。在一些实施例中,机动车辆内置设备
130-4可以包括车载计算机、车载电视等。在一些实施例中,乘客终端130可以是具有定位技术的设备。该定位技术可以用于确定请求者和/或乘客终端130的位置。
[0054] 在一些实施例中,司机终端140可以是与乘客终端130类似或者相同的设备。在一些实施例中,司机终端140可以是具有用来确定司机或者司机终端140位置的定位技术的设备。在一些实施例中,乘客终端130和/或司机终端140可以与其他定位设备通信,以确定请求者、乘客终端130、司机和/或司机终端140的位置。在一些实施例中,乘客终端130和/或司机终端140可以将定位信息发送至服务器110。
[0055] 存储器150可以存储数据和/或指令。例如,数据可以是训练模型、一个或以上训练样本、历史订单等或其组合。在一些实施例中,存储器150可以存储从一个或以上用户终端(例如,一个或以上乘客终端130、司机终端140)获取的数据。在一些实施例中,存储器150可以存储服务器110可以执行或用于执行本发明中描述的示例性方法的数据和/或指令。在一些实施例中,存储器150可包括大容量存储器、可移动存储器、易失性读写内存、只读存储器(ROM)等或其任意组合。示例性大容量存储器可包括磁盘、光盘、固态驱动器等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取存储器(RAM)。示例性的RAM可包括动态RAM(DRAM)、双倍速率同步动态RAM(DDR SDRAM)、静态RAM(SRAM)、闸流体RAM(T-RAM)和零电容RAM(Z-RAM)等。示例性的ROM可以包括掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电子可擦除可编程ROM(EEPROM)、光盘ROM(CD-ROM)和数字通用磁盘ROM等。在一些实施例中,存储器150可以在云平台上实现。仅作为示例,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
[0056] 在一些实施例中,存储器150可以连接到网络120以与按需服务系统100中的一个或以上组件(例如,服务器110、一个或以上用户终端等)通信。按需服务系统100中的一个或以上组件可以通过网络120访问存储在存储器150中的数据和/或指令。在一些实施例中,存储器150可以直接与按需服务系统100中的一个或以上部件(例如,服务器110、一个或以上乘客终端等)连接或通信。在一些实施例中,存储器150可以是服务器110的一部分。
[0057] 在一些实施例中,按需服务系统100中的一个或以上组件(例如,服务器110、一个或以上用户终端等)可以具有访问存储器150的权限。在一些实施例中,当满足一个或以上条件时,按需服务系统100中的一个或以上组件可以读取和/或修改与服务请求者、司机和/或公众有关的信息。例如,在完成一个服务后,服务器110可以读取和/或修改一个或以上用户的信息。应当注意,按需服务系统100仅仅是用于说明处理引擎112确定或预测对象的类别的应用的示例。处理引擎112可以在一个或以上其他系统(例如,客户关系管理系统、项目险管理系统、教育管理系统等)上实现。处理引擎112和按需服务系统100的上述描述是出于说明的目的而提供的,并不旨在限制本申请的范围。
[0058] 图2是被配置为实现本申请中披露的特定系统的示例性移动设备200的框图。在一些实施例中,被配置为显示和传送与位置有关的信息的用户终端设备可以是移动设备200。移动设备200可以包括但不限于智能手机、平板电脑、音乐播放器、便携式游戏机、GPS接收器、可穿戴计算设备(例如,眼镜、手表等)等。移动设备200可以包括一个或以上中央处理单元(CPU)240、一个或以上图形处理单元(GPU)230、显示器220、内存260、通信单元210、存储单元290以及一个或以上输入/输出(I/O)设备250。此外,移动设备200还可以是包括但不限于系统总线或控制器(图2中未示出)的任何其他合适的组件。如图2所示,移动操作系统270(例如IOS、Android、Windows Phone等)和一个或以上应用程序280可以从存储单元290加载到内存260并由CPU240实现。应用程序280可以包括浏览器或其他移动应用程序,其被配置为接收和处理与用户在移动设备200中输入的查询(例如,位置名称)有关的信息。乘客/司机可以通过系统I/O设备250获取与一个或以上搜索结果有关的信息,并将该信息提供给服务器110和/或按需服务系统100的其他模块或单元(例如,网络120)。
[0059] 为了实现上述各种模块、单元及其功能,计算机硬件平台可以用作一个或以上元件的硬件平台(例如,服务器110和/或图1至图12中描述的按需服务系统100的其他部分)。这类计算机的硬件元件、操作系统和程序语言在自然界中是常见的,可以假定本领域技术人员对这些技术都足够熟悉,能够利用本申请描述的技术提供按需服务所需要的信息。具有用户界面的计算机可以用作个人计算机(PC)或其他类型的工作站或终端设备。在正确编程之后,具有用户界面的计算机可以用作服务器。可以认为本领域普通技术人员也可以熟悉这种类型的计算机设备的这种结构、程序或一般操作。因此,没有针对附图描述额外的解释。
[0060] 图3是计算设备300的示例性硬件和软件组件的框图,根据本申请的一些实施例,在该计算设备300上可以实现服务器110、一个或以上用户终端(例如,一个或以上乘客终端130、司机终端140)。计算设备300可以被配置为执行本申请中披露的服务器110、乘客终端
130和司机终端140的一个或以上功能。例如,处理引擎112可以在计算设备300上实现并且被配置为执行本申请中披露的处理引擎112的功能。
[0061] 计算设备300可以是通用计算机或专用计算机,两者都可以用于实现本申请的按需服务系统100。计算设备300可用于实现如本文所述的按需服务系统100的任何组件。例如,处理引擎112可以在计算设备300上通过其硬件、软件程序、固件或其组合实现。虽然只是显示了一台这样的计算机,但为方便起见,如本文所述的与搜索服务有关的计算机功能可以在多个类似平台上以分布式方式实现,以分配处理负荷。
[0062] 计算设备300可以包括与网络相连接并促进数据通信的通信(COM)端口250。计算设备300还可以包括处理器320以用来执行程序指令,该处理器220以一个或以上处理器的形式存在。示例性的计算机平台可以包括内部通信总线310、不同形式的程序存储器和数据存储器,例如,磁盘370和只读存储器(ROM)330或随机存取存储器(RAM)340,用于存储由计算机处理和/或传输的各种各样的数据文件。示例性计算机平台还可以包括由处理器320执行的存储在ROM 330、RAM 340和/或其他类型的非暂时性存储介质中的程序指令。本申请的方法和/或流程可以以程序指令的方式实现。计算设备300还可以包括输入/输出360,其支持计算机和其中的其他组件之间的输入/输出。计算设备300也可以通过网络通信接收程序和数据。
[0063] 计算设备300还可以包括与硬盘通信的硬盘控制器、与小键盘/键盘通信的小键盘/键盘控制器、与串行接口设备通信的串行接口设备控制器、与并行接口设备通信的并行接口控制器、与显示器通信的显示器控制器等或其任意组合。
[0064] 为理解方便,计算设备300中仅示例性绘制了一个CPU和/或处理器。然而,需要注意的是,本申请中的计算设备300还可以包括多个CPU和/或处理器,因此本申请中描述的由一个CPU和/或处理器实现的操作和/或方法也可以共同地或独立地由多个CPU和/或处理器实现。例如,如果在本申请中,计算设备300的CPU和/或处理器执行步骤A和步骤B,应当理解的是,步骤A和步骤B也可以由计算设备300的两个不同的CPU和/或处理器共同地或独立地执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同地执行步骤A和步骤B)。
[0065] 图4是根据本申请的一些实施例所示的示例性处理引擎112的框图。处理引擎112可以与计算机可读存储器(例如,存储器150、用户终端(例如,乘客终端130、司机终端140等))通信,并且可以执行存储在计算机可读存储介质中的指令。处理引擎112可包括数据采集模块410、预测标签确定模块420、标签转换矩阵(LTM)确定模块430、组合子集确定模块
440、训练模块450和类别预测模块460。
[0066] 数据采集模块410可以被配置为获取一个或以上对象(例如,第一对象组)和/或与对象有关的数据。在一些实施例中,对象可以包括用户、事件、物质等或其任何组合。例如,对象可以是服务系统的用户,例如,按需服务系统100中的乘客或司机、社交网络平台中的注册成员、在线教育系统中的学习者等。又例如,对象可以是通过服务系统发生的事件,例如,通过按需服务系统100安排的旅行、通过社交网络平台的消息交互、通过在线教育系统的学习体验等。作为另一个例子,对象可以是服务系统中涉及的物质,例如,按需服务系统100中的车辆、快递服务系统中的包裹等。对象的更多描述可以在本申请的其他地方找到,例如,图8及其描述。
[0067] 在一些实施例中,与对象有关的数据可包括与对象相关联的特征数据和/或关系数据。在一些实施例中,数据采集模块410可以从用户终端(例如,乘客终端130、司机终端
140)、存储器150和/或外部数据源(未示出)获取特征数据和/或关系数据。在一些实施例中,数据采集模块410可以通过网络120获取特征数据和/或关系数据。
[0068] 预测标签确定模块420可以被配置为确定一个或以上对象的一个或以上预测标签。例如,预测标签确定模块420可以为第一对象组中的每个对象确定预测标签。第一对象组可包括至少两个第一对象和至少两个第二对象。至少两个第一对象中的每个第一对象可以包括类别标签,并且至少两个第二对象中的每个第二对象可以是未被标记的。在一些实施例中,预测标签确定模块420可以基于与对象相关的数据和/或标签传播算法,确定对象的预测标签。标签传播算法和/或用于确定一个或以上第一对象组的预测标签的操作的更多描述可以在本申请的其他地方找到。参见,例如,图11及其描述。
[0069] 标签转换矩阵(LTM)确定模块430可以被配置为确定第二对象组的初始标签转换矩阵。第二对象组可以包括第一对象的一部分或全部。在一些实施例中,LTM确定模块430可以基于第二对象组的类别标签和第二对象组的预测标签来确定初始标签转换矩阵。在一些实施例中,LTM确定模块430可以确定第二对象组中的每个对象的类别标签转换为第二对象组中的每个对象的预测标签的概率。因此,可以确定关于第二对象组的至少两个概率。LTM确定模块430可以基于所述至少两个概率,确定初始标签转换矩阵。
[0070] 组合子集确定模块440可以被配置为生成一个或以上组合子集。在一些实施例中,组合子集确定模块440可以基于第一对象和一个或以上第二对象子集来生成组合子集。在一些实施例中,组合子集可以包括一个或以上第二对象子集中的一个对象子集和第一对象的一部分。在一些实施例中,组合子集可以包括一个或以上第二对象子集中的一个对象子集以及全部的第一对象。
[0071] 训练模块450可以被配置为确定一个或以上类别预测模型和/或一个或以上更新的标签转换矩阵。例如,训练模块450可以基于初始标签转换矩阵,确定对应于一个或以上组合子集中的一个组合子集的类别预测模型和更新的标签转换矩阵。训练模块450可以使用标签噪声容限分类算法来处理一个或以上组合子集。在一些实施例中,标签噪声容限分类算法可以是多类标签噪声鲁棒逻辑回归算法。在一些实施例中,训练模块450可使用标签噪声容限分类算法训练一个或以上组合子集和/或初始标签转换矩阵。对训练过程的更多描述可以在本申请的其他地方找到,例如,图9及其描述。
[0072] 类别预测模块460可以被配置为预测未被标记的对象的类别(例如,第二对象)。在一些实施例中,类别预测模块460可以基于一个或以上类别预测模型、一个或以上更新的标签转换矩阵和/或未被标记的对象的特征数据来预测未被标记的对象的类别。在一些实施例中,类别预测模块460可以将与未被标记的对象有关的数据输入到类别预测模型和/或标签转换矩阵,并预测未被标记的对象的类别。
[0073] 应当注意,关于处理引擎112的上述描述是出于说明的目的而提供的,并非旨在限制本申请的范围。对于本领域技术人员而言,在本申请内容的指导下,可作出各种各样的变形和修改。但是,那些变化与修改不会脱离本申请的范围。例如,训练模块450可以包括校正单元(未示出)以校正和/或修改一个或以上类别预测模型和/或一个或以上更新的标签转换矩阵。类似的修改应属于本申请的范围。
[0074] 图5是根据本申请的一些实施例所示的示例性预测标签确定模块420的框图。预测标签确定模块420可以包括特征向量确定单元510、余弦相似度确定单元520和标签传播单元530。
[0075] 特征向量确定单元510可以被配置为确定一个或以上特征向量。在一些实施例中,特征向量确定单元510可以将与对象(例如,第一对象组中的每个对象)相关联的特征数据转换为特征向量。特征向量的每个元素可以对应于对象的特征。该特征可以包括与对象的一个或以上历史出行位置有关的第一信息、与安装在与对象相关联的终端设备上的一个或以上应用程序有关的第二信息等。特征向量的每个元素的值可以是0、1或0到1之间的任何数字。当对象的特征向量的元素的值为1时,它可以指示对象具有该特征为真的事实。例如,对象可以具有一个或以上历史出行位置。当对象的特征向量的元素的值为0时,可以指示对象具有该特征为假的事实,即,对象不具有该特征。例如,对象可能没有历史出行位置。
[0076] 余弦相似度确定单元520可以被配置为确定两个相关特征向量之间的一个或以上余弦相似度值。在一些实施例中,余弦相似度确定单元520可以基于与对象组(例如,第一对象组)相关联的两个或以上特征向量和/或关系数据来确定余弦相似度值。在一些实施例
中,当两个特征向量相关时,它可以指示对应于这两个特征向量的两个对象具有直接关系,该关系可以根据关系数据确定。
[0077] 标签传播单元530可以被配置为确定对象(例如,第一对象组中的每个对象)的预测标签。在一些实施例中,标签传播单元530可以基于一个或以上余弦相似度值和/或第一对象组之间的关系数据,通过将一个或以上第一对象的类别标签传播给第一对象组来确定预测标签。在一些实施例中,标签传播单元530可以使用标签传播算法为第一对象组中的每个对象确定预测标签。基于类别标签和对应于两个对象的两个特征向量之间的余弦相似度值,使用标签传播算法,可以将对象的类别标签传播给另一个对象。
[0078] 图6是根据本申请的一些实施例所示的示例性组合子集确定模块440的框图。组合子集确定模块440可以包括采样单元610和组合单元620。
[0079] 采样单元610可以被配置为获取一个或以上未被标记的对象(例如,第二对象)的子集。在一些实施例中,采样单元610可以通过对一个或以上第二对象进行采样来获取第二对象子集。在一些实施例中,一个或以上子集中的每个子集可以包括一定百分比的第二对象。在一些实施例中,采样单元610可以在单次采样中获取一个或以上子集。在一些实施例中,采样单元610可以通过两次或以上采样获取一个或以上子集,其中每个子集可以通过每个单次采样获取。
[0080] 组合单元620可以被配置为生成一个或以上组合子集。在一些实施例中,组合单元620可以基于第二对象子集和一个或以上第一对象来生成组合子集。在一些实施例中,组合子集可以包括一个第二对象子集和一部分第一对象。在一些实施例中,组合子集可以包括一个第二对象子集和全部第一对象。
[0081] 图7是根据本申请的一些实施例所示的示例性类别预测模块460的框图。类别预测模块460可以包括类别概率向量(CPV)确定单元710和类别确定单元720。
[0082] 类别概率向量(CPV)确定单元710可以被配置为确定一个或以上第一类别概率向量和/或一个或以上第二类别概率向量。在一些实施例中,CPV确定单元710可以基于至少一个类别预测模型和未被标记的对象(例如,第二对象)的特征数据来确定所述至少一个第一类别概率向量。在一些实施例中,CPV确定单元710可以基于至少一个更新的标签转换矩阵和未被标记的对象(例如,第二对象)的预测标签来确定所述至少一个第二类别概率向量。
[0083] 类别确定单元720可以被配置为基于至少一个第一类别概率向量和至少一个第二类别概率向量来确定目标类别概率向量。此外,类别确定单元720可以基于目标类别概率向量来确定未被标记的对象(例如,第二对象)的预测类别。在一些实施例中,类别确定单元
720可以将与目标类别概率向量的最大值相关的标签指定为未被标记的对象的类别。
[0084] 图8是根据本申请的一些实施例所示的用于预测未被标记的对象的类别的示例性过程800的流程图。在一些实施例中,用于预测未被标记的对象的类别的过程800可以在如图1所示的按需服务系统100中实现。例如,过程800可以在用户终端(例如,乘客终端130、司机终端140)和/或服务器110中实现。过程800还可以实现为存储在存储器150中并由处理引擎112调用和/或执行的一个或以上指令。以下呈现的所示过程的操作旨在说明。在一些实施例中,过程800可以通过未描述的一个或以上附加操作来完成,和/或在没有所描述的一个或以上操作的情况下来完成。另外,如图8所示和下面描述的过程800的操作的顺序不是限制性的。
[0085] 在801中,处理引擎112(例如,数据采集模块410)可以获取与第一对象组有关的数据。在一些实施例中,对象可以包括用户、事件、物质等或其任何组合。例如,对象可以是服务系统的用户,例如,按需服务系统100中的乘客或司机、社交网络平台中的注册成员、在线教育系统中的学习者等。又例如,对象可以是通过服务系统发生的事件,例如,通过按需服务系统100安排的旅行、通过社交网络平台的消息交互、通过在线教育系统的学习体验等。作为另一个例子,对象可以是服务系统中涉及的物质,例如,按需服务系统100中的车辆、快递服务系统中的包裹等。在一些实施例中,第一对象组可包括一个或以上第一对象和一个或以上第二对象。第一对象可以包括类别标签。第二对象可以是未被标记的,即第二对象可以不包括类别标签。类别标签可以指示对象的类别。如果对象是用户,对象的类别可以包括用户的年龄组、用户的出行偏好、用户的出行时间、用户的消费水平、用户的消费倾向等或其任何组合。如果对象是一个事件,对象的类别可以包括事件发生的概率、事件可能发生的时间段、事件可能发生的位置等或其任何组合。
[0086] 在一些实施例中,与第一对象组有关的数据可以包括与第一对象组中的一个或以上(例如,每个)对象相关联的特征数据和第一对象组之间的关系数据。与对象相关联的特征数据可以指示对象的特征。例如,如果对象是用户,与用户相关联的特征数据可以包括与用户的一个或以上历史出行位置有关的第一信息、与安装在与用户相关联的终端设备(例如,乘客终端130、司机终端140等)的一个或以上应用程序有关的第二信息等或其任意组合。在一些实施例中,与用户的历史出行位置有关的第一信息可以从用户登记的一个或以上的旅行应用程序获取。
[0087] 第一对象组中的关系数据可以表示第一对象组之间的至少两个关系。如果第一对象组中的每个对象是用户,第一对象组中的两个用户之间的关系数据可以表示两个用户之间的熟悉程度,即,两个用户是否是朋友和/或两个用户是第一级朋友还是第二级朋友等。在一些实施例中,关系数据可以包括与第一对象组的两个或以上对象之间的一个或以上红包交换(例如,金钱交易)相关的第三信息或者与第一对象组中的两个或以上对象的社交网络信息有关的第四信息。在一些实施例中,可以基于配置有货币交易功能的网络应用程序(例如,WeChatTM、AlipayTM等),获取第三信息。在一些实施例中,可以基于配置有社交网络功能的网络应用程序(例如,社交应用程序、打车应用程序、视频应用程序等),获取第四信息。如果第一对象组中的每个对象是事件,则关系数据可以指示与第一对象组中的两个或以上事件有关的信息。在一些实施例中,可以基于网络应用程序(例如,上面示出的应用程序)来获取信息。
[0088] 在一些实施例中,可以从用户终端(例如,乘客终端130、司机终端140)、存储器150和/或外部数据源(未示出)获取与第一对象组相关的数据。在一些实施例中,可以通过网络120获取与第一对象组有关的数据。
[0089] 在803中,处理引擎112(例如,预测标签确定模块420)可以确定第一对象组中的一个或以上对象(例如,一个或以上第一对象和/或一个或以上第二对象)的预测标签。在一些实施例中,预测标签确定模块420可以基于在801中获取的与第一对象组有关的数据和/或标签传播算法,确定第一对象组中的每个对象(例如,每个第一对象和/或每个第二对象)的预测标签。标签传播算法和/或用于确定第一对象组中的一个或以上对象的预测标签的操作的更多描述可以在本申请的其他地方找到。参见,例如,图11及其描述。
[0090] 在805中,处理引擎112(例如,训练模块450)可以基于在803中确定的预测标签、第一对象的类别标签、第一对象组和/或标签噪声容限分类算法,确定一个或以上类别预测模型和一个或以上标签转换矩阵。在一些实施例中,类别预测模型和标签转换矩阵可以由训练过程确定。可以在本申请的其他地方找到对训练过程和/或标签噪声容限分类算法的更多描述。参见,例如,图9及其描述。
[0091] 在807中,处理引擎112(例如,类别预测模块460)可以基于在805中确定的类别预测模型和标签转换矩阵,预测未被标记的对象(例如,第二对象)的类别。在一些实施例中,类别预测模块460可以将与未被标记的对象相关的数据输入到类别预测模型和/或标签转换矩阵,并预测未被标记的对象的类别。用于预测未被标记的对象的类别的操作的更多描述可以在本申请的其他地方找到。参见,例如,图12及其描述。
[0092] 图9是根据本申请的一些实施例所示的用于预测未被标记的对象的类别的示例性过程900的流程图。在一些实施例中,用于预测未被标记的对象的类别的过程900可以在如图1所示的按需服务系统100中实现。例如,过程900可以在用户终端(例如,乘客终端130、司机终端140)和/或服务器110中实现。过程900还可以实现为存储在存储器150中并由处理引擎112调用和/或执行的一个或以上指令。以下呈现的所示过程的操作旨在说明。在一些实施例中,过程900在实施时可以添加本申请未描述的一个或以上额外操作,和/或删减此处所描述的一个或以上操作。另外,如图9所示和下面描述的过程900的操作的顺序不是限制性的。
[0093] 在901中,处理引擎112(例如,数据采集模块410)可以获取包括具有类别标签的一个或以上第一对象和未被标记的一个或以上第二对象的第一对象组(参见图10A)。类别标签可以表示第一对象的类别。在一些实施例中,第一对象组中的每个对象可以是与应用程序(例如,在线打车应用程序)、事件等相关联的用户。例如,如果第一对象组中的每个对象是用户,类别可以包括用户的年龄组、用户的出行偏好、用户的出行时间、用户的消费水平,或用户的消费倾向。又例如,如果第一对象组中的每个对象都是事件,则类别可以包括事件发生的概率。第一对象组和对象的类别的更多描述可以在本申请的其他地方找到。参见,例如,图8及其描述。在一些实施例中,第一对象组可以从用户终端(例如,乘客终端130、司机终端140)、存储器150和/或外部数据源(未示出)获取。在一些实施例中,可以通过网络120获取第一对象组。
[0094] 在903中,处理引擎112(例如,数据采集模块410)可以获取与第一对象组有关的数据(例如,与第一对象组相关联的特征数据和关系数据)。在一些实施例中,特征数据和关系数据可以从用户终端(例如,乘客终端130、司机终端140)、存储器150和/或外部数据源(未示出)获取。在一些实施例中,可以通过网络120获取特征数据和关系数据。特征数据和关系数据的更多描述可以在本申请的其他地方找到。参见,例如,图8及其描述。
[0095] 仅作为示例,第一对象组可包括四个用户(例如,用户A、用户B、用户C和用户D)。用户A是带有类别标签的第一对象,表示已知用户A的年龄组。用户B、用户C和用户D是未被标记的第二对象。也就是说,处理引擎112可能不知道用户B、用户C和用户D的类别(例如,年龄组)。处理引擎112可以获取与用户A、用户B、用户C和用户D相关联的关系数据。关系网络可以包括用户A、用户B、用户C和用户D。在一些实施例中,关系数据可以表明用户A和用户B之间存在第一级或第一等级关系,用户A和用户C之间存在第二级或第二等级关系,用户A和用户D之间存在第三级或第三等级关系。然后,处理引擎112可以根据用户A的年龄组和第一级或第一等级关系、第二级或第二等级关系以及第三级或第三级关系,分别预测用户B、用户C和用户D中的每一个的年龄组。在一些实施例中,关系数据可以表示用户A和用户B之间存在第四级或第四等级关系,用户B和用户C之间存在第五级或第五等级关系,以及用户C和用户D之间存在第六级或第六等级关系。然后,处理引擎112可以根据用户A的年龄组和第四级或第四等级关系,预测用户B的年龄组。此外,处理引擎112可以根据用户B的年龄组和第五级或第五等级关系,预测用户C的年龄组。此外,处理引擎112可以根据用户C的年龄组和第六级或第六等级关系,预测用户D的年龄组。
[0096] 在905中,处理引擎112(例如,预测标签确定模块420)可以基于在903中获取的与第一对象组相关的数据(例如,特征数据和关系数据),确定第一对象组中每个对象的预测标签。因此,每个第一对象可以具有预测标签,并且每个第二对象可以具有预测标签(参见图10A)。预测标签可以表示第一对象组中的对象的预测类别。处理引擎112可以使用标签传播算法为第一对象组中的每个对象确定预测标签。因此,每个第一对象可以包括类别标签和预测标签,并且每个第二对象可以仅包括预测标签。确定第一对象组中的每个对象的预测标签的过程的更多描述可以在本申请的其他地方找到。参见,例如,图11及其描述。
[0097] 在907中,处理引擎112(例如,标签转换矩阵(LTM)确定模块430)可以确定与第一对象组相关的初始标签转换矩阵。在一些实施例中,初始标签转换矩阵可以涉及第二对象组。在一些实施例中,第二对象组可以包括与第一对象组中具有类别标签的所有第一对象。在一些实施例中,第二对象组可以仅包括第一对象的一部分。第二对象组可以包括一定百分比的第一对象。例如,如果第一对象组包括1000个第一对象并且百分比是10%,则第二对象组可以包括100个(即,1000×10%)第一对象。
[0098] 在一些实施例中,处理引擎112(例如,LTM确定模块430)可以基于类别标签和与其相关联的预测标签来确定关于第一对象组的初始标签转换矩阵。例如,处理引擎112(例如,LTM确定模块430)可以基于第二对象组的类别标签和第二对象组的预测标签来确定初始标签转换矩阵。在一些实施例中,处理引擎112(例如,LTM确定模块430)可以确定第二对象组中的每个对象的类别标签被转换为第二对象组中的每个对象的预测标签的概率。因此,可以确定关于第二对象组的至少两个概率。处理引擎112(例如,LTM确定模块430)可以基于所述至少两个概率来确定初始标签转换矩阵。在一些实施例中,处理引擎112(例如,LTM确定模块430)可基于一个或以上算法(例如,计数算法),确定初始标签转换矩阵。为了说明的目的,以四个年龄组(例如,10~20岁、20~30岁、30~40岁、40~50岁)为例,第二对象组的初始标签转换矩阵可以是4×4矩阵。初始标签转换矩阵的每个元素可以表示第一对象的类别标签可以转换为预测标签的概率。仅作为示例,如果有10个第一对象属于10~20岁组,预计1个第一对象属于10~20岁组,预计5个第一对象属于20~30岁组,预计4个第一对象属于30~40岁组,以及没有第一对象预计属于40~50岁组,那么初始标签转换矩阵的行或列可以包括四个元素,即0.1、0.5、0.4和0。初始标签转换矩阵的其他行或列可以以类似的方式确定。
[0099] 在909中,处理引擎112(例如,组合子集确定模块440或采样单元610)可以在901中通过对获取的第二对象进行采样,获取一个或以上第二对象子集(例如,n个第二对象子集)。数值n可以是大于0的整数(例如,2、3、4、5等)。可以对第二对象随机、顺序等采样。如果n等于或大于2,则n个子集中的每两个子集中可能没有相同的对象。也就是说,n个子集可以包括至少两个第二对象的不同样本(参见图10B)。在一些实施例中,n个子集中的每个子集可以包括一定百分比的第二对象。在一些实施例中,可以在单次采样中获取n个子集。在一些实施例中,n个子集可以通过n次采样来获取,其中每个子集可以通过每次单独的采样来获取。
[0100] 在911中,处理引擎112(例如,组合子集确定模块440或组合单元620)可以基于在909中获取的第二对象的子集和在901中获取的第一对象,生成一个或以上对象组合子集
(例如,n个对象组合子集)。在一些实施例中,组合子集可以包括第二对象的n个子集中的一个和第一对象的一部分。在一些实施例中,组合子集可以包括第二对象的n个子集中的一个和全部的第一对象(参见图10B)。仅作为示例,如果n为3,则组合子集确定模块440可以获取三个子集(例如,第一子集M1、第二子集M2和第三子集M3)。包括全部的第一对象的第三对象组可由D表示。第一组合子集F1可以通过组合第一子集M1和第三对象组D来生成,并且可以表示为{M1,D}。第二组合子集F2可以通过组合第二子集M2和第三对象组D来生成,并且可以表示为{M2,D}。第三组合子集F3可以通过组合第三子集M3和第三对象组D来生成,并且可以将其表示为{M3,D}。
[0101] 在913中,处理引擎112(例如,训练模块450)可以基于在907中确定的初始标签转换矩阵,确定与一个或以上对象组合子集(例如,n个对象组合子集)中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵。在一些实施例中,处理引擎112(例如,训练模块450)可以在913中确定一个或以上类别预测模型(例如,n个类别预测模型)和一个或以上更新的标签转换矩阵(例如,n个更新的标签转换矩阵)。在一些实施例中,训练模块450可以通过处理n个组合子集中的每个组合子集和初始标签转换矩阵来确定n个类别预测模型和n个更新的标签转换矩阵(参见图10C)。训练模块450可以使用标签噪声容限分类算法来处理n个组合子集中的每个组合子集。在一些实施例中,标签噪声容限分类算法可以是多类标签噪声鲁棒逻辑回归算法。在一些实施例中,可以确定多个类别预测模型(例如,n类别预测模型)以提高预测未被标记的对象的类别的准确度。
[0102] 在一些实施例中,训练模块450可以使用任何标签噪声容限分类算法训练n个组合子集和初始标签转换矩阵,例如,鲁棒多类逻辑回归。训练过程可以由安装在用户终端(例如,乘客终端130、司机终端140)或服务器110上的应用程序(例如,基于Spark的应用程序(集群计算框架))来实现。示例性训练过程可以如下描述。
[0103] 分类器可以基于公式(1)来确定:其中,xq可以指对象q的特征向量, 可以指对象q的类别,k可以指第k个类别,K可以指
类别的数量,以及wk可以指对应于类别k的权值向量。
[0104] 目标函数可以基于公式(2)来确定:其中, 可以基于softmax函数 建模,以及 可
以表示类别标签j转换为可被观察到的标签k的概率。
[0105] wk的最大似然(ML)估计可以通过最大化数据对数似然来获取,如公式(3)所示:其中, 可以指Kronecker delta函数,其在其参数为真时给出值1,否则给出
值0,以及L(w)可以指wk的最大似然(ML)估计。
[0106] 目标函数可以基于有限内存Broyden-Fletcher-Goldfarb-Shanno(L-BFGS)算法来优化,以确定更新的标签转换矩阵。在一些实施例中,L-BFGS算法可以基于梯度g来实现。
梯度g可以描述为公式(4):
其中,γjk可以指标签翻转概率,并且可以描述为公式(5):
其中,C可以指常数项,并可以被描述为公式(6):
[0107] 在915中,处理引擎112(例如,类别预测模块460)可以基于与对象组合子集中的每个对象组合子集相关联的类别预测模型和更新的标签转换矩阵(例如,在913中确定的n个类别预测模型和/或n个更新的标签转换矩阵),预测第二对象中的至少一个第二对象(例如,第二对象Ai)的类别。在一些实施例中,类别预测模块460可以基于n个类别预测模型、n个更新的标签转换矩阵和/或第二对象Ai的特征数据来预测第二对象Ai的类别(参见图
10C)。预测未被标记的第二对象(例如,第二对象Ai)的类别的过程的更多描述可以在本申请的其他地方找到。参见,例如,图12及其描述。
[0108] 应当理解的是,上述预测未被标记的对象的类别的过程的描述,是为了说明的目的而提供,并不旨在限制本申请的范围。对于本领域普通技术人员而言,在本申请内容的指导下,可作出多种变形和修改。然而,这些变形和修改不会背离本申请的范围。例如,操作901和903可以集成到单个操作中。在过程900中,可以用未被标记的对象(例如,未被标记的第二对象)扩展训练对象组(例如,带有类别标签的第一对象),因此可以提高预测未被标记的对象的类别的准确性。仅作为示例,为了预测乘客的年龄组,训练对象组可以基于年龄组已知的第一乘客和年龄组未知的第二乘客之间的关系数据(例如,与发红包有关的信息)进行扩展。年龄组未知的第二乘客可以通过标签传播具有预测标签(例如,预测的年龄组),因此,可以将第二乘客添加到训练对象组中。
[0109] 图10A是根据本申请的一些实施例所示的用于为第一对象组中的每个对象确定预测标签的示例性过程的示意图。如图10A所示,第一对象组可包括一个或以上第一对象1010和一个或以上第二对象1020。第一对象1010可以包括第一对象1010-1、第一对象1010-
2、......和第一对象1010-x。第一对象1010中的每个第一对象可以包括类别标签。类别标签可以用“CL”表示(如图10A所示)。第二对象1020可以包括第二对象1020-1、第二对象
1020-2、......和第二对象1010-y。第二对象1020中的每个第二对象可以是未被标记的,即,第二对象1020中的每个第二对象可以不包括类别标签。在一些实施例中,第一对象1010的数量和第二对象1020的数量可以相同或不同。第一对象组中的每个对象可以通过标签传播获取预测标签。预测标签可以用“PL”表示(如图10A所示)。第一对象1030可以包括第一对象1010和一个或以上预测标签。具有类别标签和预测标签的第一对象1010-1可以由第一对象1030-1表示。具有类别标签和预测标签的第一对象1010-2可以由第一对象1030-2表示。
类似地,具有类别标签和预测标签的第一对象1010-x可以由第一对象1030-x表示。第二对象1040可以包括第二对象1020和一个或以上预测标签。具有预测标签的第二对象1020-1可以由第二对象1040-1表示。具有预测标签的第二对象1020-2可以由第二对象1040-2表示。
类似地,具有预测标签的第二对象1020-y可以由第二对象1040-y表示。
[0110] 图10B是根据本申请的一些实施例所示的用于生成一个或以上对象组合子集的示例性过程的示意图。处理引擎112(例如,组合子集确定模块440)可以基于第二对象1040,获取一个或以上子集1050。例如,处理引擎112可以通过从第二对象1040中采样一个或以上对象来获取每个子集。子集1050可以包括第一子集1050-1、第二子集1050-2、......和第n子集1050-n。在n个子集1050中的每两个子集中可能没有相同的对象。也就是说,n个子集可以包括至少两个第二对象1040的不同样本。在一些实施例中,n个子集1050中的每个子集可以是一定百分比的第二对象1040。此外,处理引擎112可以基于n个子集和第一对象1030,生成一个或以上组合子集1060。如这里所使用的,组合子集1060可以包括第一组合子集1060-1、第二组合子集1060-2、......和第n组合子集1060-n。n个组合子集中的每个组合子集可以包括部分或全部的第一对象1030以及n个子集1050中的一个子集。例如,第一组合子集
1060-1可以包括第一子集1050-1和全部的第一对象1030。又例如,第二组合子集1060-2可以包括第二子集1050-2和全部的第一对象1030。作为另一示例,第n组合子集1060-n可以包括第n子集1050-n和全部的第一对象1030。
[0111] 图10C是根据本申请的一些实施例所示的用于确定一个或以上类别预测模型和一个或以上更新的标签转换矩阵的示例性过程的示意图。处理引擎112(例如,训练模块450)可以通过训练组合子集1060和初始标签转换矩阵1065,确定与每个组合子集1060相关联的类别预测模型和更新的标签转换矩阵。在一些实施例中,训练模块450可以基于标签噪声容限分类算法,训练组合子集1060和初始标签转换矩阵1065。在一些实施例中,训练模块450可以通过处理n个组合子集1060中的每个组合子集和初始标签转换矩阵1065,确定n个类别预测模型1070和n个更新的标签转换矩阵1080。如这里所使用的,类别预测模型1070可以包括第一类别预测模型1070-1、第二类别预测模型1070-2、......和第n类别预测模型1070-n。更新的标签转换矩阵1080可以包括第一更新的标签转换矩阵1080-1、第二更新的标签转换矩阵1080-2、......和第n更新的标签转换矩阵1080-n。在一些实施例中,训练模型450可以通过使用标签噪声容限分类算法,训练第一组合子集1060-1和初始标签转换矩阵1065,确定第一类别预测模型1070-1和第一更新的标签转换矩阵1080-1。训练模块450可以通过使用标签噪声容限分类算法,训练第二组合子集1060-2和初始标签转换矩阵1065,确定第二类别预测模型1070-2和第二更新的标签转换矩阵1080-2。训练模块450可以通过使用标签噪声容限分类算法,训练第n组合子集1060-n和初始标签转换矩阵1065,确定第n类别预测模型1070-n和第n更新的标签转换矩阵1080-n。在一些实施例中,处理引擎112(例如,类别预测模块460)可以通过将第二对象Ai的特征数据输入到n个类别预测模型1070以及将第二对象Ai的预测标签输入到n个更新的标签转换矩阵1080,来预测第二对象Ai的类别。然后可以确定第二对象Ai的类别。
[0112] 如图10A到10C所示,处理引擎112可以组合半监督学习(例如,标签传播)和监督学习(例如,类别预测模型的训练)来预测未被标记的对象的类别。由于未被标记的对象的预测标签被组合到监督学习中,并且确定了多个类别预测模型,因此可以提高预测未被标记的对象的类别的准确性和/或稳定性
[0113] 图11是根据本申请的一些实施例的为第一对象组中的每个对象确定预测标签的示例性过程900的流程图。在一些实施例中,确定第一对象组中的每个对象的预测标签的过程1100可以在如图1所示的系统100中实现。例如,过程1100可以在用户终端(例如,乘客终端130、司机终端140)和/或服务器110中实现。过程1100还可以实现为存储在存储器150中并由处理引擎112调用和/或执行的一个或以上指令。以下呈现的所示过程的操作旨在说
明。在一些实施例中,过程1100可以利用未描述的一个或以上附加操作,和/或没有所讨论的一个或以上操作来完成。另外,如图11所示和下面描述的过程1100的操作的顺序不是限制性的。
[0114] 在1101中,处理引擎112(例如,特征向量确定单元510)可以将与第一对象组中的每个对象相关联的特征数据转换为特征向量以获取一个或以上特征向量。特征向量的每个元素可以对应于第一对象组中的对象的特征。该特征可以包括与对象的一个或以上历史出行位置有关的第一信息、与安装在与对象相关联的终端设备上的一个或以上应用程序有关的第二信息等。特征向量的每个元素的值可以是0、1或0到1之间的任何数字。当对象的特征向量的元素的值为1时,它可以表示对象具有特征为真的事实。例如,对象可以具有一个或以上历史出行位置。当对象的特征向量的元素的值为0时,可以表示对象具有特征为假的事实,即,对象不具有该特征。例如,对象可能没有历史出行位置。
[0115] 在1103中,处理引擎112(例如,余弦相似度确定单元520)可以基于在1101中获取的特征向量和/或第一对象组之间的关系数据,确定两个相关特征向量之间的一个或以上余弦相似度值。在一些实施例中,当两个特征向量相关时,它可以表示对应于两个特征向量的两个对象具有可以根据关系数据确定的直接关系。仅作为示例,如果关系数据包括与第一对象组的两个或以上对象之间的一个或以上红包交换有关的第三信息,则具有直接关系的两个对象可以指示两个对象中的一个对象曾经直接发送过一个或以上红包给两个对象中的另一个对象。在一些实施例中,余弦相似度确定单元520可以确定每两个相关特征向量之间的余弦相似度值。两个相关特征向量之间的余弦相似度值可以确定为公式(7):
其中,a可以指两个相关特征向量的第一特征向量,b可以指两个相关特征向量的第二
特征向量。
[0116] 在1105中,处理引擎112(例如,标签传播单元530)可以基于在1103中确定的余弦相似度值和/或第一对象组之间的关系数据,通过将第一对象的一个或以上类别标签传播给第一对象组,确定第一对象组中每个对象的预测标签。在一些实施例中,标签传播单元530可以使用标签传播算法确定第一对象组中每个对象的预测标签。使用标签传播算法,基于类别标签和对应于两个对象的两个特征向量之间的余弦相似度值,可以将对象的类别标签传播给另一个对象。出于说明的目的,下面将描述关于操作1101至1105的示例性过程。
[0117] 仅作为示例,在预测用户的年龄组时,第一对象组中的每个对象可以是用户,以及用户的类别可以是年龄组。可能有四个用户,包括用户A、用户B、用户C和用户D。用户的类别可以包括四个年龄组,例如10~20岁、20~30岁、30~40岁、40~50岁。用户A可以具有指示用户A的年龄组类别的类别标签。用户B、用户C和用户D可以没有类别标签,即用户B、用户C和用户D可以是未被标记的。例如,用户A的类别可以是已知的30-40岁,而用户B、用户C和用户D的类别可以是未知的。关系数据可以指示用户A、用户B、用户C和用户D之间的关系网络。在一些实施例中,用户A可以与用户B、用户C和用户D中的每一个具有直接关系。
[0118] 用户A、B、C和D的特征数据可以包括与用户的一个或以上历史出行位置有关的信息。历史出行位置可以位于城市中。以北京市为例,该城市可以包括100个出行位置。用户A、B、C和D的特征数据可以指示用户A、B、C和D中的每一个是否曾经去过北京的100个出行位置中的至少一个。对于用户A、B、C和D中的每一个,处理引擎112可以将用户的特征数据转换为特征向量。每个特征向量可以具有对应于100个出行位置的100个元素。如果用户的历史出行位置(例如,用户A、用户B、用户C和用户D)与100个出行位置中的一个相同,则与特征向量的一个出行位置相关联的元素的值可以是1。如果用户的历史出行位置(例如,用户A、用户B、用户C和用户D)与100个出行位置中的任何一个都不相同,则与特征向量的一个出行位置相关联的元素的值可以是0。例如,用户A的特征向量可以是[0,0,1,...,1,0]。用户B,C和D中的每一个可以分别具有相应的特征向量。
[0119] 鉴于四个年龄组(例如,10~20岁、20~30岁、30~40岁、40~50岁),用户A的标签概率矩阵可以是[0,0,1,0]。标签概率矩阵可以指示对象(例如,用户A)可以被归类为每个类别(例如,四个年龄组)的一个或以上概率。用户A的标签概率矩阵的第一元素可以指示用户A被归类为第一年龄组(即,10~20年)的概率为0。用户A的标签概率矩阵的第二元素可以指示用户A被归类为第二年龄组(即,20~30年)的概率是0。用户A的标签概率的第三元素可以指示用户A被归类为第三年龄组(即,30~40岁)的概率为1。用户A的标签概率矩阵的第四元素可以指示用户A被归类为第四年龄组(即,40~50岁)的概率为0。用户B,C和D中的每一个可以分别具有对应的标签概率矩阵。
[0120] 处理引擎112可以确定与具有直接关系的用户A、B、C和D中的两个相关联的两个相关特征向量之间的余弦相似度值。在一些实施例中,余弦相似度值可以指示两个用户的亲密度。如果用户A和用户B之间存在与一个或以上红包交换有关的直接关系,则用户A和B之间的余弦相似度值可以基于用户A的特征向量和用户B的特征向量来确定。例如,用户A和用户B之间的余弦相似度值可以是0.7。然后,用户B的标签概率矩阵可以基于余弦相似度值(例如,0.7)和/或用户A的标签概率矩阵(例如,[0,0,1,0])来确定。例如,用户B的标签概率矩阵可以是[0.1,0.1,0.7,0.1]。用户B的标签概率矩阵可以表示用户B被归类为第一年龄组(即10~20年)的概率为0.1,用户B被归类为第二年龄组(即20~30岁)的概率为0.1,用户B被归类为第三年龄组(即30~40岁)的概率为0.7,以及用户B被归类为第四年龄组(即40~50岁)的概率是0.1。用户B的预测标签可以是第三年龄组(即30~40岁)。类似地,可以确定用户C和用户D的预测标签。
[0121] 例如,用户A和用户C之间的余弦相似度值可以是0.76。用户C的标签概率矩阵可以被确定为[0.08,0.08,0.76,0.08]。用户C的标签概率矩阵可以指示用户C被归类为第一年龄组(即10~20年)的概率为0.08,用户C被归类为第二年龄组(即20~30岁)的概率为0.08,用户C被归类为第三年龄组(即30~40岁)的概率为0.76,以及用户C被归类为第四年龄组(即40~50岁)的概率为0.08。用户C的预测标签可以是第三年龄组(即30~40岁)。
[0122] 又例如,用户A和用户D之间的余弦相似度值可以是0.91。用户D的标签概率矩阵可以被确定为[0.03,0.03,0.91,0.03]。用户D的标签概率矩阵可以指示用户D被归类为第一年龄组(即10~20年)的概率为0.03,用户D被归类为第二年龄组(即20~30岁)的概率为0.03,用户D被归类为第三年龄组(即30~40岁)的概率为0.91,以及用户D被归类为第四年龄组(即40~50岁)的概率为0.03。用户D的预测标签可以是第三年龄组(即30~40岁)。用户A、B、C和D中的每一个的标签概率矩阵可以在表1中示出。
表1不同用户的标签概率矩阵
[0123] 在一些实施例中,用户A可以与用户B和用户D具有直接关系。用户B可以与用户C具有直接关系。用户C可以与用户D具有直接关系。用户A可以具有指示用户A的年龄组类别的类别标签。用户B、用户C和用户D可以没有类别标签,即用户B、用户C和用户D可以是未被标记的。例如,用户A的类别可以是已知的30-40岁,而用户B、用户C和用户D的类别可以是未知的。用户A的标签概率矩阵可以是[0,0,1,0]。如上所示,用户A、B、C和D中的每一个可以分别具有特征向量。处理引擎112可以确定用户A和用户B之间的余弦相似度值,用户B和用户C之间的余弦相似度值,以及用户C和用户D之间的余弦相似度值。例如,用户A和用户B之间的余弦相似度值可以是0.2,用户B和用户C之间的余弦相似度值可以是0.8,用户C和用户D之间的余弦相似度值可以是0.4,以及用户D和用户A之间的余弦相似度值可以是0.6。
[0124] 基于用户A和用户B之间的余弦相似度值、用户B和用户C之间的余弦相似度值、用户A的标签概率矩阵以及用户C的标签概率矩阵可以确定用户B的标签概率矩阵。由于用户C的标签概率矩阵是未知的,处理引擎112可以为用户C设置初始矩阵,例如,[0.25,0.25,0.25,0.25]。然后,用户B的标签概率矩阵可以被确定为[0.2,0.2,0.4,0.2]。
[0125] 基于用户B与用户C之间的余弦相似度值、用户C与用户D之间的余弦相似度值、用户B的标签概率矩阵以及用户D的标签概率矩阵可以确定用户C的标签概率矩阵。由于用户D的标签概率矩阵是未知的,处理引擎112可以为用户D设置初始矩阵,例如,[0.25,0.25,0.25,0.25]。然后,用户C的标签概率矩阵可以被确定为[13/50,13/50,21/50,13/50]。在一些实施例中,用户C的标签概率矩阵可以归一化为[13/60,13/60,21/60,13/60]。
[0126] 基于用户C与用户D之间的余弦相似度值、用户D与用户A之间的余弦相似度值、用户A的标签概率矩阵以及用户C的标签概率矩阵可以确定用户D的标签概率矩阵。然后,用户D的标签概率矩阵可以被确定为[13/150,13/150,111/150,13/150],如表2所示。
[0127] 在一些实施例中,如上所示,如果用户的标签概率矩阵是未知的,则处理引擎112可以为用户设置初始矩阵(例如,[0.25,0.25,0.25,0.25])。初始矩阵可以包括由按需服务系统100确定的默认值,或者可以由用户或操作员通过终端预先设定。在一些实施例中,可以基于一个或以上的迭代直到收敛,确定一个或以上用户的标签概率矩阵。表2不同用户的标签概率矩阵
[0128] 图12是根据本申请的一些实施例的基于一个或以上类别预测模型和一个或以上更新的标签转换矩阵来预测未被标记的对象的类别的示例性过程1200的流程图。在一些实施例中,预测对象(例如,第二对象)的类别的过程1200可以在如图1所示的系统100中实现。
例如,过程1200可以在用户终端(例如,乘客终端130、司机终端140)和/或服务器110中实现。过程1200还可以实现为存储在存储器150中并由处理引擎112调用和/或执行的一个或以上指令。以下呈现的所示过程的操作旨在说明。在一些实施例中,过程1200可以利用未描述的一个或以上附加操作和/或没有所讨论的一个或以上操作来完成。另外,如图12所示和下面描述的过程1200的操作的顺序不是限制性的。
[0129] 在1201中,处理引擎112(例如,类别概率向量(CPV)确定单元710)可以确定关于第二对象(例如,第二对象Ai)的至少一个第一类别概率向量。在一些实施例中,至少一个第一类别概率向量可以基于至少一个类别预测模型和与第二对象Ai相关联的特征数据来确定。至少一个类别预测模型可以从在图9描述的913中确定的n个类别预测模型中来选择。至少一个第一类别概率向量(或至少一个类别预测模型)的数量可以是大于0的整数。至少一个第一类别概率向量(或至少一个类别预测模型)的数量可以小于或等于n。在一些实施例中,至少一个第一类别概率向量的数量和至少一个类别预测模型的数量可以相同。在一些实施例中,可以将与第二对象Ai相关联的特征数据输入到至少一个类别预测模型,并且可以确定至少一个对应的第一类别概率。
[0130] 在1203中,处理引擎112(例如,类别概率向量(CPV)确定单元710)可以确定关于第二对象(例如,第二对象Ai)的至少一个第二类别概率向量。在一些实施例中,至少一个第二类别概率向量可以基于至少一个更新的标签转换矩阵和第二对象Ai的预测标签来确定。至少一个更新的标签转换矩阵可以从在图9描述的913中确定的n个更新的标签转换矩阵中来选择。至少一个更新的标签转换矩阵(或至少一个第二类别概率向量)的数量可以是大于0的整数。至少一个更新的标签转换矩阵(或至少一个第二类别概率向量)的数量可以小于或等于n。在一些实施例中,至少一个更新的标签转换矩阵的数量和至少一个第二类别概率向量的数量可以是相同的。在一些实施例中,至少一个第一类别概率向量的数量和至少一个第二类别概率向量的数量可以相同或不同。在一些实施例中,至少一个更新的标签转换矩阵可以与至少一个类别预测模型一一对应。在一些实施例中,可以将第二对象Ai的预测标签输入到至少一个更新的标签转换矩阵中,并且可以确定至少一个对应的第二类别概率。在一些实施例中,第二类别概率向量和第一类别概率向量的大小可以相同(即,相同数量的元素)。
[0131] 在1205中,处理引擎112(例如,类别概率向量(CPV)确定单元710)可以确定目标类别概率向量。目标类别概率向量可以基于在1201中确定的至少一个第一类别概率向量和在1203中确定的至少一个第二类别概率向量来确定。
[0132] 在一些实施例中,处理引擎112可以通过将至少一个第一类别概率向量和至少一个第二类别概率向量平均化,确定目标类别概率向量。也就是说,关于至少一个第一类别概率向量和至少一个第二类别概率向量的一个或以上平均值可以被指定为目标类别概率向
量的一个或以上元素。平均值可以通过将至少一个第一类别概率向量和至少一个第二类别概率向量的位于相同位置的两个元素平均化来确定。例如,两个第一类别概率向量可以是[0.2,0.2,0.6,0]和[0,0.6,0.4,0]。两个第二类别概率向量可以是[0.4,0,0.6,0]和[0.4,
0.2,0,0.4]。通过将两个第一类别概率向量和两个第二类别概率向量平均化,目标类别概率向量可以是[0.25,0.25,0.4,0.1]。
[0133] 在一些实施例中,处理引擎112可以基于至少一个第一类别概率向量和至少一个第二类别概率向量的加权之和,确定目标类别概率向量。也就是说,至少一个第一类别概率向量和至少一个第二类别概率向量的加权和可以被指定为目标类别概率向量。
[0134] 在1207中,处理引擎112(例如,类别确定单元720)可以基于目标类别概率向量,确定第二对象的类别。在一些实施例中,类别确定单元720可以指定与目标类别概率向量的最大值有关的标签作为第二对象(例如,第二对象Ai)的类别。例如,如果目标类别概率向量是[0.25,0.25,0.4,0.1],则目标类别概率向量的最大值可以是0.4。第二对象Ai的类别可以是对应于与目标类别概率向量[0.25,0.25,0.4,0.1]的第三元素相关的标签的类别。例如,第一对象组中的每个对象可以是用户,并且用户的类别可以包括四个年龄组(例如,10~20岁、20~30岁、30~40岁、40~50岁)。基于目标类别概率向量[0.25,0.25,0.4,0.1],第二对象Ai的类别可以是30~40岁。
[0135] 应当注意的是,上述处理引擎112是出于说明的目的而提供的,并非旨在限制本申请的范围。显然,对于本领域的普通技术人员,可以在本申请的教导下进行各种变化和修改。但是,那些变化与修改不会脱离本申请的保护范围。在一些实施例中,在1207中,目标类别概率向量的最大值可以对应于两个或以上标签。例如,目标类别概率向量可以是[0.4,0.4,0.2,0]。处理引擎112可以指定与目标类别概率向量的最大值有关的第一标签作为第二对象Ai的类别。基于目标类别概率向量[0.4,0.4,0.2,0],第二对象Ai可以被归类为10~
20年或20~30年。类似的修改应属于本申请的范围。
[0136] 上文已对基本概念做了描述,显然,对于阅读此申请后的本领域技术人员来说,上述发明披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域技术人员可以进行各种变更、改良和修改。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。同时,本申请使用了特定词语来描述本申请的实施例。
[0137] 同时,本申请使用了特定术语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定系指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特性可以进行适当的组合。
[0138] 此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的制程、机器、产品或物质的组合,或对其任何新的和有用的改良。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“子单元”、“组件”或“系统”。此外,本申请的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
[0139] 计算机可读信号介质可以包含一个内含有计算机可读程序编码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合形式。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、设备或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF等,或任何上述介质的组合。
[0140] 本申请各方面操作所需的计算机程序码可以用一种或多种程序语言的任意组合编写,包括面向对象程序设计语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化程序设计语言如“C”语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态程序设计语言如Python、Ruby和Groovy,或其他程序设计语言等。程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机上运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算器连接,例如,局域网络(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云端计算环境中,或作为服务使用如软件即服务(SaaS)。
[0141] 此外,除非申请专利范围中明确说明,否则所述处理元件或序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述申请中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解,此类细节仅起说明的目的,附加的申请专利范围并不仅限于申请的实施例,相反,申请专利范围旨在覆盖所有符合本申请实施例精神和范围的修正和等价组合。例如,虽然以上描述的系统组件可以通过安装于硬件设备中实施,但也可以只通过软件的解决方案实施,例如在现有的服务器或行动车辆上安装所描述的系统。
[0142] 同理,应当注意的是,为了简化本申请揭示的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,本申请的该方法不应被解释为反映所声称的主题需要比每个权利要求中明确记载的更多特征的意图。实际上,申请专利范围的特征要少于上述披露的单个实施例的全部特征。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈