我希望显示有关隔离林输出结果的信息,例如隔离索引(在图形上)和预测的准确性。
我使用了sklearn的隔离森林功能。
#include "coodzial.h"
我的结果就像image,但只有一个簇(并且有一些点扩散),所有点都是相同的颜色:通过将yPredTest作为颜色解决问题。
另一个问题是,我不知道如何启用两个以上的功能。
我有两套(火车和测试),就像clf = IsolationForest()
clf.fit(X_train)
yPredTest = clf.predict(X_test)
xx, yy = np.meshgrid(np.linspace(-3, 88), np.linspace(-1, 50))
Z = clf.decision_function(np.c_[xx.ravel(), yy.ravel()])
Z = Z.reshape(xx.shape)
plt.title("Isolation Forest")
plt.contourf(xx, yy, Z, cmap=plt.cm.Blues_r)
b = plt.scatter(X_test[:, 0], X_test[:, 1], c='black')
plt.show()
一样,算法让我截断我的集合,如[[0,1,34,38O,24],[98,938,238,23,1],[...],[0,13,3,23,49]]
和X_train = np.array(list)[:100,[1,2]]
,否则X_test = np.array(list)[101:,[1,2]]
和np.array(list)[:100,]
它会停下来并提醒我:
np.array(list)[101:,]
问题似乎是ValueError: Number of features of the model must match the input. Model n_features is 8 and input n_features is 2
答案 0 :(得分:1)
我看到"另一个问题",但第一个问题在哪里?
由于散射时的参数c='black'
,你得到相同的颜色。尝试将yPredTest分配给此参数。
xx,yy是计划图的网格(您可以打印它们以检查它们是什么)。如果您想使用两个以上的功能,PCA可能会提供帮助。