CN108960436A - 特征选择方法 - Google Patents
特征选择方法 Download PDFInfo
- Publication number
- CN108960436A CN108960436A CN201810747846.XA CN201810747846A CN108960436A CN 108960436 A CN108960436 A CN 108960436A CN 201810747846 A CN201810747846 A CN 201810747846A CN 108960436 A CN108960436 A CN 108960436A
- Authority
- CN
- China
- Prior art keywords
- feature
- decision tree
- importance
- screening
- feature set
- 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.)
- Pending
Links
Landscapes
- Image Analysis (AREA)
Abstract
本发明提供了一种特征选择方法,可应用于肝癌重要性指标的预测分析,所述方法包括:先对原始数据集进行扫描,依据重要性对各个特征进行排序,再用(广义)序列后向选择法从中去除一部分特征,在新的特征集上训练随机森林并计算其准确率,根据各轮筛选造成的误差增量(相对筛选前)来判断是否要继续筛选,一旦它超过指定阈值就退出迭代,并将上一轮筛选所得的特征集作为结果。这样做的依据是,对于在不断缩减的特征集上训练出的模型,它们的泛化性能一般呈降低趋势,而其降低程度可以作为特征集的评价。反复该过程,最终将测试准确率最高的特征集作为特征选择的输出结果。
Description
技术领域
本发明涉及一种特征选择方法。
背景技术
对于高维数据,一般要进行降维或特征选择,目的是降低模型学习的难度。而冗余特征的存在使得特征选择更有必要性,去除这些不相关的特征不但能降低学习的开销,还能给数据采集提供便利。常见的特征选择方式有三类:过滤式、包裹式和嵌入式,其中,
过滤式方法在建立学习器之前就对数据集进行特征选择,再用筛选后的特征训练学习器;
包裹式方法在候选特征子集上训练学习器,用学习器的性能来评价所选的特征集;
而嵌入式方法在训练学习器的同时就能完成特征选择。
随机森林进行特征选择的基本方法是Genuer R等人在2010年提出的一种基于袋外误差的包裹式方法。该算法的策略主要分为以下几个步骤:先依据重要性对各个特征进行排序,再用(广义)序列后向选择法从中去除一部分特征,在新的特征集上训练随机森林并计算其准确率,反复该过程,最终将测试准确率最高的特征集作为输出。为了保证每次测试结果的稳定性,一般在每轮筛选后都采用交叉验证来评估新建立的随机森林,取其平均准确率作为该轮的准确率。
由于迭代将一直持续直到剩余特征个数减少至阈值,它依然会有较大的时空开销;又因为最终取测试精度最高的筛选,所以得到的特征集不一定是最小的。
发明内容
本发明的目的在于提供一种特征选择方法。
本发明提供一种特征选择方法,包括:
S1:首次对原始数据集A进行扫描得到各个特征;
S2:依据重要性对扫描得到的各个特征进行排序;
S3:每次用序列后向选择法从排序后的各个特征中去除一部分特征,得到各轮筛选后的新的特征集,在所述新的特征集上训练随机森林并计算对应的准确率;
S4:根据各轮筛选造成的相对筛选前的误差增量来判断是否要继续筛选,一旦它超过指定阈值就退出迭代,并将上一轮筛选所得的特征集作为结果;
S5:反复步骤S1~S4过程,最终将测试准确率最高的特征集作为特征选择的输出结果。
进一步的,在上述方法中,S2:依据重要性对扫描得到的各个特征进行排序之前,还包括:
计算某个特征X的重要性。
进一步的,在上述方法中,计算某个特征X的重要性,包括:
S201:对于随机森林中的决策树Ti,计算该决策树Ti在自己袋外数据上的分类错误数Ei;
S202:在该决策树的袋外数据中对X的取值进行随机扰动,重新计算其分类错误数
S203:令i=1,2,...,n,重复S201~S202两步,计处每一个决策树Ti对应的分类错误数其中,随机森林包含的决策树个数为n个;
S204:所述特征X的重要性IX定义为:
进一步的,在上述方法中,计算该决策树Ti在自己袋外数据上的分类错误数Ei,包括:
通过calcAccurOOB函数,计算该决策树Ti在自己袋外数据上的分类错误数Ei。
进一步的,在上述方法中,每次用序列后向选择法从排序后的各个特征中去除一部分特征,得到各轮筛选后的新的特征集中,
运用简单交叉验证进行筛选。
进一步的,在上述方法中,运用简单交叉验证进行筛选,包括:
采用chooseFeatures函数完成筛选,其中,将四个阈值均作为参数传入,新增的numTrees参数控制随机森林包含的决策树个数。
与LVW这类随机选择特征子集的包裹式算法相比,本发明的有益效果是:对特征的筛选是启发式的,具有更高的效率,在给定误差范围内优先选择最小的特征子集,而不是测试精度最高的,从而能够尽早停止筛选,节省大量时间,试验结果表明,筛选后的特征集其实并不会产生像阈值那样大的误差增量,在其上的测试精度可以与筛选前持平甚至更高。
附图说明
图1是本发明一实施例的计算特征重要性的流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明提供一种特征选择方法,包括:
S1:首次对原始数据集A进行扫描得到各个特征;
S2:依据重要性对扫描得到的各个特征进行排序;
S3:每次用(广义)序列后向选择法从排序后的各个特征中去除一部分特征,得到各轮筛选后的新的特征集,在所述新的特征集上训练随机森林并计算对应的准确率;
S4:根据各轮筛选造成的误差增量(相对筛选前)来判断是否要继续筛选,一旦它超过指定阈值就退出迭代,并将上一轮筛选所得的特征集作为结果,这样做的依据是,对于在不断缩减的特征集上训练出的模型,它们的泛化性能一般呈降低趋势,而其降低程度可以作为特征集的评价;
S5:反复步骤S1~S4过程,最终将测试准确率最高的特征集作为特征选择的输出结果。
本发明的特征选择方法一实施例中,S2:依据重要性对扫描得到的各个特征进行排序之前,还包括:
计算某个特征X的重要性。
本发明的特征选择方法一实施例中,随机森林定义了特征的重要性度量,计算某个特征X的重要性,包括:
S201:对于随机森林中的决策树Ti,计算该决策树Ti在自己袋外数据上的分类错误数Ei;
S202:在该决策树的袋外数据中对X的取值进行随机扰动,重新计算其分类错误数
S203:令i=1,2,...,n,重复S201~S202两步,计处每一个决策树Ti对应的分类错误数其中,随机森林包含的决策树个数为n个;
S204:所述特征X的重要性IX定义为:
在此,所述特征X的重要性IX这样定义的依据是:如果对某个特征加入噪声后模型的袋外误差显著提升,则说明该特征对预测结果的影响较大,从而有较高的重要性。
本发明的特征选择方法一实施例中,计算该决策树Ti在自己袋外数据上的分类错误数Ei,包括:
通过calcAccurOOB函数,计算该决策树Ti在自己袋外数据上的分类错误数Ei。
在此,在计算特征重要性之前,首先要得到每棵决策树的袋外误差。calcAccurOOB函数完成此功能,它会根据OOBIndxes属性从原训练集中获取袋外样本,在其上调用继承而来的calcAccuracy函数,具体步骤如表1:
表1
如表1所示,calcFeatImportnc函数是依据上述的步骤计算特征重要性,填写featImpormc属性。为了重用代码,将“误差增量”替换为了“精度减量”。它也可以用speciFeats参数指定要计算的特征,而featImportnc中其他未指定的特征将被赋空值,排序时不参与比较。如图1所示,是该函数的流程图,其中随机噪声使用np.random模块产生。
本发明的特征选择方法一实施例中,S3:每次用(广义)序列后向选择法从排序后的各个特征中去除一部分特征,得到各轮筛选后的新的特征集中,
运用简单交叉验证(留出法)进行筛选。
本发明的特征选择方法一实施例中,运用简单交叉验证(留出法)进行筛选,包括:
采用chooseFeatures函数完成筛选,其中,将四个阈值均作为参数传入,新增的numTrees参数控制随机森林包含的决策树个数。
在此,该chooseFeatures函数是类方法,可以由类名直接调用。它还增加了两个返回值,分别是子集中各特征的重要性和用它们训练所得模型的测试精度。其中np.argsort函数获得序列排序后的下标。若各轮筛选造成的误差增量(相对筛选前)超过指定阈值就退出迭代,并将上一轮筛选所得的特征集作为结果。具体的步骤如表2:
表2
本发明一具体的实施例中,设原始特征集为A,样本集为D,该算法用伪代码描述如表3:
表3一种基于Random Forest改进算法的特征选择算法的伪代码
由于交叉验证的过程中会产生多个Random Forest,故选择其中测试精度最高的一个来计算当前轮次的特征重要性顺序。
本发明公开了一种基于Random Forest改进算法的特征选择方法,本发明公开了一种基于Random Forest改进算法的特征选择方法,可应用于肝癌重要性指标的预测分析,先对原始数据集进行扫描,依据重要性对各个特征进行排序,再用(广义)序列后向选择法从中去除一部分特征,在新的特征集上训练随机森林并计算其准确率,根据各轮筛选造成的误差增量(相对筛选前)来判断是否要继续筛选,一旦它超过指定阈值就退出迭代,并将上一轮筛选所得的特征集作为结果。这样做的依据是,对于在不断缩减的特征集上训练出的模型,它们的泛化性能一般呈降低趋势,而其降低程度可以作为特征集的评价。反复该过程,最终将测试准确率最高的特征集作为特征选择的输出结果。为了保证每次测试结果的稳定性,一般在每轮筛选后都采用交叉验证来评估新建立的随机森林,取其平均准确率作为该轮的准确率。主要解决了在给定误差范围内优先选择最小的特征子集,而不是测试精度最高的,从而能够尽早停止筛选,节省大量时间等关键性问题。属于数据挖掘、算法分析领域的技术。
本发明与LVW这类随机选择特征子集的包裹式算法相比,本发明的有益效果是:对特征的筛选是启发式的,具有更高的效率,在给定误差范围内优先选择最小的特征子集,而不是测试精度最高的,从而能够尽早停止筛选,节省大量时间,试验结果表明,筛选后的特征集其实并不会产生像阈值那样大的误差增量,在其上的测试精度可以与筛选前持平甚至更高。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (6)
1.一种特征选择方法,其特征在于,包括:
S1:首次对原始数据集A进行扫描得到各个特征;
S2:依据重要性对扫描得到的各个特征进行排序;
S3:每次用序列后向选择法从排序后的各个特征中去除一部分特征,得到各轮筛选后的新的特征集,在所述新的特征集上训练随机森林并计算对应的准确率;
S4:根据各轮筛选造成的相对筛选前的误差增量来判断是否要继续筛选,一旦它超过指定阈值就退出迭代,并将上一轮筛选所得的特征集作为结果;
S5:反复步骤S1~S4过程,最终将测试准确率最高的特征集作为特征选择的输出结果。
2.如权利要求1所述的特征选择方法,其特征在于,S2:依据重要性对扫描得到的各个特征进行排序之前,还包括:
计算某个特征X的重要性。
3.如权利要求2所述的特征选择方法,其特征在于,计算某个特征X的重要性,包括:
S201:对于随机森林中的决策树Ti,计算该决策树Ti在自己袋外数据上的分类错误数Ei;
S202:在该决策树的袋外数据中对X的取值进行随机扰动,重新计算其分类错误数
S203:令i=1,2,...,n,重复S201~S202两步,计处每一个决策树Ti对应的分类错误数其中,随机森林包含的决策树个数为n个;
S204:所述特征X的重要性IX定义为:
4.如权利要求3所述的特征选择方法,其特征在于,计算该决策树Ti在自己袋外数据上的分类错误数Ei,包括:
通过calcAccurOOB函数,计算该决策树Ti在自己袋外数据上的分类错误数Ei。
5.如权利要求1所述的特征选择方法,其特征在于,每次用序列后向选择法从排序后的各个特征中去除一部分特征,得到各轮筛选后的新的特征集中,
运用简单交叉验证进行筛选。
6.如权利要求5所述的特征选择方法,其特征在于,运用简单交叉验证进行筛选,包括:
采用chooseFeatures函数完成筛选,其中,将四个阈值均作为参数传入,新增的numTrees参数控制随机森林包含的决策树个数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810747846.XA CN108960436A (zh) | 2018-07-09 | 2018-07-09 | 特征选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810747846.XA CN108960436A (zh) | 2018-07-09 | 2018-07-09 | 特征选择方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108960436A true CN108960436A (zh) | 2018-12-07 |
Family
ID=64482332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810747846.XA Pending CN108960436A (zh) | 2018-07-09 | 2018-07-09 | 特征选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108960436A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800790A (zh) * | 2018-12-24 | 2019-05-24 | 厦门大学 | 一种面向高维数据的特征选择方法 |
CN109818961A (zh) * | 2019-01-30 | 2019-05-28 | 广东工业大学 | 一种网络入侵检测方法、装置和设备 |
CN109948948A (zh) * | 2019-03-29 | 2019-06-28 | 广东电网有限责任公司 | 一种母线负荷关键指标筛选方法、系统及相关装置 |
CN110222087A (zh) * | 2019-05-15 | 2019-09-10 | 平安科技(深圳)有限公司 | 特征提取方法、装置及计算机可读存储介质 |
CN110338797A (zh) * | 2019-08-12 | 2019-10-18 | 苏州小蓝医疗科技有限公司 | 一种基于鼾声和血氧的中频止鼾仪数据处理方法 |
CN110491121A (zh) * | 2019-07-26 | 2019-11-22 | 同济大学 | 一种异质性交通事故致因分析方法及设备 |
CN110880014A (zh) * | 2019-10-11 | 2020-03-13 | 中国平安财产保险股份有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
CN111160473A (zh) * | 2019-12-30 | 2020-05-15 | 深圳前海微众银行股份有限公司 | 一种分类标签的特征挖掘方法及装置 |
CN112418538A (zh) * | 2020-11-30 | 2021-02-26 | 武汉科技大学 | 一种基于随机森林分类的连铸坯夹杂预测方法 |
CN112580817A (zh) * | 2019-09-30 | 2021-03-30 | 脸谱公司 | 管理机器学习特征 |
CN112734274A (zh) * | 2021-01-20 | 2021-04-30 | 国家电网公司华中分部 | 一种低碳电网运营主导影响因素挖掘及综合评估方法 |
WO2021139115A1 (zh) * | 2020-05-26 | 2021-07-15 | 平安科技(深圳)有限公司 | 特征选择方法、装置、设备及存储介质 |
CN113180623A (zh) * | 2021-06-01 | 2021-07-30 | 山东大学 | 无袖式血压测量方法、系统、设备及存储介质 |
CN113514724A (zh) * | 2021-07-15 | 2021-10-19 | 阳光电源股份有限公司 | 光伏系统及其电弧检测方法、装置 |
CN113554527A (zh) * | 2021-07-28 | 2021-10-26 | 广东电网有限责任公司 | 电费数据处理方法、装置、终端设备及存储介质 |
CN115840885A (zh) * | 2023-02-23 | 2023-03-24 | 青岛创新奇智科技集团股份有限公司 | 一种深度合成特征的特征选择方法及装置 |
-
2018
- 2018-07-09 CN CN201810747846.XA patent/CN108960436A/zh active Pending
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109800790A (zh) * | 2018-12-24 | 2019-05-24 | 厦门大学 | 一种面向高维数据的特征选择方法 |
CN109818961A (zh) * | 2019-01-30 | 2019-05-28 | 广东工业大学 | 一种网络入侵检测方法、装置和设备 |
CN109948948A (zh) * | 2019-03-29 | 2019-06-28 | 广东电网有限责任公司 | 一种母线负荷关键指标筛选方法、系统及相关装置 |
CN110222087A (zh) * | 2019-05-15 | 2019-09-10 | 平安科技(深圳)有限公司 | 特征提取方法、装置及计算机可读存储介质 |
CN110222087B (zh) * | 2019-05-15 | 2023-10-17 | 平安科技(深圳)有限公司 | 特征提取方法、装置及计算机可读存储介质 |
CN110491121B (zh) * | 2019-07-26 | 2022-04-05 | 同济大学 | 一种异质性交通事故致因分析方法及设备 |
CN110491121A (zh) * | 2019-07-26 | 2019-11-22 | 同济大学 | 一种异质性交通事故致因分析方法及设备 |
CN110338797A (zh) * | 2019-08-12 | 2019-10-18 | 苏州小蓝医疗科技有限公司 | 一种基于鼾声和血氧的中频止鼾仪数据处理方法 |
CN112580817A (zh) * | 2019-09-30 | 2021-03-30 | 脸谱公司 | 管理机器学习特征 |
CN110880014A (zh) * | 2019-10-11 | 2020-03-13 | 中国平安财产保险股份有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
CN110880014B (zh) * | 2019-10-11 | 2023-09-05 | 中国平安财产保险股份有限公司 | 数据处理方法、装置、计算机设备及存储介质 |
CN111160473A (zh) * | 2019-12-30 | 2020-05-15 | 深圳前海微众银行股份有限公司 | 一种分类标签的特征挖掘方法及装置 |
WO2021139115A1 (zh) * | 2020-05-26 | 2021-07-15 | 平安科技(深圳)有限公司 | 特征选择方法、装置、设备及存储介质 |
CN112418538A (zh) * | 2020-11-30 | 2021-02-26 | 武汉科技大学 | 一种基于随机森林分类的连铸坯夹杂预测方法 |
CN112734274A (zh) * | 2021-01-20 | 2021-04-30 | 国家电网公司华中分部 | 一种低碳电网运营主导影响因素挖掘及综合评估方法 |
CN112734274B (zh) * | 2021-01-20 | 2023-11-03 | 国家电网公司华中分部 | 一种低碳电网运营主导影响因素挖掘及综合评估方法 |
CN113180623A (zh) * | 2021-06-01 | 2021-07-30 | 山东大学 | 无袖式血压测量方法、系统、设备及存储介质 |
CN113514724A (zh) * | 2021-07-15 | 2021-10-19 | 阳光电源股份有限公司 | 光伏系统及其电弧检测方法、装置 |
CN113554527A (zh) * | 2021-07-28 | 2021-10-26 | 广东电网有限责任公司 | 电费数据处理方法、装置、终端设备及存储介质 |
CN115840885A (zh) * | 2023-02-23 | 2023-03-24 | 青岛创新奇智科技集团股份有限公司 | 一种深度合成特征的特征选择方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108960436A (zh) | 特征选择方法 | |
CN108509969B (zh) | 数据标注方法及终端 | |
US6308299B1 (en) | Method and system for combinational verification having tight integration of verification techniques | |
CN112052160B (zh) | 一种代码的用例获取方法、装置、电子设备及介质 | |
CN105718848A (zh) | 一种指纹图像的质量评估方法及装置 | |
CN110765699A (zh) | 一种压裂装备作业时健康状态的评估方法及装置 | |
CN106294128B (zh) | 一种导出报表数据的自动化测试方法及装置 | |
CN114419397A (zh) | 基于数据清洗和数据生成的数据集构建方法及装置 | |
CN106326904A (zh) | 获取特征排序模型的装置和方法以及特征排序方法 | |
Voigt et al. | Metamodel matching based on planar graph edit distance | |
Lochmann | A benchmarking-inspired approach to determine threshold values for metrics | |
US7360184B1 (en) | Method and apparatus for scenario search based random generation of functional test suites | |
CN109408396A (zh) | 软件质量评价方法、装置、设备及计算机可读存储介质 | |
Tsai et al. | Iterative design and testing within the software development life cycle | |
CN117333217A (zh) | 基于模型训练的产品销量分析方法、装置、设备及介质 | |
Fazekas et al. | Certifying Incremental SAT Solving | |
KR20100071889A (ko) | 급속 테스팅 중 다층 프로세스 공간 커버 방법 및 장치 | |
CN106570212A (zh) | 基于随机电报信号噪声的电路设计方法和仿真方法 | |
Akkouche et al. | Analog/RF test ordering in the early stages of production testing | |
US8392889B2 (en) | Methods, systems, and computer program products for real time configuration and analysis of network based algorithmic service objectives | |
Helmy et al. | Evaluating the Proposed Public Budget Ontological Model | |
CN114924992B (zh) | 一种基于形式化的fpga软件安全性验证方法及验证系统 | |
Schermann et al. | Justifying design decisions with theory-based design principles | |
Rezig et al. | Pattern-driven data cleaning | |
Nielsen et al. | Check for C-3PA: Streaming Conformance, Confidence and Completeness |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181207 |
|
RJ01 | Rejection of invention patent application after publication |