Python包来帮助您选择变量。
bcselector的Python项目详细描述
这是什么?在
特征选择是许多机器学习任务中的关键问题。通常考虑 变量的收集和存储成本很低,但在某些情况下,特征值的获取 可能会有问题。例如,在预测疾病的发生时,我们可以考虑 一些诊断测试的结果可能非常昂贵。 现有的特征选择方法通常忽略与所考虑的特征相关的代价 特征。成本敏感特征选择的目标是选择允许 在假设范围内成功预测目标变量(如疾病发生率) 预算。在
该软件包的主要目的是提供基于特征选择的过滤方法 在信息论的基础上,提出考虑特征成本的这些方法的新变体。在
快速启动
首先,我们必须有一个具有分类目标变量的数据集,并为每个特性指定一个成本。 好的示例数据可以是来自UCI存储库[1]的hepatitis。在
假设我们已经将数据集加载到Python中,我们需要创建选择器类,并使用适当的参数调用fit方法:
^{pr2}$通过调用getter功能,我们现在可以获得简单的选择结果:
fvs.get_cost_results()
或者,我们可以用任何sklearn模型和分类指标来评分和绘制结果:
fvs.score(model=model,scoring_function=roc_auc_score)fvs.plot_scores(compare_no_cost_method=True,model=model,annotate=True)
从而得出BC图:
在OX axis上,我们已经累积了成本,并且在OY轴上,我们可以看到当前所选功能集的测试集分数:
- Blue line是成本敏感的方法选择功能顺序。在
- Red line是无成本方法选择的功能顺序。在
- Blue vertical line是可用的最大预算(用户参数)
曲线上方或下方的小数字是选定要素的索引。因此,我们可以看到,成本敏感方法选择的第一个变量位于数据集X的第14列。在
书目
- [1] Dua,D.和Graff,C.(2019年)。UCI机器学习库[http://archive.ics.uci.edu/ml]。加州欧文:加州大学信息与计算机科学学院。在
引用
待定
- 项目
标签: