从分布式数据学习的制作方法

文档序号:13080257阅读:194来源:国知局
从分布式数据学习的制作方法与工艺

对相关申请的交叉引用

本申请要求来自2015年2月13日提交的澳大利亚临时专利申请no.2015900463的优先权,该申请的内容在此通过引用并入本文。

本公开涉及从分布式数据学习。



背景技术:

通过因特网提供服务或产品的公司常常从其客户收集广泛的数据,并处理这种数据以获得对其客户的行为的聚合型洞察。

在很多情况下,与一个个体客户相关的数据可以在多个独立的数据库中发现。不过,这些数据库中的大部分不共享公共的唯一标识符,诸如社会保险号。因此,难以使用来自这两个数据库的数据进行学习。

图1例示了现有技术情境100,其包括个体102、数据聚合器104(诸如公司),第一数据库106和第二数据库108。如箭头110和112所指示的,与个体102相关的数据包含在数据库106和108两者中。

已经包括在本说明书中的文档、法令、材料、装置、物品等的任何论述不应被视为承认这些事物的任一种或全部形成现有技术基础的一部分或当其存在于本申请的每项权利要求的优先权日期之前时是本公开相关领域中的公知常识。

贯穿本说明书,词语“包括”或其变型将被理解为暗示包括所述的元件、整数或步骤、或元件、整数或步骤的组,但不排除任何其他元件、整数或步骤或元件、整数或步骤的组。



技术实现要素:

提供了一种用于从多个第一数据样本确定多个第一训练样本的计算机实现的方法。该多个第一数据样本中的每一个包括多个第一特征值和对第一数据样本进行分类的第一标签。该方法包括:

通过以下方式确定该多个第一训练样本中的每一个:

选择该多个第一数据样本的第一子集,使得第一子集包括具有该多个第一特征值中的对应的一个或多个第一特征值的数据样本,并且

基于第一子集的第一数据样本中的每一个的第一标签,组合第一子集的数据样本的第一特征值。

由于共享对应特征的数据样本被组合,即,处在数据集的相同块中,所以可以将所得训练样本与共享相同的对应特征的来自其他数据库的训练样本组合。作为结果,实体匹配是不必要的,这意味着与从独立数据集学习的其他方法相比的更高的精确度和更低的计算复杂性。

该多个第一数据样本可以是第一数据集的数据样本,并且该多个第一特征值中的对应的一个或多个第一特征值也可以是第二数据集的多个第二数据样本的第二子集的对应特征值。

该方法还可以包括组合该多个第一训练样本中的两个或更多个第一训练样本,以由此确定组合的训练样本。

组合该多个第一训练样本中的两个或更多个第一训练样本可以包括将该多个第一训练样本中的两个或更多个第一训练样本加起来。

选择第一子集可以包括选择该多个第一数据样本中的具有该多个特征值中的对应的一个或多个特征值的全部第一数据样本。

选择该多个第一数据样本的第一子集可以包括选择该多个第一数据样本的第一子集,以使得第一子集包括具有该多个第一特征值中的对应的两个或更多个第一特征值的数据样本。

选择该多个第一数据样本的第一子集可以包括选择该多个第一数据样本的第一子集,以使得第一标签对于该多个第一数据样本的第一子集是一致的。

组合数据样本的第一特征值可以包括确定第一数据样本的第一特征值之和,以使得第一训练样本的特征的特征值是数据样本的该特征的第一特征值之和。

确定和可以包括确定基于第一数据样本中的每一个的第一标签进行加权的加权和。

第一数据样本可以具有带符号的实数值作为第一特征值,并且第一标签可以是“-1”和“+1”之一。

选择第一子集可以包括选择第一子集,以使得第一子集仅包括具有该多个第一特征值中的一致的一个或多个第一特征值的数据样本。

一种用于融合第一训练数据集和第二训练数据集的方法,包括:

为第一训练数据集执行根据权利要求1到11中的任一项所述的方法以确定多个第一训练样本;

为第二训练数据集执行根据权利要求1到11中的任一项所述的方法以确定多个第二训练样本;以及

合并该多个第一训练样本中的每一个第一训练样本与该多个第二训练样本中的基于与该第一训练样本相同的一致特征值的一个第二训练样本。

合并该多个第一训练样本中的每一个第一训练样本与该多个第二训练样本中的一个第二训练样本可以包括确定第三训练样本,第三训练样本包括:

该一个或多个一致特征值;

该第一训练样本的除对应的一个或多个特征值之外的第一特征值;以及

该多个第二训练样本中的一个第二训练样本的除对应的一个或多个特征值之外的第二特征值。

一种软件,当被安装于计算机上时,使所述计算机执行以上方法。

一种用于确定多个第一训练样本的计算机系统,包括:

接收多个数据样本的输入端口,该多个数据样本中的每一个数据样本包括多个特征值和对该数据样本进行分类的标签;以及

处理器,该处理器通过以下方式确定该多个第一训练样本中的每一个:

选择该多个数据样本的子集,使得该子集包括具有该多个第一特征值中的对应的一个或多个第一特征值的数据样本,以及

基于该子集的数据样本中的每一个的标签,组合该子集的数据样本的特征值。

一种用于确定多个组合的训练样本的方法,包括:

接收多个第一训练样本,该多个第一训练样本中的每一个第一训练样本都是多个数据样本的子集的组合,该子集包括具有该多个特征值中的对应的一个或多个特征值的数据样本;

通过以下方式确定该多个组合的训练样本中的每一个:

随机选择该多个第一训练样本的子集,并且

组合该子集的第一训练样本的特征值。

一种软件,当被安装于计算机上时,使计算机执行以上用于确定多个组合的训练样本的方法。

一种用于确定多个组合的训练样本的计算机系统,包括:

接收多个第一训练样本的输入端口,该多个第一训练样本中的每一个都是多个数据样本的子集的组合,该子集包括具有多个特征值中的对应一个或多个特征值的数据样本;以及

处理器,该处理器通过以下方式确定该多个组合的训练样本中的每一个:

随机选择该多个第一训练样本的子集,并且

组合该子集的第一训练样本的特征值。

附图说明

图1例示了在独立数据库上存储个体的数据的数据聚合器的现有技术情境。

将参照以下附图描述示例:

图2例示了用于从分布式数据学习的计算机系统200。

图3例示了要被融合的两个数据集。

图4例示了用于从图3的数据集之一的数据样本确定训练样本的方法。

图5例示了用于从多个训练样本确定多个组合的训练样本的方法。

图6例示了用于逻辑回归的算法。

图7例示了用于对分块观测采样的算法。

图8例示了用于数据融合和学习的算法。

具体实施方式

图2例示了用于通过从多个数据样本确定多个训练样本而从分布式数据学习的计算机系统200。计算机系统200可以是移动电话,并包括连接到程序存储器204、数据存储器206、通信端口208和用户端口210的处理器202。程序存储器204为非暂态计算机可读介质,诸如硬盘驱动器、固态盘或cd-rom。

软件,即,存储在程序存储器204上的可执行程序,使处理器202执行图3中的方法,即,处理器402通过选择多个数据样本的子集使得该子集包括具有对应特征值的数据样本来确定多个训练样本中的每一个。处理器202然后组合所选数据样本的特征值以确定该训练样本。

在一个示例中,将一个数据集存储于数据存储器206上。然后可以将第二数据集和其他数据集存储于类似于计算机系统200的其他计算机系统上。在一些示例中,所有数据集都存储于数据存储器206上或没有数据集存储于数据存储器206上。数据集(诸如分布式散列表(dht))可以存储于云存储装置上。

处理器202可以在数据存储器206(诸如ram或处理器寄存器)上存储所确定的训练样本或分类器系数。处理器202还可以经由通信端口208向另一计算机系统(诸如另一移动电话)发送所确定的训练样本或分类器系数。接收训练样本的处理器202或另一计算机系统可以然后执行学习算法(诸如规则凸面学习算法或逻辑回归算法)以确定分类器。

