-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
入选变量数 #2
Comments
因为遗传算法里面有随机因子,所以没办法控制输出变量个数除非修改内部函数来强制约束,不过你可以将self.columns里面的变量设置少一点(35维左右)应该是可以控制输出变量在20维以内,因为算法只能从self.columns里面的特征进行选择,所以你可以把你认为比较重要的那些变量放进去试试。我觉得遗传算法是为了选择出一个好的特征组合而并不一定是最有区分度的特征。 |
我明白了,对于变量少时,可以用遗传算法选最优组合,我的第一个变量时target,谢谢你的回答,代码写的很好!还有想问下,里面的这个参数,aGeneLenght (基因长度),可不可以理解为第一次,进入遗传算法的,关键变量的数量少一点,比如我设置 aGeneLenght =len(self.columns)*0.5,是不是最后出来的最优组合变量就会少一点,因为第一步筛选的时候只会选择一半的变量 |
aGeneLenght是基因长度,取决于self.columns的长度,如果让aGeneLenght =len(self.columns)*0.5的话基因长度就改变了,那么self.columns里面的变量就表示不完全,这样是不可行的。 |
明白,谢谢你,提供的代码,和思路讲解 |
你好,只能用于二分类的特征选择吗? |
可以进行多分类,需要修改下代码文件Feature_selection_genetic_algorithm.py 中的auc_score函数,评测指标要求越大越好。 |
你好,请问我是否可以通过控制initPopulation函数里随机产生gene中0和1的比例来控制最终的入选变量数? |
应该不行,这控制不了变异过程 |
你好,看了你之前的方差以及卡方等选择变量方法,可以设置入选变量数,我自己也实现了。
想问下你,这个遗传算法,在哪儿可以设置入选变量数,或者选择训练的变量数,可以像随机森林一样,随机抽一部分变量训练。
我自己的样本有155个变量(不包含target),结果训练处的最佳组合就155个变量,AUC为1
想问下,我想设置下我的最终入选变量数为<20,怎么设置。
因为我的目的是做评分卡,变量太多了
The text was updated successfully, but these errors were encountered: