我目前正在比较 Python 中的采样技术,并了解应用这些采样技术后过采样对数据集分类的效果如何。我正在尝试比较不确定性采样和熵过采样,我理解它们是相似的,但仍应给出不同的结果。我正在使用 modAL Python 包。
from modAL.uncertainty import uncertainty_sampling, entropy_sampling
from sklearn import svm
import numpy as np
X = [1,2,3,4,5,6,7,8,9,4,2,6,2,8,3,4,8,3,2,7,3,67,4,3,1,7,67,49]
X = np.array(X)
_, X_uncert = uncertainty_sampling(classifier = svm.SVC(decision_function_shape='ovo', gamma='auto', probability=True), n_instances=5, X=X)
_, X_ent = entropy_sampling(classifier = svm.SVC(decision_function_shape='ovo', gamma='auto', probability=True), n_instances=5, X=X)
print("UNCERTAINTY")
print(X_uncert)
print("ENTROPY")
print(X_ent)
这两种采样技术都给出了相同的结果:
UNCERTAINTY
[ 7 3 67 2 4]
ENTROPY
[ 7 3 67 2 4]
modAL 还具有边距采样功能,它再次给出相同的结果。关于为什么会发生这种情况的任何帮助?
谢谢