可左右滑动选省市

模型生成方法、装置、电子设备及存储介质实用新型专利

更新时间:2024-10-01
模型生成方法、装置、电子设备及存储介质实用新型专利 专利申请类型:实用新型专利;
源自:北京高价值专利检索信息库;

专利名称:模型生成方法、装置、电子设备及存储介质

专利类型:实用新型专利

专利申请号:CN202011060382.9

专利申请(专利权)人:北京百度网讯科技有限公司
权利人地址:北京市海淀区上地十街10号百度大厦2层

专利发明(设计)人:宋传园

专利摘要:本公开公开了模型生成方法、装置、电子设备及存储介质,涉及大数据处理、人工智能等领域。具体实现方案为:基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数;基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型。

主权利要求:
1.一种基于大数据的模型生成方法,应用于第一参与方的电子设备的处理器,包括:
基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;
将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数,所述第二参与方的数据分桶为所述第二参与方的电子设备的处理器基于所述第二参与方的特征信息对所述第二参与方的样本数据进行特征离散化处理后得到;
基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型;
其中,基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶,包括:基于所述第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的所述特征信息中的至少一个第一特征所对应的数据分桶;
相应的,所述将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶,包括:获取所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶;其中,所述第一参与方的所述特征信息中的至少一个第一特征与所述N个第二参与方分别对应的至少一个第二特征不同;且所述N个第二参与方中不同的第二参与方的所述第二特征不同;
将所述第一参与方的至少一个第一特征的数据分桶,以及所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶进行合并,得到所述合并后的数据分桶。
2.根据权利要求1所述的方法,其中,所述基于第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到第一参与方的目标模型,包括:基于第一参与方的标签数据以及所述合并后的所述数据分桶进行M次迭代处理,得到所述M次迭代处理中生成的决策树;基于所述M次迭代处理中生成的决策树,生成所述第一参与方的目标模型;其中,所述M为大于等于1的整数。
3.根据权利要求2所述的方法,其中,所述M次迭代处理中,第i次迭代处理,包括:
基于第i‑1次迭代处理的预测值以及所述第一参与方的标签数据,得到一阶导数以及二阶导数;其中,i为大于等于1且小于等于M的整数;
基于所述一阶导数、所述二阶导数以及所述合并后的数据分桶,构建所述第一参与方的信息增益直方图,将所述第一参与方的信息增益直方图与所述N个第二参与方的信息增益直方图进行合并得到合并后的直方图;
基于所述合并后的直方图的最优分裂点,确定所述第i次迭代处理的决策树;
基于所述第i次迭代处理的决策树以及i‑1次迭代处理得到的i‑1个决策树确定当前模型,在所述当前模型不满足收敛条件的情况下,基于所述当前模型生成所述第i次迭代处理的预测值;在所述当前模型满足收敛条件的情况下,确定迭代结束并将所述当前模型作为所述第一参与方的目标模型。
4.根据权利要求3所述的方法,其中,所述基于所述合并后的直方图的最优分裂点,确定所述第i次迭代处理的决策树,包括:确定所述合并后的直方图的信息增益最大值,基于所述信息增益最大值确定最优分裂点;
基于所述最优分裂点对所述第一参与方的样本数据进行分裂得到当前决策树;
若所述当前决策树达到终止分裂条件,则将所述当前决策树作为所述第i次迭代处理的决策树。
5.一种基于大数据的模型生成装置,应用于第一参与方的电子设备的处理器,包括:
数据处理模块,用于基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;
数据合并模块,用于将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数,所述第二参与方的数据分桶为所述第二参与方的电子设备的处理器基于所述第二参与方的特征信息对所述第二参与方的样本数据进行特征离散化处理后得到;
模型生成模块,用于基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型;
其中,所述数据处理模块,用于基于所述第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的所述特征信息中的至少一个第一特征所对应的数据分桶;
相应的,所述数据合并模块,用于获取所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶;其中,所述第一参与方的所述特征信息中的至少一个第一特征与所述N个第二参与方分别对应的至少一个第二特征不同;且所述N个第二参与方中不同的第二参与方的所述第二特征不同;将所述第一参与方的至少一个第一特征的数据分桶,以及所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶进行合并,得到所述合并后的数据分桶。
6.根据权利要求5所述的装置,其中,所述模型生成模块,用于基于第一参与方的标签数据以及所述合并后的所述数据分桶进行M次迭代处理,得到所述M次迭代处理中生成的决策树;基于所述M次迭代处理中生成的决策树,生成所述第一参与方的目标模型;其中,所述M为大于等于1的整数。
7.根据权利要求6所述的装置,其中,所述模型生成模块,用于基于第i‑1次迭代处理的预测值以及所述第一参与方的标签数据,得到一阶导数以及二阶导数;其中,i为大于等于1且小于等于M的整数;基于所述一阶导数、所述二阶导数以及所述合并后的数据分桶,构建所述第一参与方的信息增益直方图,将所述第一参与方的信息增益直方图与所述N个第二参与方的信息增益直方图进行合并得到合并后的直方图;基于所述合并后的直方图的最优分裂点,确定第i次迭代处理的决策树;基于所述第i次迭代处理的决策树以及i‑1次迭代处理得到的i‑1个决策树确定当前模型,在所述当前模型不满足收敛条件的情况下,基于所述当前模型生成所述第i次迭代处理的预测值;在所述当前模型满足收敛条件的情况下,确定迭代结束并将所述当前模型作为所述第一参与方的目标模型。
8.根据权利要求7所述的装置,其中,所述模型生成模块,用于确定所述合并后的直方图的信息增益最大值,基于所述信息增益最大值确定最优分裂点;基于所述最优分裂点对所述第一参与方的样本数据进行分裂得到当前决策树;若所述当前决策树达到终止分裂条件,则将所述当前决策树作为所述第i次迭代处理的决策树。
9.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1‑4中任一项所述的方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1‑4中任一项所述的方法。
11.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1‑4中任一项所述的方法。 说明书 : 模型生成方法、装置、电子设备及存储介质技术领域[0001] 本公开涉及计算机技术领域。本公开尤其涉及大数据处理、人工智能等领域。背景技术[0002] 现有技术中,LightGBM(LightGradientBoostingMachine,梯度提升机)是一个基于梯度决策树的算法框架。因为具有更快的训练速度、更低的内存消耗和更好的准确率在业界得到了广泛的应用。但是随着算法和大数据的发展,各个领域内真实有效的数据源才是最宝贵的资源。然而由于行业竞争、隐私安全、行政手续复杂等问题,大多数行业中数据是以孤岛的形式存在的。基于此,如何在保证各方隐私数据不被泄露的情况下,获取更多参与方的数据生成各方所需的模型,就成为需要解决的问题。发明内容[0003] 本公开提供了一种模型生成方法、装置、电子设备及存储介质。[0004] 根据本公开的一方面,提供了一种模型生成方法,包括:[0005] 基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;[0006] 将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数;[0007] 基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型。[0008] 根据本公开的另一方面,提供了一种模型生成装置,包括:[0009] 数据处理模块,用于基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;[0010] 数据合并模块,用于将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数;[0011] 模型生成模块,用于基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型。[0012] 根据本公开的一方面,提供了一种电子设备,包括:[0013] 至少一个处理器;以及[0014] 与所述至少一个处理器通信连接的存储器;其中,[0015] 所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述方法。[0016] 根据本公开的一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行前述方法。[0017] 根据本公开的一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方法。[0018] 应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明[0019] 附图用于更好地理解本方案,不构成对本公开的限定。其中:[0020] 图1是根据本公开实施例的模型生成方法流程示意图一;[0021] 图2是根据本公开实施例的数据分桶生成的示意图;[0022] 图3是根据本公开实施例的合并数据分桶的处理示意图一;[0023] 图4是根据本公开实施例的合并数据分桶的处理示意图二;[0024] 图5是根据本公开实施例的模型生成方法流程示意图二;[0025] 图6是根据本公开实施例的模型生成装置组成结构示意图;[0026] 图7是用来实现本公开实施例的模型生成方法的电子设备的框图。具体实施方式[0027] 以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。[0028] 本公开实施例提供了一种模型生成方法,如图1所示,包括:[0029] S101:基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;[0030] S102:将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数;[0031] S103:基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型。[0032] 这里,本实施例的方案可以有多个参与方,具体可以包括有N+1个参与方。本实施例可以应用于第一参与方的电子设备,所述第一参与方的电子设备可以是第一参与方的电脑、服务器等具备处理计算功能的设备。[0033] 前述N+1个参与方中,任意一个参与方可以为所述第一参与方,剩余参与方则为N个第二参与方。针对每一个参与方的处理与前述相同,只是本实施例不进行一一赘述。[0034] 进一步地,N+1个参与方可以分别为不同的企业或单位。再具体来说,N+1个参与方分别采用各自的电子设备进行各自的处理得到各自对应的目标模型。下面从N+1个参与方中的第一参与方的角度对本实施例进行说明。[0035] 首先需要获取到第一参与方的样本数据、第一参与方的特征信息以及第一参与方的标签数据。[0036] 本实施例中每一个参与方的样本数据可以组成各自的样本数据集合,本实施例不对每一个参与方的样本数据的数量进行限定,比如,第一参与方的样本数据的数量可以是10条,第二参与方1的样本数据的数量可以是100条,第二参与方2的样本数据的数量可以是500条等等。本实施例需要指出的是,N+1个参与方的样本数据为同构数据。也就是不论第一参与方的样本数据还是N个第二参与方的各个参与方的样本数据都需要为相同结构或相同类型的数据,但是具体内容可以不同。[0037] 其中,所述特征信息可以包括有一个或多个特征。N+1个参与方的特征信息的维度是相同的,比如均为D。特征信息的维度可以是特征信息中包含的特征的维度。比如,特征信息中包含D个特征则特征信息的维度为D。[0038] 举例来说,N=1,即可以有一个第二参与方。假设第一参与方为参与方A、第二参与方为参与方B,A、B两方都有同构的样本数据的集合,分别为Qa,Qb集合,维度均为D,两方都拥有标签数据Y(label)值,A、B两方的样本数据集合中包含的样本数据的数量分别为La,Lb。[0039] 另外,还可以获取第一参与方的训练参数,这里,所述训练参数可以包括有训练的迭代次数、收敛条件、决策树深度等等,这里不做穷举。同样的,N个第二参与方中每一个第二参与方所对应的电子设备也可以预先获取每一个第二参与方的训练参数。[0040] 进一步地,在所述第一参与方为主动方的情况下,还可以包括:将所述第一参与方的训练参数同步至所述N个第二参与方所分别对应的电子设备。相应的,所述N个第二参与方所对应的电子设备接收到所述第一参与方的训练参数后,可以使用该第一参与方的训练参数进行各自本地训练。[0041] 或者,在所述第一参与方不为主动方的情况下,可以包括:获取主动方的训练参数。进而可以基于该训练参数进行后续的训练。[0042] 基于前述方案,还可以根据所述第一参与方的特征信息,对本地样本数据进行特征离散化处理,每一个维度的样本数据都划分为大的数据分桶(bin),以减少后续构建树模型的计算量。相应的,所述N个第二参与方所分别对应的电子设备也会分别进行各自样本数据的特征离散化处理得到每一个第二参与方的数据分桶。[0043] 参见图2进行说明,某一个维度的特征对应的样本数据为value1~value21,特征离散化处理之后可以得到4个数据分桶,分别将其称为数据分桶bin1~数据分桶bin4,其中每一个数据分桶中包含了一部分的样本数据的聚集信息。[0044] 进而,将第一参与方以及所述N个第二参与方的数据分桶进行合并,得到合并后的数据分桶。这里,所述将第一参与方以及所述N个第二参与方的数据分桶进行合并可以为基于特征的合并或者可以是基于信息的合并,最终得到合并后的数据分桶。[0045] 需要指出的是,这里是将样本数据进行特征离散化处理因此最终合并的数据分桶为特征的分布信息而并非原始信息,因此不会导致各个参与方的原始具体特征值的泄露问题。[0046] 所述基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型可以是:基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行至少一次迭代处理得到至少一个决策树,基于所述至少一个决策树,确定所述第一参与方的目标模型。[0047] 需要指出的是,所述N个第二参与方所分别对应的电子设备也会基于各自的第二参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到各个所述第二参与方所对应的至少一个决策树,基于各个所述第二参与方所分别对应的至少一个决策树确定其各个所述第二参与方分别对应的目标模型。[0048] 通过以上处理,可以将所述第一参与方的样本数据进行特征离散化处理得到对应的数据分桶,进而与N个第二参与方的数据分桶进行融合,得到合并后的数据分桶,再基于合并后的数据分桶以及第一参与方的标签数据生成所述第一参与方对应的本地目标模型。如此,可以在训练的时候进行数据的融合,以扩充样本数据量,为第一参与方提供更加丰富的数据,另外,由于基于特征离散化进行的数据处理得到数据分桶,这样可以采用分布信息进行后续的模型生成而非原始的样本数据,如此也可以保证联合建模的各个参与方的原始数据不会被泄露,从而实现了在使用了更丰富的数据进行模型生成的同时保证了各方隐私的效果,并且可以在本地样本数据不够丰富的情况下,可以结合其他参与方的数据进行联合建模的处理,以提供高效率运行的联合建模算法。另外,本实施例提供的方案还能够促进企业之间的数据流通,并充分发挥了企业的之间数据价值。[0049] 在上述方案中,对所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并可以包括有基于特征的合并方式,以及基于信息的合并方式,分别来说:[0050] 在基于特征的合并方式中,所述基于第一参与方的特征信息对第一参与方的样本数据进行特征离散化处理,得到第一参与方的数据分桶,包括:[0051] 基于所述第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的所述特征信息中的至少一个第一特征所对应的数据分桶;[0052] 相应的,所述将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶,包括:[0053] 获取所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶;其中,所述第一参与方的所述特征信息中的至少一个第一特征与所述N个第二参与方分别对应的至少一个第二特征不同;且所述N个第二参与方中不同的第二参与方的所述第二特征不同;[0054] 将所述第一参与方的至少一个第一特征的数据分桶,以及所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶进行合并,得到所述合并后的数据分桶。[0055] 具体来说,上述第一参与方的特征信息中的至少一个第一特征的数量可以根据实际情况来确定。N个第二参与方中各个第二参与方的至少一个第二特征的数量也可以根据实际情况来确定。[0056] 另外,需要指出的是,所述第一参与方的所述特征信息中的至少一个第一特征与所述N个第二参与方分别对应的至少一个第二特征不同;且所述N个第二参与方中不同的第二参与方的所述第二特征不同。[0057] 这里,所述第一参与方的所述特征信息中的至少一个第一特征可以是第一参与方的一部分特征,N个第二参与方分别对应的至少一个第二特征可以分别是N个第二参与方的一部分特征,并且,每一个第二参与方的至少一个第二特征均不相同。[0058] 所述第一特征用于表示第一参与方用于进行合并的特征,并不是指的同一个特征,即第一参与方可以有多个第一特征用于进行数据分桶的合并。同样的,N个第二参与方分别对应的至少一个第二特征也并不是指的第二参与方只有一个特征参与合并,而是将其所有参与数据分别的合并的特征均称为第二特征。还需要理解的是,不同的第二参与方的第二特征是不同的,比如第二参与方1的第二特征有两个,分别记为特征a、特征b;第二参与方2的第二特征有三个,分别记为特征c、特征d以及特征e。[0059] 举例来说,N=1,即有一个第二参与方,第一参与方的特征信息中的特征1、3为所述至少一个第一特征,第二参与方与第一参与方的特征信息的维度是相同的,因此其特征排列也需要是相同的,第二参与方的特征信息中的特征2、4可以为第二参与方的至少一个第二特征。[0060] 这种基于特征进行合并的方式,可以是针对多个参与方(第一参与方以及N个第二参与方)的样本数据的数量基本相同的场景,具体为:第一参与方以及N个第二参与方分别构造一部分第一特征的数据分桶,然后将构建的数据分桶进行合并得到合并后的数据分桶。[0061] 举例来说,N=1,第一参与方称为参与方A、第二参与方称为参与方B;参与方A选择一半的特征进行分桶构造,参与方B选择另一半特征进行分桶构造。然后两方合并所有特征的数据分桶。比如,第一参与方以及第二参与方的特征信息的维度为4,即两方都有4个特征,其中,第一参与方可以构建其中特征1以及特征3的数据分桶,第二参与方可以构建特征2以及特征4的数据分桶。[0062] 若N=3,而三个参与方的特征信息的维度为5,可以是第一参与方可以构建其中特征1以及特征3的数据分桶,第二参与方‑1可以构建特征2以及特征4的数据分桶,第二参与方‑3可以构建特征5的数据分桶。[0063] 这种基于特征进行合并的方式,还可以是第一参与方以及N个第二参与方分别构造全部特征的数据分桶,然后将各方构建的全部特征的数据分桶中选取不同的特征所对应的数据分桶进行合并,得到合并后的数据分桶。[0064] 举例来说,N=1,第一参与方称A方、第二参与方称为B方;A方以及B方预先构建全部特征的数据分桶,然后从A方选择一半的特征的数据分桶,B方选择另一半特征的数据分桶,合并得到所有特征的数据分桶Bin。参见图3,A方提取特征1、特征3对应的数据分桶(bin),B方提取特征2对应的数据分桶(bin),将A、B两方提取的数据分桶(bin)进行合并,得到合并后的数据分桶。[0065] 通过以上处理,可以从第一参与方以及N个第二参与方分别提取不同特征对应的数据分桶进行合并,可以使得多个参与方的数据全面的融合,并且还不会泄露任何一方的原始数据,提升了训练数据的全面性以及丰富性的同时保证了各方隐私不被泄露,同时为后续第一参与方进行模型的生成提供更加丰富的数据,保证模型更加准确。[0066] 在基于信息的合并方式中,所述将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶,包括:[0067] 基于所述第一参与方的特征信息中的各个特征所对应的数据分桶分别与所述N个第二参与方的相同特征所对应的数据分桶进行合并,得到各个特征所对应的合并后的子数据分桶;基于所述各个特征所对应的合并后的子数据分桶,得到所述合并后的数据分桶。[0068] 本方式可以是针对各个参与方的数据量差别很大的情况,比如可能一方数据很多,又一方数据很少。需要指出的是,衡量各个参与方的数据量差别是否很大,可以根据样本数据的数量来确定,比如,任意两个参与方之间的样本数据的数量差大于预定的数量门限值,可以认为是各个参与方的数据量差别很大的情况。[0069] 本方式可以是多个参与方(第一参与方以及N个第二参与方)都分别构造全部特征的数据分桶,然后把两方每个特征的数据分桶合并在一起。[0070] 举例来说,N=1,第一参与方称A方、第二参与方称为B方;A方以及B方预先构建全部特征的数据分桶,然后从A方选择各个特征的部分数据分桶,B方选择各个特征的另一部分数据分桶,合并得到所有特征的数据分桶。参见图4,假设A、B两方的特征信息的维度为3,则特征信息中包含3个特征,分别记为特征1、特征2以及特征3;A方提取特征1、2、3的数据分桶1、4(即图4中的bin1、bin4),B方提取特征1、2、3中的数据分桶2、3(即图4中的bin2、bin3),最终合并数据分桶。[0071] 通过以上处理,可以从第一参与方以及N个第二参与方分别提取各个特征的部分数据分桶进行合并,可以使得多个参与方的数据全面的融合,并且还不会泄露任何一方的原始数据,提升了训练数据的全面性以及丰富性的同时保证了各方隐私不被泄露,同时为后续第一参与方进行模型的生成提供更加丰富的数据,保证模型更加准确。[0072] 基于以上的分桶的构建,可以进行模型生成的处理,具体来说所述基于第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到第一参与方的目标模型,包括:[0073] 基于第一参与方的标签数据以及所述合并后的所述数据分桶进行M次迭代处理,得到所述M次迭代处理中生成的决策树;基于所述M次迭代处理中生成的决策树,生成所述第一参与方的目标模型;其中,所述M为大于等于1的整数。[0074] 这里,M的次数不做限定,根据模型的收敛条件相关,比如,执行4次迭代处理就满足了收敛条件,则M等于4,若执行10次满足收敛条件,则M等于10。[0075] 也就是每一次迭代处理都会得到对应的决策树,最终将M次迭代处理的决策树作为第一参与方的目标模型。[0076] 如此,在进行目标模型的生成过程中,通过采用本地标签数据以及多个参与方的数据分桶进行处理,这样可以采用分布信息进行后续的模型生成而非原始的样本数据,如此也可以保证各个参与方的原始数据不会被泄露,从而实现了在使用了更丰富的数据进行训练的同时保证了各方隐私的效果。另外,由于采用了数据分桶的方式,可以在进行模型生成的处理中不需要对各个样本数据分别进行计算而是采用汇集后的数据分桶进行计算集合,如此可以减少生成模型过程中的计算量。[0077] 针对上述迭代处理进行详细说明,所述M次迭代处理中,第i次迭代处理,包括:[0078] 基于第i‑1次迭代处理的预测值以及所述第一参与方的标签数据,得到第i次迭代处理中的一阶导数以及二阶导数;其中,i为大于等于1且小于等于M的整数;[0079] 基于所述一阶导数、所述二阶导数以及所述合并后的数据分桶,构建所述第一参与方的信息增益直方图,将所述第一参与方的信息增益直方图与所述N个第二参与方的信息增益直方图进行合并得到合并后的直方图;[0080] 基于所述合并后的直方图的最优分裂点,确定所述第i次迭代处理的决策树;[0081] 基于所述第i次迭代处理的决策树以及i‑1次迭代处理得到的i‑1个决策树确定当前模型,在所述当前模型不满足所述收敛条件的情况下,基于所述当前模型生成所述第i次迭代处理的预测值;在所述当前模型满足收敛条件的情况下,确定迭代结束并将所述当前模型作为所述第一参与方的目标模型。[0082] 具体来说,在i=1的时候,i‑1=0,即第一次迭代处理,此时预测值可以是采用本地标签数据的平均值作为所述预测值。相应的,直接将第一次迭代处理得到的决策树作为当前模型。[0083] 在i大于1的情况中,采用上一次迭代处理计算得到的预测值以及所述第一参与方的标签数据进行计算,得到当前迭代处理的一阶导数以及二阶导数。基于上述一阶导数以及二阶导数可以从合并后的数据分桶中随机选择一部分进行计算构建信息增益直方图。或者,还可以使用全部的数据分桶以及一阶导数、二阶导数进行计算构建信息增益直方图。[0084] 再将第一参与方以及N个第二参与方的信息增益直方图进行合并得到合并的直方图。计算合并后的直方图的信息增益最大值,将所述信息增益最大值的位置作为最优分裂点,基于该最优分裂点以及所述第一参与方的样本数据进行本地分裂,得到分裂后的决策树,也就是得到本次迭代处理的决策树。然后将本次以及之前各次迭代处理得到的决策树作为当前模型。[0085] 进一步地还可以包括:根据决策树计算叶子节点的拟合值;根据所述叶子节点的拟合值,计算目标函数值和当前模型评估指标,根据目标函数值的结果,判断当前模型是否满足收敛条件,若未满足收敛条件,则可以计算当前模型的预测值,基于当前模型的预测值,执行下一次迭代处理,直至迭代结束;若满足收敛条件,则可以确定训练完成或确定迭代结束,将当前模型作为第一参与方的目标模型输出。其中,决策树可以是本次迭代生成的决策树,或者可以是当前全部迭代处理生成的全部的决策树。[0086] 还可以基于目标模型可以结合第一参与方的需求进行后续的预测处理,比如,可以是输入用户的相关信息,得到用户的意向等等,这里不做穷举。[0087] 可见,通过以上处理,可以基于第一参与方的本地标签数据以及合并的数据分桶进行目标模型的生成,在该过程中,可以多个参与方联合构建直方图,由于构建直方图的处理中,同步的是本地的标签数据计算生成的一二阶导数,并通过数据分桶进行多次累计操作的计算,得到的直方图增益信息,如此,可以避免推测两方本地原始的标签数据,所以不会泄露标原始具体标签值。因此通过以上处理方式可以保证得到符合第一参与方需求的目标模型的同时,可以获取更多的训练中使用的数据或信息,使得目标模型更加准确,还可以避免参与方的信息泄漏,保证了联合构建模型的过程中的信息安全性。[0088] 上述生成目标模型的迭代处理中,所述基于所述合并后的直方图的最优分裂点,确定所述第i次迭代处理的决策树,包括:[0089] 确定所述合并后的直方图的信息增益最大值,基于所述信息增益最大值确定最优分裂点;[0090] 基于所述最优分裂点对所述第一参与方的样本数据进行分裂得到当前决策树;[0091] 若所述当前决策树达到终止分裂条件,则将所述当前决策树作为所述第i次迭代处理的决策树。[0092] 其中,所述终止分裂条件可以基于决策树的节点样本数量来确定,还可以包括其他条件,这里不做穷举。[0093] 另外,若所述当前决策树未达到终止分裂条件,则基于所述第一参与方的一阶导数以及二阶导数、随机从合并后的数据分桶中选取一半特征的数据分桶重新构建第一参与方的信息增益直方图;将重新构建的所述第一参与方的信息增益直方图与所述N个第二参与方的信息增益直方图进行合并,得到合并后的直方图;基于所述合并后的直方图的最优分裂点,基于所述最优分裂点以及所述第一参与方的样本数据进行分裂得到当前决策树,也就是继续对第i次迭代处理的决策树进行分裂,直至分裂得到的当前决策树满足终止分裂条件为止。具体的处理与前述相同,这里不做重复说明。[0094] 也就是说,在决策树满足条件的情况下,才会后续执行当前模型是否满足收敛条件的判断。[0095] 可见,通过以上处理,可以基于第一参与方的本地标签数据以及合并的数据分桶进行目标模型的生成,在该过程中,可以多个参与方联合构建直方图,由于构建直方图的处理中,同步的是本地的标签数据计算生成的一二阶导数,并通过数据分桶进行多次累计操作的计算,得到的直方图增益信息,进而基于直方图增益信息进行决策树的构建,再判断决策树是否满足终止分裂条件,在达到的情况下,才会生成当前模型,否则会重新进行直方图的生成以及合并的处理。如此,可以避免推测两方本地原始的标签数据,所以不会泄露标原始具体标签值。因此通过以上处理方式可以保证得到符合第一参与方需求的目标模型的同时,可以获取更多的训练中使用的数据或信息,使得目标模型更加准确,还可以避免参与方的信息泄漏,保证了联合构建模型的过程中的信息安全性。[0096] 本申请一实施例,以两个参与方为例进行说明,将第一参与方作为A方,第二参与方作为B方,结合图5来说,包括:[0097] S51A:A方导入本地的样本数据、特征信息、标签数据和训练参数。具体的,A方导入本地的特征信息包含的特征、样本数据(或样本数据集合)以及标签数据。[0098] 在S51A中还可以包括:A方作为主动方输入训练参数,将参数同步到B方。[0099] 相应的,S51B:B方导入本地的样本数据、特征信息、标签数据。具体的,B方导入本地的特征信息包含的特征、样本数据(或样本数据集合)以及标签数据。[0100] 另外,S51B可以包括:B方会接收A方的训练参数并存储所述训练参数。[0101] S52A:A方根据自己本方的特征信息对本地数据进行特征离散化处理,得到A方的数据分桶;将A方的数据分桶与B方的数据分桶进行合并,得到合并后的数据分桶。[0102] 相应的,S52B:B方根据自己本方的特征信息对本地数据进行特征离散化处理,得到B方的数据分桶;将A方的数据分桶与B方的数据分桶进行合并,得到合并后的数据分桶。[0103] 具体可以是:A方根据自己本方的特征信息对本地数据进行特征离散化处理,将每一个维度(或每一个维度的特征)的样本数据都划分为大的数据分桶。并且,B方根据自己本方的特征信息对本地数据进行特征离散化处理,将每一个维度(或每一个维度的特征)的数据都划分为大的数据分桶。[0104] 然后,A、B双方均执行将两方相同特征的数据合并得到所述数据分桶的处理。[0105] 这里合并的方法有两种,第一种是针对两方数据量基本相同的场景,可以按特征合并,即A方选择一半的特征进行数据分桶构造,B方选择另一半特征进行数据分桶构造,两方合并所有特征的数据分桶。第二种是针对两方数据量差别很大,可能一方数据很多,另一方数据很少,可以按数据分桶信息合并,即两方都构造全部特征的数据分桶,然后把两方每个特征的数据分桶合并在一起。[0106] 其中,特征信息对应的维度中,每一个维度的特征的数据分桶的处理过程可以参见图2,关于图2的处理在前述实施例已经详述,这里不做重复说明。[0107] S53:A、B双方分别基于合并后的数据分桶,构建决策树,完整过程如下:[0108] S531A:A方根据之前历史的迭代结果生成的预测值和本地的标签数据,计算当前迭代轮次的一二阶导数Ga、Ha(如果是第一轮迭代,没有历史迭代预测值,则直接初始化)。相应的S531B:B方根据之前历史的迭代结果生成的预测值和本地的标签数据,计算当前迭代轮次的一二阶导数Gb、Hb(同样的,如果是B方的第一轮迭代,没有历史迭代预测值,则直接初始化)。[0109] S532:联合构建决策树,具体的可以为递归构建决策树,过程如下:[0110] S5321A:A方基于本地的一二阶导数Ga和Ha,使用合并后的数据分桶,构建A方的信息增益直方图(Histogram_A);相应的,S5321B:B方基于本地的一二阶导数Gb和Hb,使用合并后的数据分桶,构建B方的信息增益直方图(Histogram_B)。[0111] S5322A、以及S5322B,均可以包括:得到合并后的直方图,确定合并后的直方图的最优分裂点。[0112] 具体的,A、B双方均可以使用ReduceScatter(减少散射)算法,合并A、B两方的信息增益直方图,并计算信息增益最大值,找到最优分裂点;然后,A、B两方各自根据所述最优分裂点进行本地分裂生成当前决策树。[0113] S5323A:A方判断当前决策树是否达到终止分裂条件,如果没有达到终止分裂条件,则回到S5321A,继续划分决策树的下一个子节点;如果达到终止分裂条件,则结束递归完成树分裂过程,执行S533A。[0114] 同样的,S5323B:B方判断当前决策树是否达到终止分裂条件,如果没有达到终止分裂条件,则回到S5321B,继续划分决策树的下一个子节点;如果达到终止分裂条件,则结束递归完成树分裂过程,执行S533B。[0115] 这里,所述继续划分决策树的下一个子节点,可以是继续划分本地决策树的下一个叶子节点。[0116] 还需要说明的是,如果A方被设置为主动方,那么可以在A方确定达到终止分裂条件的时候,B方也被通知终止分裂,可以是B方的达到终止分裂的条件中包括有:接收到主动方终止分裂的通知,或者,达到本地的终止分裂条件。[0117] S533A:A方生成决策树,并计算叶子节点的拟合值;同样的,S533B:B方生成决策树,并计算叶子节点的拟合值。[0118] 也就是,A、B两方可以根据递归生成本地的决策树,并分别在本地计算叶子节点的拟合值。[0119] S534A:A方判断当前模型是否收敛,若收敛,则执行S54A;若未收敛,则返回S531A进行下一轮迭代处理。同样的,S534B:B方判断当前模型是否收敛,若收敛,则执行S54B;若未收敛,则返回S531B进行下一轮迭代处理。[0120] 具体来说,A、B双方根据叶子节点的拟合值,分别在本地计算目标函数值和当前模型评估指标,根据目标函数值的结果,判断模型是否收敛,如果没有收敛,则生成当前模型的预测值,开始下一轮迭代;如果已经收敛,则结束迭代。[0121] S54A:A方将迭代处理生成的所有的决策树输出;同样的,S54B:B方将迭代处理生成的所有的决策树输出。[0122] 这里,A、B两方分别将各自每次迭代处理的决策树作为各自的目标模型进行输出。[0123] 上述整个过程中,A、B两方联合构建数据分桶的处理中,同步的是同一个特征的分布信息,而不是原始信息,所以互相不会泄露原始具体特征值;两方联合构建直方图时,同步的是本地的标签数据计算生成的一二阶导数,通过数据分桶进行多次累加累减累乘累除等操作的计算,得到的直方图增益信息,因此,没办法推测两方本地原始的标签数据,所以不会泄露标原始具体标签值。[0124] 上述基于同构数据的联合建模,每一个参与方本地都会生成一个独立的目标模型(其中包括多棵决策树);在需要进行预测的时候,可以直接本地进行预测,得到本地的预测结果。[0125] 进一步来说,GBDT(GradientBoostingDecisionTree,梯度提升树)是机器学习中一个长盛不衰的模型,其主要思想是利用弱分类器(决策树)迭代训练以得到最优模型,该模型具有训练效果好、不易过拟合等优点。GBDT不仅在工业界应用广泛,通常被用于多分类、点击率预测、搜索排序等任务。LightGBM(LightGradientBoostingMachine,梯度提升机)是一个实现GBDT算法的框架,支持高效率的并行训练,并且具有更快的训练速度、更低的内存消耗、更好的准确率、支持分布式可以快速处理海量数据等优点。本实施例的处理中,基于改进的LightGBM算法框架进行处理,具体的,将多个参与方的同构数据融合以扩充模型训练的样本量,然后在不泄露两方数据的条件下,通过采用LightGBM算法框架改造的同构数据联合建模算法进行训练,得到多个参与方中各自的本地目标模型。[0126] 在另一种具体实施方式中,提供了一种模型生成装置,如图6所示,包括:[0127] 数据处理模块61,用于基于第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的数据分桶;[0128] 数据合并模块62,用于将所述第一参与方的数据分桶与N个第二参与方的数据分桶进行合并,得到合并后的数据分桶;其中,N为大于等于1的整数;[0129] 模型生成模块63,用于基于所述第一参与方的标签数据以及所述合并后的所述数据分桶进行迭代处理,得到所述第一参与方的目标模型。[0130] 所述数据处理模块61,用于基于所述第一参与方的特征信息对所述第一参与方的样本数据进行特征离散化处理,得到所述第一参与方的所述特征信息中的至少一个第一特征所对应的数据分桶;[0131] 相应的,所述数据合并模块62,用于获取所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶;其中,所述第一参与方的所述特征信息中的至少一个第一特征与所述N个第二参与方分别对应的至少一个第二特征不同;且所述N个第二参与方中不同的第二参与方的所述第二特征不同;将所述第一参与方的至少一个第一特征的数据分桶,以及所述N个第二参与方分别对应的至少一个第二特征所对应的数据分桶进行合并,得到所述合并后的数据分桶。[0132] 所述数据合并模块62,用于基于所述第一参与方的特征信息中的各个特征所对应的数据分桶分别与所述N个第二参与方的相同特征所对应的数据分桶进行合并,得到各个特征所对应的合并后的子数据分桶;基于所述各个特征所对应的合并后的子数据分桶,得到所述合并后的数据分桶。[0133] 所述模型生成模块63,用于基于第一参与方的标签数据以及所述合并后的所述数据分桶进行M次迭代处理,得到所述M次迭代处理中生成的决策树;基于所述M次迭代处理中生成的决策树,生成所述第一参与方的目标模型;其中,所述M为大于等于1的整数。[0134] 所述模型生成模块63,用于基于第i‑1次迭代处理的预测值以及所述第一参与方的标签数据,得到一阶导数以及二阶导数;其中,i为大于等于1且小于等于M的整数;基于所述一阶导数、所述二阶导数以及所述合并后的数据分桶,构建所述第一参与方的信息增益直方图,将所述第一参与方的信息增益直方图与所述N个第二参与方的信息增益直方图进行合并得到合并后的直方图;基于所述合并后的直方图的最优分裂点,确定所述第i次迭代处理的决策树;基于所述第i次迭代处理的决策树以及i‑1次迭代处理得到的i‑1个决策树确定当前模型,在所述当前模型不满足所述收敛条件的情况下,基于所述当前模型生成所述第i次迭代处理的预测值;在所述当前模型满足收敛条件的情况下,确定迭代结束并将所述当前模型作为所述第一参与方的目标模型。[0135] 所述模型生成模块63,用于确定所述合并后的直方图的信息增益最大值,基于所述信息增益最大值确定最优分裂点;基于所述最优分裂点对所述第一参与方的样本数据进行分裂得到当前决策树;若所述当前决策树达到终止分裂条件,则将所述当前决策树作为所述第i次迭代处理的决策树。[0136] 根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。[0137] 如图7所示,是根据本申请实施例的模型生成方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。[0138] 如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器701为例。[0139] 存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的模型生成方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的模型生成方法。[0140] 存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的模型生成方法对应的程序指令/模块。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的模型生成方法。[0141] 存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据模型生成方法的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至模型生成方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。[0142] 模型生成方法的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。[0143] 输入装置703可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。[0144] 此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。[0145] 这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。[0146] 为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入、或者触觉输入)来接收来自用户的输入。[0147] 可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。[0148] 计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端‑服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决传统物理主机与虚拟专用服务器(VPS)服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。[0149] 根据本申请实施例的技术方案,可以将第一参与方的样本数据进行特征离散化处理得到对应的数据分桶,进而与N个参与方的数据分桶进行融合,得到合并后的数据分桶,再基于合并后的数据分桶以及第一参与方的标签数据生成所述第一参与方对应的本地目标模型。如此,可以在训练的时候进行数据的融合,以扩充样本数据量,为第一参与方提供更加丰富的数据,另外,由于基于特征离散化进行的数据处理得到数据分桶,这样可以采用分布信息进行后续的模型生成而非原始的样本数据,如此也可以保证联合建模的各个参与方的原始数据不会被泄露,从而实现了在使用了更丰富的数据进行模型生成的同时保证了各方隐私的效果。[0150] 应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。[0151] 上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

专利地区:北京

专利申请日期:2020-09-30

专利公开日期:2024-07-26

专利公告号:CN112036510B


以上信息来自国家知识产权局,如信息有误请联系我方更正!
电话咨询
读内容
搜本页
回顶部