处理器202可以从数据存储器206以及从通信端口208和用户端口210接收数据,诸如数据样本或训练样本的数据,用户端口210连接到显示器212,显示器212向用户216显示数据集或数据集的特征的视觉表达214。在一个示例中,处理器202经由通信端口208,诸如通过使用根据ieee802.11的wi-fi网络从存储装置接收数据。wi-fi网络可以是分散式ad-hoc网络,从而不需要专用的管理基础设施(诸如路由器),或者是具有管理网络的路由器或接入点的集中式网络。

在一个示例中,处理器202接收并实时处理数据集。这意味着,处理器202在每次接收到新的数据样本时确定训练样本,并在被提供下一次数据更新之前完成该计算。

尽管通信端口208和用户端口210被示为不同的实体,但要理解的是可以使用任何种类的数据端口(诸如网络连接、存储器接口、处理器202的芯片封装的管脚、或逻辑端口)来接收数据,诸如程序存储器204上存储并由处理器202执行的功能的参数或ip套接字。这些参数可以存储于数据存储器206上并可以在源代码中按照值或按照参考(即,作为指针)来处理。

处理器202可以通过所有这些接口来接收数据,这些接口包括易失性存储器(诸如高速缓存或ram)或非易失性存储器(诸如光盘驱动器、硬盘驱动器、存储装置服务器或云存储装置)的存储器存取。计算机系统200还可以实现于云计算环境之内,云计算环境诸如是托管动态数量的虚拟机的互连服务器的受管理组。

要理解的是,任何接收步骤都可以在处理器202确定或计算稍后接收的数据之前进行。例如,处理器202确定训练样本或分类器系数,并将它们存储在数据存储器206(诸如ram或处理器寄存器)中。然后处理器202诸如通过提供带有存储器地址的读取信号来从数据存储器206请求数据。数据存储器206提供数据作为物理位线上的电压信号,并且处理器202经由存储器接口接收训练样本或分类器系数。

图3例示了要被融合的第一数据集302和第二数据集304。两个数据集302和304包含相同的真实世界实体的来自不同视图(view)的特征,例如,相同客户群的银行业务和保险公司记录。在该示例中,第一数据集302包括针对特征邮编306、性别308、每月信用卡花费310、这个人的汽车的每月估计费用312(基于型号、牌子等)的列,以及针对标签314的列,其中标签314指示这个人在前12个月中是否拖欠。

第二数据集也包括针对邮编316、性别318的特征列和标签列324。第二数据集304包括针对年收入320和婚姻状况322的其他特征列。为了表述简单起见,两个数据集302和304被按照邮编和性别排序显示。不过,在其他示例中,可以不对数据集进行排序。

目的是在没有共享的标识符在两个源302和304之间映射视图的困难情况下利用所有数据来学习分类器。在图3的示例中,一些个体是两个数据集302和304共有的,如双向箭头(诸如双向箭头330)所指示的。作为结果,对应行共享相同的邮编306/316、性别308/318和标签314。不过,要指出的是,这些行也可以属于共享相同邮编、性别和标签的两个不同个体。

实体匹配旨在识别与相同个体相关联的匹配行。不过,在各行不包含唯一标识符(诸如社会保险号)的情况下,实体匹配并不确切。作为结果,各行的特征被视为属于单次观测,尽管它们与不同个体相关。这可能导致学习与从完美匹配获得的oracle分类器显著不同的严重受损的分类器。

图4例示了用于从第一数据集302的数据样本确定训练样本的方法400。再下方的描述解释如何可以在学习方法中使用这些训练样本以从数据集302和304学习而无需进行实体匹配。方法400为可以在c++、java、python或其他语言中实现、在程序存储器204上编译和存储的用于计算机程序的蓝图或伪代码。处理器202然后执行计算机程序的各个命令以执行方法400。

如上所述,数据集302的数据样本中的每一个都包括特征值306、308、310和312以及对该数据样本进行分类的标签314。处理器202通过执行以下步骤来逐个确定每个训练样本。

