基于随机森林分类模型的细胞识别方法和装置与流程

文档序号:16506223发布日期:2019-01-05 09:03阅读:366来源:国知局
基于随机森林分类模型的细胞识别方法和装置与流程

本申请涉及图像识别算法和机器学习领域,特别是涉及基于随机森林模型的宫颈上皮细胞识别方法和装置。



背景技术:

关于细胞识别,现有技术中常用的分类器包括:决策树、随机森林等;特征选取常用的算法包括:人工鱼群算法(afsa)等。其中,随机森林的规模决定了样本子空间的多样性,但是其规模过大与过小都不合适。同时,为增加特征子空间的多样性,从总特征中以随机的形式选择特征供单棵决策树学习。但是假如特征子集大小选取不合适,可能会出现特征冗余、单棵决策树的分类精度降低、整个分类器的泛化能力不足等影响。



技术实现要素:

本申请的目的在于克服上述问题或者至少部分地解决或缓减解决上述问题。

根据本申请的第一个方面,提供了一种基于随机森林分类模型的细胞识别方法,包括:

参量初始化步骤:基于随机森林分类模型的预设棵数和特征子集数目,设置所述预设棵数的范围和所述特征子集数目的范围;

模型获得步骤:在所述预设棵数的范围和所述特征子集数目的范围内,将所述预设棵数和所述特征子集数目随机组合成特征值对,所述特征值对形成特征值对集合;对于所述特征值集合中的每一个特征值对,利用原始细胞图像样品集合训练随机森林分类模型,对所述随机森林分类模型进行测试,得到样本准确率,将最优样本准确率作为所述特征值集合的样本准确率;

参量更新步骤:将所述最优样本准确率对应的随机森林分类模型作为适应度值计算函数,将所述特征值集合的样本准确率作为人工鱼群算法的适应度值,将所述特征值对的集合转换为人工鱼个体输入到人工鱼群算法,得到最优人工鱼个体,将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止;和

分类步骤:利用与所述最优特征值对应的随机森林分类模型对待检测图像中的细胞进行分类。

本申请的方法基于人工鱼群算法优化的随机森林分类器模型,利用人工鱼群算法对随机森林分类器进行特征选择,同时将随机森林分类器模型中的参数进行了优化,解决了该模型中特征冗余、整个分类器的泛化能力不足的问题,提高了决策树的分类精度。

可选地,在所述模型获得步骤中,所述利用原始细胞图像样品集合训练随机森林分类模型包括:

采样步骤:从原样本集合有放回地随机抽取若干个与所述原样本集合同样大小的训练样本集合;

决策树训练步骤:利用所述训练样本集合训练所述随机森林分类模型中的决策树,在所述决策树分裂时无放回地选取符合所述特征值对中特征子集数目的特征子集对所述决策树进行训练;和

决策树森林生成步骤:重复采样步骤和决策树训练步骤,直至生成具有所述预设决策树棵数的决策树的随机森林分类模型。

可选地,在所述模型获得步骤中,所述对所述随机森林分类模型进行测试,得到样本准确率包括:

测试步骤:将所述原样本集合中未被任何训练样本集合选中的样本作为测试样本,将所述测试样本中的每一个样本输入到所有决策树,得到每一个决策树的分类结果;

投票步骤:将所有决策树的分类结果进行简单多数投票,将投票结果作为该测试样本的分类结果;和

准确率计算步骤:将分类结果正确的数量占所述测试样本的样本总数的比率作为所述样本准确率。

可选地,所述参量更新步骤包括:

人工鱼个体形成步骤:将所述特征值集合中的每一个特征值对进行二进制编码,形成人工鱼个体,将两个以上人工鱼个体随机组成多个鱼群;

最优人工鱼个体获得步骤:对鱼群依次执行聚群算子、追尾算子和觅食算子并计算适应度值最大的人工鱼个体作为最优人工鱼个体;和

初始值更新步骤:将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止。

根据本申请的第二个方面,提供了一种基于随机森林分类模型的细胞识别装置,包括:

参量初始化模块,其配置成用于基于随机森林分类模型的预设棵数和特征子集数目,设置所述预设棵数的范围和所述特征子集数目的范围;

模型获得模块,其配置成用于在所述预设棵数的范围和所述特征子集数目的范围内,将所述预设棵数和所述特征子集数目随机组合成特征值对,所述特征值对形成特征值对集合;对于所述特征值集合中的每一个特征值对,利用原始细胞图像样品集合训练随机森林分类模型,对所述随机森林分类模型进行测试,得到样本准确率,将最优样本准确率作为所述特征值集合的样本准确率;

参量更新模块,其配置成用于将所述最优样本准确率对应的随机森林分类模型作为适应度值计算函数,将所述特征值集合的样本准确率作为人工鱼群算法的适应度值,将所述特征值对的集合转换为人工鱼个体输入到人工鱼群算法,得到最优人工鱼个体,将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止;和

分类模块,其配置成用于利用与所述最优特征值对应的随机森林分类模型对待检测图像中的细胞进行分类。

本申请的装置基于人工鱼群算法优化的随机森林分类器模型,利用人工鱼群算法对随机森林分类器进行特征选择,同时将随机森林分类器模型中的参数进行了优化,解决了该模型中特征冗余、整个分类器的泛化能力不足的问题,提高了决策树的分类精度。

可选地,所述模型获得模块包括:

采样模块,其配置成用于从原样本集合有放回地随机抽取若干个与所述原样本集合同样大小的训练样本集合;

决策树训练模块,其配置成用于利用所述训练样本集合训练所述随机森林分类模型中的决策树,在所述决策树分裂时无放回地选取符合所述特征值对中特征子集数目的特征子集对所述决策树进行训练;和

决策树森林生成模块,其配置成用于重复采样模块和决策树训练模块,直至生成具有所述预设决策树棵数的决策树的随机森林分类模型。

可选地,所述模型获得模块包括:

测试模块,其配置成用于将所述原样本集合中未被任何训练样本集合选中的样本作为测试样本,将所述测试样本中的每一个样本输入到所有决策树,得到每一个决策树的分类结果;

投票模块,其配置成用于将所有决策树的分类结果进行简单多数投票,将投票结果作为该测试样本的分类结果;和

准确率计算模块,其配置成用于将分类结果正确的数量占所述测试样本的样本总数的比率作为所述样本准确率。

可选地,所述参量更新模块包括:

人工鱼个体形成模块,其配置成用于将所述特征值集合中的每一个特征值对进行二进制编码,形成人工鱼个体,将两个以上人工鱼个体随机组成多个鱼群;

最优人工鱼个体获得模块,其配置成用于对鱼群依次执行聚群算子、追尾算子和觅食算子并计算适应度值最大的人工鱼个体作为最优人工鱼个体;和

初始值更新模块,其配置成用于将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止。

根据本申请的第三个方面,提供了一种计算设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的方法。

根据本申请的第四个方面,提供了一种计算机可读存储介质,优选为非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现如上所述的方法。

根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。

附图说明

后文将参照附图以示例性而非限制性的方式详细描述本申请的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:

图1是根据本申请的随机森林分类模型的细胞识别方法的一个实施例的示意性流程图;

图2是根据本申请的方法的训练步骤的示意性原理图;

图3是根据本申请的方法的测试步骤的示意性原理图;

图4是根据本申请的随机森林分类模型的细胞识别方法的另一个实施例的示意性流程图;

图5是根据本申请的随机森林分类模型的细胞识别装置的一个实施例的示意性框图;

图6是本申请的计算设备的一个实施例的框图;

图7是本申请的计算机可读存储介质的一个实施例的框图。

具体实施方式

根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。

决策树作为单一的分类器,分类效率很高,但是其分类结果往往会出现局部最优解,而不能得到全局最优解;在决策树的训练过程中,容易出现过拟合的现象。随机森林算法,是由一系列相互独立的决策树组合而成的,每一个决策树构成了整个随机森林算法的最小组成。其表达形式可以写成r={h(x,θk),k=1,2,…k},其中,{θk}为随机性向量,服从于独立同分布,k为整个分类器中单独决策树的数量。当随机森林分类器给定一个自变量x后,每个决策树都会互不影响地对输入进行独立判断,最终通过投票选定整个分类器最优的分类结果。单独的决策树决策能力往往比较薄弱,但是将一系列决策树进行有机集合,其决策能力将十分强大。

创建一个具有n棵决策树的随机森林,需要n个训练样本集。为了使得不产生局部最优解,随机森林算法采用有放回的套袋(bagging)法抽样,创建n个训练样本集。该方法抽取训练样本的同时,会产生部分未被抽中的oob样本。当原样本量比较大时,会产生约36.8%的oob样本。因此,随机森林算法可以直接基于袋外(out_of_bag,oob)样本计算误差精度。当oob样本测试结束,正确率λ达到稳定时,随机森林训练完毕。

随机森林算法相较于其他分类器,具有一系列的优势。首先是它对输入数据的适应能力较强,输入数据可以是不经过任何缩放的二元特征、数字特征、高位数据等;然后随机森林算法使用简单,训练速度快,效率高;同时,随机森林算法引入了两个随机性,为每个决策树抽取样本时生成训练子集的随机性,每个决策树自身构建属性子空间的随机性,使得分类器具有很强的抗噪能力,且不会有过拟合的问题。由于作为识别宫颈上皮细胞的分类器需要处理大量的细胞图像,因此可以选择训练和处理速度更快的随机森林算法。

随机森林算法的构建流程主要分为抽取训练集、训练决策树和算法创建和执行。其中森林规模大小ntree和属性特征的子集大小k是训练过程中的重要参数。森林的规模大小表示分类器中基分类器的数量,属性特征的子集大小是指决策树的节点在进行分裂的时候,用来进行计算最佳属性的特征数量。当决策树进行分类时,通常会在所有特征里随机地选出log2m+1或个特征用来计算最佳分裂属性。其中m是输入变量的数量,该部分特征不用参与计算,只负责最佳分裂属性的计算,其目的是为了降低树之间的相关性,提高每棵树的分类准确率。

参数ntree越大,则随机森林中的决策树越多,随机森林分类器的多样性越好,分类精度越高;但是当ntree达到某值后分类效果便趋于不变,反而致使分类器的时间空间计算量大,解释性降低。ntree过小,则致使分类器多样性降低,分类性能变差、精度降低。k表示创建随机森林过程中,节点分裂时无放回式地从总特征集中进行抽样,得到的特征子集的大小。通常情况下,k值在创建决策树时不变,且远小于总特征集的大小,其意义是可以防止分类器出现过拟合,同时增加决策树之间的多样性。当k值过大,则会造成决策树之间多样性低,降低分类效果;当k值过小,虽然基分类器间多样性很高,但是分类器的分类精度、泛化能力都会降低。

由此可见,影响随机森林算法计算速度和分类效果的参数主要包括:随机森林的规模大小ntree,属性特征的子集大小k。属性特征的子集大小k比较常见的取值有1、log2m+1,当m值较小时,通常选用log2m+1算法性能较好,但是没有固定的取值方法。

事实上,大量的研究表明,假如一个集成分类算法在训练时,其基分类器能达到较高的分类精度,且各个基分类器之间独立互不影响,则该集成分类算法可以达到十分理想的分类结果。因此,对随机森林网络进行改善时,只需要尽可能地提高单棵决策树的分类精度,同时保证树与树之间互不影响。因此,若要提高随机森林算法的性能,需要保证样本子空间和特征子空间的有效性和多样性。

由上述分析可知,随机森林的规模决定了样本子空间的多样性,但是其规模过大与过小都不合适。同时,为增加特征子空间的多样性,从总特征中以随机的形式选择特征供单棵决策树学习。但是假如特征子集大小选取不合适,可能会出现特征冗余、单棵决策树的分类精度降低、整个分类器的泛化能力不足等影响。

本申请提供了一种基于人工鱼群算法优化的随机森林分类器模型,即利用人工鱼群算法对随机森林分类器进行特征选择,同时对森林规模等参数进行优化。

本申请的一个实施例公开了一种基于随机森林分类模型的细胞识别方法。图1是根据本申请的随机森林分类模型的细胞识别方法的一个实施例的示意性流程图。该方法可以包括:

s100参量初始化步骤:基于随机森林分类模型的预设棵数和特征子集数目,设置所述预设棵数的范围和所述特征子集数目的范围;

s200模型获得步骤:在所述预设棵数的范围和所述特征子集数目的范围内,将所述预设棵数和所述特征子集数目随机组合成特征值对,所述特征值对形成特征值对集合;对于所述特征值集合中的每一个特征值对,利用原始细胞图像样品集合训练随机森林分类模型,对所述随机森林分类模型进行测试,得到样本准确率,将最优样本准确率作为所述特征值集合的样本准确率;

s300参量更新步骤:将所述最优样本准确率对应的随机森林分类模型作为适应度值计算函数,将所述特征值集合的样本准确率作为人工鱼群算法的适应度值,将所述特征值对的集合转换为人工鱼个体输入到人工鱼群算法,得到最优人工鱼个体,将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止;

s400分类步骤:利用与所述最优特征值对应的随机森林分类模型对待检测图像中的细胞进行分类。

本申请的方法基于人工鱼群算法优化的随机森林分类器模型,利用人工鱼群算法对随机森林分类器进行特征选择,同时将随机森林分类器模型中的参数进行了优化,解决了该模型中特征冗余、整个分类器的泛化能力不足的问题,提高了决策树的分类精度。

在s100参量初始化步骤中,可以初始化随机森林分类模型的预设决策树颗数ntree,特征子集数目k等参量。并且初始化所述预设棵数的范围和所述特征子集数目的范围。可选地,还可以初始化迭代最大次数maxgen和二进制特征值{attributei|i=1,2,…,m}。可选地,还可以在该步骤中初始化人工鱼群算法的参数,例如,人工鱼数量n,鱼群位置x=(x1,x2,…xd)t,人工鱼的视野visual,最大步长step,拥挤度因子δ;行为尝试的最大次数try_number等。

可选地,所述s200模型获得步骤可以包括训练步骤和测试步骤。图2和图3分别是根据本申请的方法的训练步骤和测试步骤的示意性原理图。

其中,该训练步骤可以包括:

采样步骤:从原样本集合有放回地随机抽取若干个与所述原样本集合同样大小的训练样本集合;

决策树训练步骤:利用所述训练样本集合训练所述随机森林分类模型中的决策树,在所述决策树分裂时无放回地选取符合所述特征值对中特征子集数目的特征子集对所述决策树进行训练;和

决策树森林生成步骤:重复采样步骤和决策树训练步骤,直至生成具有所述预设决策树棵数的决策树的随机森林分类模型。

该方法能够对随机森林的每一个决策树进行生成和训练,采用有放回的样本采集方法能够降低对原样本集合的数据量要求,更加充分地利用现有数据对模型进行训练。

在该步骤中,假设原样本集合为(x,y),其中,(x1,y1),(x2,y2),…(xn,yn)∈(x,y),原样本集合的样本数量为n。原样本集合可以是包括宫颈上皮细胞和/或淋巴细胞的图像样本集合。

可以使用拔靴(bootstrap)采样法有放回地随机抽取n个样本(xi,yi),作为训练样本集合(x*,y*)。将训练样本集合(x*,y*)输入随机森林分类模型中,在每次树分裂时选取k个特征子集对训决策树进行训练。循环该步骤,直至生成预设颗数的决策树森林,即完成随机森林分类器的初步建立。

可选地,所述测试步骤可以包括:

测试步骤:将所述原样本集合中未被任何训练样本集合选中的样本作为测试样本,将所述测试样本中的每一个样本输入到所有决策树,得到每一个决策树的分类结果;

投票步骤:将所有决策树的分类结果进行简单多数投票,将投票结果作为该测试样本的分类结果;和

准确率计算步骤:将分类结果正确的数量占所述测试样本的样本总数的比率作为所述样本准确率。

该方法能够利用袋外样本对模型进行测试,简化了数据来源,用户不但能够从一个原始样本集合中获得训练数据,还能根据训练数据获得测试数据,进而对模型进行评价。

可选地,该s300步骤还可以包括:

判断判断上述各个步骤的重复次数gen>maxgen是否成立,成立则输出优化后的随机森林分类模型的预设决策树颗数ntree,特征子集数目k,二进制特征值{attributei|i=1,2,…,m};如果不成立,执行s300步骤。

可选地,所述s300参量更新步骤可以包括:

人工鱼个体形成步骤:将所述特征值集合中的每一个特征值对进行二进制编码,形成人工鱼个体,将两个以上人工鱼个体随机组成多个鱼群;

最优人工鱼个体获得步骤:对鱼群依次执行聚群算子、追尾算子和觅食算子并计算适应度值最大的人工鱼个体作为最优人工鱼个体;和

初始值更新步骤:将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止。

该方法采用人工鱼算法对随机森林算法进行了改进,利用人工鱼群算法对随机森林分类器进行特征选择,同时对森林规模等参数进行优化,提高了随机森林算法的参数设置的准确性和针对性,减少了修改参数的次数以及重复训练和测试的次数,采用机器学习和人工智能的方式提高了分类模型的准确性。

在本申请中,待优化的变量可以包括:ntree,k,{attributei|i=1,2,…,m};目标函数为:f(ntree*,k*,{attributei|i=1,2,…,m})=argmin(avg(ooberror))。设置ntree取值范围为[1,n],k的取值范围为[1,m]。其中,n可以小于或者等于某个设定值,例如100,m可以小于或者等于整个样本空间的样本数量。将取值范围内,将ntree和k随机组合,每个特征对都能对决策树进行一次训练和测试,每个特征对都能形成一个或多个人工鱼个体。人工鱼群算法计算过程中,人工鱼个体的状态量均采用为二进制编码,将该二进制编码作为训练样本集合的二进制特征值。

在一个可选实施方案中,将特征值对ntree和k进行二进制表达,并分别放于二进制段的2个片段,例如,在ntree=1,k=5情况下,用二进制表示ntree=001,k=101,则该人工鱼个体的状态量为001101。此时,一个特征对形成一个人工鱼个体。

在另一个可选的实施方案中,人工鱼个体的状态量包括三段,特征值对加上状态量的特征值attributei,其中,{attributei|i=1,2,…,m}片段中的0表示该位置处的特征未被选择,1表示该处位置的特征被选择,且有约束条件k≤sum(attributei=1)。例如,在ntree=1,k=5,整个样本空间的样本数量为10的情况下,在含有10个样本的样本空间中随机挑选5个样本,这5个样本分别是第1、2、3、4、6位置处的样本,attributei=1111010000则用二进制表示的话ntree=001,k=101状态量的特征值为0011011111010000。此时,一个特征对可以形成多个人工鱼个体。

假设在某一d维空间内有数量为n的人工鱼,向量x=(x1,x2,…xd)t为该鱼群中所有人工鱼的状态位置,visual为工人鱼的视野范围,step为工人鱼在游动时的最大步长。在某时刻,该人工鱼随机选择视野范围内的一个状态xv=(xv1,xv2,…,xvd),若状态xv优于x,则该鱼向状态xv方向移动至xj;否则该人工鱼在视野范围内随机选择其他状态并移动。di,j=||xi-xy||表示两条人工鱼之间的空间距离。y=f(x)表示某人工鱼所感知到x处的食物浓度,即目标函数值。δ表示某空间区域内鱼群的拥挤度因子。

以下为人工鱼群的核心行为:

(1)觅食行为:当人工鱼感知到xj处食物浓度高于xi,人工鱼则按照公下式所示的移动算子进行移动。

其中,rand()为服从均匀分布的随机数,其取值范围为(-1,1)。

假如xi_next状态不如xi,则继续尝试新的移动,反复尝试达到预设尝试次数try_number后,如果不能找到合适状态,则执行下式所示的随机行动。

xj=xi+visual*rand()

(2)聚群行为:鱼群在发现所处环境遭到威胁或者某处具有大量食物时,为了提高种群存活率和进食效率会进行聚群行为。假设有某人工鱼的状态xi,统计该鱼的视野范围d≤visual内全部的鱼的数量nf,以及该范围内鱼群的中心点位置xc。如果yc/nf>δyi成立,则鱼群中心处的函数值较高且该人工鱼附近的人工鱼密度较低,该鱼将按下式所示的移动算子进行游动。反之如果聚群行为条件不成立,则该人工鱼将进行觅食行为。

(3)追尾行为:个体鱼在移动时,由于对食物方向的趋向以及集体远离天敌的需要,会因为其他部分鱼的移动而移动,称这种行为为追尾行为。假设有某人工鱼的状态xi,统计该鱼的视野范围d≤visual内其他鱼的数量nf,并在该范围里找到周边食物浓度最大ymax的人工鱼xmax。如果ymax/nf>δyi成立,说明此刻人工鱼xmax周边鱼的密度不高,还有继续聚群的空间,因此该人工鱼xi根据下式的移动算子游动。如果追尾条件不成立,则继续觅食行为。

求解最优值的算法实验通常是通过p折交叉验证对k进行遍历,然后根据计算出的最小误差值或者最大auc来确定最优值,这种算法的时间复杂度较高,因此不适合大数据量的特征集。因为求解最优参数实际上是求解最小化泛化误差,因此在特征选择和参数优化过程中,二分类数据可以用oob误差替代交叉验证时的时间消耗,这样时间复杂度则变成1/p。而分类的过程之中,要采用交叉验证。

在一个可选的实施方案中,对鱼群依次执行聚群算子、追尾算子和觅食算子并计算适应度值最大的人工鱼个体作为最优人工鱼个体。

在另一个可选的实施方案中,首先可以对当前鱼群分别执行聚群算子和追尾算子。聚集算子能够使人工鱼向可视范围内的鱼群中心聚集。追尾算子能够根据人工鱼的当前位置和适应度值搜索其感知范围内所有伙伴中适应度值最大的人工鱼及其适应度值。如果适应度值大于所述特征值集合的样本准确率,即第一适应度值,就以适应度值最大的人工鱼为中心搜索其感知范围内的人工鱼。如果ymax/nf>δyi成立,表明该位置较优且其周围不太拥挤,则人工鱼向适应度值最大的人工鱼xmax的方向前进一步。

判断人工鱼分别执行聚群算子和追尾算子后适应度值是否提高,如果是,则比较执行完聚群算子和追尾算子的人工鱼的适应度值,选择适应度值较大的作为最终执行算子。如果分别尝试聚群算子和追尾算子后,人工鱼适应度值没有提高,则执行觅食算子。

觅食算子能够根据当前位置寻找更优位置的行为,并进行位置转移。

位置更新之后,重新计算人工鱼群的适应度值,并记录最优个体,如果最优个体适应度值不再变化,循环结束,输出最优解。在一个可选实施例中,如果最优个体适应度值还在提高,说明还没有找到最优解,则继续迭代循环,直到找到最优解。在另一个可选实施例中,如果循环次数达到预设尝试次数,则将当前最优解输出。将最优解进行解码,得到初始化随机森林分类模型的预设决策树颗数ntree,特征子集数目k等参量。在重复参量初始化步骤时,根据该决策树颗数ntree和特征子集数目k确定各自的范围,例如,以ntree为中心,在[ntree-5,ntree+5]的范围内,为k为中心,在[k-3,k+3]的范围内,重新执行模型获得步骤和参量更新步骤,直到参量更新步骤中最优特征值对不再变化为止。

图4是根据本申请的随机森林分类模型的细胞识别方法的另一个实施例的示意性流程图。在输入原样本集进行参数初始化后,采用bootstrap有放回地抽取训练样本集,在树分裂是无放回地随机选择k个特征子集,训练单棵决策树。循环该步骤,直到森林规模达到ntree。测试oob误差,作为afsa的适应度值y,判断循环次数gen是否大于maxgen,否的情况下执行人工鱼群算法,将将ntree、k、attribute作为状态值x,利用随机森林分类模型的oob误差作为人工鱼的适应度,人工鱼分别进行觅食、聚群、追尾行为,并分别评价适应度,更适应度更新全局最优人工鱼状态,反复进行该过程,直至尝试次数try_number达到预定值,输出最优参数,并且重复随机森林模型的参数初始化,在循环次数达到maxgen时,输出最优参数,得到随机森林分类模型。利用该模型对包含宫颈上皮细胞图像和淋巴细胞图像的测试样本集进行特征提取,然后输入至分类器对细胞进行识别。本申请的方法能够准确识别宫颈上皮细胞和淋巴细胞。因此,经过参数优化后的随机森林分类模型对数据分类结果的置信度更高,整体分类器精度更高、泛化能力更强。

本申请的一个实施例还公开了一种基于随机森林分类模型的宫颈上皮细胞识别装置。图5是根据本申请的随机森林分类模型的细胞识别装置的一个实施例的示意性框图。该装置可以包括:

参量初始化模块100,其配置成用于基于随机森林分类模型的预设棵数和特征子集数目,设置所述预设棵数的范围和所述特征子集数目的范围。

模型获得模块200,其配置成用于在所述预设棵数的范围和所述特征子集数目的范围内,将所述预设棵数和所述特征子集数目随机组合成特征值对,所述特征值对形成特征值对集合;对于所述特征值集合中的每一个特征值对,利用原始细胞图像样品集合训练随机森林分类模型,对所述随机森林分类模型进行测试,得到样本准确率,将最优样本准确率作为所述特征值集合的样本准确率。

参量更新模块300,其配置成用于将所述最优样本准确率对应的随机森林分类模型作为适应度值计算函数,将所述特征值集合的样本准确率作为人工鱼群算法的适应度值,将所述特征值对的集合转换为人工鱼个体输入到人工鱼群算法,得到最优人工鱼个体,将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止。

分类模块400,其配置成用于利用与所述最优特征值对应的随机森林分类模型对待检测图像中的细胞进行分类。

本申请的装置基于人工鱼群算法优化的随机森林分类器模型,利用人工鱼群算法对随机森林分类器进行特征选择,同时将随机森林分类器模型中的参数进行了优化,解决了该模型中特征冗余、整个分类器的泛化能力不足的问题,提高了决策树的分类精度。

可选地,所述模型获得模块200包括所述训练装置,该训练装置可以包括:

采样模块,其配置成用于从原样本集合有放回地随机抽取若干个与所述原样本集合同样大小的训练样本集合;

决策树训练模块,其配置成用于利用所述训练样本集合训练所述随机森林分类模型中的决策树,在所述决策树分裂时无放回地选取符合所述特征值对中特征子集数目的特征子集对所述决策树进行训练;

决策树森林生成模块,其配置成用于重复采样模块和决策树训练模块,直至生成具有所述预设决策树棵数的决策树的随机森林分类模型。

该装置能够利用袋外样本对模型进行测试,简化了数据来源,用户不但能够从一个原始样本集中获得训练数据,还能根据训练数据获得测试数据,进而对模型进行评价。

所述模型获得模块包括所述测试装置,该测试模块可以包括:

测试模块,其配置成用于将所述原样本集合中未被任何训练样本集合选中的样本作为测试样本,将所述测试样本中的每一个样本输入到所有决策树,得到每一个决策树的分类结果;

投票模块,其配置成用于将所有决策树的分类结果进行简单多数投票,将投票结果作为该测试样本的分类结果;

准确率计算模块,其配置成用于将分类结果正确的数量占所述测试样本的样本总数的比率作为所述样本准确率。

该装置能够利用袋外样本对模型进行测试,简化了数据来源,用户不但能够从一个原始样本集中获得训练数据,还能根据训练数据获得测试数据,进而对模型进行评价。

所述参量更新模块300可以包括:

人工鱼个体形成模块,其配置成用于将所述特征值集合中的每一个特征值对进行二进制编码,形成人工鱼个体,将两个以上人工鱼个体随机组成多个鱼群;

最优人工鱼个体获得模块,其配置成用于对鱼群依次执行聚群算子、追尾算子和觅食算子并计算适应度值最大的人工鱼个体作为最优人工鱼个体;和

初始值更新模块,其配置成用于将所述最优人工鱼个体转换为最优特征值对并作为所述随机森林分类模型的预设棵数的初始值和特征子集数目参量的初始值,重复所述参量初始化步骤,直到最优特征值对不再变化为止。

该装置采用人工鱼算法对随机森林算法进行了改进,利用人工鱼群算法对随机森林分类器进行特征选择,同时对森林规模等参数进行优化,提高了随机森林算法的参数设置的准确性和针对性,减少了修改参数的次数以及重复训练和测试的次数,采用机器学习和人工智能的方式提高了分类模型的准确性。

本申请的实施方案的一个方面提供了一种计算设备,参照图6,该计算设备包括存储器1120、处理器1110和存储在所述存储器1120内并能由所述处理器1110运行的计算机程序,该计算机程序存储于存储器1120中的用于程序代码的空间1130,该计算机程序在由处理器1110执行时实现用于执行任一项根据本发明的方法步骤1131。

本申请的实施方案的另一个方面还提供了一种计算机可读存储介质。参照图7,该计算机可读存储介质包括用于程序代码的存储单元,该存储单元设置有用于执行根据本发明的方法步骤的程序1131’,该程序被处理器执行。

本申请实施方案的另一个方面还提供了一种包含指令的计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算设备执行时,导致所述计算设备执行如上所述的方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、获取其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetictape),软盘(英文:floppydisk),光盘(英文:opticaldisc)及其任意组合。

以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1