56 KiB
Лабораторная работа №1
Бинарная классификация фактографических данных
Выполнила: Мачулина Дарья Группа: А-02-22 Вариант 9
1. Создать новый ноутбук (Notebook) и импортировать необходимые для работы библиотеки и модули
import numpy as np
# `ребуемые модули из sklearn
from sklearn.datasets import make_classification
from sklearn.metrics import confusion_matrix, classification_report, accuracy_score, roc_auc_score
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
#Графики
import matplotlib.pyplot as plt
Для отображения на графике области принятия решения - готовую функцию plot_2d_separator, которой нужно передать на вход объект classifier – модель классификатора и X – массив входных данных:
def plot_2d_separator(classifier, X, fill=False, line=True, ax=None, eps=None):
if eps is None:
eps = 1.0 #X.std() / 2.
x_min, x_max = X[:, 0].min() - eps, X[:, 0].max() + eps
y_min, y_max = X[:, 1].min() - eps, X[:, 1].max() + eps
xx = np.linspace(x_min, x_max, 100)
yy = np.linspace(y_min, y_max, 100)
X1, X2 = np.meshgrid(xx, yy)
X_grid = np.c_[X1.ravel(), X2.ravel()]
try:
decision_values = classifier.decision_function(X_grid)
levels = [0]
fill_levels = [decision_values.min(), 0, decision_values.max()]
except AttributeError:
# no decision_function
decision_values = classifier.predict_proba(X_grid)[:, 1]
levels = [.5]
fill_levels = [0, .5, 1]
if ax is None:
ax = plt.gca()
if fill:
ax.contourf(X1, X2, decision_values.reshape(X1.shape),
levels=fill_levels, colors=['cyan', 'pink', 'yellow'])
if line:
ax.contour(X1, X2, decision_values.reshape(X1.shape), levels=levels, colors="black")
ax.set_xlim(x_min, x_max)
ax.set_ylim(y_min, y_max)
ax.set_xticks(())
ax.set_yticks(())
2. Загрузить данные в соответствии с вариантом и вывести первые 15 точек с метками классaа
X, y = make_classification(n_features=2, random_state = 78, class_sep = 0.45, n_redundant=0, n_informative=1, n_clusters_per_class=1, n_samples = 1000)
print ("Координаты точек: ")
print (X[:15])
print ("Метки класса: ")
print (y[:15])
Координаты точек: [ 1.48828264e+00 -7.10442604e-01] [-7.10253928e-01 6.93938341e-01] [ 5.33444250e-01 -1.31136377e+00] [ 1.08104452e+00 5.34466225e-01] [-3.97224728e-01 1.29783335e-01] [ 1.12862644e-01 5.10913913e-01] [ 7.13520454e-04 7.42926105e-01] [-1.50699375e+00 -1.51932200e+00] [-7.09257115e-01 4.58339246e-01] [-1.51395805e+00 -1.13202013e-01] [ 1.64173194e+00 5.62099713e-01] [-2.07311044e+00 -7.20098263e-01] [ 1.21634891e+00 4.34451064e-01] [-1.39209028e+00 5.71283980e-01] [ 4.57465767e-01 5.26568280e-01]
Метки класса: [0 1 0 1 0 1 0 0 1 0 1 0 1 1 1]
3. Отображение на графике сгенерированных данных
plt.scatter (X[:,0], X[:,1], c=y)
plt.show
4. Разбиение выборки на тестовое и обучающее множества. Отображение выборок на графиках
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 1)
Обучающая выборка
plt.figure(figsize=(7, 5))
plt.scatter(
X_train[:, 0], X_train[:, 1],
c=y_train,
label="train"
)
plt.title("Обучающая выборка")
plt.xlabel("x1")
plt.ylabel("x2")
plt.grid(True, alpha=0.3)
plt.show()
Тестовая выборка
plt.figure(figsize=(7, 5))
# Тестовая выборка
plt.scatter(
X_test[:, 0], X_test[:, 1],
c=y_test,
label="test"
)
plt.title("Тестовая выборка")
plt.xlabel("x1")
plt.ylabel("x2")
plt.grid(True, alpha=0.3)
plt.show()
5. Реализация модели классификации: метод k-ближайших соседей
n_neighbours = 1
knn = KNeighborsClassifier(n_neighbors=1, metric = 'euclidean')
knn.fit(X_train, y_train)
prediction = knn.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 0 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 1 1 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 0 0 1 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1 1 1 0 0 1 1 0 0 0 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 0 0 0 1 1 0 0 0 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[97 31] [23 99]]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.784
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.81 | 0.76 | 0.78 | 128 |
| 1 | 0.76 | 0.81 | 0.79 | 122 |
| accuracy | 0.78 | 250 | ||
| macro avg | 0.78 | 0.78 | 0.78 | 250 |
| weighted avg | 0.79 | 0.78 | 0.78 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.7846439549180328
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(knn, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
n_neighbours = 3
knn = KNeighborsClassifier(n_neighbors=3, metric = 'euclidean')
knn.fit(X_train, y_train)
prediction = knn.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[97 31] [8 114]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.844
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.92 | 0.76 | 0.83 | 128 |
| 1 | 0.79 | 0.93 | 0.85 | 122 |
| accuracy | 0.84 | 250 | ||
| macro avg | 0.86 | 0.85 | 0.84 | 250 |
| weighted avg | 0.86 | 0.84 | 0.84 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.8461193647540983
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(knn, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
n_neighbours = 9
knn = KNeighborsClassifier(n_neighbors=9, metric = 'euclidean')
knn.fit(X_train, y_train)
prediction = knn.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 1 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[97 31] [2 120]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.868
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.98 | 0.76 | 0.85 | 128 |
| 1 | 0.79 | 0.98 | 0.88 | 122 |
| accuracy | 0.87 | 250 | ||
| macro avg | 0.89 | 0.87 | 0.87 | 250 |
| weighted avg | 0.89 | 0.87 | 0.87 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.8707095286885246
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(knn, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
6. Реализация модели классификации: наивный байесовский метод
from sklearn.naive_bayes import GaussianNB
gnb=GaussianNB()
gnb.fit(X_train, y_train)
prediction = gnb.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 1 1 1 0 0 1 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 1 0 0 1 1 1 0 0 1 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 1 1 1 0 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 1 1 1 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 1 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[96 32] [0 122]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.872
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 1.00 | 0.75 | 0.86 | 128 |
| 1 | 0.79 | 1.00 | 0.88 | 122 |
| accuracy | 0.87 | 250 | ||
| macro avg | 0.90 | 0.88 | 0.87 | 250 |
| weighted avg | 0.90 | 0.87 | 0.87 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.875
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(gnb, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
7. Реализация модели классификации: метод "Случайный лес"
n_estimators = 5
from sklearn.ensemble import RandomForestClassifier
rf=RandomForestClassifier(n_estimators=5,random_state=42)
rf.fit(X_train, y_train)
prediction = rf.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 1 1 0 0 1 0 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 0 0 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 0 1 0 1 1 1 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 1 0 1 1 1 0 1 0 0 0 1 1 0 0 1 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[103 25] [12 110]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.852
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.90 | 0.80 | 0.85 | 128 |
| 1 | 0.81 | 0.90 | 0.86 | 122 |
| accuracy | 0.85 | 250 | ||
| macro avg | 0.86 | 0.85 | 0.85 | 250 |
| weighted avg | 0.86 | 0.85 | 0.85 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.8531634221311475
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(rf, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
n_estimators = 15
from sklearn.ensemble import RandomForestClassifier
rf=RandomForestClassifier(n_estimators=15,random_state=42)
rf.fit(X_train, y_train)
prediction = rf.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 0 0 1 0 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 1 1 1 0 1 0 0 0 1 0 1 1 1 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[104 24] [6 116]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.88
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.95 | 0.81 | 0.87 | 128 |
| 1 | 0.83 | 0.95 | 0.89 | 122 |
| accuracy | 0.88 | 250 | ||
| macro avg | 0.89 | 0.88 | 0.88 | 250 |
| weighted avg | 0.89 | 0.88 | 0.88 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.8816598360655737
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(rf, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
n_estimators = 50
from sklearn.ensemble import RandomForestClassifier
rf=RandomForestClassifier(n_estimators=50,random_state=42)
rf.fit(X_train, y_train)
prediction = rf.predict(X_test)
Оценка качества модели:
- Предсказанные и истинные значения
print ('Prediction and test: ')
print (prediction)
print (y_test)
Prediction and test: [0 1 1 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 0 0 1 0 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 1 1 0 1 1 1 0 1 0 0 0 1 0 1 1 1 1 1 1 1 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 0 0]
[0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 1 1 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 0 1 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 0 0 0 0]
- Матрица неточностей
print ('Confusion matrix: ')
print (confusion_matrix(y_test, prediction))
Confusion matrix: [[104 24] [7 115]]
- Оценка аккуратности классификации
print ('Accuracy score: ', accuracy_score(prediction, y_test))
Accuracy score: 0.876
- Оценка показателей полноты, точности и f-1 меры
print(classification_report(y_test, prediction))
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.94 | 0.81 | 0.87 | 128 |
| 1 | 0.83 | 0.94 | 0.88 | 122 |
| accuracy | 0.88 | 250 | ||
| macro avg | 0.88 | 0.88 | 0.88 | 250 |
| weighted avg | 0.88 | 0.88 | 0.88 | 250 |
- Оценка показателя AUC ROC
roc_auc_score(y_test, prediction)
0.8775614754098361
- Отображение области принятия решений по каждому классу
plt.xlabel("first feature")
plt.ylabel("second feature")
plot_2d_separator(rf, X, fill=True)
plt.scatter(X[:, 0], X[:, 1], c=y, s=70)
8. Исследование для Random State = 2
n_neighbours = 1 Оценка качества модели:
- Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 0 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 0 0 0 1 1 0 0 1 1 0 0 0 1 1 0 0 0 0 0 1 0 1 1 1 1 0 1 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 1 1 1 1 1 1 1 0 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 1 1 1 1 1 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1]
[0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[89 25] [14 122]]]
-
Оценка аккуратности классификации Accuracy score: 0.844
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.86 | 0.78 | 0.82 | 114 |
| 1 | 0.83 | 0.90 | 0.86 | 136 |
| accuracy | 0.84 | 250 | ||
| macro avg | 0.85 | 0.84 | 0.84 | 250 |
| weighted avg | 0.85 | 0.84 | 0.84 | 250 |
-
Оценка показателя AUC ROC 0.8388802889576883
n_neighbours = 3 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 0 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 0 1 0 1 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 1 1 1 1 1 0 0 0 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 1 0 0 1 0 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 1 0 1 1 1 0 0 1 1 1] [0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[89 25] [9 127]]]
-
Оценка аккуратности классификации Accuracy score: 0.864
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.91 | 0.78 | 0.84 | 114 |
| 1 | 0.84 | 0.93 | 0.88 | 136 |
| accuracy | 0.86 | 250 | ||
| macro avg | 0.87 | 0.86 | 0.86 | 250 |
| weighted avg | 0.87 | 0.86 | 0.86 | 250 |
-
Оценка показателя AUC ROC 0.8572626418988647
n_neighbours = 9 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 0 1 0 0 1 1 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1] [0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[89 25] [1 135]]]
-
Оценка аккуратности классификации Accuracy score: 0.896
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.99 | 0.78 | 0.87 | 114 |
| 1 | 0.84 | 0.99 | 0.91 | 136 |
| accuracy | 0.90 | 250 | ||
| macro avg | 0.92 | 0.89 | 0.89 | 250 |
| weighted avg | 0.91 | 0.90 | 0.89 | 250 |
-
Оценка показателя AUC ROC 0.8866744066047471
GaussianNB Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 1 1 1 1 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1] [0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[88 26] [1 135]]]
-
Оценка аккуратности классификации Accuracy score: 0.892
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.99 | 0.77 | 0.87 | 114 |
| 1 | 0.84 | 0.99 | 0.91 | 136 |
| accuracy | 0.89 | 250 | ||
| macro avg | 0.91 | 0.88 | 0.89 | 250 |
| weighted avg | 0.91 | 0.89 | 0.89 | 250 |
-
Оценка показателя AUC ROC 0.8822884416924665
n_estimators = 5 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1] [0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[91 23] [10 126]
-
Оценка аккуратности классификации Accuracy score: 0.868
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.90 | 0.80 | 0.85 | 114 |
| 1 | 0.85 | 0.93 | 0.88 | 136 |
| accuracy | 0.87 | 250 | ||
| macro avg | 0.87 | 0.86 | 0.87 | 250 |
| weighted avg | 0.87 | 0.87 | 0.87 | 250 |
-
Оценка показателя AUC ROC 0.862358101135191
n_estimators = 15 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1] [0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[90 24] [7 129]]]
-
Оценка аккуратности классификации Accuracy score: 0.876
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.93 | 0.79 | 0.85 | 114 |
| 1 | 0.84 | 0.95 | 0.89 | 136 |
| accuracy | 0.88 | 250 | ||
| macro avg | 0.89 | 0.87 | 0.87 | 250 |
| weighted avg | 0.88 | 0.88 | 0.87 | 250 |
-
Оценка показателя AUC ROC 0.8690015479876161
-
Отображение области принятия решений по каждому классу
n_estimators = 50 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [0 0 1 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 1 1 0 1 0 1 0 0 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1] [0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 1 1 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 1 0 0 0 0 1 0 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 0 0 1 1 1]
-
Матрица неточностей Confusion matrix: [[90 24] [7 129]]]
-
Оценка аккуратности классификации Accuracy score: 0.876
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.93 | 0.79 | 0.85 | 114 |
| 1 | 0.84 | 0.95 | 0.89 | 136 |
| accuracy | 0.88 | 250 | ||
| macro avg | 0.89 | 0.87 | 0.87 | 250 |
| weighted avg | 0.88 | 0.88 | 0.87 | 250 |
-
Оценка показателя AUC ROC 0.8690015479876161
9. Исследование для Random State = 3
n_neighbours = 1 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 0 1 1 1 0 1 0 1 1 0 1 1 0 1 0 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 0 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 1 0 1 1 0 1 1 1 1 1 0 1 0 0 1] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[105 25] [18 102]]]
-
Оценка аккуратности классификации Accuracy score: 0.828
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.85 | 0.81 | 0.83 | 130 |
| 1 | 0.80 | 0.85 | 0.83 | 120 |
| accuracy | 0.83 | 250 | ||
| macro avg | 0.83 | 0.83 | 0.83 | 250 |
| weighted avg | 0.83 | 0.83 | 0.83 | 250 |
-
Оценка показателя AUC ROC 0.8288461538461539
n_neighbours = 3 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 0 1 0 1 1 0 1 1 0 1 1 0 1 1 1 0 0 1 1 1 1 1 1 1 0 1 0 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 1 0 0 0 0 0 0 0 1 0 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[104 26] [6 114]]]
-
Оценка аккуратности классификации Accuracy score: 0.872
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.95 | 0.80 | 0.87 | 130 |
| 1 | 0.81 | 0.95 | 0.88 | 120 |
| accuracy | 0.87 | 250 | ||
| macro avg | 0.88 | 0.88 | 0.87 | 250 |
| weighted avg | 0.88 | 0.87 | 0.87 | 250 |
n_neighbours = 9 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 1 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 1 0 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 0 0 0 0 1 0 1 1 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 1 0 0 0 1 1 0 1 0 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 0 1 1 0 1] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[100 30] [3 117]]]
-
Оценка аккуратности классификации Accuracy score: 0.868
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.97 | 0.77 | 0.86 | 130 |
| 1 | 0.80 | 0.97 | 0.88 | 120 |
| accuracy | 0.87 | 250 | ||
| macro avg | 0.88 | 0.87 | 0.87 | 250 |
| weighted avg | 0.89 | 0.87 | 0.87 | 250 |
-
Оценка показателя AUC ROC 0.8721153846153846
GaussianNB Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 1 1 1 1 1 0 0 1 1 1 0 1 1 1 0 1 0 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[107 23] [1 119]]]
-
Оценка аккуратности классификации Accuracy score: 0.904
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.99 | 0.82 | 0.90 | 130 |
| 1 | 0.84 | 0.99 | 0.91 | 120 |
| accuracy | 0.30 | 250 | ||
| macro avg | 0.91 | 0.91 | 0.90 | 250 |
| weighted avg | 0.92 | 0.90 | 0.90 | 250 |
-
Оценка показателя AUC ROC 0.9073717948717948
n_estimators = 5 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 1 1 1 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 1 1 1 0 1 0 0 1 1 1 0 1 1 1 0 1 0 0 1 0 0 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 0] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[107 23] [[11 109]
-
Оценка аккуратности классификации Accuracy score: 0.864
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.91 | 0.82 | 0.86 | 130 |
| 1 | 0.83 | 0.91 | 0.87 | 120 |
| accuracy | 0.86 | 250 | ||
| macro avg | 0.87 | 0.87 | 0.86 | 250 |
| weighted avg | 0.87 | 0.86 | 0.86 | 250 |
-
Оценка показателя AUC ROC 0.8657051282051281
n_estimators = 15 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 1 1 1 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 1 0 1 0 0 1 1 1 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 0 1 1 1 1 1 1 1 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[109 21] [8 112]]]
-
Оценка аккуратности классификации Accuracy score: 0.884
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.93 | 0.84 | 0.88 | 130 |
| 1 | 0.84 | 0.93 | 0.89 | 120 |
| accuracy | 0.88 | 250 | ||
| macro avg | 0.89 | 0.89 | 0.88 | 250 |
| weighted avg | 0.89 | 0.88 | 0.87 | 250 |
-
Оценка показателя AUC ROC 0.885897435897436
n_estimators = 50 Оценка качества модели:
-
Предсказанные и истинные значения Prediction and test: [1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 1 0 1 1 0 0 1 0 1 1 0 1 1 1 0 0 1 1 1 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 0 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1] [1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 1 1 0 0 0 0 0 0 1 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 0 1 0 1 1 0 1]
-
Матрица неточностей Confusion matrix: [[110 20] [9 111]]]
-
Оценка аккуратности классификации Accuracy score: 0.884
-
Оценка показателей полноты, точности и f-1 меры
| precision | recall | f1-score | support | |
|---|---|---|---|---|
| 0 | 0.92 | 0.85 | 0.88 | 130 |
| 1 | 0.85 | 0.93 | 0.88 | 120 |
| accuracy | 0.88 | 250 | ||
| macro avg | 0.89 | 0.89 | 0.88 | 250 |
| weighted avg | 0.89 | 0.88 | 0.88 | 250 |
-
Оценка показателя AUC ROC 0.885576923076923
Таблица сравнения
ВЫВОД:
По результатам трёх экспериментов наилучшими показателями качества обладает наивный байесовский метод - вне зависимости от разбиения выборки, он показывал стабильно высокие значения показателей качества (accuracy, precision, recall, f1-score и ROC AUC) без большого разброса между ними и их значениями между экспериментами.
Также, высокие результаты показал RandomForest (n=15), и хотя значения показателей качества ниже, чем у наивного байесовского метода, различие метрик Accuracy и ROC AUC от эксперимента к эксперименту имеют меньший разброс, что говорит о более высокой стабильности метода


