处理器402首先在数据集302中选择数据样本的子集332,使得该子集332包括具有该多个第一特征值中的对应的一个或多个第一特征值的数据样本。在下面的示例中,可互换地使用术语“对应的”和“一致的”。

不过,在其他示例中,处理器202选择子集,以使得选择的样本显示出其相应的特征值之间的某种相似性。在一个示例中,名字和姓氏是共享特征,并且处理器202为相同的子集选择具有特征值“johnsmith”、“j.smith”或“johnc.smith”的数据样本。换言之,这些稍微不同但充分相似的特征值被称为“对应的”特征值。在另一个示例中,邮编是共享的,并且处理器202为子集选择具有“2000”、“2ooo”(字母“o”而非数字零)或“20**”的数据样本。同样,这些稍微不同但充分相似的特征值被称为“对应的”特征值。通过这种方式,处理器202处理共享特征中的噪声或缺失值。

要指出的是,除非另行指出,在本文中可互换地使用术语“子集”和“块”。在图3的示例中,处理器202选择子集332,因为针对邮编列306和性别列308的特征值对于子集332的两个数据样本而言是一致的。在本示例中,标签314对于这些数据样本而言也是一致的。要指出的是,处理器202可以基于一个对应的特征值、两个对应的特征值或任何其他数量的对应的特征值来选择子集。

要指出的是,在图3的示例中,数据集302中的数据样本的数量仅很小,并且因此每个子集中仅有少量的样本。然而,在大多数应用中,数据样本的数量显著更大,诸如100000个,并且因此子集包含更多的数据样本。

处理器202然后基于子集332的每一个数据样本的标签314组合402子集332的数据样本的特征值306、308、310和312。在一个示例中,处理器202通过计算由标签314加权的加权和将每列的特征值306、308、310和312加起来。在另一个示例中,处理器202仅计算在子集332内不一致的那些特征值的加权和。

在图3的示例中,子集332的计算将如下:

对于年花费特征310是56*(-1)+987*(-1),以及

对于汽车费用特征312是22,578*(-1)+13,886(-1)。

则所得的训练样本是在下面也被称为“基本rado”的(2004,m,-1,043,-36,464)。下面在定义1中更正式地阐述了该计算。

类似地,第二数据集304包括子集334。对于子集332而言对应的特征值306和308对于子集334而言也是对应的。即,这些样本涉及邮编为2004的男性。在方法400开始之前,处理器202可以接收对于第一子集332以及第二子集334而言一致的特征值的标识符。可以在分析数据集302和304以得到用于定义子集或块的最适合的特征的预处理步骤中确定这些标识符。在一个示例中,处理器202简单地检查第一数据集302的特征中的哪些也是第二数据集304的特征。在图3的示例中,处理器202确定邮编和性别出现两个数据集中。

针对子集334的计算为:

78,643*(-1)+11,211*(-l)和(-1)*(-1)+(-1)*(-1),得到(2004,m,-89,854,2)作为训练样本。

合并分别来自子集332和334的训练样本,而不重复对应的特征值,得到:

(2004,m,-1,043,-36,464,-89,854,2)。

以上示例合并非共享特征并保持共享特征(即,对应特征)恒定。这对于共享特征上的学习决策树和针对非共享特征的线性分离器会是有用的。

在另一个示例中,按照与处理非共享特征相同的方式处理共享特征以便仅依赖于线性分离器,这因此暗示将非共享特征的变换扩展到共享特征。

在图3的示例中,针对子集332的计算将如下:

对于邮编特征306是2004*(-1)+2004*(-1);

对于性别特征308是(-1)*(-1)+(-1)*(-1);

对于年花费特征310是56*(-1)+987*(-1);以及

对于汽车费用特征312是22,578*(-1)+13,886(-1)。

则所得的训练样本是在下面也被称为“基本rado”的(-4008,2,-1,043,-36,464)。

针对子集334的计算为:

2004*(-1)+2004*(-1)和(-1)*(-1)+(-1)*(-1)和78,643*(-1)+11,211*(-l)和(-1)*(-1)+(-1)*(-1),得到(-4008,2,-89,854,2)作为训练样本。

合并分别来自子集332和334的训练样本,得到:(-4008,2,-1,043,-36,464,-89,854,2)。

处理器202能够后处理基本rado以减少值的数量,诸如减少至二元值。在一个示例中,通过应用阈值,将非对应特征值花费310、汽车费用312、收入320转换成二元值“+1”和“-1”。在一个示例中,针对信用卡花费310的阈值为500,针对汽车费用312的阈值为30,000,以及针对收入320的阈值为50,000。

则针对子集332的简化计算为:

对于信用卡花费310,(-1)*(-1)+1*(-1)=0,这指示信用卡花费310不影响对于邮编为2004的男性的拖欠风险;对于汽车费用312,(-1)*(-1)+(-1)*(-1)=2,这指示在邮编为2004的男性中选择的在其汽车上花费更多的人不太可能拖欠。

类似地,则针对子集334的简化计算为:

对于年收入320,1*(-1)+(-1)*(-1)=0,这指示年收入320不影响对于邮编为2004的男性的拖欠风险;以及对于婚姻状况322,(-1)*(-1)+(-1)*(-1)=2,这指示已婚增大了对于邮编为2004的男性的拖欠风险。

在以不同方式处理共享特征和非共享特征的示例中,合并的训练样本则为(2004,m,0,2,0,2),而在如上所述以同等方式处理共享特征与非共享特征的示例中,为(-4008,2,0,2,0,2)。也可以对共享值进行后处理,诸如将后期代码减少到两个二元值“+1和-1”,诸如例如,如果共享值属于区间[2000,2050],则后期代码为“+1”,否则为“-1”。

在图3的示例中,在第一数据集302中还有另一子集336,该子集336得到(合并前)训练样本(2012,m,2,-2)(或对于同等地处理共享特征和非共享特征,得到训练样本(4024,-2,2,-2)),在第二数据集304中还有另一子集338,该子集338得到训练样本(2012,m,0,0)(或对于同等地处理共享特征和非共享特征,得到训练样本(4024,-2,0,0))。结果,合并的第二训练样本将是(2012,m,2,-2,0,0)(或者,对于同等地处理共享特征和非共享特征,是(4024,-2,2,-2,0,0))。

由此可见,存在来自每个数据集中的两个子集的两个合并的训练样本。换言之,训练样本的数量与子集或块的数量一致。不过,如果训练样本的数量更高,则对于学习算法,常常提供更好的性能。

图5例示了由处理器202执行的用于确定多个组合的训练样本的方法500。要指出的是,可以由相对于执行用于生成训练样本的方法400的处理器的不同计算机系统的不同处理器来执行方法500。在一个示例中,远离方法400地执行方法500。

执行方法500,处理器202接收多个第一训练样本。如上所述,多个训练样本中的每一个训练样本都是多个数据样本的子集的组合,使得子集包括具有多个特征值中的对应的一个或多个特征值的数据样本。

处理器202然后随机选择该多个第一训练样本的子集,并组合该子集的第一训练样本的特征值以确定组合的训练样本。

这样允许处理器202生成与一个或多个子集的组合同样多的组合的训练样本。在图3的示例中,仅存在两个子集的一个组合,即,处理器202确定第三训练样本。不过,在具有2个不同邮编的更大数据集的情况下,考虑到性别特征和标签每个都使子集数量加倍,存在8个子集。这样允许有255中不同的组合,处理器202选择这些组合中的随机组合以确定其他组合的训练样本。

处理器202可以通过将特征值相加来确定组合的训练样本,即,组合以上两个训练样本将给出(2012,m,2,0,0,2)(或对于同等地处理共享特征和非共享特征,给出(4024,-2,2,0,0,2))作为第三组合训练样本。

要指出的是,包括对于同等地处理共享特征和非共享特征的计算的以上变换与下面的定义2一致。

