用模拟退火算法进行特征选择


曾经的我只知道,这台电脑缺一个好的显卡;现在的我还知道,原来这台电脑还缺一个好的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

用模拟退火算法进行特征选择:

三、逼逼几句

这个空间复杂度没有遗传算法那么高,因为一次只有一个解,不像遗传算法一次一个种群,好几个染色体
但是时间复杂度也是好好好好高,运行的时候风扇呼呼转,电量哗哗掉
更多:用遗传算法进行特征选择


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM