一种二分类器的训练方法、装置、及计算机设备制造方法及图纸

技术编号:19904442 阅读:19 留言:0更新日期:2018-12-26 03:13
公开了一种二分类器的训练方法、装置及计算机设备,该方法包括:利用以下步骤进行迭代处理,直至迭代次数达到预设的次数阈值:利用设定的学习算法与训练样本集进行训练,得到弱分类器,所述训练样本集中包括多个训练样本,所述多个训练样本中的任一训练样本具有权重;基于所述弱分类器的受试者工作特征ROC曲线确定所述弱分类器的分类阈值;得到所述弱分类器利用所述分类阈值对所述训练样本集的指定部分样本子集中任一训练样本的分类结果;基于所述分类结果对所述多个训练样本中的任一训练样本的权重进行调整;迭代结束后,对每一次迭代得到的弱分类器进行整合得到二分类器。

【技术实现步骤摘要】
一种二分类器的训练方法、装置、及计算机设备
本说明书实施例涉及数据处理
,尤其涉及一种二分类器的训练方法、装置、及计算机设备。
技术介绍
传统的机器学习模型都是建立在训练数据和测试数据服从相同的数据分布的基础上,例如有监督学习,但是,在诸多情况下,训练数据和测试数据并不满足服从相同的数据分布这一假设,从而,利用基于训练数据所得到的二分类器对测试数据进行分类的结果很可能并不准确,基于此,相关技术中提出了TraAdaboost算法,在该算法中,根据每次训练集中每个样本的分类是否正确,以及上次总体分类的错误率,来调整每个样本的权重,以实现通过改变数据分布得到一个分类效果更佳的二分类器。然而,若训练数据中正类样本和负类样本各自的比例并不均衡,例如,正类样本占1%,负类样本占99%,那么,上述TraAdaboost算法则倾向于将少数类样本划分到多数类样本,以保证训练得出的二分类器在整体上具有较高的分类准确率,由此可见,针对不平衡的训练数据,利用TraAdaboost算法所训练出的二分类模型的性能欠佳。
技术实现思路
针对上述技术问题,本说明书实施例提供一种二分类器的训练方法、装置、及计算机设备,技术方案如下:根据本说明书实施例的第一方面,提供一种二分类器的训练方法,所述方法包括:利用以下步骤进行迭代处理,直至迭代次数达到预设的次数阈值:利用设定的学习算法与训练样本集进行训练,得到弱分类器,所述训练样本集中包括多个训练样本,所述多个训练样本中的任一训练样本具有权重;基于所述弱分类器的受试者工作特征ROC曲线确定所述弱分类器的分类阈值;得到所述弱分类器利用所述分类阈值对所述训练样本集的指定部分样本子集中任一训练样本的分类结果;基于所述分类结果对所述多个训练样本中的任一训练样本的权重进行调整;迭代结束后,对每一次迭代得到的弱分类器进行整合得到二分类器。根据本说明书实施例的第二方面,提供一种二分类器的训练装置,所述装置包括:训练模块,用于利用设定的学习算法与训练样本集进行训练,得到弱分类器,所述训练样本集中包括多个训练样本,所述多个训练样本中的任一训练样本具有权重;确定模块,用于基于所述弱分类器的ROC曲线确定所述弱分类器的分类阈值;分类模块,用于得到所述弱分类器利用所述分类阈值对所述训练样本集的指定部分样本子集中任一训练样本的分类结果;调整模块,用于基于所述分类结果对所述多个训练样本中的任一训练样本的权重进行调整;所述训练模块、所述确定模块,所述分类模块,以及所述调整模块相互配合实现迭代处理,直至满足预设的迭代停止条件;整合模块,用于迭代结束后,对每一次迭代得到的弱分类器进行整合得到二分类器。根据本说明书实施例的第三方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现本说明书实施例提供的二分类器的训练方法。本说明书实施例提供的技术方案,通过利用以下步骤进行迭代处理,直至迭代次数达到预设的次数阈值:利用设定的学习算法与训练样本集进行训练,得到弱分类器,该训练样本集中包括多个训练样本,该多个训练样本中的任一训练样本具有权重,基于该弱分类器的ROC曲线确定弱分类器的分类阈值,然后得到该弱分类器利用该分类阈值对训练样本集中指定部分样本子集中任一训练样本的分类结果,基于该分类结果对多个训练样本中的任一训练样本的权重进行调整,最后,在迭代结束后,对每一次迭代得到的弱分类器进行整合得到二分类器。由于在每次的迭代过程中,是基于训练出的弱分类器的ROC曲线确定该弱分类器的分类阈值的,从而后续基于该分类阈值对训练样本的分类结果较为准确,也就提高了基于分类结果对训练样本的权重进行调整的有效性,从而通过该种处理,最终训练得出的二分类模型的性能较好。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。附图说明为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1为本说明书一示例性实施例提供的一种二分类器的训练方法的实施例流程图;图2为本说明书一示例性实施例提供的二分类器的训练装置的实施例框图;图3示出了本说明书实施例所提供的一种更为具体的计算设备硬件结构示意图。具体实施方式为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。传统的机器学习模型都是建立在训练数据和测试数据服从相同的数据分布的基础上,基于训练数据得到一个二分类器,将该二分类器用于测试数据。但是,在诸多情况下,训练数据和测试数据并不满足服从相同的数据分布这一假设,而重新标注出与测试数据服从相同的数据分布的训练数据又需付出时间成本与物力成本,从而,研究人员就试图利用这些与测试数据服从不同分布的训练数据,训练出一个可应用于测试数据,并取得较好的分类效果的二分类器。为了实现上述目的,有研究者提出了TraAdaboost算法,TraAdaboost算法沿用了Adaboost算法的基本框架,但是在调整样本权重方面有所区别,具体的,在TraAdaboost算法中,预先为训练样本集中的每一个样本都设定一个权重,当该训练样本集中的源域样本子集Tb中的样本被错误的分类之后,则可以认为该样本的分类难度较大,从而增大该样本的权重,相应的,当该训练样本集中的辅助域样本子集Ta中的样本被错误的分类之后,则可以认为该样本相较于源域样本子集Tb中的样本差异较大,从而可以降低该样本的权重,也即降低该样本在二分类器训练过程中所占的比重,其中,上述Ta与Tb的区别在于,Tb与测试数据服从相同分布,而Ta与测试数据服从不同分布。结合上述描述,在TraAdaboost算法的具体流程中,为训练样本集中的每一训练样本设定一个初始权重,并设定一个迭代次数,按照如下过程进行迭代:利用学习算法与训练样本集进行训练,得到一个弱分类器;利用该弱分类器对上述Tb中的训练样本进行分类,其中,分类时所利用的分类阈值通常是业务人员根据业务经验预先设定的固定值,例如为0.5,那么,若该弱分类器针对某一训练样本计算出的样本得分大于0.5,则将该训练样本归为正类样本,反之,若样本得分不大于0.5,则将该训练样本归为负类样本,之后,基于分类结果计算该弱分类器相对于上述Tb的错误率;后续,基于该错误率调整训练样本集中训练样本的权重。最终,在迭代结束后,对多个弱分类器进行整合,所得到的强分类器即为最终的二分类器。由上述描述可知,在TraAdaboost算法中,是基于总体分类的错误率来调整训练样本的权重的,并且,该错误率是由分类结果,也即分类阈值决定的,而分类阈值又是固定值,从而,若训练样本集中的正类样本和负类样本各自所占比例并不均衡,例如本文档来自技高网...

【技术保护点】
1.一种二分类器的训练方法,所述方法包括:利用以下步骤进行迭代处理,直至迭代次数达到预设的次数阈值:利用设定的学习算法与训练样本集进行训练,得到弱分类器,所述训练样本集中包括多个训练样本,所述多个训练样本中的任一训练样本具有权重;基于所述弱分类器的受试者工作特征ROC曲线确定所述弱分类器的分类阈值;得到所述弱分类器利用所述分类阈值对所述训练样本集的指定部分样本子集中任一训练样本的分类结果;基于所述分类结果对所述多个训练样本中的任一训练样本的权重进行调整;迭代结束后,对每一次迭代得到的弱分类器进行整合得到二分类器。

【技术特征摘要】
1.一种二分类器的训练方法,所述方法包括:利用以下步骤进行迭代处理,直至迭代次数达到预设的次数阈值:利用设定的学习算法与训练样本集进行训练,得到弱分类器,所述训练样本集中包括多个训练样本,所述多个训练样本中的任一训练样本具有权重;基于所述弱分类器的受试者工作特征ROC曲线确定所述弱分类器的分类阈值;得到所述弱分类器利用所述分类阈值对所述训练样本集的指定部分样本子集中任一训练样本的分类结果;基于所述分类结果对所述多个训练样本中的任一训练样本的权重进行调整;迭代结束后,对每一次迭代得到的弱分类器进行整合得到二分类器。2.根据权利要求1所述的方法,所述基于所述弱分类器的ROC曲线确定所述弱分类器的分类阈值,包括:针对所述弱分类器的ROC曲线上的每一数据点,计算出所述数据点与指定坐标点之间的距离,其中,所述指定坐标点的纵轴坐标值为指定覆盖率,所述指定坐标点的横轴坐标值为1减去指定打扰率;确定出与指点坐标点之间的距离最小的数据点;基于所确定出的数据点确定所述弱分类器的分类阈值。3.根据权利要求1所述的方法,所述基于所述弱分类器的ROC曲线确定所述弱分类器的分类阈值,包括:针对所述弱分类器的ROC曲线上的每一数据点,利用设定算法对所述数据点的纵轴坐标值与横轴坐标值进行运算;确定出运算结果最大的数据点;基于所确定出的数据点确定所述弱分类器的分类阈值。4.根据权利要求1所述的方法,所述基于所述弱分类器的ROC曲线确定所述弱分类器的分类阈值,包括:利用所述弱分类器计算出所述多个训练样本中任一训练样本的样本得分,并基于所述样本得分对所述训练样本进行判定,将判定结果作为是否针对所述样本执行指定事件的依据;估计所述多个训练样本的指定指标的密度函数,将所述指定指标的密度函数作为ROC曲线调整因子,所述指定指标反映所述指定事件的执行效果;利用所述ROC曲线调整因子、所述多个训练样本对所述弱分类器的ROC曲线进行调整;基于调整后的ROC曲线确定所述弱分类器的分类阈值。5.根据权利要求1所述的方法,所述方法还包括:迭代结束后,输出所述多个训练样本中的任一训练样本的当前权重。6.根据权利要求1所述的方法,所述方法还包括:将测试样本集中的任一测试样本输入所述二分类器,得到所述任一测试样本的样本得分。7.根据权利要求1所述的方法,所述设定的学习算法至少为下述其中一项:支持向量机SVM算法、逻辑回归算法。8.一种二分类器的训练装置,所述装置包括:训练模块,用于利用设定的学习算法与训练样本集进行训练,得到弱分类器,所述训练样本集中包括多个训练样本,所述多个训练样本中的任一训练样本具有权重;确定模...

【专利技术属性】
技术研发人员:宋博文
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1