在一个示例中,处理器202在域302和域304两者的交叉积(crossproduct)空间中学习二元分类器,即确定分类器系数,而无需在两个域302和304之间执行实体匹配。学习可以基于作为特定聚合统计(称为rademacher观测(rado))的函数的逻辑损失的公式化。一旦学习了分类器,即,确定了分类器系数,处理器202就能够为没有标签的新数据样本确定估计的标签。例如,处理器202可以接收个体的邮编、性别、信用卡花费、汽车费用、收入和婚姻状况,并基于分类器系数确定个体是否有可能拖欠。

在原始观测上的逻辑损失的最小化等价于在这些rado上的指数rado损失的最小化。因此,处理器202能够学习分类器而不顾个体观测,因为它们实际上是未知的。

要指出的是,作为针对现有实例获得新特征的手段,合并数据集有潜力显着提升预测力。保险和银行业务数据一起可以改善欺诈检测;购物记录可以很好地补充用于估计疾病风险的病史。数据融合,即合并有噪声和异构数据集的实体的过程,可能对于在若干个域(例如基因组)中预测问题是有效的。

在一个示例中,数据集302和304由希望利用其数据资产的联合力量而无需共享公共id(共享公共id将会向一个组织揭示另一个组织关于其个体客户的视图)的独立组织维护。

rado是对学习样本的子集的聚合统计。它们允许以方便的形式基于逻辑损失表达代理风险,从而不需要个体示例用于其评估。在这种聚合水平上工作,不需要实体匹配。

两个基本结果有助于学习操作。首先,对于rado的整个集合而言,损失之间的等价性保持不变,rado的整个集合的数量关于样本大小是指数型的,因此难处理。不过,从统计学的立场来看,根据下面给出的集中性质,大量的rado对于学习而言不是必须的。

第二,如上所述,尽管不需要实体解决,但从多个数据集构建rado不是简单直接的。表明是当在数据集之间共享一些特征(例如,性别、邮编)时,我们的处理器202匹配示例的子集(块),因此匹配其rado。所需的信息比知道如何匹配实体粗糙得多。

且[n]={1,2,...,n。我们使用黑体字样的v来指示矢量,其坐标被表示为vi(对于i∈[n])。利用线性模型θ进行二元分类的任务包括从学习样本学习针对标签y的预测器。每个样本都是观测-标签对其中且其是从未知分布绘制的独立同分布。标签是由θtx的符号预测的。词语实体是指数据集中的通用记录(如实体匹配的对象)和指向其值的属性。

图3中的设定在以下意义上是不同的。给出两个不相关(学习)样本j∈[2]。每一个都在其自己的特征空间中定义,其中d=d1+d2,并且为视图j的特征i所跨越的空间。中的示例由ρ(i)映射到这些示例在中的视图。目标是学习用于的线性分类器θ。所提出的方法可以利用核函数(kernels)来扩展。

可以使用以下假设:

·不相关的样本是相同的m次观测的视图,即ρ:[m]→[m]是在之间的1对1映射;ρ是未知的。

·标签在不相关样本之间是一致的:

·不缺失任何标签。

如果我们映射p为已知,则三个假设将允许处理器202通过级联(concatenation)将样本形成为

理想化的过程可以从(未示出)创建图3中的302和304:1)将特征空间分割成2)相应地分开所有观测xi并将它们分配到3)将yi分配到中的相对分开观测两者;4)通过ρ重新排列

出于学习的目的找到大致的序列以合并数据集,可以得到与利用真实序列获得的分类器显著不同的分类器。

rademacher观测和逻辑损失:

令∑m={-1,1}m。则[1]

定义1:对于任何σ∈∑m,具有签名σ的rademacher观测πσ为

引用是在πσ的定义中暗示的。因此,rademacher观测在yi=σi的示例的子集上对各项yixi求和。当σ=y是类别的矢量时,πσ=mμs是平均运算符的m倍。当σ=-y时,得到零矢量πσ=0。

上学习θ的一种方式是将其拟合到从逻辑损失构建的代理风险的最小化:

指数rado风险可以由处理器202在任何上计算为:

时,表明,flog和经由简单的单调关系而相关;因此,使一个标准最小化等价于使另一个标准最小化,反之亦然。

对于任何θ和以下关系成立:

这可以是rademacher观测的整个集合相对于针对逻辑损失的学习样本的充分性的表述;这概括了平均运算符对于标签变量的充分性。

不过,由于∑m的大小关于m是指数型的,以上等价性可能不实际,因为学习将需要指数型的很多rado。因此,处理器202仅使用个rado来量化代理风险的近似值。

下一个结果详细描述了的概率边界,其中

方程(3)示出了近似值周围迅速集中。

图6例示了被实现为软件并由处理器202执行的算法600。算法600被提供作为背景信息,因为其在1)仅给出1个数据集,并且因此2)可以利用所有自由度计算rado的“基元情况”下解决问题。下面进一步考虑块。

以上的集中性质有助于算法600在标准分类设定中利用rademacher观测从学习。以下描述阐述了处理器202如何从不相关的学习样本合并rado。

将从不相关样本级联的rado的集合表示为

注意,使用相同的σ对二者进行子采样。因为一般ρ(i)≠i,所以级联导致不相干的子采样,并且不等于集合这种相等性仅对于四种特定签名(即,σi=±1,±yi,对于所有i)成立;那些分别是构建于负观测和正观测、(未归一化的)平均运算符mμ和零矢量的子集上的rado。

对于与∑m对应的rado的整个集合的无误差级联将本质上意味完美的er;事实上,rado的m是在仅仅1个示例上的求和。因此,没有er的情况下,不仅仅是难处理的,而且实际上是不可实现的;尽管如此,如以上所解释的,从统计意义上看,这甚至是不必要的。以下描述示出了处理器202如何基于先验知识获得针对rado的子集的无误差级联。

分块是er过程中的阶段。如果来自数据集的实体共享分块密钥的相同值,则将它们插入相同块中。分块密钥可以由数据集所共享的一个属性(例如邮编)或多个属性(例如,邮编和性别)或其函数(如姓氏的首字母)的值导出。换言之,通过仅考虑来自一个块的样本,处理器202选择数据样本的子集(该块),使得该子集包括具有对应的一个或多个特征值(即,分块密钥)的样本。

分块密钥引起与选择数据样本的子集等价的数据分割。

如稍晚将要解释的,处理器202可以通过采取“基本块”(即,如以上所解释的那样定义的子集)的所有可能结合来考虑块的放大集合。

更规范地,特征的正数k≤min(d1,d2)在两个数据集之间共享,并且每个共享的特征k都具有势(cardinality)ck>。在一个示例中,处理器202量化实数值特征。标签充当额外的共享属性。基本块是随着对于每个共享的特征和标签具有相同值(例如,邮编=2000,性别=“f”以及y=1)出现的示例的子集。更一般地,块是基本块的结合,并可以包含具有邮编∈[2000,2999],性别=“f”以及y∈{-1,1}的示例。

基本块的数量是2是因为两个标签,两个标签始终引起两个基本块。该数量提供了不同基本块的量的上限。确实,一些共享的特征可能不会带来额外信息以构建新块。折扣因子(discountfactor)为

使得是不同基本块的数量。例如,当k'为k的副本时,内和为ck;因为这将通过外和被计数两次,所以所有项都被除以2,因此α=ck。因此,块的数量为2h-1,因为在结合时每个基本块都可以被选择或不被选择;1是对空白块进行计数。

每个块都定义rado。

定义2:令为块的序列。块rademacher观测πt(与bt一致)被定义为

而且,令定义2也对基本块进行专门化,通过结合,这些基本块通过结合生成所有其他基本块。该最后的性质转移到基本(-块)rado的集合,因为基本块的结合的rado是基本rado的和。因此,基本rado的集合为所有块rado的发生器,所有块rado的大小要大指数倍。这提供了下一个引理:

给定块和基本块的集合,如下关系成立

使得

图7例示了基于这个引理的另一算法700,其允许对来自的采样的极轻实现。一旦计算了来自的所有元素,就能够从根本上避免对数据集的任何其他昂贵访问。分布式设定也能够极其有益。

