# Perform classification and store performance in P
classifier.fit(X_subset, y)
P = (classifier.predict(X_subset) == y).mean()
# Compute for the objective function
j = (alpha * (1.0 - P)
+ (1.0 - alpha) * (1 - (X_subset.shape[1] / total_features)))
return j
一个简单的方法是对使用任意数量的功能引入惩罚。在下面的代码中,我定义了一个目标
您可以做的是,如果功能的数量大约为
max_num_features
,则添加一个惩罚,例如并定义一个新的目标,包括:
这是没有测试,有工作要做,以找到正确的惩罚。另一种方法是永远不要建议/尝试高于特定阈值的功能
相关问题 更多 >
编程相关推荐