我有可变重要性代码。它没有将重要性归一化,即重要性没有被它们的差异的标准偏差所除。这是代码,
def permutation_importances(rf,X_data, y_data):
baseline = rf.score(X_data, y_data)
imp = []
for col in X_data.columns:
save = X_data[col].copy()
X_data[col] = np.random.permutation(X_data[col])
m = rf.score(X_data, y_data)
X_data[col] = save
imp.append(baseline - m)
return np.array(imp)
它以正确的顺序给出了我的重要变量,但是其中一个值是负数。如果将其除以其标准偏差,则结果为负。这些是我排列后得到的值:
1 glucose 0.152700
5 mass 0.068901
6 pedigree 0.037244
0 pregnant 0.026071
7 age 0.026071
2 pressure 0.011173
4 insulin 0.011173
3 triceps -0.001862
重要性可以否定吗?