用模拟退火算法进行特征选择
曾经的我只知道,这台电脑缺一个好的显卡;现在的我还知道,原来这台电脑还缺一个好的CPU。
——作者
一、算法
1.生成初始随机解x
一个解x大概长这样:[0,1,1,0,0,1,0,1,1,0,1]
1表示选择这个特征,0表示不选择这个特征
解的长度为特征的个数
初始化时0和1随机选,生成一个随机解
2.解对应的能量
E = 适应度 = 交叉验证cross_val_score(解,y)的结果
3.生成新解
随机选择一个点取反
0变成1,1变成0
二、效果
没有进行特征选择时,交叉验证的得分是0.6257839721254356
用模拟退火算法进行特征选择:
三、逼逼几句
这个空间复杂度没有遗传算法那么高,因为一次只有一个解,不像遗传算法一次一个种群,好几个染色体
但是时间复杂度也是好好好好高,运行的时候风扇呼呼转,电量哗哗掉
更多:用遗传算法进行特征选择
posted on 2020-04-04 15:07 HolaWorld 阅读(1913) 评论(0) 编辑 收藏 举报