Как сделать "plot_decision_regions" из mlxtend построить все образцы из набора данных радужной оболочки в многоцелевом случае SVC? - PullRequest
1 голос
/ 03 октября 2019

Я пытаюсь использовать svc-модель scikit-learn для набора данных iris. Мне нужно использовать четыре функции (длина / ширина чашелистика, длина / ширина лепестка) и все три класса (setosa, versicolor, virginica) для обучения данных. Затем мне нужно визуализировать результаты, представляя только две функции на 2D-графике. Проблема, с которой я сталкиваюсь, заключается в том, что границы моих решений выглядят неправильно, и отсутствует одно подмножество выборок (выборки, классифицированные в одном из классов).

Я следовал примеру 7 из mlxtend "plot_decision_regions":

http://rasbt.github.io/mlxtend/user_guide/plotting/plot_decision_regions/#example-7-decision-regions-with-more-than-two-training-features

Я играл со значениями "value" и "width", но без особого успеха. Я также попытался изменить «zoom_factor» на более низкие значения, чтобы проверить, может быть, мой график слишком сильно увеличен.

iris = datasets.load_iris()
X = iris.data[:, [0,1,2,3]]
y = iris.target

# Training a classifier
svm = SVC(gamma='auto')
svm.fit(X, y)

# Plotting decision regions
fig, ax = plt.subplots()
# Decision region for feature 3 = 1.5
value = 1.5
# Plot training sample with feature 3 = 1.5 +/- 0.75
width = 0.75
plot_decision_regions(X, y, clf=svm,
                      filler_feature_values={2: value, 3: value},
                      filler_feature_ranges={2: width, 3: width},
                      legend=2, ax=ax,
                      zoom_factor=0.5)
ax.set_xlabel('Feature 1')
ax.set_ylabel('Feature 2')
ax.set_title('Feature 3 = {}'.format(value))

# Adding axes annotations
fig.suptitle('SVM on make_blobs')
plt.show()

Когда я пытаюсь использовать все четыре функции, я получаю только границы решения без показанных образцов. С тремя признаками показан только один набор образцов, должным образом классифицированный с классом 0. С двумя функциями он показывает все три набора образцов, должным образом классифицированный среди трех классов.

...