返回到数据融合,可以使用以下的完美分块假设:对于在不相关学习样本上定义的每对对应块(b1,b2),以下关系成立:

即,两个块恰好包含相同示例的视图。块rado的级联是无误差的。

拾取任何具有等价关系:

以下方程为以上逻辑损失表达提供了证据:

其中我们在(20,22)中使用了并在(21)中使用了以上完美分块假设。

图8例示了使用图7中用于对rado采样的算法700的另一算法800。

处理器202可以通过使用l-bfgs解决凸面问题。在优化期间,rado能够导致方程(18)中的指数发散;因此,可以通过由rado合计的训练样本的数量或样本大小m对每个rado进行归一化。

如上所示,将作为针对分类的标准的rado-风险最小化是有效的。在另一个示例中,特征空间在人口统计变量的子集(例如年龄、出生国家)和收入相关变量的子集(例如每小时工资、资本收益)之间分开。可以假设要共享三个特征,即性别、年龄、种族。年龄是连续变量,因此处理器202考虑其分位数。任务是对人是否年收入超过$50k进行分类。

n∈{50,5000}。算法500采样的rado数量可以介于50到5000之间。处理器202可以仅保持不同的,并利用更小集合执行训练。在一个示例中,不应用任何正则化(regularization)。

第二,在实践中有另一种相关状况。假设我们仅在中能够预测,但我们仍然学习了整个x上的模型。即使我们已经给出的损失函数没有被设计成应付这个问题,我们仍然可以通过相对子空间简单地分开模型。这种自然的启发式方法可以根据johnson-lindenstrauss理论很好地起作用

并行和分布式学习。rado是线性运算子,因此是可并行的;并发(concurrent)计算对该方法极其有益。这通过数据被分割并有效地从未合并而被促成。

通信协议是:一旦在数据存在处计算rado,它们就被一次发送至中央学习者。仅需要h个基本rado;不必再访问数据。如果需要,块rado的采样也可以是分布式的。

在中央单元中不缺乏资源的假设下,然后通过标准凸面优化来进行学习的大部分。rado还帮助数据压缩,-n可以显著小于m-,因此,对中央优化器的可伸缩性具有正面影响。

在一个示例中,两个数据供应者对改进预测模型感兴趣,但目的是使信息共享最小化。学习者接收rado并训练该模型;学习者可以是第三代理或数据供应者之一。供应者需要防范潜在的中间人攻击和学习者自己。通过信道发送的唯一信息由rado组成;示例始终不共享。注意,也从不交换关于σs或m的信息。重建数据集的任何尝试都将缺少足够的信息。

在一个示例中,该数据集包含相同观测的视图,它们的标签是一致的并始终存在,并且分块是完美的。归功于rado享受的统计性质,所有那些假设都不是该算法所必要的。

没有任何共享的特征,但标签处理器202确定仅4个rado。那些rado之一是相对于用于使逻辑损失最小化的标签的充分统计:在这个量中并入对于学习的所有监管。

本领域的技术人员将要认识到,可以在不背离权利要求中界定的范围的前提下对具体实施例做众多变化和/或修改。

应当理解,可以通过使用各种技术来实现本公开的技术。例如,本文描述的方法可以由存在于合适的计算机可读介质上的一系列计算机可执行指令来实现。合适的计算机可读介质可以包括易失性(例如ram)和/或非易失性(例如,rom,磁盘)存储器、载波和传输介质。示例性载波可以采取沿局域网或可公共访问网络(诸如因特网)传送数字数据流的电、电磁或光信号的形式。

还应当理解,除非做出其他特定表述,从以下论述将明了,可以理解,在整个本说明书中,利用诸如“估计”或“处理”或“计算”、“优化”或“确定”或“显示”或“最大化”等的术语的论述是指计算机系统或类似的电子计算装置的动作和过程,其将表达为计算机系统的寄存器和存储器内的物理(电子)量的数据处理和变换成被类似表达为计算机系统存储器或寄存器或其他此类信息存储装置、传输或显示装置内的物理量的其他数据。

因此,本实施例在所有方面中都将视为例示性而非限制性的。

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