掌桥专利:专业的专利平台
掌桥专利
首页

数据处理方法、装置和系统

文献发布时间:2023-06-19 10:58:46


数据处理方法、装置和系统

技术领域

本发明涉及数据处理领域,具体而言,涉及一种数据处理方法、装置和系统。

背景技术

在建立供深度学习模型使用的数据集时,除了保证采集的数据量足够大,还要通过主动学习挖掘边界数据,保证学习模型具有良好非泛化识别能力。

常规主动学习采用人机异步的工作流程,该工作流程包括:(A)机器根据当前的所有标注数据训练机器学习模型,学习模型在未标注的数据池上做预测,根据某种准则采集边界数据;(B)标注员对机器返回的边界数据做标注、然后将标注好的数据返回给机器。通常主动学习要经历(A)-(B)-(A)-(B)-...这样的多轮循环,每一轮循环的(A)和(B)都要相互等待。

更具体的,常规主动学习采用“机器训练学习模型、采集边界数据+人工标注”这种人机迭代的方式来挖掘数据,在机器工作时,标注员处于等待状态,而在人工标注阶段,机器同样需要等待,这种人机相互等待的异步工作方式大大降低数据挖掘效率,尤其在建立有成百上千类别的大规模数据集时,效率很低。

针对相关技术中主动学习时采用人机异步的工作流程,导致效率较低的问题,目前尚未提出有效的解决方案。

发明内容

本发明实施例提供了一种数据处理方法、装置和系统,以至少解决相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

根据本发明实施例的一个方面,提供了一种数据处理方法,包括:根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练。

根据本发明实施例的另一方面,还提供了一种数据处理方法,包括:对第一标注对象进行标注,得到第一已标注对象,其中,第一标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,数据池包括多组数据;基于第一已标注对象更新训练集,得到第一训练集;基于第一训练集继续对学习模型进行训练;其中,在对第一标注对象进行标注的过程中,使用第二已标注对象更新训练集,得到第二训练集,并使用第二训练集对学习模型进行同步训练,第二已标注对象的标注时间早于第一已标注对象的标注时间。

根据本发明实施例的另一方面,还提供了一种数据处理系统,包括:数据池,包括多组数据;标注装置,用于对第一标注对象进行标注,得到第一已标注对象,并将第一已标注对象返回至机器学习装置,以更新机器学习装置的训练集,得到第一训练集,其中,第一标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,数据池包括多组数据;机器学习装置,用于基于第一训练集继续对学习模型进行训练;其中,机器学习装置还用于在对第一标注对象进行标注的过程中,使用第二已标注对象更新训练集,得到第二训练集,并使用第二训练集对学习模型进行同步训练,第二已标注对象的标注时间早于第一已标注对象的标注时间。

根据本发明实施例的另一方面,还提供了一种数据处理装置,包括:第一训练模块,用于根据训练集中的训练数据对学习模型进行训练;预测模块,用于使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;标注模块,用于对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;更新模块,用于基于第一已标注对象更新训练集;第二训练模块,用于基于更新后的训练集继续对学习模型进行训练。

根据本发明实施例的另一方面,还提供了一种终端,包括:处理器;以及存储器,与处理器连接,用于为处理器提供处理以下处理步骤的指令:根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练。基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练。

在本发明实施例中,根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练;从而能够使数据的标记和学习模型的训练同步进行,便于高效建立大规模数据集,降低学习模型训练的总体时长,提高了对学习模型进行训练的效果,解决了相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1示出了一种用于实现数据处理方法的计算设备的硬件结构框图;

图2是根据本申请实施例1的一种数据处理方法的流程图;

图3a是根据本申请实施例1的一种数据处理方法的示意图;

图3b是根据本申请实施例1的一种数据处理方法的时序图;

图4是根据本申请实施例1的一种数据处理方法的结构示意图;

图5是根据本申请是实施例2的一种数据处理方法的流程图;

图6是根据本申请实施例3的一种数据处理装置的示意图;

图7是根据本申请实施例4的一种数据处理装置的示意图;

图8是根据本申请实施例4的一种数据处理系统的示意图;

图9是根据本申请实施例6的一种计算设备的结构框图;

图10是根据本申请实施例8的一种数据处理方法的流程图;以及

图11是根据本申请实施例9的一种数据处理装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:

主动学习:一种机器学习领域的数据挖掘步骤,首先采集机器学习模型(以下简称学习模型)预测概率不高的样本,然后对这些样本进行人工标注,最后将标注好的样本补充到训练集重新训练学习模型,多次循环上述流程以提高学习模型的识别能力。

精确率:简称P,即precision,是一种学习模型评测指标,用于表示学习模型对测试集数据进行预测,预测结果为正且实际标签为正的数据占所有预测结果为正的数据的百分比。

召回率:简称R,即recall,是一种学习模型评测指标,用于表示学习模型对测试集数据进行预测,预测结果为正且实际标签为正的数据占所有实际标签为正的数据的百分比。

数据池:一个含有大量未标注数据的集合(一般含有百万量级数据),主动学习就是从该数据集中选取边界数据进行标注。

实施例1

根据本发明实施例,还提供了一种数据处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请实施例一所提供的方法实施例可以在移动终端、计算设备或者类似的运算装置中执行。图1示出了一种用于实现数据处理方法的计算设备的硬件结构框图。如图1所示,计算设备10可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算设备10中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。

存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的数据处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据处理方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输模块106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算设备10的通信供应商提供的无线网络。在一个实例中,传输模块106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输模块106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算设备10的用户界面进行交互。

此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备中的部件的类型。

在上述运行环境下,本申请提供了如图2所示的数据处理方法。图2是根据本申请实施例1的一种数据处理方法的流程图。

步骤S21,根据训练集中的训练数据对学习模型进行训练。

具体的,上述训练集中的训练数据是已经进行过标注的数据,上述学习模型是待训练的机器学习模型。训练学习模型的过程实际是寻找使损失函数取值最小的模型参数,从而使训练的学习模型能够对未标注的数据进行准确的预测。

学习模型的训练通常需要进行多次,本步骤中对学习模型的训练用于表示至少三次以上的训练过程。

步骤S23,使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组。

上述数据池中包含大量的未标注数据,例如,可以包括10万数据集的未标注数据。上述步骤中,将数据池中的未标注数据进行分组,每组的未标注数据的数量可以相同。

在一种可选的实施例中,可以对数据池中未标注的数据分组后进行标号,得到1……N组的未标注数据,在学习模型进行m次训练之后,从数据池中选择第m组(0

学习模型对数据池中的未标注数据进行预测,可以得到对每个未标注数据的得分,可以根据得分确定最终的预测结果,例如,如果学习模型对某个未标注数据的得分为X,且X大于预设的分数阈值,则确定对该未标注数据的预测结果为正,否则确定对该未标注数据的预测结果为负。

根据预测结果从至少一组未标注数据中采集第一标注对象,其中,预测结果包括学习模型对每个未标注数据进行预测得到的得分,上述步骤可以是根据预测结果的得分,从中选择得分符合预设规则的未标注数据,例如:得分大于预设值、得分小于预设值等。

从至少一组未标注数据中所采集的第一标注对象可以通过预设的接口提供给标注公司,由标注公司的标注师对第一标注对象进行标注。

步骤S25,对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练。

在根据预测结果从至少一组未标注数据中采集第一标注对象之后,输出第一标注对象输出,以对第一标注对象进行标注,得到的第一已标注对象。

仍以标注使通过接口获得第一标注对象进行标注为例,可以为标注师提供标注界面,使标注师可以在标注界面中对第一标注对象进行标注,在完成标注后,得到的已标记数据可以通过接口传输回机器学习装置。

需要注意的是,在对第一标注对象进行标注的过程中,对学习模型的训练并未停止,而是使用第二已标注对象对训练集进行更新,并使用更新后的数据集对学习模型进行训练。上述第二标注对象的标注过程早于对第一标注对象的标注过程。且第二标注对象的标注可以是在根据训练集中的训练数据对学习模型进行训练以及使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象这两个步骤的过程中进行的。

图3a是根据本申请实施例1的一种数据处理方法的示意图,结合图3b所示,标注装置用于对机器学习装置输出的待标注对象进行标注,在标注装置对待标注对象进行标注的过程中,机器学习装置获取标注装置上一次标注得到的标注结果对学习模型进行训练,并判断经过此次训练后的学习模型的泛化能力是否达标,如果达标则停止预测,如果不达标,则对数据池中至少一组未标注对象进行预测,以向标注装置输出待标注对象。

图3b是根据本申请实施例1的一种数据处理方法的时序图,结合图3b所示,图中示出了7个阶段的训练过程,以第5个阶段为例。在第5个阶段通过训练集对学习模型进行训练,此时的训练集包括Data0-Data1,然后对数据池中的第3组未标注数据进行预测,并从中提取边界样本(即上述第一标注对象)。在这一过程中,标注也在同步进行,具体的,在这一阶段,对第四阶段提取的边界样本Data2同步进行标注,得到Data2的标注结果,即上述第二已标注对象。

由于第5阶段的训练和对Data2的标注是同步进行的,因此在第5个阶段结束后,得到了第一标注对象和第二已标注对象,机器学习装置和标注装置将这两个数据进行交换,即机器学习装置将第一标注对象给标注装置,标注装置将第二已标注对象给机器学习装置。

在交换数据之后,可以对第一标注对象进行标注,得到第一已标注对象Data3,在这一过程中,机器学习装置可以根据第二已标注对象更新数据集,进行第6阶段的训练,此时的训练集包括Data0-Data2。

在对第一标注对象标注结束后,进行下一次的数据交换,将第一已标注对象Data3给机器学习装置,机器学习装置使用第一已标注对象Data3更新训练集,并使用更新后的训练集Data0-Data3进行训练。

步骤S27,基于第一已标注对象更新训练集。

上述步骤可以是将第一已标注对象加入训练集,更新后的训练集包括更多的训练数据。

步骤S29,基于更新后的训练集继续对学习模型进行训练。

使用更新后的训练集继续对学习模型进行训练,从而启动下一轮训练流程。

图4是根据本申请实施例1的一种数据处理方法的结构示意图,结合图4所示,该方案中,由机器学习装置进行模型的训练,并通过对一组未标注数据进行预测得到此次训练对应的边界样本(即上述第一标注对象),与此同时,由标注装置对未标注的数据进行标注。在机器学习装置完成边界样本的采样,标注装置完成此次的标准后,二者而且进行数据的交换。完成数据交换后,机器学习装置将标注装置新标注的数据加入训练集继续进行训练,标注装置对接收到的边界样本继续进行标注。

在一种可选的实施例中,上述方案可以通过多GPU卡并行训练和预测,利用pytorch深度学习框架实现多GPU卡的并行训练和预测,以提高机器运算速度;还可以选用其它主流深度学习框架实现多GPU并行计算,例如TensorFlow,caffe等,同时也可以通过多机分布式计算提高学习模型的训练、预测时间。

学习模型的主动学习通常采取标记和训练异步进行的工作流程,学习效率较低,本申请上述实施例提出的方案根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练;从而能够使数据的标记和学习模型的训练同步进行,便于高效建立大规模数据集,降低学习模型训练的总体时长,提高了对学习模型进行训练的效果,解决了相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

作为一种可选的实施例,在使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测之后,上述方法还包括:使用泛化能力验证数据集验证此次训练得到的学习模型的泛化能力,得到此次训练得到的学习模型的泛化能力指标;当泛化能力指标满足预设条件时,停止学习模型的训练;并当泛化能力指标不满足预设条件时,进入根据预测结果从至少一组未标注数据中采集第一标注对象的步骤。

具体的,上述泛化能力指标可以包括精确率和/或召回率。上述泛化能力验证数据集包括多个已标注的数据,该数据集可以从数据池中进行随机采样得到。使用泛化能力验证数据集验证训练得到的学习模型,即为使用训练得到的学习模型对泛化能力验证数据集中的数据进行预测。

在一种可选的实施例中,上述泛化能力指标为精确率,使用训练得到的学习模型对泛化能力验证数据集中的数据进行预测后,将预测结果与泛化能力验证数据的标注结果进行比对,以确定学习模型的精确率,再将学习模型的精确率与预设的精确率阈值进行比对,当学习模型的精确率高于预设的精确率阈值时,确定泛化能力指标满足预设条件。

在另一种可选的实施例中,上述泛化能力指标为召回率,使用训练得到的学习模型对泛化能力验证数据集中的数据进行预测后,将预测结果与泛化能力验证数据的标注结果进行比对,以确定学习模型的召回率,再将学习模型的召回率与预设的召回率阈值进行比对,当学习模型的召回率高于预设的召回率阈值时,确定泛化能力指标满足预设条件。

在又一种可选的实施例中,上述泛化能力指标为精确率和召回率共同构成的PR曲线,如果RP曲线符合用户期望,则确定泛化能力指标满足预设条件。

作为一种可选的实施例,在第一次对学习模型进行训练时,训练集包括预先标注好的初始数据,使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象。

在第一次对学习模型进行训练时,使用的训练数据是预先标注好的训练数据,在第一次训练完成后,对第一次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果采集待标注的第二标注对象。

仍结合图3b所示,图中的第1阶段表示第一次训练和第一次对未标注数据进行预测的过程。第一次训练是在预先标记的有标签的数据Data0上进行学习模型的训练,然后在数据池中的第一组未标注数据上进行预测,得到此次的边界样本,即第二标注对象。

作为一种可选的实施例,在使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象之后,上述方法还包括:对第二标注对象中的第一部分数据进行标注得到第三已标注对象,其中,第二标注对象被分为两部分,第一部分数据为两部分中的任意一部分;将第三已标注对象加入训练集,使用训练集对学习模型进行第二次训练,其中,在使用训练集对学习模型进行第二次训练的过程中,对第二标注对象中的第二部分数据进行标注。

在上述步骤中,在得到第二标注对象后,将第二标注对象分为两部分,先对第一部分进行标注,再对第一部分进行标注的过程中,由于机器学习装置还没有新的训练数据,因此机器学习装置处于等待状态。

在对第二标注对象的第一部分数据进行标注之后,将标注得到的第三已标注对象加入训练集,以对训练集进行更新。机器学习装置在更新训练集后,使用更新后的训练集对学习模型进行第二次训练,且在这一过程中,继续对第二标注对象中未标注的另一部分数据进行标注。

在一种可选的实施例中,仍结合图3b所示,在阶段3中,机器学习装置处于等待状态。标注装置对第二标注对象Data1的第一部分Data1/2进行标注,第二标注对象可以为600-1000个,第一部分数据可以为300-500个。标注完成后,机器学习装置使用标注Data1/2得到的第三已标注数据更新训练集,更新后的训练集中的数据为Data0-1/2。机器学习装置使用更新后的数据集对学习模型进行训练,同时,标注装置对第二标注对象中剩余的第二部分数据进行标注。

作为一种可选的实施例,在使用第一次训练得到的学习模型对至少一组未标注数据进行预测之后,上述方法还包括:获取泛化能力验证数据集,其中,获取泛化能力验证数据集的步骤包括:根据预测结果从一组未标注数据中选择数据构成泛化能力验证数据集。在上述步骤中,在第一次训练后获取泛化能力验证数据集。

仍结合图3b所示,图3b中第2阶段表示根据在第一次训练得到的学习模型对数据池中的至少一组未标注数据进行预测的结果,采集泛化能力验证数据集。在这一阶段,机器学习装置也处于等待状态。在获得该泛化能力验证数据集之后,每次对训练模型进行训练后,都使用泛化能力验证数据集对训练后的模型的泛化能力进行验证,以确定是否需要继续进行训练。

作为一种可选的实施例,根据预测结果从一组未标注数据中选择数据构成泛化能力验证数据集,包括:根据预测结果中的得分将预测结果分为正样本数据、正负样本混合数据以及负样本数据;分别从正样本数据、正负样本混合数据以及负样本数据中抽取指定数量的数据,构成泛化能力验证数据集。

具体的,预测结果包括学习模块对每个数据预测的得分,可以根据数据的得分将数据分为正样本数据、负样本数据以及正负样本混合数据。在一种可选的实施例中,可以设置两个分数阈值S1和S2,S1

从正样本数据、正负样本混合数据以及负样本数据中抽取数据时的指定数量,可以是预先设定的数量,也可以从每种数据中抽取N/3的数据,其中,N用于表示泛化能力验证数据集所需的总数据量。N可以取值在300至1000之间,S1可以取值在0.3至0.5范围内,S2可以取值在0.8至0.9范围内。

上述方案选择泛化能力验证数据集的策略可以保证无论数据池的正负样本量是否均匀,泛化能力验证数据集的正负样本量都比较均衡,从而使得每轮模型验证时的PR曲线更能够体现学习模型的质量。

作为一种可选的实施例,根据预测结果从至少一组未标注数据中采集第一标注对象,包括:获取训练集中的正样本中心和负样本中心;根据预测结果获取至少一组未标注数据与正样本中心的距离和与负样本中心的距离的加权值;根据加权值确定第一标注对象。

具体的,上述正样本中心可以根据训练集中的正样本数据得到,负样本中心可以根据训练集中的负样本数据得到。训练集中的数据均为已标注的数据,因此可以将训练集中的正样本数据的数据特征进行聚类,得到正样本中心,并可以将训练集中的负样本数据的数据特征进行聚类,得到负样本中心。上述数据特征可以是计算机视觉领域手工制作的(hand-crafted)SIFT(Scale-invariant feature transform,尺度不变特征变换)、HOG(Histogram of Oriented Gradient,方向梯度直方图)等特征,或者学习模型的某一层输出的特征。

正样本中心实际可以是正样本数据的特征向量的聚类中心,负样本中心实际可以是负样本数据的特征向量的聚类中心。未标注数据与正样本的距离,可以是未标注数据的特征向量与正样本中心的欧式距离或余弦距离。未标注数据与负样本的距离,可以是未标注数据的特征向量与负样本中心的欧式距离或余弦距离。未标注数据的特征向量可以是学习模型在对未标注数据进行预测的过程中,倒数第二个全连接层输出的特征向量。

在获得至少一组未标注数据与正样本中心的距离和与负样本中心的距离之后,可以对两个距离进行加权。在一种可选的实施例中,可以通过如下公式计算上述加权值:max_i(alpha*d(f+,fi)+beta*d(f-,fi)),其中,f+用于表示正样本中心,f-用于表示负样本中心,fi用于表示第i条数据的特征向量,d()是特征向量的某种距离度量,例如欧式距离,余弦距离等;alpha和beta表示权重系数。以上公式表示的准则即选取那些和正负样本中心距离都较远的未标注数据作为第一标注对象,即边界样本。

在得到未标注数据对应的加权值后,可以将未标注数据按照加权值由高至低的顺序进行排序,并在排序后的未标注数据中按照由先至后的顺序选择此次训练对应的边界样本,即第一标注对象。

需要说明的是,为了保证机器学习装置在训练的过程中,标注装置一直具有可以标注的数据,因此需要保证上述的预设数量足够的大。在一种可选的实施例中,可以设置上述预设数量为300,标注一个样本大致约为3秒钟,标注完这些数据需要15分钟,而机器学习装置一轮的学习需要17分钟,因此可以保证训练和标注可同步的可行性。

还需要说明的是,当机器学习装置结束运行,且标注装置已对选择出的第一标注对象标注完成,则可以将后续未标注的第一标注对象队列删除。

如果使用不确定采样(Uncertainty Sampling)准则来采集边界样本,即会选择预测得分最低的一批未标注数据作为边界样本进行标注。该方式的缺点是,在初始数据比较少时,训练出来的深度学习模型的预测得分不够准确,依据该预测得分难以采集到真实的边界样本。而采用本申请上述方案,能够准确的获取到真实的边界样本,而不受学习模型的预测准确度的影响。

作为一种可选的实时,获取训练集中的正样本中心,包括:使用学习模型对训练集中的正样本进行预测;提取学习模型的倒数第二个全连接层对训练集中的每条数据输出的特征向量;确定正样本在每个维度上的特征向量的均值为正样本中心。

上述方案中,将正样本的算术平均特征作为正样本中心,获取正样本的算术平均特征可以为,利用当前学习模型对训练集数据做预测,提取每条数据的倒数第二个全连接层特征向量,然后将训练集所有正样本的特征向量的每个维度均做算术平均得到f+,对训练集负样本做同样操作得到f-。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

根据本发明实施例,还提供了一种数据处理方法,图5是根据本申请是实施例2的一种数据处理方法的流程图,如图5所示,该方法包括:

步骤S51,对第一标注对象进行标注,得到第一已标注对象,其中,第一标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,数据池包括多组数据。

上述标注的过程是确定数据的样本类型的过程。在上述方案中,标注的对象,即第一标注对象,是学习模型对数据池中的至少一组未标注数据进行预测后,根据预测结果采集得到的边界数据。

具体的,上述边界数据用于表示学习模型对其预测准确度较低的数据。学习模型的训练通常需要进行多次,上述已训练完成的学习模型指的是完成上次训练的学习模型。

上述数据池中包含大量的未标注数据,例如,可以包括10万数据集的未标注数据。上述步骤中,将数据池中的未标注数据进行分组,每组的未标注数据的数量可以相同。

在一种可选的实施例中,可以对数据池中未标注的数据分组后进行标号,得到1……N组的未标注数据,在学习模型进行m次训练之后,从数据池中选择第m组(0

学习模型对数据池中的未标注数据进行预测,可以得到对每个未标注数据的得分,可以根据得分确定最终的预测结果,例如,如果学习模型对某个未标注数据的得分为X,且X大于预设的分数阈值,则确定对该未标注数据的预测结果为正,否则确定对该未标注数据的预测结果为负。

步骤S53,基于第一已标注对象更新训练集,得到第一训练集。

上述步骤可以是将第一已标注对象加入训练集,更新后的训练集包括更多的训练数据。

步骤S55,基于第一训练集继续对学习模型进行训练;其中,在对第一标注对象进行标注的过程中,使用第二已标注对象更新训练集,得到第二训练集,并使用第二训练集对学习模型进行同步训练,第二已标注对象的标注时间早于第一已标注对象的标注时间。

在上述方案中,在对第一标注对象进行标注的过程中,对学习模型的训练并未停止,而是使用第二已标注对象对训练集进行更新,并使用更新后的数据集对学习模型进行训练。上述第二标注对象的标注过程早于对第一标注对象的标注过程。且第二标注对象的标注可以是在根据训练集中的训练数据对学习模型进行训练以及使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象这两个步骤的过程中进行的。

由此可知,本申请上述实施例提出的方案对第一标注对象进行标注,得到第一已标注对象,其中,第一标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,数据池包括多组数据;基于第一已标注对象更新训练集,得到第一训练集;基于第一训练集继续对学习模型进行训练;其中,在对第一标注对象进行标注的过程中,使用第二已标注对象更新训练集,得到第二训练集,并使用第二训练集对学习模型进行同步训练,第二已标注对象的标注时间早于第一已标注对象的标注时间。通过上述方案能够使数据的标记和学习模型的训练同步进行,便于高效建立大规模数据集,降低学习模型训练的总体时长,提高了对学习模型进行训练的效果,解决了相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

本申请上述实施例2的方案可以与实施例1中的任意方案进行结合,以形成新的方案,此处不再赘述。

实施例3

根据本发明实施例,还提供了一种用于实施上述实施例1中的数据处理方法的数据处理装置,图6是根据本申请实施例3的一种数据处理装置的示意图,如图6所示,该装置600包括:

第一训练模块602,用于根据训练集中的训练数据对学习模型进行训练。

预测模块604,用于使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组。

标注模块606,用于对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练。

更新模块608,用于基于第一已标注对象更新训练集。

第二训练模块6010,用于基于更新后的训练集继续对学习模型进行训练。

此处需要说明的是,上述第一训练模块602、预测模块604、标注模块606、更新模块608和第二训练模块6010对应于实施例1中的步骤S21至步骤S29,五个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算设备10中。

作为一种可选的实施例,上述装置还包括:验证模块,用于在使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测之后,使用泛化能力验证数据集验证此次训练得到的学习模型的泛化能力,得到此次训练得到的学习模型的泛化能力指标;停止模块,用于当泛化能力指标满足预设条件时,停止学习模型的训练;继续执行模块,用于当泛化能力指标不满足预设条件时,进入根据预测结果从至少一组未标注数据中采集第一标注对象的步骤。

作为一种可选的实施例,第三训练模块,用于在第一次对学习模型进行训练时,训练集包括预先标注好的初始数据,使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象。

作为一种可选的实施例,上述装置还包括:第二标注模块,用于在使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象之后,对第二标注对象中的第一部分数据进行标注得到第三已标注对象,其中,第二标注对象被分为两部分,第一部分数据为两部分中的任意一部分;第四训练模块,用于将第三已标注对象加入训练集,使用训练集对学习模型进行第二次训练,其中,在使用训练集对学习模型进行第二次训练的过程中,对第二标注对象中的第二部分数据进行标注。

作为一种可选的实施例,上述装置还包括:获取模块,用于在使用第一次训练得到的学习模型对至少一组未标注数据进行预测之后,获取泛化能力验证数据集,其中,获取模块,包括:选择子模块,用于根据预测结果从一组未标注数据中选择数据构成泛化能力验证数据集。

作为一种可选的实施例,选择子模块包括:分类单元,用于根据预测结果中的得分将预测结果分为正样本数据、正负样本混合数据以及负样本数据;抽取单元,用于分别从正样本数据、正负样本混合数据以及负样本数据中抽取指定数量的数据,构成泛化能力验证数据集。

作为一种可选的实施例,预测模块包括:获取子模块,用于获取训练集中的正样本中心和负样本中心;加权子模块,用于根据预测结果获取至少一组未标注数据与正样本中心的距离和与负样本中心的距离的加权值;确定子模块,用于根据加权值确定第一标注对象。

作为一种可选的实施例,获取子模块包括:预测单元,用于使用学习模型对训练集中的正样本进行预测;提取单元,用于提取学习模型的倒数第二个全连接层对训练集中的每条数据输出的特征向量;确定单元,用于确定正样本在每个维度上的特征向量的均值为正样本中心。

实施例4

根据本发明实施例,还提供了一种用于实施上述实施例2中的数据处理方法的数据处理装置,图7是根据本申请实施例4的一种数据处理装置的示意图,如图7所示,该装置700包括:

标注模块702,用于对第一标注对象进行标注,得到第一已标注对象,其中,第一标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,数据池包括多组数据;

更新模块704,用于基于第一已标注对象更新训练集,得到第一训练集;

训练模块706,用于基于第一训练集继续对学习模型进行训练;其中,在对第一标注对象进行标注的过程中,使用第二已标注对象更新训练集,得到第二训练集,并使用第二训练集对学习模型进行同步训练,第二已标注对象的标注时间早于第一已标注对象的标注时间。

此处需要说明的是,上述标注模块702、更新模块704和训练模块706对应于实施例2中的步骤S51至步骤S55,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算设备10中。

实施例5

根据本发明实施例,还提供了一种数据处理系统,图8是根据本申请实施例5的一种数据处理系统的示意图,如图8所示,该系统包括:

数据池80,包括多组数据。

具体的,上述数据池中包含大量的未标注数据,例如,可以包括10万数据集的未标注数据。上述步骤中,将数据池中的未标注数据进行分组,每组的未标注数据的数量可以相同。

标注装置82,用于对第一标注对象进行标注,得到第一已标注对象,并将第一已标注对象返回至机器学习装置,以更新机器学习装置的训练集,得到第一训练集,其中,第一标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,数据池包括多组数据。

机器学习装置84,用于基于第一训练集继续对学习模型进行训练;

其中,机器学习装置还用于在对第一标注对象进行标注的过程中,使用第二已标注对象更新训练集,得到第二训练集,并使用第二训练集对学习模型进行同步训练,第二已标注对象的标注时间早于第一已标注对象的标注时间。

在上述方案中,在对第一标注对象进行标注的过程中,对学习模型的训练并未停止,而是使用第二已标注对象对训练集进行更新,并使用更新后的数据集对学习模型进行训练。上述第二标注对象的标注过程早于对第一标注对象的标注过程。且第二标注对象的标注可以是在根据训练集中的训练数据对学习模型进行训练以及使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象这两个步骤的过程中进行的。

由此可知,在上述方案中,由机器学习装置进行模型的训练,并通过对一组未标注数据进行预测得到此次训练对应的边界样本(即上述第一标注对象),与此同时,由标注装置对未标注的数据进行标注。在机器学习装置完成边界样本的采样,标注装置完成此次的标准后,二者而且进行数据的交换。完成数据交换后,机器学习装置将标注装置新标注的数据加入训练集继续进行训练,标注装置对接收到的边界样本继续进行标注。由此解决了相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

作为一种可选的实施例,机器学习装置还用于在基于第一训练集继续对学习模型进行训练之后,使用泛化能力验证数据集验证此次训练后的学习模型的泛化能力,得到此次训练后的学习模型的泛化能力指标,其中,当泛化能力指标满足预设条件时,停止学习模型的训练,并当泛化能力指标不满足预设条件时,使用训练后的学习模型对数据池中的至少一组未标注数据进行预测。

具体的,上述泛化能力指标可以包括精确率和/或召回率。上述泛化能力验证数据集包括多个已标注的数据,该数据集可以从数据池中进行随机采样得到。使用泛化能力验证数据集验证训练得到的学习模型,即为使用训练得到的学习模型对泛化能力验证数据集中的数据进行预测。

在一种可选的实施例中,上述泛化能力指标为精确率,使用训练得到的学习模型对泛化能力验证数据集中的数据进行预测后,将预测结果与泛化能力验证数据的标注结果进行比对,以确定学习模型的精确率,再将学习模型的精确率与预设的精确率阈值进行比对,当学习模型的精确率高于预设的精确率阈值时,确定泛化能力指标满足预设条件。

在另一种可选的实施例中,上述泛化能力指标为召回率,使用训练得到的学习模型对泛化能力验证数据集中的数据进行预测后,将预测结果与泛化能力验证数据的标注结果进行比对,以确定学习模型的召回率,再将学习模型的召回率与预设的召回率阈值进行比对,当学习模型的召回率高于预设的召回率阈值时,确定泛化能力指标满足预设条件。

在又一种可选的实施例中,上述泛化能力指标为精确率和召回率共同构成的PR曲线,如果RP曲线符合用户期望,则确定泛化能力指标满足预设条件。

作为一种可选的实施例,在机器学习装置使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象,其中,第一次对学习模型进行训练时,训练集包括预先标注好的初始数据。

在第一次对学习模型进行训练时,使用的训练数据是预先标注好的训练数据,在第一次训练完成后,对第一次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果采集待标注的第二标注对象。

仍结合图3b所示,图中的第1阶段表示第一次训练和第一次对未标注数据进行预测的过程。第一次训练是在预先标记的有标签的数据Data0上进行学习模型的训练,然后在数据池中的第一组未标注数据上进行预测,得到此次的边界样本,即第二标注对象。

作为一种可选的实施例,标注装置在根据预测结果从至少一组未标注数据中采集第二标注对象后,对第二标注对象中的第一部分数据进行标注,并将标注后的第一部分数据返回至机器学习装置,其中,第二标注对象被分为两部分,第一部分数据为两部分中的任意一部分。

在上述方案中,在得到第二标注对象后,将第二标注对象分为两部分,先对第一部分进行标注,再对第一部分进行标注的过程中,由于机器学习装置还没有新的训练数据,因此机器学习装置处于等待状态。

作为一种可选的实施例,机器学习装置将标注后的第一部分数据加入训练集,使用训练集进行第二次训练,其中,在机器学习装置使用训练集进行第二次训练的过程中,标注装置对第二标注对象中的第二部分数据进行标注。

在对第二标注对象的第一部分数据进行标注之后,将标注得到的第三已标注对象加入训练集,以对训练集进行更新。机器学习装置在更新训练集后,使用更新后的训练集对学习模型进行第二次训练,且在这一过程中,继续对第二标注对象中未标注的另一部分数据进行标注。

在一种可选的实施例中,仍结合图3b所示,在阶段3中,机器学习装置处于等待状态。标注装置对第二标注对象Data1的第一部分Data1/2进行标注,第二标注对象可以为600-1000个,第一部分数据可以为300-500个。标注完成后,机器学习装置使用标注Data1/2得到的第三已标注数据更新训练集,更新后的训练集中的数据为Data0-1/2。机器学习装置使用更新后的数据集对学习模型进行训练,同时,标注装置对第二标注对象中剩余的第二部分数据进行标注。

作为一种可选的实施例,在机器学习装置根据预测结果从至少一组未标注数据中采集第二标注对象之后,机器学习装置还根据预测结果从一组未标注数据中选择数据构成泛化能力验证数据集。

仍结合图3b所示,图3b中第2阶段表示根据在第一次训练得到的学习模型对数据池中的至少一组未标注数据进行预测的结果,采集泛化能力验证数据集。在这一阶段,机器学习装置也处于等待状态。在获得该泛化能力验证数据集之后,每次对训练模型进行训练后,都使用泛化能力验证数据集对训练后的模型的泛化能力进行验证,以确定是否需要继续进行训练。

作为一种可选的实施例,根据预测结果中的得分将预测结果分为正样本数据、正负样本混合数据以及负样本数据,从正样本数据、正负样本混合数据以及负样本数据中抽取指定数量的数据,构成验证数据集。

具体的,预测结果包括学习模块对每个数据预测的得分,可以根据数据的得分将数据分为正样本数据、负样本数据以及正负样本混合数据。在一种可选的实施例中,可以设置两个分数阈值S1和S2,S1

从正样本数据、正负样本混合数据以及负样本数据中抽取数据时的指定数量,可以是预先设定的数量,也可以从每种数据中抽取N/3的数据,其中,N用于表示泛化能力验证数据集所需的总数据量。N可以取值在300至1000之间,S1可以取值在0.3至0.5范围内,S2可以取值在0.8至0.9范围内。

上述方案选择泛化能力验证数据集的策略可以保证无论数据池的正负样本量是否均匀,泛化能力验证数据集的正负样本量都比较均衡,从而使得每轮模型验证时的PR曲线更能够体现学习模型的质量。

作为一种可选的实施例,获取训练集中的正样本中心和负样本中心,根据预测结果获取至少一组未标注数据与正样本中心的距离和与负样本中心的距离的加权值,并根据加权值确定第一标注对象,其中,正样本中心根据训练集中的正样本得到,负样本中心根据训练集中的负样本得到。

具体的,上述正样本中心可以根据训练集中的正样本数据得到,负样本中心可以根据训练集中的负样本数据得到。训练集中的数据均为已标注的数据,因此可以将训练集中的正样本数据的数据特征进行聚类,得到正样本中心,并可以将训练集中的负样本数据的数据特征进行聚类,得到负样本中心。上述数据特征可以是计算机视觉领域手工制作的(hand-crafted)SIFT(Scale-invariant feature transform,尺度不变特征变换)、HOG(Histogram of Oriented Gradient,方向梯度直方图)等特征,或者学习模型的某一层输出的特征。

正样本中心实际可以是正样本数据的特征向量的聚类中心,负样本中心实际可以是负样本数据的特征向量的聚类中心。未标注数据与正样本的距离,可以是未标注数据的特征向量与正样本中心的欧式距离或余弦距离。未标注数据与负样本的距离,可以是未标注数据的特征向量与负样本中心的欧式距离或余弦距离。未标注数据的特征向量可以是学习模型在对未标注数据进行预测的过程中,倒数第二个全连接层输出的特征向量。

在获得至少一组未标注数据与正样本中心的距离和与负样本中心的距离之后,可以对两个距离进行加权。在一种可选的实施例中,可以通过如下公式计算上述加权值:max_i(alpha*d(f+,fi)+beta*d(f-,fi)),其中,f+用于表示正样本中心,f-用于表示负样本中心,fi用于表示第i条数据的特征向量,d()是特征向量的某种距离度量,例如欧式距离,余弦距离等;alpha和beta表示权重系数。以上公式表示的准则即选取那些和正负样本中心距离都较远的未标注数据作为第一标注对象,即边界样本。

在得到未标注数据对应的加权值后,可以将未标注数据按照加权值由高至低的顺序进行排序,并在排序后的未标注数据中按照由先至后的顺序选择此次训练对应的边界样本,即第一标注对象。

需要说明的是,为了保证机器学习装置在训练的过程中,标注装置一直具有可以标注的数据,因此需要保证上述的预设数量足够的大。在一种可选的实施例中,可以设置上述预设数量为300,标注一个样本大致约为3秒钟,标注完这些数据需要15分钟,而机器学习装置一轮的学习需要17分钟,因此可以保证训练和标注可同步的可行性。

还需要说明的是,当机器学习装置结束运行,且标注装置已对选择出的第一标注对象标注完成,则可以将后续未标注的第一标注对象队列删除。

如果使用不确定采样(Uncertainty Sampling)准则来采集边界样本,即会选择预测得分最低的一批未标注数据作为边界样本进行标注。该方式的缺点是,在初始数据比较少时,训练出来的深度学习模型的预测得分不够准确,依据该预测得分难以采集到真实的边界样本。而采用本申请上述方案,能够准确的获取到真实的边界样本,而不受学习模型的预测准确度的影响。

作为一种可选的实施例,机器学习装置使用学习模型对训练集中的正样本进行预测,提取学习模型的倒数第二个全连接层对每条数据输出的特征向量,并确定正样本在每个维度上的特征向量的均值为正样本中心。

上述方案中,将正样本的算术平均特征作为正样本中心,获取正样本的算术平均特征可以为,利用当前学习模型对训练集数据做预测,提取每条数据的倒数第二个全连接层特征向量,然后将训练集所有正样本的特征向量的每个维度均做算术平均得到f+,对训练集负样本做同样操作得到f-。

实施例6

本发明的实施例可以提供一种计算设备,该计算设备可以是计算设备群中的任意一个计算设备。可选地,在本实施例中,上述计算设备也可以替换为移动终端等终端设备。

可选地,在本实施例中,上述计算设备可以位于计算机网络的多个网络设备中的至少一个网络设备。

在本实施例中,上述计算设备可以执行数据处理方法中以下步骤的程序代码:根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练。

可选地,图9是根据本申请实施例6的一种计算设备的结构框图。如图9所示,该计算设备A可以包括:一个或多个(图中仅示出一个)处理器902、存储器904、以及外设接口906。

其中,存储器可用于存储软件程序以及模块,如本发明实施例中的数据处理方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据处理方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练。

可选的,上述处理器还可以执行如下步骤的程序代码:在使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测之后,使用泛化能力验证数据集验证此次训练得到的学习模型的泛化能力,得到此次训练得到的学习模型的泛化能力指标;当泛化能力指标满足预设条件时,停止学习模型的训练;当泛化能力指标不满足预设条件时,进入根据预测结果从至少一组未标注数据中采集第一标注对象的步骤。

可选的,上述处理器还可以执行如下步骤的程序代码:在第一次对学习模型进行训练时,训练集包括预先标注好的初始数据,使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象。

可选的,上述处理器还可以执行如下步骤的程序代码:在使用第一次训练得到的学习模型对至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第二标注对象之后,对第二标注对象中的第一部分数据进行标注得到第三已标注对象,其中,第二标注对象被分为两部分,第一部分数据为两部分中的任意一部分;将第三已标注对象加入训练集,使用训练集对学习模型进行第二次训练,其中,在使用训练集对学习模型进行第二次训练的过程中,对第二标注对象中的第二部分数据进行标注。

可选的,上述处理器还可以执行如下步骤的程序代码:在使用第一次训练得到的学习模型对至少一组未标注数据进行预测之后,获取泛化能力验证数据集,其中,获取泛化能力验证数据集的步骤包括:根据预测结果从一组未标注数据中选择数据构成泛化能力验证数据集。

可选的,上述处理器还可以执行如下步骤的程序代码:根据预测结果中的得分将预测结果分为正样本数据、正负样本混合数据以及负样本数据;分别从正样本数据、正负样本混合数据以及负样本数据中抽取指定数量的数据,构成泛化能力验证数据集。

可选的,上述处理器还可以执行如下步骤的程序代码:获取训练集中的正样本中心和负样本中心;根据预测结果获取至少一组未标注数据与正样本中心的距离和与负样本中心的距离的加权值;根据加权值确定第一标注对象。

可选的,上述处理器还可以执行如下步骤的程序代码:使用学习模型对训练集中的正样本进行预测;提取学习模型的倒数第二个全连接层对训练集中的每条数据输出的特征向量;确定正样本在每个维度上的特征向量的均值为正样本中心。

采用本发明实施例,提供了一种数据的处理。根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练;从而能够使数据的标记和学习模型的训练同步进行,便于高效建立大规模数据集,降低学习模型训练的总体时长,提高了对学习模型进行训练的效果,解决了相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

本领域普通技术人员可以理解,图9所示的结构仅为示意,计算设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图9其并不对上述电子装置的结构造成限定。例如,计算设备10还可包括比图9中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图9所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。

实施例7

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的数据处理方法所执行的程序代码。

可选地,在本实施例中,上述存储介质可以位于计算机网络中计算设备群中的任意一个计算设备中,或者位于移动终端群中的任意一个移动终端中。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:根据训练集中的训练数据对学习模型进行训练;使用此次训练得到的学习模型对数据池中的至少一组未标注数据进行预测,并根据预测结果从至少一组未标注数据中采集第一标注对象,其中,数据池被分为多组;对第一标注对象进行标注,得到第一已标注对象,其中,在对第一标注对象进行标注的过程中,使用上次标注得到的第二已标注对象更新训练集,并使用更新后的数据集对学习模型进行训练;基于第一已标注对象更新训练集;基于更新后的训练集继续对学习模型进行训练。

实施例8

本发明的实施例还提供了一种数据处理方法,图10是根据本申请实施例8的一种数据处理方法的流程图,结合图10所示,该方法包括如下步骤:

步骤S101,接收机器学习装置输出的待标注对象,并在标注界面上显示所述待标注对象。

在上述方案中,可以通过预设的接口接收机器学习装置输出的标注对象,并在标注界面上显示待标注对象,从而使得标注师可以对显示在标注界面上的待标注对象进行标注。

标注师可以被动的获取标注界面上的待标注对象,即一旦机器学习装置输出待标注对象,待标注对象就会显示在标注界面中;标注师也可以主动获取标注界面上的标注对象,即当标注师触发标注界面上的显示待标注对象的控件时,待标注对象才会显示在标注界面中。

步骤S103,对标注界面上显示的待标注对象进行标注,得到第一已标注对象,其中,所述待标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,所述数据池包括多组数据;

在对标注界面上显示的所述待标注对象进行标注的过程中,使用第二已标注对象更新训练集,并使用更新后的训练集对所述学习模型进行同步训练,所述第二已标注对象的标注时间早于所述第一已标注对象的标注时间。

上述标注的过程是确定数据的样本类型的过程。在上述方案中,待标注的对象是学习模型对数据池中的至少一组未标注数据进行预测后,根据预测结果采集得到的边界数据。

具体的,上述边界数据用于表示学习模型对其预测准确度较低的数据。学习模型的训练通常需要进行多次,上述已训练完成的学习模型指的是完成上次训练的学习模型。

上述数据池中包含大量的未标注数据,例如,可以包括10万数据集的未标注数据。上述步骤中,将数据池中的未标注数据进行分组,每组的未标注数据的数量可以相同。

在一种可选的实施例中,可以对数据池中未标注的数据分组后进行标号,得到1……N组的未标注数据,在学习模型进行m次训练之后,从数据池中选择第m组(0

学习模型对数据池中的未标注数据进行预测,可以得到对每个未标注数据的得分,可以根据得分确定最终的预测结果,例如,如果学习模型对某个未标注数据的得分为X,且X大于预设的分数阈值,则确定对该未标注数据的预测结果为正,否则确定对该未标注数据的预测结果为负。

在标注师对待标注对象标注完成得到第一已标注对象后,会通过接口将第一已标注对象传输给机器学习装置,机器学习装置使用第一已标注对象更新训练集,并基于更新后的训练集继续对学习模型进行训练,更新后的训练集包括更多的训练数据。

在对待标注对象进行标注的过程中,对学习模型的训练并未停止,而是使用第二已标注对象对训练集进行更新,并使用更新后的数据集对学习模型进行训练。上述第二已标注对象的标注过程早于第一已标注对象的标注过程。

由此可知,本申请上述实施例提出的方案接收机器学习装置输出的待标注对象,并在标注界面上显示所述待标注对象;对标注界面上显示的待标注对象进行标注,得到第一已标注对象,其中,所述待标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,所述数据池包括多组数据;在对标注界面上显示的所述待标注对象进行标注的过程中,使用第二已标注对象更新训练集,并使用更新后的训练集对所述学习模型进行同步训练,所述第二已标注对象的标注时间早于所述第一已标注对象的标注时间。通过上述方案能够使数据的标记和学习模型的训练同步进行,便于高效建立大规模数据集,降低学习模型训练的总体时长,提高了对学习模型进行训练的效果,且能够为标注师提供标注界面,极大的方便了标注师获取待标注对象的过程,解决了相关技术中主动学习时采用人机异步的工作流程,导致效率较低的技术问题。

本申请上述实施例8的方案可以与实施例1中的任意方案进行结合,以形成新的方案,此处不再赘述。

实施例9

根据本发明实施例,还提供了一种用于实施上述实施例8中的数据处理方法的数据处理装置,图11是根据本申请实施例9的一种数据处理装置的示意图,如图11所示,该装置1100包括:

接收模块1102,用于接收机器学习装置输出的待标注对象,并在标注界面上显示所述待标注对象;

标注模块1104,用于对标注界面上显示的待标注对象进行标注,得到第一已标注对象,其中,所述待标注对象为已训练完成的学习模型对数据池中的至少一组未标注数据进行预测后得到的边界数据,所述数据池包括多组数据;

在对标注界面上显示的所述待标注对象进行标注的过程中,使用第二已标注对象更新训练集,并使用更新后的训练集对所述学习模型进行同步训练,所述第二已标注对象的标注时间早于所述第一已标注对象的标注时间。

此处需要说明的是,上述标注模块1104和标注模块1104对应于实施例8中的步骤S101至步骤S103,两个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算设备10中。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

相关技术
  • 通信系统、数据处理装置、服务器、数据处理方法、执行数据处理方法的程序和记录程序的记录媒体
  • 显示装置、升级装置、显示系统和显示系统的数据处理方法
技术分类

06120112757383