CN111447278B - 用于获取连续特征的分布式***及其方法 - Google Patents

用于获取连续特征的分布式***及其方法 Download PDF

Info

Publication number
CN111447278B
CN111447278B CN202010229130.8A CN202010229130A CN111447278B CN 111447278 B CN111447278 B CN 111447278B CN 202010229130 A CN202010229130 A CN 202010229130A CN 111447278 B CN111447278 B CN 111447278B
Authority
CN
China
Prior art keywords
data
data samples
order
node
preserving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010229130.8A
Other languages
English (en)
Other versions
CN111447278A (zh
Inventor
罗远飞
焦英翔
郑淇木
石光川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
4Paradigm Beijing Technology Co Ltd
Original Assignee
4Paradigm Beijing Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 4Paradigm Beijing Technology Co Ltd filed Critical 4Paradigm Beijing Technology Co Ltd
Priority to CN202010229130.8A priority Critical patent/CN111447278B/zh
Publication of CN111447278A publication Critical patent/CN111447278A/zh
Application granted granted Critical
Publication of CN111447278B publication Critical patent/CN111447278B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

提供了一种用于获取连续特征的分布式***及其方法。所述分布式***包括:多个节点装置,被配置为并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征;其中,所述多个节点装置按照所述指定数据集中的数据样本的排序获取每轮需要其处理的数据样本,排序越靠前的数据样本越早被节点装置获取,其中,每个节点装置针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。

Description

用于获取连续特征的分布式***及其方法
技术领域
本发明总体说来涉及数据处理领域,更具体地讲,涉及一种用于获取连续特征的分布式***及其方法。
背景技术
决策树模型(GBDT)在训练过程中会为某个特征选择一个值作为切分点,一条样本中的该特征的特征值与切分点之间的大小关系,决定了该条样本会被如何分类。决策树模型的这一特点使得决策树模型更加适合处理连续型特征,这是因为离散特征的特征值之间通常并没有相对的大小关系,例如,决策树模型中可以基于“用户的年龄”进行分类,小于18岁和大于或等于18岁会被分到不同的类,但“用户的住址”是没法以相似的逻辑进行处理的。
为了解决这一问题,通常会对离散值做独热编码(One-Hot Encoding),例如,可将用户的住址位于海淀区和不位于海淀区分别划分为决策树上的两个分支,但这样做的缺点是特征量会十分巨大,导致在模型训练上会带来各种各样的问题。
发明内容
本发明的示例性实施例在于提供一种用于获取连续特征的分布式***及其方法,其能够降低连续化处理后得到的连续特征的特征量,且能够提高连续化处理的速度。
根据本发明的示例性实施例,提供一种用于获取连续特征的分布式***,其中,所述分布式***包括:多个节点装置,被配置为并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征;其中,所述多个节点装置按照所述指定数据集中的数据样本的排序获取每轮需要其处理的数据样本,排序越靠前的数据样本越早被节点装置获取,且不同节点装置获取的数据样本不同,其中,每个节点装置针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。
可选地,所述分布式***还包括:数据保序装置,被配置为将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置,以为所述多个节点装置提供各轮需要其处理的数据样本。
可选地,当所述指定数据集中的数据样本具有时序时,所述指定数据集中的数据样本按时序被排序,其中,数据保序装置按时序为所述多个节点装置提供各轮需要其处理的数据样本,其中,时序越靠前的数据样本越早被提供给所述多个节点装置处理。
可选地,当所述指定数据集中的数据样本不具有时序时,数据保序装置将所述指定数据集中的数据样本随机排序N次,并针对所述指定数据集的原始排序和N次随机排序中的每一种排序,按照该排序为所述多个节点装置提供各轮需要其处理的数据样本,以通过所述多个节点装置得到针对该种排序的与每个离散字段对应的连续特征,其中,N为大于或等于0的整数。
可选地,所述分布式***还包括:服务器,被配置为维护关于每个需要连续化处理的离散字段的历史统计结果。
可选地,所述数据样本包括所述至少一个离散字段的字段值和标签值,其中,关于每个需要连续化处理的离散字段的历史统计结果为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果。
可选地,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,服务器当接收到节点装置发送的数据样本时,从已存储的数据样本中删除最先存储的满足预设条件的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。
可选地,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,服务器当接收到节点装置发送的数据样本时,对当前的关于每个需要连续化处理的离散字段的历史统计结果进行衰减处理,并基于本次接收的数据样本,对衰减处理后的历史统计结果进行更新。
可选地,数据保序装置将所述指定数据集的数据样本划分为多个分片存储,数据保序装置通过将所述多个分片随机排序N次,来实现将所述指定数据集中的数据样本随机排序N次。
可选地,数据保序装置还被配置为保存所述多个分片的N次随机排序结果,以便后续复现获取连续特征的过程。
可选地,数据保序装置包括多个保序客户端,其中,所述多个保序客户端与所述多个节点装置一一对应,并且,节点装置与对应的保序客户端集成为一体,其中,每个保序客户端被配置为将所述指定数据集中的部分数据样本按照排序以流式的形式提供给对应的节点装置,以为对应的节点装置提供各轮需要其处理的数据样本,其中,不同保序客户端对应不同的数据样本。
根据本发明的另一示例性实施例,提供一种用于获取连续特征的方法,其中,所述方法包括:多个节点装置并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征,其中,所述多个节点装置按照所述指定数据集中的数据样本的排序处理数据样本,排序越靠前的数据样本越早被节点装置处理,且不同节点装置处理的数据样本不同,其中,所述多个节点装置并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理的步骤包括:针对每个节点装置,该节点装置获取本轮需要其处理的数据样本;该节点装置针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。
可选地,所述方法还包括:数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置,以为所述多个节点装置提供各轮需要其处理的数据样本。
可选地,当所述指定数据集中的数据样本具有时序时,所述指定数据集中的数据样本按时序被排序,其中,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤包括:数据保序装置按时序为所述多个节点装置提供各轮需要其处理的数据样本,其中,时序越靠前的数据样本越早被提供给所述多个节点装置处理。
可选地,当所述指定数据集中的数据样本不具有时序时,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤包括:数据保序装置将所述指定数据集中的数据样本随机排序N次,并针对所述指定数据集的原始排序和N次随机排序中的每一种排序,按照该排序为所述多个节点装置提供各轮需要其处理的数据样本,以通过所述多个节点装置得到针对该种排序的与每个离散字段对应的连续特征,其中,N为大于或等于0的整数。
可选地,所述方法还包括:服务器维护关于每个需要连续化处理的离散字段的历史统计结果。
可选地,所述数据样本包括所述至少一个离散字段的字段值和标签值,其中,关于每个需要连续化处理的离散字段的历史统计结果为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果。
可选地,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,服务器维护关于每个需要连续化处理的离散字段的历史统计结果的步骤包括:服务器当接收到节点装置发送的数据样本时,从已存储的数据样本中删除最先存储的满足预设条件的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。
可选地,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,服务器维护关于每个需要连续化处理的离散字段的历史统计结果的步骤包括:服务器当接收到节点装置发送的数据样本时,对当前的关于每个需要连续化处理的离散字段的历史统计结果进行衰减处理,并基于本次接收的数据样本,对衰减处理后的历史统计结果进行更新。
可选地,所述方法还包括:数据保序装置将所述指定数据集的数据样本划分为多个分片存储,其中,数据保序装置将所述指定数据集中的数据样本随机排序N次的步骤包括:数据保序装置将所述多个分片随机排序N次。
可选地,所述方法还包括:数据保序装置保存所述多个分片的N次随机排序结果,以便后续复现获取连续特征的过程。
可选地,数据保序装置包括多个保序客户端,其中,所述多个保序客户端与所述多个节点装置一一对应,并且,节点装置与对应的保序客户端集成为一体,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤包括:针对每个保序客户端,该保序客户端将所述指定数据集中的部分数据样本按照排序以流式的形式提供给对应的节点装置,以为对应的节点装置提供各轮需要其处理的数据样本,其中,不同保序客户端对应不同的数据样本。
根据本发明示例性实施例的用于获取连续特征的分布式***及其方法,能够实现在分布式场景下对离散字段进行连续化处理以获取连续特征,提高了连续化处理的效率。通过使用通用的获取连续特征的框架,既能够支持针对时序样本获取连续特征,也能够支持针对非时序样本获取连续特征,并且,可以在一定程度上保证针对时序样本获取连续特征的正确性,提高针对非时序样本获取连续特征的处理精度。此外,用户仅需基于单线程逻辑来设置获取关于需要连续化处理的离散字段的历史统计结果的具体方式(例如,统计方式、衰减操作、窗口操作等),即可自动向其提供满足其需求的连续特征,既满足了用户的个性化需求(例如,对数据时效性的需求),又降低了开发门槛。
将在接下来的描述中部分阐述本发明总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本发明总体构思的实施而得知。
附图说明
通过下面结合示例性地示出实施例的附图进行的描述,本发明示例性实施例的上述和其他目的和特点将会变得更加清楚,其中:
图1示出根据本发明示例性实施例的用于获取连续特征的分布式***的框图;
图2示出根据本发明的另一示例性实施例的用于获取连续特征的分布式***的框图;
图3示出根据本发明的另一示例性实施例的用于获取连续特征的分布式***的框图;
图4示出根据本发明的另一示例性实施例的用于获取连续特征的分布式***的框图;
图5和图6示出根据本发明示例性实施例的用于获取连续特征的分布式***的运行流程的示例;
图7示出根据本发明的示例性实施例的用于获取连续特征的方法的流程图。
具体实施方式
现将详细参照本发明的实施例,所述实施例的示例在附图中示出,其中,相同的标号始终指的是相同的部件。以下将通过参照附图来说明所述实施例,以便解释本发明。
图1示出根据本发明示例性实施例的用于获取连续特征的分布式***的框图。如图1所示,根据本发明示例性实施例的用于获取连续特征的分布式***包括:多个节点装置1000(例如,1000-1、1000-2、…、1000-n(其中,n为大于1的整数))。
所述多个节点装置1000被配置为并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征,其中,所述多个节点装置1000按照所述指定数据集中的数据样本的排序获取每轮需要其处理的数据样本,排序越靠前的数据样本越早被节点装置1000获取进行处理,且不同节点装置1000获取的数据样本不同,其中,每个节点装置1000针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。
具体说来,每个节点装置1000在每一轮,获取本轮需要该节点装置1000处理的数据样本,针对每一个需要连续化处理的离散字段从服务器获取最新的关于该离散字段的历史统计结果,然后,基于获取的历史统计结果对获取的数据样本中的需要连续化处理的离散字段的字段值进行连续化处理以获取对应的连续特征的特征值,并将本轮所连续化处理的字段值发送到服务器,以由服务器对关于需要连续化处理的离散字段的历史统计结果进行更新,然后该节点装置1000进入下一轮,从而能够保证每个节点装置1000进行连续化处理时所使用的历史统计结果是基于所有节点装置1000之前处理的数据得到的。应该理解,可待所有节点装置1000完成本轮后一起进入下一轮,也可节点装置1000自己完成本轮后立即进入下一轮,以使处理能力越强的节点装置1000处理越多的数据样本。应该理解,这里所说的每一轮是指处理指定数据集中的一小部分(batch)数据样本,而非指处理一遍指定数据集中的全部数据样本。
这里,应该理解,所述多个节点装置1000可分别针对指定数据集的数据样本的至少一种排序中的每一种排序,对需要连续化处理的离散字段进行一次连续化处理,以得到该离散字段与每种排序对应的一个连续特征。换言之,针对每个需要连续化处理的离散字段,可得到对应的一个或多个连续特征,所述多个连续特征中的每个连续特征是基于指定数据集中的数据样本的一种排序得到的,所述多个连续特征中的不同连续特征对应不同种排序。作为示例,当指定数据集中的数据样本能够按时序排序时,可针对每个需要连续化处理的离散字段得到与按时序排序对应的一个连续特征;当指定数据集中的数据样本由于不具备时序而不能按时序排序时,可针对每个需要连续化处理的离散字段得到对应的多个连续特征。作为示例,指定数据集中的数据样本可按时序被排序(即,对应的时间越早,排序越靠前),或按其他方式(例如,随机或初始默认)被排序。
在针对指定数据集中的数据样本的一种排序获取对应的连续特征的过程中,所述多个节点装置1000可按照该排序依次获取指定数据集中的数据样本作为其每轮处理的数据样本,排序越靠前的数据样本越早被节点装置1000获取,且不同节点装置1000获取的数据样本不同,已被节点装置1000获取的数据样本,之后将不再被获取,也即,各个节点装置1000针对同一需要连续化处理的离散字段分别处理指定数据集的一部分数据样本,不同节点装置1000处理的数据样本无交集,且不同节点装置1000处理的数据样本的合集正好是所述指定数据集。
例如,假设根据本发明示例性实施例的用于获取连续特征的分布式***包括3个节点装置1000-1、1000-2、以及1000-3,在节点装置1000-1、1000-2、以及1000-3进入第一轮时,可按照当前的排序,节点装置1000-1获取前10条数据样本进行处理,节点装置1000-2获取第11-20条数据样本进行处理,节点装置1000-3获取第21-30条数据样本进行处理;在节点装置1000-1、1000-2、以及1000-3进入第二轮时,节点装置1000-1获取第31-40条数据样本进行处理,节点装置1000-2获取第41-50条数据样本进行处理,节点装置1000-3获取第51-60条数据样本进行处理,依此类推进行多轮处理,直至将指定数据集中的所有数据样本全部处理完毕。应该理解,每个节点装置1000每一轮可获取一条数据样本或包含多条数据样本的数据块,且每一轮不同节点装置1000获取的数据样本的数量可相同或不同。
作为示例,关于需要连续化处理的离散字段的历史统计结果可为:关于该离散字段的字段值的历史统计结果,即,对已连续化处理的该离散字段的字段值进行统计得到的统计结果。例如,所述数据样本可包括所述至少一个离散字段的字段值和标签(label)值(即,预测目标字段的字段值),关于需要连续化处理的离散字段的历史统计结果可为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果,例如,可为该离散字段历史上的不同字段值的正样本比率。
作为示例,所述服务器可以是参数服务器。
图2示出根据本发明的另一示例性实施例的用于获取连续特征的分布式***的框图。如图2所示,根据本发明的另一示例性实施例的用于获取连续特征的分布式***包括:多个节点装置1000和数据保序装置2000。
数据保序装置2000被配置为将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置1000,以为所述多个节点装置1000提供各轮需要其处理的数据样本。
具体说来,数据保序装置2000用于为所述多个节点装置1000提供各轮需要其处理的数据样本,每当节点装置1000完成一轮处理后,数据保序装置2000向节点装置1000提供下一轮需要其处理的数据样本,换言之,数据保序装置2000能够控制指定数据集中的数据样本在所述多个节点装置1000中被处理的顺序,此外,数据保序装置2000还能够对指定数据集中的数据样本进行排序,以按照该排序以流式的形式为所述多个节点装置1000提供各轮需要其处理的数据样本。
在针对指定数据集中的数据样本的一种排序获取对应的连续特征的过程中,数据保序装置2000按照该排序以流式的形式为所述多个节点装置1000提供各轮需要其处理的数据样本可理解为:按照该排序依次将指定数据集中的数据样本提供给所述多个节点装置1000,即,为所述多个节点装置1000的每轮计算提供数据样本,排序越靠前的数据样本越早被提供给节点装置1000处理,且提供给不同节点装置1000的数据样本不同,已提供给节点装置1000的数据样本,将不会再重复提供。
作为示例,数据保序装置2000可判断指定数据集中的数据样本是否具有时序,并根据不同判断结果进行不同处理。例如,可当指定数据集中具有时间字段时,确定指定数据集中的数据样本具有时序。此外,也可通过其他方式判断指定数据集中的数据样本是否具有时序。
在一个实施例中,当所述指定数据集中的数据样本具有时序时,所述指定数据集中的数据样本按时序被排序,数据保序装置2000可按时序为所述多个节点装置1000提供各轮需要其处理的数据样本,其中,时序越靠前(即,对应的时间越早)的数据样本越早被提供给所述多个节点装置1000处理,且不同节点装置1000处理的数据样本不同。例如,数据保序装置2000可按照时序对指定数据集中的数据样本进行排序,或者,指定数据集本身已是按照数据样本流入的先后时间来存储数据样本而无需再按照时序进行排序,从而数据保序装置2000可按照指定数据集中的数据样本的排序,依次为所述多个节点装置1000的每轮计算提供数据样本,以实现按时序为所述多个节点装置1000提供各轮需要其处理的数据样本。根据本发明的示例性实施例,能够保证在分布式场景下数据样本按时序被节点装置1000处理,即,能够保证节点装置1000当前所处理的样本数据为在同一时段产生的样本数据,以提高用于计算特征值的关于样本数据的历史统计结果的正确性,防止穿越问题(即,当前处理的样本数据用到了未来的样本数据的信息)。
在另一个实施例中,当所述指定数据集中的数据样本不具有时序时,数据保序装置将所述指定数据集中的数据样本随机排序N次,并针对所述指定数据集的原始排序和N次随机排序中的每一种排序,按照该排序为所述多个节点装置提供各轮需要其处理的数据样本,以通过所述多个节点装置得到针对该种排序的与每个离散字段对应的连续特征,其中,N为大于或等于0的整数。换言之,在该实施例中,当所述指定数据集中的数据样本不具有时序时,针对每个需要连续化处理的离散字段,将得到N+1个对应的连续特征,而该离散字段的不同连续特征的特征值是基于指定数据集的数据样本的不同排序得到的。在本实施例中,对于指定数据集中的数据样本不具有时序(即,需要连续化处理的离散字段为非时序的离散字段)的情况,可通过随机排序来为数据样本指定一个序,从而实现将一个非时序的离散字段转换为多个连续特征,来提高模型对该离散字段的适应性。此外,应该理解,服务器在维护关于每个需要连续化处理的离散字段的历史统计结果时,应该针对指定数据集中的数据样本的每种排序来分别维护。
作为示例,数据保序装置2000可将所述指定数据集的数据样本划分为多个分片(shard)存储,数据保序装置2000可通过将所述多个分片随机排序N次,来实现将所述指定数据集中的数据样本随机排序N次。例如,如果指定数据集中有30000条数据样本,可将数据样本划分为3个分片进行存储,则每个shard可存储10000条数据样本。
作为示例,数据保序装置2000还可被配置为保存所述N次随机排序的排序结果,以便后续复现获取连续特征的过程。作为示例,当所述指定数据集的数据样本被划分为多个分片存储时,可保存所述多个分片的N次随机排序结果,以便后续复现获取连续特征的过程,在这一实施例中,当进行shuffle时,可以以shard为粒度去进行,而不是以数据样本为粒度去进行随机排序,从而既可以达到大幅打乱顺序的效果,又几乎不会带来任何额外开销(只需要改变读取多个shard的顺序就可以实现),并且,也方便数据保序装置2000记录每一次数据样本的排序(仅记录shard的读取顺序即可),复现shuffle场景下的特征处理结果。
图3示出根据本发明的另一示例性实施例的用于获取连续特征的分布式***的框图。如图3所示,根据本发明的另一示例性实施例的用于获取连续特征的分布式***包括:多个节点装置1000和服务器3000。
服务器3000被配置为维护关于每个需要连续化处理的离散字段的历史统计结果。服务器3000针对指定数据集的数据样本的一种排序,针对每一个需要连续化处理的离散字段,基于已从所述多个节点装置1000接收到的该离散字段的字段值,得到关于该离散字段的历史统计结果,具体地,每当从节点装置1000接收到该离散字段的字段值,就基于接收到的该离散字段的字段值来更新关于该离散字段的历史统计结果。即,在分布式场景下,由服务器3000基于从各个节点装置1000接收到的数据统一计算获得全局的关于需要连续化处理的离散字段的历史统计结果,使得每个节点装置1000在处理数据样本获取特征值时,都能从服务器3000获取最新的历史统计结果,并且能够保证每个节点装置1000进行连续化处理时所使用的历史统计结果是基于所有节点装置1000已处理的数据得到的。
作为示例,服务器3000可以是参数服务器。
作为示例,用于获取历史统计结果的统计函数可以是支持交换律结合律的统计函数,相应地,服务器3000仅需保存基于历史样本得到的统计和以及统计次数即可,当服务器3000接收到节点装置1000发送的离散字段的字段值时,只需按照指定方式(例如,直接或后面提到的衰减操作)将已存储的统计和与本次接收到的数据进行合并,并将统计次数按照所述指定方式累计即可,当需要向节点装置1000发送历史统计结果时,可将基于当前存储的统计和以及统计次数使用统计函数(例如,取均值)计算得到的结果发送到节点装置1000即可。
作为示例,当关于需要连续化处理的离散字段的历史统计结果为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果时,节点装置1000获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将本轮处理的数据样本发送到服务器3000以由服务器3000基于所述数据样本中的所述至少一个离散字段的字段值和标签值来更新关于所述至少一个离散字段的历史统计结果。应该理解,如果指定数据集还包括连续字段,可不向服务器3000发送所述连续字段的字段值。
在一个实施例中,服务器3000当接收到节点装置1000发送的数据样本时,可从已存储的数据样本中删除最先存储的满足预设条件的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。例如,所述最先存储的满足预设条件的数据样本可以是最先存储的与本次接收的数据样本等数量的数据样本,或者,最近预设时长之前存储的数据样本。例如,服务器3000当接收到节点装置1000发送的数据样本时,可从已存储的数据样本中删除最先存储的与本次接收的数据样本等数量的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。例如,服务器3000当接收到节点装置1000发送的数据样本时,可从已存储的数据样本中删除最近预设时长之前存储的数据样本(例如,删除最近一分钟之前存储的数据样本),并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。
根据本发明的示例性实施例,在服务器3000更新历史统计结果时添加了窗口操作,以充分利用数据样本的时效性,使得到的连续特征更能体现出时效性带来的影响,并且,也可以使用于获得历史统计结果的统计操作更灵活,即,可以在一定程度上支持不支持交换律结合律的统计函数。例如,服务器3000上可只记录最近接收到的100条数据样本或最近1分钟内接收到的数据样本,由于拥有当前要处理的全量数据,获取历史统计结果的处理就可以支持任意形式的统计函数了,虽然会耗费内存,但耗费量在一定情况下也是可以接受的。
在另一个实施例中,服务器3000当接收到节点装置1000发送的数据样本时,可对当前的关于每个需要连续化处理的离散字段的历史统计结果进行衰减处理,并基于本次接收的数据样本,对衰减处理后的历史统计结果进行更新。根据上述示例性实施例,能够减少时间久远的历史样本对当前处理的样本产生的影响,从而可以充分利用数据的时效性。
此外,作为示例,根据本发明的另一示例性实施例的用于获取连续特征的分布式***包括:多个节点装置1000、数据保序装置2000、以及服务器3000。
应该理解,节点装置1000、数据保序装置2000、以及服务器3000中的至少一个均由其所执行的处理或所实现的功能来限定,既可指示物理实体,也可指示虚拟实体,例如,节点装置1000可指示实际的物理计算机器,也可指示部署在该计算机器上的逻辑实体,同样,服务器3000既可指示实际的物理计算机器,也可作为一个或多个逻辑实体而与计算装置1000和/或数据保序装置2000部署在同样和/或不同的计算机器上,同样,数据保序装置2000既可指示实际的物理计算机器,也可作为一个或多个逻辑实体而与计算装置1000和/或服务器3000部署在同样和/或不同的计算机器上。作为示例,服务器3000可部署在单个计算机器上;或者,服务器3000可同时部署在多个计算机器上;数据保序装置2000可部署在单个计算机器上;或者,数据保序装置2000可同时部署在多个计算机器上。作为示例,服务器3000的部分和/或数据保序装置2000的部分,可与每个节点装置1000部署在同一个物理计算机器上。
作为示例,数据保序装置2000可与节点装置1000运行在不同的物理计算机器上,相应地,数据保序装置2000只需要通过网络按序将数据样本分发给各个节点装置1000即可,在之后再次运行针对该指定数据集获取连续特征的过程时,也一定能够保证数据样本被处理的顺序与本次相同以实现复现,例如,第一轮被处理的三条数据样本仍然是数据样本1、2、3。这样做同时也模拟了线上训练的场景,即数据是实时产生的,通过网络发送给负责进行特征处理的模块即可。
图4示出根据本发明的另一示例性实施例的用于获取连续特征的分布式***的框图。
如图4所示,数据保序装置2000可包括多个保序客户端4000(例如,4000-1、4000-2、…、4000-n),其中,所述多个保序客户端4000与所述多个节点装置1000一一对应,并且,节点装置1000与对应的保序客户端4000集成为一体,其中,每个保序客户端4000被配置为将所述指定数据集中的部分数据样本按照排序以流式的形式提供给对应的节点装置1000,以为对应的节点装置1000提供各轮需要其处理的数据样本,其中,不同保序客户端4000对应不同的数据样本。
应该理解,每个保序客户端4000管理指定数据集的一部分数据样本,不同保序客户端4000管理的数据样本无交集,且不同保序客户端4000管理的数据样本的合集正好是所述指定数据集。
作为示例,节点装置1000与对应的保序客户端4000可部署在同一个物理计算机器上,也即,需要每个节点装置1000处理的数据样本可存储在其所处的物理计算机器上。
在一个实施例中,当所述指定数据集中的数据样本具有时序时,可按照数据样本的时序确定各个保序客户端4000需要管理的所有数据样本,并且每个保序客户端4000按照时序为对应的节点装置1000提供其各轮需要处理的数据样本,时序越靠前的数据样本越早被提供给对应的节点装置1000处理,以保证所述多个节点装置1000并行处理数据样本时,时序越靠前的数据样本越早被提供给所述多个节点装置1000处理。例如,指定数据集中的数据样本按时序排序,可将前10条数据样本、第31-40条数据样本、……、分配给与节点装置1000-1对应的保序客户端4000-1进行管理;可将第11-20条数据样本、第41-50条数据样本、……、分配给与节点装置1000-2对应的保序客户端4000-2进行管理;可将第21-30条数据样本、第51-60条数据样本、……、分配给与节点装置1000-3对应的保序客户端4000-3进行管理。从而使得在第一轮时,保序客户端4000-1将前10条数据样本提供给节点装置1000-1处理,保序客户端4000-2将第11-20条数据样本提供给节点装置1000-2处理,保序客户端4000-3将第21-30条数据样本提供给节点装置1000-3处理;在第二轮时,保序客户端4000-1将第31-40条数据样本提供给节点装置1000-1处理,保序客户端4000-2将第41-50条数据样本提供给节点装置1000-2处理,保序客户端4000-3将第51-60条数据样本提供给节点装置1000-3处理,依此类推。此外,保序客户端4000还能够保证在之后复现时,数据样本仍然能够按照这个顺序被处理。
在另一个实施例中,当所述指定数据集中的数据样本不具有时序时,每个保序客户端4000可将其管理的全部数据样本随机排序N次,并针对数据样本的原始排序和N次随机排序中的每一种排序,按照该排序为对应的节点装置1000提供各轮需要其处理的数据样本,以通过所述多个节点装置1000得到针对该种排序的与每个离散字段对应的连续特征。
作为示例,每个保序客户端4000可将其管理的全部数据样本划分为多个分片存储,每个保序客户端4000可通过将所述多个分片随机排序N次,来实现将其管理的全部数据样本随机排序N次。
图5和图6示出根据本发明示例性实施例的用于获取连续特征的分布式***的运行流程的示例。
如图5所示,所述分布式***初始运行时,指定数据集由数据保序装置2000保管,且指定数据集中的数据样本按时序排序,此时服务器3000是空的状态(图5中为了清楚表示空状态示出了0,但一般来说由于离散维度很大,只有被实际处理过的值才会存储在服务器3000中)。数据保序装置2000开始以流式的形式将数据样本提供给节点装置1000,在进行第一轮时,节点装置1000-1拿到了数据样本1,这里,数据样本1的标签值(label)是1,包含的离散字段A的字段值为a;节点装置1000-2拿到了标签值为0的数据样本2,包含的离散字段A的字段值为b;节点装置1000-3拿到了标签值为1的数据样本3,包含的离散字段A的字段值为a。
各个节点装置1000在拿到数据样本后,先从服务器3000获取关于离散字段A的历史统计结果(例如,关于字段A的不同字段值的正样本率),由于此时服务器3000为空,所以各个节点装置1000拿到的返回结果都是0,相应地,各个节点装置1000基于服务器3000返回的结果对各自的数据样本进行处理所得到的连续特征A’的特征值均为0.0,在得到特征值后,再将各自处理的离散字段A的字段值和标签值发送给服务器3000做统计,则服务器3000上会存储前三条数据样本中的离散字段A的不同字段值的统计值,其中,字段值a的出现次数(count)为2,字段值a对应的正样本数(sum)为2;字段值b的出现次数为1,字段值b对应的正样本数为0,如图6所示。
这一轮结束后,进入第二轮,如图6所示,再由数据保序装置2000按序发送接下来的数据样本给各个节点装置1000,即,数据保序装置2000分别发送数据样本4、5、6到各个节点装置1000,各个节点装置1000各自从服务器3000获取当前的关于字段A的正样本率,例如,节点装置1000-1针对数据样本4(字段A的字段值为a)以及节点装置1000-3针对数据样本6(字段A的字段值为a)从服务器3000获得的关于字段A的字段值a的正样本率为1(2÷2),相应地,节点装置1000-1基于该正样本率获取的与数据样本4的字段A的字段值对应的连续特征A’的特征值为1.0,节点装置1000-3基于该正样本率获取的与数据样本6的字段A的字段值对应的连续特征A’的特征值为1.0。节点装置1000-2针对数据样本5(字段A的字段值为b)从服务器3000获得的关于字段A的字段值b的正样本率为0(0÷1),相应地,节点装置1000-2基于该正样本率获取的与数据样本5的字段A的字段值对应的连续特征A’的特征值为0.0,并且,节点装置1000将已处理的数据样本4、5、6发送给服务器3000,以由服务器3000来更新关于字段A的字段值的正样本率。循环上面的过程最终可将全部数据样本中的离散字段A的字段值转变成对应的连续特征的特征值,然后可交由后续步骤使用,例如,交由决策树模型训练。
实际上,各个节点装置1000在第二轮从服务器3000获取关于离散字段A的历史统计结果时,服务器3000上存储的是基于数据样本1、2、3得到的关于离散字段A的历史统计结果,相应地,各个节点装置1000使用基于数据样本1、2、3得到的关于离散字段A的历史统计结果来处理数据样本4、5、6,由于数据样本1、2、3对于数据样本4、5、6来说是历史样本,因此不会存在穿越问题。虽然对于数据样本5来说,理论上应该使用基于数据样本1、2、3、4得到的关于离散字段A的历史统计结果,但在大数据场景下细微的误差是可以容忍的,并且一定程度上还可以防止过拟合。
此外,作为示例,服务器3000在对关于离散字段A的历史统计结果进行更新时,还可相应地添加衰减操作,例如,每轮接收到节点装置1000推送的数据时,可将原有的相应的统计值乘上一个衰减系数(例如,0.99),再加上本轮新接收到的相关值,例如,服务器3000第二次更新历史统计值后,服务器3000上的历史统计值会变为:与字段A的字段值a对应的sum=2*0.99+2=3.98,对应的count=2*0.99+2=3.98;与字段A的字段值b对应的sum=0*0.99+0=0,对应的count=1*0.99+1=1.99。经过衰减操作后,前3条数据样本所占的比重就缩减到了原先的0.99倍,随着更新数据量变大,越早被更新上的数据样本,占的权重比就会越低,从而能够体现离当前时间越近的数据的重要性越大,以实现对数据的时效性的体现。
此外,当需要重复进行试验(即,需要复现获取连续特征的过程)时,数据保序装置2000针对所述指定数据集可保证在下一次处理过程中,数据样本1、2、3依旧会在第一轮被处理,数据样本4、5、6依旧会在第二轮被处理,且使用基于数据样本1、2、3得到的历史统计结果被处理,这样即使在分布式环境中,还是会得到与上一次相同的结果,从而增加实验的可靠性和可解释性。
应该理解,如果数据样本包括多个需要连续化处理的离散字段,则节点装置1000在处理每条数据样本时,可同时得到与该条数据样本中的每个离散字段的字段值对应的连续特征的特征值,例如,在上面的示例中,每条数据样本中还可包括离散字段B的字段值,从而在处理一条数据样本后可得到对应的连续特征A’的一个特征值和与离散字段B对应的连续特征B’的一个特征值。相应地,服务器3000可同时维护关于每个需要连续化处理的离散字段的历史统计结果,例如,服务器3000除了维护关于离散字段A的历史统计结果,还同时维护关于离散字段B的历史统计结果。
图7示出根据本发明的示例性实施例的用于获取连续特征的方法的流程图。
参照图7,在步骤S10,多个节点装置并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征,其中,所述多个节点装置按照所述指定数据集中的数据样本的排序处理数据样本,排序越靠前的数据样本越早被节点装置处理,且不同节点装置处理的数据样本不同。
具体地,步骤S10包括:针对每个节点装置,该节点装置获取本轮需要其处理的数据样本;该节点装置针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。
作为示例,根据本发明的示例性实施例的用于获取连续特征的方法还可包括:数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置,以为所述多个节点装置提供各轮需要其处理的数据样本。
作为示例,当所述指定数据集中的数据样本具有时序时,所述指定数据集中的数据样本按时序被排序,其中,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤可包括:数据保序装置按时序为所述多个节点装置提供各轮需要其处理的数据样本,其中,时序越靠前的数据样本越早被提供给所述多个节点装置处理。
作为示例,当所述指定数据集中的数据样本不具有时序时,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤可包括:数据保序装置将所述指定数据集中的数据样本随机排序N次,并针对所述指定数据集的原始排序和N次随机排序中的每一种排序,按照该排序为所述多个节点装置提供各轮需要其处理的数据样本,以通过所述多个节点装置得到针对该种排序的与每个离散字段对应的连续特征,其中,N为大于或等于0的整数。
作为示例,根据本发明的示例性实施例的用于获取连续特征的方法还可包括:服务器维护关于每个需要连续化处理的离散字段的历史统计结果。
作为示例,所述数据样本可包括所述至少一个离散字段的字段值和标签值,其中,关于每个需要连续化处理的离散字段的历史统计结果可为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果。
作为示例,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,服务器维护关于每个需要连续化处理的离散字段的历史统计结果的步骤可包括:服务器当接收到节点装置发送的数据样本时,从已存储的数据样本中删除最先存储的满足预设条件的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。
作为示例,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,服务器维护关于每个需要连续化处理的离散字段的历史统计结果的步骤可包括:服务器当接收到节点装置发送的数据样本时,对当前的关于每个需要连续化处理的离散字段的历史统计结果进行衰减处理,并基于本次接收的数据样本,对衰减处理后的历史统计结果进行更新。
作为示例,根据本发明的示例性实施例的用于获取连续特征的方法还可包括:数据保序装置将所述指定数据集的数据样本划分为多个分片存储,其中,数据保序装置将所述指定数据集中的数据样本随机排序N次的步骤可包括:数据保序装置将所述多个分片随机排序N次。
作为示例,根据本发明的示例性实施例的用于获取连续特征的方法还可包括:数据保序装置保存所述多个分片的N次随机排序结果,以便后续复现获取连续特征的过程。
作为示例,数据保序装置可包括多个保序客户端,其中,所述多个保序客户端与所述多个节点装置一一对应,并且,节点装置与对应的保序客户端集成为一体,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤可包括:针对每个保序客户端,该保序客户端将所述指定数据集中的部分数据样本按照排序以流式的形式提供给对应的节点装置,以为对应的节点装置提供各轮需要其处理的数据样本,其中,不同保序客户端对应不同的数据样本。
应该理解,上述方法涉及的步骤可由之前描述的分布式***中的节点装置1000、数据保序装置2000、以及服务器3000来执行,上述步骤所涉及的操作已经参照图1至图6进行了详细描述,这里将不再赘述相关细节。
应理解,根据本发明示例性实施例的分布式***中的节点装置、数据保序装置、以及服务器或组成它们的装置或单元等组成部分可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些组成部分可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。当它们以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。此外,这些组成部分所实现的一个或多个功能也可由物理实体设备(例如,计算机器等)中的组件来统一执行。
应注意,根据本发明示例性实施例的分布式***可完全依赖计算机程序的运行来实现相应的功能,即,各个组成部分在计算机程序的功能架构中与各步骤相应,使得整个***通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。
以上描述了本发明的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本发明不限于所披露的各示例性实施例。在不偏离本发明的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本发明的保护范围应该以权利要求的范围为准。

Claims (22)

1.一种用于获取连续特征的分布式***,其中,所述分布式***包括:
多个节点装置,被配置为并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征;
其中,所述多个节点装置按照所述指定数据集中的数据样本的排序获取每轮需要其处理的数据样本,排序越靠前的数据样本越早被节点装置获取,且不同节点装置获取的数据样本不同,
其中,每个节点装置针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。
2.如权利要求1所述的分布式***,其中,所述分布式***还包括:
数据保序装置,被配置为将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置,以为所述多个节点装置提供各轮需要其处理的数据样本。
3.如权利要求2所述的分布式***,其中,当所述指定数据集中的数据样本具有时序时,所述指定数据集中的数据样本按时序被排序,
其中,数据保序装置按时序为所述多个节点装置提供各轮需要其处理的数据样本,其中,时序越靠前的数据样本越早被提供给所述多个节点装置处理。
4.如权利要求2所述的分布式***,其中,当所述指定数据集中的数据样本不具有时序时,数据保序装置将所述指定数据集中的数据样本随机排序N次,并针对所述指定数据集的原始排序和N次随机排序中的每一种排序,按照该排序为所述多个节点装置提供各轮需要其处理的数据样本,以通过所述多个节点装置得到针对该种排序的与每个离散字段对应的连续特征,
其中,N为大于或等于0的整数。
5.如权利要求1所述的分布式***,其中,所述分布式***还包括:
服务器,被配置为维护关于每个需要连续化处理的离散字段的历史统计结果。
6.如权利要求5所述的分布式***,其中,所述数据样本包括所述至少一个离散字段的字段值和标签值,
其中,关于每个需要连续化处理的离散字段的历史统计结果为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果。
7.如权利要求6所述的分布式***,其中,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,
服务器当接收到节点装置发送的数据样本时,从已存储的数据样本中删除最先存储的满足预设条件的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。
8.如权利要求6所述的分布式***,其中,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,
服务器当接收到节点装置发送的数据样本时,对当前的关于每个需要连续化处理的离散字段的历史统计结果进行衰减处理,并基于本次接收的数据样本,对衰减处理后的历史统计结果进行更新。
9.如权利要求4所述的分布式***,其中,数据保序装置将所述指定数据集的数据样本划分为多个分片存储,
数据保序装置通过将所述多个分片随机排序N次,来实现将所述指定数据集中的数据样本随机排序N次。
10.如权利要求9所述的分布式***,其中,数据保序装置还被配置为保存所述多个分片的N次随机排序结果,以便后续复现获取连续特征的过程。
11.如权利要求2所述的分布式***,其中,数据保序装置包括多个保序客户端,其中,所述多个保序客户端与所述多个节点装置一一对应,并且,节点装置与对应的保序客户端集成为一体,
其中,每个保序客户端被配置为将所述指定数据集中的部分数据样本按照排序以流式的形式提供给对应的节点装置,以为对应的节点装置提供各轮需要其处理的数据样本,其中,不同保序客户端对应不同的数据样本。
12.一种用于获取连续特征的方法,其中,所述方法包括:
多个节点装置并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理,以得到与每个离散字段对应的连续特征,其中,所述多个节点装置按照所述指定数据集中的数据样本的排序处理数据样本,排序越靠前的数据样本越早被节点装置处理,且不同节点装置处理的数据样本不同,
其中,所述多个节点装置并行地对指定数据集的数据样本中的至少一个离散字段进行连续化处理的步骤包括:
针对每个节点装置,该节点装置获取本轮需要其处理的数据样本;
该节点装置针对每一个需要连续化处理的离散字段,基于本轮从服务器获取的关于该离散字段的历史统计结果,获取与本轮需要其处理的数据样本中的该离散字段的字段值对应的连续特征的特征值,并将所述字段值发送到服务器,以由服务器基于所述字段值更新关于该离散字段的历史统计结果。
13.如权利要求12所述的方法,其中,所述方法还包括:
数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置,以为所述多个节点装置提供各轮需要其处理的数据样本。
14.如权利要求13所述的方法,其中,当所述指定数据集中的数据样本具有时序时,所述指定数据集中的数据样本按时序被排序,
其中,数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤包括:
数据保序装置按时序为所述多个节点装置提供各轮需要其处理的数据样本,其中,时序越靠前的数据样本越早被提供给所述多个节点装置处理。
15.如权利要求13所述的方法,其中,当所述指定数据集中的数据样本不具有时序时,
数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤包括:
数据保序装置将所述指定数据集中的数据样本随机排序N次,并针对所述指定数据集的原始排序和N次随机排序中的每一种排序,按照该排序为所述多个节点装置提供各轮需要其处理的数据样本,以通过所述多个节点装置得到针对该种排序的与每个离散字段对应的连续特征,
其中,N为大于或等于0的整数。
16.如权利要求12所述的方法,其中,所述方法还包括:
服务器维护关于每个需要连续化处理的离散字段的历史统计结果。
17.如权利要求16所述的方法,其中,所述数据样本包括所述至少一个离散字段的字段值和标签值,
其中,关于每个需要连续化处理的离散字段的历史统计结果为:关于该离散字段的不同字段值及与其对应的标签值的历史统计结果。
18.如权利要求17所述的方法,其中,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,
服务器维护关于每个需要连续化处理的离散字段的历史统计结果的步骤包括:
服务器当接收到节点装置发送的数据样本时,从已存储的数据样本中删除最先存储的满足预设条件的数据样本,并将本次接收的数据样本进行存储,以基于更新后的数据样本计算关于每个需要连续化处理的离散字段的历史统计结果。
19.如权利要求17所述的方法,其中,每个节点装置获取与本轮需要其处理的数据样本中的离散字段的字段值对应的连续特征的特征值,并将所述数据样本发送到服务器,
服务器维护关于每个需要连续化处理的离散字段的历史统计结果的步骤包括:
服务器当接收到节点装置发送的数据样本时,对当前的关于每个需要连续化处理的离散字段的历史统计结果进行衰减处理,并基于本次接收的数据样本,对衰减处理后的历史统计结果进行更新。
20.如权利要求15所述的方法,其中,所述方法还包括:数据保序装置将所述指定数据集的数据样本划分为多个分片存储,
其中,数据保序装置将所述指定数据集中的数据样本随机排序N次的步骤包括:
数据保序装置将所述多个分片随机排序N次。
21.如权利要求20所述的方法,其中,所述方法还包括:
数据保序装置保存所述多个分片的N次随机排序结果,以便后续复现获取连续特征的过程。
22.如权利要求13所述的方法,其中,数据保序装置包括多个保序客户端,其中,所述多个保序客户端与所述多个节点装置一一对应,并且,节点装置与对应的保序客户端集成为一体,
数据保序装置将所述指定数据集中的数据样本按照排序以流式的形式提供给所述多个节点装置的步骤包括:
针对每个保序客户端,该保序客户端将所述指定数据集中的部分数据样本按照排序以流式的形式提供给对应的节点装置,以为对应的节点装置提供各轮需要其处理的数据样本,其中,不同保序客户端对应不同的数据样本。
CN202010229130.8A 2020-03-27 2020-03-27 用于获取连续特征的分布式***及其方法 Active CN111447278B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010229130.8A CN111447278B (zh) 2020-03-27 2020-03-27 用于获取连续特征的分布式***及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010229130.8A CN111447278B (zh) 2020-03-27 2020-03-27 用于获取连续特征的分布式***及其方法

Publications (2)

Publication Number Publication Date
CN111447278A CN111447278A (zh) 2020-07-24
CN111447278B true CN111447278B (zh) 2021-06-08

Family

ID=71650913

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010229130.8A Active CN111447278B (zh) 2020-03-27 2020-03-27 用于获取连续特征的分布式***及其方法

Country Status (1)

Country Link
CN (1) CN111447278B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102479217A (zh) * 2010-11-23 2012-05-30 腾讯科技(深圳)有限公司 一种分布式数据仓库中实现计算均衡的方法及装置
JP5529792B2 (ja) * 2011-03-31 2014-06-25 株式会社デンソーアイティーラボラトリ 学習装置、推論装置、学習方法、及び学習プログラム
CN106951425A (zh) * 2016-01-07 2017-07-14 阿里巴巴集团控股有限公司 一种映射方法和设备
CN107590263A (zh) * 2017-09-22 2018-01-16 辽宁工程技术大学 一种基于多变量决策树模型的分布式大数据分类方法
CN107729353A (zh) * 2017-08-30 2018-02-23 第四范式(北京)技术有限公司 用于执行机器学习的分布式***及其方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102479217A (zh) * 2010-11-23 2012-05-30 腾讯科技(深圳)有限公司 一种分布式数据仓库中实现计算均衡的方法及装置
JP5529792B2 (ja) * 2011-03-31 2014-06-25 株式会社デンソーアイティーラボラトリ 学習装置、推論装置、学習方法、及び学習プログラム
CN106951425A (zh) * 2016-01-07 2017-07-14 阿里巴巴集团控股有限公司 一种映射方法和设备
CN107729353A (zh) * 2017-08-30 2018-02-23 第四范式(北京)技术有限公司 用于执行机器学习的分布式***及其方法
CN107590263A (zh) * 2017-09-22 2018-01-16 辽宁工程技术大学 一种基于多变量决策树模型的分布式大数据分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Cloud-enabling Sequence Alignment with Hadoop MapReduce: A Performance Analysis;Krithika Arumugam; Yu Shyang Tan; Bu Sung Lee; Rajaraman Kanagas;《Proceedings of 2012 4th International Conference on Bioinformatics and Biomedical Technology》;20120216;第2-3节 *
并行数据挖掘算法综述;刘华元; 袁琴琴; 王保保;《电子科技》;20060115;第1-4节 *

Also Published As

Publication number Publication date
CN111447278A (zh) 2020-07-24

Similar Documents

Publication Publication Date Title
CN108551586B (zh) 多用户360度视频流服务器端码率自适应分配方法及***
KR101781339B1 (ko) 클라이언트를 갱신하기 위한 방법 및 디바이스
CN104205770A (zh) 具有请求取消能力的改善的dash客户端和接收机
CN111159436A (zh) 一种推荐多媒体内容的方法、装置及计算设备
CN109391680B (zh) 一种定时任务数据处理方法、装置及***
US20020101932A1 (en) Method and apparatus for encoding information using multiple passes and decoding in a single pass
CN114327857A (zh) 操作数据处理方法、装置、计算机设备和存储介质
AU2002234168A1 (en) Method and apparatus for encoding information using multiple passes and decoding in a single pass
CN111447278B (zh) 用于获取连续特征的分布式***及其方法
EP2997715B1 (en) Transmitting information based on reading speed
WO2013122768A1 (en) Multi-layer rate control
CN108664579A (zh) 海量数据实时筛选分析方法、***及存储介质
CN114338386B (zh) 一种网络的配置方法、装置、电子设备及存储介质
CN115941972A (zh) 图像传输方法、装置、设备及存储介质
CN107733806B (zh) 一种数据处理方法及装置
US20120102086A1 (en) Processing node selection system, information processing node, processing execution method and program
US10819622B2 (en) Batch checkpointing for inter-stream messaging system
CN113743040A (zh) 测试方法、装置、电子设备以及可读存储介质
US10701413B2 (en) Real-time sub-second download and transcode of a video stream
EP4391541A1 (en) Motion estimation method and apparatus in encoding process, device, storage medium, and program product
CN117332881B (zh) 分布式训练方法及电子设备
CN113595829B (zh) 压力测试方法、装置、电子设备及存储介质
US20230155956A1 (en) Using multi-phase constraint programming to assign resource guarantees of consumers to hosts
CN116483537A (zh) 一种业务***排序方法和相关装置
CN115907037A (zh) 机器学习模型压缩

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant