首页> 中国专利> 多标签分类模型的训练方法和预测标签的方法

多标签分类模型的训练方法和预测标签的方法

摘要

本公开提供了一种多标签分类模型的训练方法和预测标签的方法、装置、设备和介质,应用于人工智能领域,具体应用于深度学习领域和智慧医疗领域。多标签分类模型的训练方法的具体实现方案为:针对当前轮次的训练,基于训练集和预定损失函数训练多标签分类模型,得到训练后的多标签分类模型;基于验证集,确定训练后的多标签分类模型针对多个预定类别中每个类别的分类精度;以及在分类精度满足预定条件的情况下,完成对多标签分类模型的训练。其中,预定损失函数包括针对每个类别的子损失函数,子损失函数包括第一权重。针对每个类别,第一权重的取值与上一轮次的训练所确定的分类精度负相关。

著录项

  • 公开/公告号CN113222942A

    专利类型发明专利

  • 公开/公告日2021-08-06

    原文格式PDF

  • 申请/专利权人 北京百度网讯科技有限公司;

    申请/专利号CN202110537387.4

  • 申请日2021-05-17

  • 分类号G06T7/00(20170101);G06K9/62(20060101);G06N20/00(20190101);

  • 代理机构11021 中科专利商标代理有限责任公司;

  • 代理人吕朝蕙

  • 地址 100085 北京市海淀区上地十街10号百度大厦2层

  • 入库时间 2023-06-19 12:07:15

说明书

技术领域

本公开涉及人工智能领域,具体涉及深度学习领域和智慧医疗领域,更具体地涉及一种多标签分类模型的训练方法和预测标签的方法、装置、设备和介质。

背景技术

随着电子技术的发展,深度学习模型得益于不断壮大的数据采集和算力研发,以其端到端、高准确率和高实用性等明显优点而不断在各个领域大放异彩。

在多标签分类场景下,相比于单一类别预测,多类别同时预测的误判风险明显增加。在叠加样本质量通常较低(例如样本分布不均衡)的问题后,往往难以训练出精度较高的多标签分类模型。

发明内容

提供了一种提高模型精度的多标签分类模型的训练方法和预测标签的方法、装置、设备和介质。

根据本公开的一个方面,提供了一种多标签分类模型的训练方法,包括:针对当前轮次的训练,基于训练集和预定损失函数训练多标签分类模型,获得训练后的多标签分类模型;基于验证集,确定训练后的多标签分类模型针对多个预定类别中每个类别的分类精度;以及在分类精度满足预定条件的情况下,完成对多标签分类模型的训练,其中,预定损失函数包括针对每个类别的子损失函数,子损失函数包括第一权重;针对每个类别,第一权重的取值与上一轮次的训练所确定的分类精度负相关。

根据本公开的另一个方面,提供了一种预测标签的方法,包括:以待处理图像作为多标签分类模型的输入,获得待处理图像针对多个预定类别中每个类别的第三预测概率;以及根据第三预测概率,确定待处理图像针对每个类别的标签,其中,多标签分类模型是采用上述的多标签分类模型的训练方法训练得到的。

根据本公开的另一个方面,提供了一种多标签分类模型的训练装置,包括:模型训练模块,用于针对当前轮次的训练,基于训练集和预定损失函数训练多标签分类模型,获得训练后的多标签分类模型;分类精度确定模块,用于基于验证集,确定训练后的多标签分类模型针对多个预定类别中每个类别的分类精度;以及训练完成确定模块,用于在分类精度满足预定条件的情况下,完成对多标签分类模型的训练,其中,预定损失函数包括针对每个类别的子损失函数,子损失函数包括第一权重;针对每个类别,第一权重的取值与上一轮次的训练所确定的分类精度负相关。

根据本公开的另一个方面,提供了一种预测标签的装置,包括:概率获得模块,用于以待处理图像作为多标签分类模型的输入,获得待处理图像针对多个预定类别中每个类别的第三预测概率;以及标签确定模块,用于根据第三预测概率,确定待处理图像针对每个类别的标签,其中,多标签分类模型是采用上述的多标签分类模型的训练装置训练得到的。

根据本公开的另一个方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开提供的多标签分类模型的训练方法和/或预测标签的方法。

根据本公开的另一个方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开提供的多标签分类模型的训练方法和/或预测标签的方法。

根据本公开的另一个方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本公开提供的多标签分类模型的训练方法和/或预测标签的方法。

应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

附图说明

附图用于更好地理解本方案,不构成对本公开的限定。其中:

图1是根据本公开实施例的多标签分类模型的训练方法和预测标签的方法的应用场景示意图;

图2是根据本公开实施例的多标签分类模型的训练方法的流程图;

图3是根据本公开实施例的训练多标签分类模型的原理示意图;

图4是根据本公开实施例的确定训练后的多标签分类模型针对每个类别的分类精度的原理示意图;

图5是根据本公开实施例的预测标签的方法的流程图;

图6是根据本公开实施例的多标签分类模型的训练装置的结构框图;

图7是根据本公开实施例的预测标签的装置的结构框图;以及

图8是用来实现本公开实施例的多标签分类模型的训练方法和/或预测标签的方法的电子设备的框图。

具体实施方式

以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

本公开提供了一种多标签分类模型的训练方法,该方法包括训练阶段、验证阶段和训练完成确定阶段。在训练阶段中,针对当前轮次的训练,基于训练集和预定损失函数训练多标签分类模型,获得训练后的多标签分类模型。在验证阶段中,基于验证集,确定训练后的多标签分类模型针对多个预定类别中每个类别的分类精度。在训练完成确定阶段中,确定分类精度是否满足预定条件,若满足预定条件,则确定完成对多标签分类模型的训练。其中,预定损失函数包括针对每个类别的子损失函数,子损失函数包括第一权重;针对每个类别,第一权重的取值与上一轮次的训练所确定的分类精度负相关。

以下将结合图1对本公开提供的方法和装置的应用场景进行描述。

图1是根据本公开实施例的多标签分类模型的训练方法和预测标签的方法的应用场景示意图。

如图1所示,该应用场景100包括终端设备110,该终端设备110可以为具有处理功能的任意电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机和服务器等等。

该终端设备110例如可以对输入的图像120进行处理,具体可以对输入的图像进行识别,并根据识别结果确定可以为图像添加的多个标签130,该多个标签130可以分别指示图像针对彼此独立的多个预定类别中每个预定类别的取值。其中,该终端设备110例如可以基于多标签分类模型对图像的处理结果来确定为图像添加的多个标签。通过该多个标签的添加,例如可以实现对图像120中对象的检测,确定图像120中的对象是否异常。

根据本公开的实施例,如图1所示,该应用场景100还可以包括服务器140。终端设备110可以通过网络与服务器140通信连接,网络可以包括有线或无线通信链路。

示例性地,服务器140可以用于训练多标签分类模型,并响应于终端设备110发送的模型获取请求,将训练好的多标签分类模型150发送给终端设备110,便于终端设备110对输入的图像进行识别,确定向图像120添加的多个标签。

示例性地,服务器例如可以是提供各种服务的服务器,例如可以为对终端设备110上运行的应用程序提供支持的后台管理服务器。例如,该服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。

根据本公开的实施例,如图1所示,该应用场景100还可以包括数据库160,该数据库160例如可以维护有海量的图像,该海量的图像中包括具有标签的图像,图像具有的标签可以指示图像针对多个预定类别中的一个或多个类别的取值。服务器140例如可以访问该数据库160,并从数据库中海量的图像中随机抽取部分图像,将抽取的图像作为训练样本对多标签分类模型进行训练。

在一实施例中,终端设备110与服务器140例如可以为同一设备,该同一设备中包括用于针对图像来预测标签的第一处理模块和用于对多标签分类模型进行训练的第二处理模块。该第一处理模块和第二处理模块之间可以通过网络协议进行通信。

在一实施例中,该多标签分类模型可以应用于医疗领域中,用于对对象的目标部位进行检测,以确定目标部位针对多种疾病的取值为阳性或阴性。例如,目标部位可以为眼底,图像120可以为眼底视网膜图像。

示例性地,多标签分类模型可以包括黑盒模型和白盒模型。黑盒模型以分类模型为主,为数据驱动的模型,其输入为图像,输出为图像针对各预定类别的取值。白盒模型先对图像进行目标对象的检测,判断目标对象的特征数据(例如病灶或体征),随后根据该特征数据确定针对各预定类别的取值。

需要说明的是,本公开所提供的多标签分类模型的训练方法可以由服务器140执行。相应地,本公开所提供的多标签分类模型的训练装置可以设置于服务器140中。本公开所提供的预测标签的方法可以由终端设备110执行。相应地,本公开所提供的预测标签的装置可以设置于终端设备110中。

应该理解,图1中的终端设备、服务器和数据库的数目和类型仅仅是示意性的。根据实现需要,可以具有任意数目和类型的终端设备、服务器和数据库。

该实施例中采用多标签分类模型,单个图像针对多个预定类别的取值彼此之间并不冲突,多个标签不互斥,因此基于该多标签分类模型执行的分类任务相较于单类别分类任务更加细致繁杂。再者,各预定类别的多个取值中各取值的概率通常不相同,因此可能存在对于某个取值训练样本的个数较少(即呈现长尾分布),而具有该某个取值的训练样本对多标签分类模型地训练具有较高的参考价值的情况。若采用已有的方法来对多标签分类模型进行训练,会存在无法提升多标签分类模型的精度的情况。

基于此,本公开提供了一种能够在一定程度上提高多标签分类模型的训练精度的训练方法。以下将结合图2~图4对本公开提供的多标签分类模型的训练方法进行详细描述。

图2是根据本公开实施例的多标签分类模型的训练方法的流程图。

如图2所示,该实施例的多标签分类模型的训练方法200可以包括循环执行的操作S210~操作S230,直至多标签分类模型的分类精度满足预定条件,从而实现对多标签分类模型的多个轮次的训练。在每个轮次的训练中,需要执行操作S210~操作S230,若多标签分类模型的分类精度不满足预定条件,则还需执行操作S240和操作S250,以执行下一轮次的训练。

以下以多个轮次的训练中任一轮次的训练作为当前轮次的训练,对操作S210~操作S230进行详细描述。

在操作S210,基于训练集和预定损失函数训练多标签分类模型,获得训练后的多标签分类模型。

该实施例可以从数据库中获取多个图像,得到图像集。将该图像集中的图像根据预定比例划分为训练集和验证集。其中,验证集中的每个图像包括针对多个预定类别中每个类别的标签,该标签指示每个图像针对每个类别的取值。训练集中的图像可以包括不具有标签的第一图像,具有针对多个预定类别中部分类别的标签的第二图像和/或具有针对多个预定类别中每个类别的标签的第三图像。该第一图像、第二图像和第三图像可以具有任意比例,本公开对此不做限定。

该实施例可以将训练集中的图像划分为多个图像组,通过操作S210完成对多标签分类模型的多次优化。在每次优化中,将一个图像组中的图像依次作为多标签分类模型的输入,经由该多标签分类模型处理后得到输入图像针对多个预定类别中每个类别的预测概率。随后根据一个图像组中各图像针对多个预定类别的预测概率和标签指示的取值,确定预定损失函数针对各图像的取值。最后基于该预定损失函数针对一个图像组中各图像的取值,采用梯度下降算法或反向传播算法等调整多标签分类模型中各层的参数,实现对多标签分类模型的优化。

示例性地,多标签分类模型例如可以应用于目标检测任务中,该多标签分类模型可以为多标签决策树(Multi-label Decision Trees)模型、多标签随机森林(Multi-labelRandom Forests)模型或多标签梯度提升(Multi-label Gradient Boosting)模型等。多个预定类别可以根据实际需求进行设定,例如,在医疗领域中,该多个预定类别例如可以为多个疾病,若训练样本中的图像为眼底视网膜图像,则该多个预定类别可以至少包括疾病a、疾病b和疾病c等可以根据视网膜的特征进行诊断的疾病。

在操作S220,基于验证集,确定训练后的多标签分类模型针对多个预定类别中每个类别的分类精度。

在通过操作S210获得训练后的多标签分类模型后,可以将验证集中的图像作为训练后的多标签分类模型的输入,输出验证集中各图像针对多个预定类别中每个类别的预测概率。基于该预测概率和训练集中各图像的标签指示的取值,确定训练后的多标签分类模型针对每个类别的分类精度。例如,若标签指示图像针对多个预定类别中任一类别的取值为第一取值,输出得到的图像针对该任一类别的第一取值的预测概率较小,则该训练后的多标签分类模型针对该任一类别的分类精度较低。若图像针对该任一类别的第一取值的预测概率较大,则该训练后的多标签分类模型针对该任一类别的分类精度较高。其中,预测概率例如可以指示针对该每个类别的取值为第一取值的概率。针对每个类别的取值可以包括第一取值和与该第一取值不同的第二取值。例如,第一取值可以为1,第二取值可以为0。

根据本公开的实施例,在确定分类精度时,例如可以先根据多个图像中针对该任一类别的标签所指示的取值,来确定多个图像针对该任一类别的实际概率。若标签指示的取值为第一取值,则实际概率为1,否则实际概率为0。该实施例可以统计基于验证集中多个图像得到的针对任一类别的多个预测概率分别与多个实际概率之间的多个差值,根据多个差值的平均值来确定多标签分类模型针对该任一类别的分类精度。

在一实施例中,在得到针对每个类别的分类精度后,例如可以确定针对多个预定类别的多个分类精度的平均值,将该平均值作为训练后的多标签分类模型针对当前轮次的训练的分类精度。

在操作S230,判断分类精度是否满足预定条件。

根据本公开的实施例,可以确定相邻两个轮次中针对每个类别的两个分类精度之间的精度值,若针对多个预定类别确定的精度差均小于预定差值,则可以确定分类精度满足预定条件。或者,可以将针对每个类别的分类精度与精度阈值进行比较,若分别针对多个预定类别的多个分类精度均高于该精度阈值,则可以确定分类精度满足预定条件。其中,精度阈值例如可以为0.8等任意的值,本公开对此不做限定。

若分类精度满足预定条件,则完成对多标签分类模型的训练。若分类精度不满足预定条件,则执行下一轮次的训练。

在一实施例中,预定损失函数包括针对每个类别的子损失函数,子损失函数包括第一权重。在当前轮次的训练中,针对每个类别的子损失函数中第一权重的取值与上一轮次的训练确定的针对该每个类别的分类精度负相关。如此,可以使得当前轮次的训练中多标签分类模型倾向于学习上一轮次中较低分类精度所针对的目标类别的特征信息,并因此提高当前轮次训练得到的多标签分类模型针对该目标类别的分类精度。

示例性地,预定损失函数可以为针对多个预定类别的多个子损失函数的和,或者可以为针对多个预定类别的多个子损失函数的平均值等。本公开对该预定损失函数与多个子损失函数之间的运算关系不做限定。

示例性地,针对每个类别的子损失函数中第一权重的取值例如可以与上一轮次的训练所确定的分类精度成反比,或者与上一轮次的训练所确定的分类精度的平方值、上一轮次的训练所确定的分类精度的对数等成反比,本公开对该负相关关系不做限定。

示例性地,针对每个类别的子损失函数可以表示为该第一权重与基础损失函数的乘积。其中,基础损失函数为相关技术中的分类损失函数,例如可以为交叉熵损失函数(Cross entropy loss)、合页损失函数(Hinge loss)或指数损失函数(Exponential loss)等。

基于该预定损失函数,在确定分类精度不满足预定条件时,该当前轮次的训练中还可以执行操作S240,以便于执行操作S250,执行下一轮次的训练。

在操作S240,针对每个类别,根据分类精度确定下一轮次的训练中第一权重的取值。该实施例可以根据前文描述的第一权重与分类精度之间的负相关关系及训练后的多标签分类模型针对每个类别的分类精度,来确定下一轮次的训练中针对该每个类别的子损失函数中第一权重的取值。

在确定了下一轮次的训练中第一权重的取值后,即可执行操作S250,并返回执行操作S210,开始对多标签分类模型进行下一轮次的训练。

该实施例通过针对每个类别设置子损失函数,并使得每个子损失函数包括基于上一轮次确定的分类精度来确定的第一权重,可以实现对第一权重的动态调整,从而可以动态调整训练过程中多标签分类模型针对多个预定类别的关注程度。通过该方式,可以使得训练得到的多标签分类模型针对多个预定类别的分类精度均较高,降低训练得到的多标签分类模型的误判风险,在一定程度上提高多标签分类模型的性能。

再者,基于该实施例的方法,可以通过动态调整针对样本量少的类别的子损失函数中的第一权重,提高多标签分类模型对该样本量少的类别的分类精度,因此可以在一定程度上解决相关技术中所存在的长尾问题,提高多标签分类模型对长尾样本的鉴别能力。

图3是根据本公开实施例的训练多标签分类模型的原理示意图。

根据本公开的实施例,训练集中的每个图像可以作为一个训练样本,则训练集包括至少一个训练样本。

在基于训练集和预定损失函数训练多标签分类模型时,可以以训练样本作为多标签分类模型的输入,获得训练样本针对每个类别的第一预测概率,从而得到多个第一预测概率。随后基于多个第一预测概率和预定损失函数来训练多标签分类模型。

在一实施例中,在将训练样本输入多标签分类模型后,经多标签分类模型处理后,多标签分类模型可以输出概率向量。该概率向量包括多个第一预测概率,分别对应多个预定类别。第一预测概率指示训练样本针对每个类别的预测标签为阳性标签的概率。若为阳性标签,则该标签可以表示为第一取值1;若为阴性标签,则该标签可以表示为第二取值0。即该第一预测概率即为前文描述的指示训练样本针对每个类别的取值为第一取值的概率。

在一实施例中,训练样本具有针对多个预定类别中至少一个类别的实际标签。该实际标签可以为阳性标签或阴性标签,若针对任一类别的实际标签为阳性标签,则可以确定该训练样本针对该任一类别的实际概率为1,否则确定该训练样本针对该任一类别的实际概率为0。该实施例可以根据训练样本针对每个类别的第一预测概率和针对该每个类别的实际概率,确定针对该每个类别的子损失函数的取值,得到多个子损失函数的取值。基于该多个子损失函数的取值,可以得到预定损失函数的取值。随后,基于该预定损失函数的取值,采用前述的梯度下降算法或反向传播算法等来对多标签分类模型进行训练。

在一实施例中,多标签分类模型可以采用前文描述的黑盒模型或白盒模型。其中,黑盒模型对训练集的要求较高,需要大量且标签完备的训练集进行训练,以提高黑盒模型的精度。白盒模型对不同场景具有更高的鲁棒性,往往不容易受到场景外相机机型等条件的干扰,但该模型要求训练集中的各训练样本具有指示位置的标签、指示针对预定类别的取值的标签等应用于定位、分割、识别等多种任务中的标签,因此训练样本的标注难度大。

示例性地,多标签分类模型可以采用黑盒模型,且前文描述的子损失函数还可以包括由示性函数表示的第二权重。如此,在训练样本包括针对任一类别的标签时,针对该任一类别的子损失函数中第二权重的取值为1,否则,针对该任一类别的子损失函数中第二权重的取值为0。通过该方式,可以在确定预定损失函数取值时,忽略缺乏针对该任一类别的标签的训练样本的预测概率对损失函数取值的影响。使得模型训练过程中,可以容忍训练样本缺失标签的影响,相较于相关技术中黑盒模型的训练,可以在一定程度上提高模型的训练效率,并降低对训练样本的要求。再者,由于多标签分类场景中,具有针对多个预定类别中每个类别的标签的图像较少,通过使得训练过程能够忽略标签缺失的情况,可以提高训练样本的个数,并因此可以在一定程度上提高训练得到的模型的精度。

如图3所示,该实施例300在基于训练集和预定损失函数训练多标签分类模型时,可以先以训练样本310作为多标签分类模型320的输入,获得多个第一预测概率330。同时,可以基于训练样本310具有的实际标签340,确定第二权重的取值360。在得到该第二权重的取值360后,可以基于第二权重的取值和多个第一预测概率,确定预定损失函数的取值370,并基于该预定损失函数的取值370,训练多标签分类模型。例如,还可以根据训练样本310的实际标签340,确定训练样本针对多个预定类别中每个类别的实际概率350,根据该实际概率350、第二权重的取值360和多个第一预测概率330,确定预定损失函数的取值370。

在一实施例中,子损失函数可以表示为基础损失函数、关于第一权重的函数和关于第二权重的函数的乘积。例如,子损失函数可以采用以下公式表示:

Loss(p)=f

其中,f

在一实施例中:f

在一实施例中,基于上述子损失函数,该实施例的预定损失函数例如可以表示为:

其中,Loss为预定损失函数的取值,Loss

其中,Loss

图4是根据本公开实施例的确定训练后的多标签分类模型针对每个类别的分类精度的原理示意图。

根据本公开的实施例,验证集可以包括多个验证样本,且多个验证样本中的每个样本具有针对每个类别的实际标签。即每个样本具有与多个预定类别相同数量的实际标签,例如每个样本包括的实际标签个数为n个。在确定针对每个类别的分类精度时,例如可以先基于训练后的多标签分类模型和针对每个类别的实际标签,来确定每个样本针对每个类别的样本类型。随后基于多个验证样本针对每个类别的样本类型,确定训练后的多标签分类模型针对每个类别的分类精度。

示例性地,可以将每个样本作为训练后的多标签分类模型的输入,获得该每个样本针对每个类别的第二预测概率。得到该第二预测概率的方法与前文描述的得到第一预测概率的方法类似,在此不再赘述。基于该第二预测概率,可以确定每个样本针对每个类别的预测标签。例如,若该第二预测概率指示每个样本针对该任一类别的预测标签为阳性标签的概率,则在针对任一类别的第二预测概率大于概率阈值时,可以确定针对该任一类别的预测标签为阳性标签。否则确定针对该任一类别的预测标签为阴性标签。在得到预测标签后,可以基于针对每个类别的实际标签和针对每个类别的预测标签,确定每个样本针对每个类别的样本类型。该样本类型例如可以包括真阳类型、假阳类型、真阴类型和假阴类型。在得到每个样本针对每个类别的样本类型后,可以统计多个验证样本中各样本类型的个数,根据该个数确定分类精度。其中,概率阈值例如可以为0.5或任意的值,本公开对此不做限定。

其中,在实际标签与预测标签均为阳性标签时,样本类型为真阳类型。在实际标签为阴性标签,预测标签为阳性标签时,样本类型为假阳类型。在实际标签与预测标签均为阴性标签时,样本类型为真阴类型。在实际标签为阳性标签,预测标签为阴性标签时,样本类型为假阴类型。

示例性地,设定样本类型为真阳类型的验证样本为真阳样本,样本类型为真阴类型的验证样本为真阴样本,样本类型为假阳类型的验证样本为假阳样本,且样本类型为假阴类型的验证样本为假阴样本。该实施例可以将多个验证样本中针对任一类别的真阳样本个数与多个验证样本个数的比值,作为训练后的多标签分类模型针对该任一类别的分类精度。或者,可以先确定多个验证样本中针对任一类别的真阳样本个数及真阴样本个数的和。将确定的和与多个验证样本个数的比值作为针对该任一类别的分类精度。

示例性地,可以先确定多个验证样本中真阳样本的第一样本个数,以及多个验证样本中假阳样本的第二样本个数。随后确定第一样本个数与第二样本个数的和,得到个数和。该实施例可以将第一样本个数与个数和之间的比值作为训练后的多标签分类模型针对每个类别的分类精度。以此可以进一步提高多标签分类模型对阳性样本的学习能力,避免阳性样本较少时所存在的模型训练精度低的问题。例如,针对每个类别的分类精度可以表示为:

其中,AP为分类精度,TP为真阳样本的个数,FP为假阳样本的个数。

例如,在如图4所示的实施例400中,验证样本集410可以包括m个验证样本,多个预定类别为n个。则将第一验证样本411~第m验证样本412分别输入训练后的多标签分类模型420中,可以得到针对第一验证样本411的n个第二预测概率431、…以及针对第m验证样本412的n个第二预测概率432。根据该n第二预测概率431~n个第二预测概率432,可以分别得到针对第一验证样本411~第m验证样本412的n个预测标签441~n个预测标签442。通过比较n个预测标签421与第一验证样本411具有的n个实际标签4111,可以得到第一验证样本针对n个预定类别的n个样本类型451,类似地,通过比较n个预测标签442与第m验证样本412具有的n个实际标签,可以得到第m验证样本针对n个预定类别的n个样本类型452。统计m个验证样本针对每个类别的样本类型,可以得到针对每个类别的m个样本类型460。根据该针对每个类别的m个样本类型461中真阳类型的个数480与假阳类型的个数470和真阳类型的个数480之和的比值,即可得到训练后的多标签分类模型针对每个类别的分类精度490。

根据本公开的实施例,在训练后的多标签分类模型的精度为针对多个预定类别的分类精度的平均值时,该训练后的多标签分类模型的精度可以表示为:

其中,mAP为训练后的多标签分类模型的精度,AP

基于上述多标签分类模型的训练方法,本公开还提供了一种预测标签的方法,以下将结合图5对该方法进行详细描述。

图5是根据本公开实施例的预测标签的方法的流程图。

如图5所示,该实施例的预测标签的方法500可以包括操作S510~操作S520。

在操作S510,以待处理图像作为多标签分类模型的输入,获得待处理图像针对多个预定类别中每个类别的第三预测概率。

根据本公开的实施例,多标签分类模型可以是采用前文描述的多标签分类模型的训练方法训练得到的。该操作S510与前文描述的获得第一预测概率的方法类似,在此不再赘述。

在操作S520,根据第三预测概率,确定所述待处理图像针对每个类别的标签。

根据本公开的实施例,可以将针对每个类别的第三预测概率与概率阈值进行比较,确定针对每个类别的标签。该确定针对每个类别的标签的方法与前文描述的确定预测标签的方法类似,在此不再赘述。

基于上述的多标签分类模型的训练方法,本公开还提供了一种多标签分类模型的训练装置,以下将结合图6对该装置进行详细描述。

图6是根据本公开实施例的多标签分类模型的训练装置的结构框图。

如图6所示,该实施例的多标签分类模型的训练装置600可以包括模型训练模块610、分类精度确定模块620和训练完成确定模块630。

模型训练模块610用于针对当前轮次的训练,基于训练集和预定损失函数训练多标签分类模型,获得训练后的多标签分类模型。其中,预定损失函数包括针对每个类别的子损失函数,该子损失函数包括第一权重。针对所述每个类别,第一权重的取值与上一轮次的训练所确定的分类精度负相关。在一实施例中,模型训练模块610可以用于执行前文描述的操作S210,在此不再赘述。

分类精度确定模块620用于基于验证集,确定训练后的多标签分类模型针对多个预定类别中每个类别的分类精度。在一实施例中,分类精度确定模块620可以用于执行前文描述的操作S220,在此不再赘述。

训练完成确定模块630用于在分类精度满足预定条件的情况下,完成对多标签分类模型的训练。在一实施例中,训练完成确定模块630可以用于执行前文描述的操作S230,在此不再赘述。

根据本公开的实施例,训练集包括训练样本,上述模型训练模块包括概率获得子模块和训练子模块。概率获得子模块用于以训练样本作为多标签分类模型的输入,获得训练样本针对每个类别的第一预测概率,得到多个第一预测概率。训练子模块用于基于多个第一预测概率和预定损失函数,训练多标签分类模型。其中,第一预测概率指示训练样本针对每个类别的预测标签为阳性标签的概率。

根据本公开的实施例,训练样本具有针对多个预定类别中至少一个类别的实际标签。子损失函数还包括由示性函数表示的第二权重。上述训练子模块可以包括权重取值确定单元、损失取值确定单元和训练单元。权重取值确定单元用于基于训练样本具有的实际标签,确定第二权重的取值。损失取值确定单元用于基于第二权重的取值和多个第一预测概率,确定预定损失函数的取值。训练单元用于基于预定损失函数的取值,训练多标签分类模型。其中,实际标签包括阳性标签和阴性标签。

根据本公开的实施例,验证集包括多个验证样本,多个验证样本中的每个样本具有针对每个类别的实际标签。上述分类精度确定模块包括样本类型确定子模块和精度确定子模块。样本类型确定子模块用于基于训练后的多标签分类模型和针对每个类别的实际标签,确定每个样本针对每个类别的样本类型。精度确定子模块用于基于多个验证样本针对每个类别的样本类型,确定训练后的多标签分类模型针对每个类别的分类精度。

根据本公开的实施例,上述样本类型确定子模块包括概率获得单元、预测标签确定单元和类型确定单元。概率获得单元用于将每个样本作为训练后的多标签分类模型的输入,获得每个样本针对每个类别的第二预测概率。预测标签确定单元用于基于第二预测概率,确定每个样本针对每个类别的预测标签。类型确定单元用于基于针对每个类别的实际标签和针对每个类别的预测标签,确定每个样本针对每个类别的样本类型。其中,实际标签包括阳性标签和阴性标签。

根据本公开的实施例,上述精度确定子模块包括样本个数确定单元、个数和确定单元和精度确定单元。样本个数确定单元用于确定多个验证样本中样本类型为真阳类型的第一样本个数,以及多个验证样本中样本类型为假阳类型的第二样本个数。个数和确定单元用于确定第一样本个数与第二样本个数的和,得到个数和。精度确定单元用于确定第一样本个数与个数和之间的比值,获得训练后的多标签分类模型针对每个类别的分类精度。

根据本公开的实施例,预定损失函数的取值为针对多个预定类别的多个子损失函数的取值的平均值。

根据本公开的实施例,子损失函数采用以下公式表示:

Loss(p)=f

其中,f

根据本公开的实施例,分类精度确定模块还用于确定针对多个预定类别的多个分类精度的平均值,作为训练后的多标签分类模型针对当前轮次的训练的分类精度。

根据本公开的实施例,上述多标签分类模型的训练装置600还可以包括权重确定模块,用于在分类精度不满足预定条件的情况下,针对每个类别,根据分类精度确定下一轮次的训练中第一权重的取值。其中,上述模型训练模块还用于对训练后的多标签分类模型执行下一轮次的训练。

基于上述的预测标签的方法,本公开还提供了一种预测标签的装置,以下将结合图7对该装置进行详细描述。

图7是根据本公开实施例的预测标签的装置的结构框图。

如图7所示,该实施例的预测标签的装置700可以包括概率获得模块710和标签确定模块720。

概率获得模块710用于以待处理图像作为多标签分类模型的输入,获得待处理图像针对多个预定类别中每个类别的第三预测概率。其中,多标签分类模型是采用本公开的多标签分类模型的训练装置训练得到的。在一实施例中,该概率获得模块710例如可以用于执行前文描述的操作S510,在此不再赘述。

标签确定模块720用于根据第三预测概率,确定待处理图像针对每个类别的标签。在一实施例中,该标签确定模块720例如可以用于执行前文描述的操作S520,在此不再赘述。

需要说明的是,本公开的技术方案中,所涉及的用户个人信息的获取、存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。

根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。

图8示出了可以用来实施本公开实施例的多标签分类模型的训练方法和/或预测标签的方法的示例电子设备800的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。

如图8所示,设备800包括计算单元801,其可以根据存储在只读存储器(ROM)802中的计算机程序或者从存储单元808加载到随机访问存储器(RAM)803中的计算机程序,来执行各种适当的动作和处理。在RAM803中,还可存储设备800操作所需的各种程序和数据。计算单元801、ROM802以及RAM803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。

设备800中的多个部件连接至I/O接口805,包括:输入单元806,例如键盘、鼠标等;输出单元807,例如各种类型的显示器、扬声器等;存储单元808,例如磁盘、光盘等;以及通信单元809,例如网卡、调制解调器、无线通信收发机等。通信单元809允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如多标签分类模型的训练方法和/或预测标签的方法。例如,在一些实施例中,多标签分类模型的训练方法和/或预测标签的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元808。在一些实施例中,计算机程序的部分或者全部可以经由ROM802和/或通信单元809而被载入和/或安装到设备800上。当计算机程序加载到RAM 803并由计算单元801执行时,可以执行上文描述的多标签分类模型的训练方法和/或预测标签的方法的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行多标签分类模型的训练方法和/或预测标签的方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。

计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。其中,服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务(”Virtual Private Server″,或简称”VPS”)中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号