2153 строки
56 KiB
Markdown
2153 строки
56 KiB
Markdown
# Лабораторная работа №1
|
|
### Бинарная классификация фактографических данных
|
|
---
|
|
Выполнила: Мачулина Дарья
|
|
Группа: А-02-22
|
|
Вариант 9
|
|
|
|
---
|
|
### 1. Создать новый ноутбук (Notebook) и импортировать необходимые для работы библиотеки и модули
|
|
```python
|
|
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` – массив входных данных:
|
|
|
|
```python
|
|
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а
|
|
|
|
|
|
```python
|
|
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)
|
|
```
|
|
|
|
```python
|
|
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. Отображение на графике сгенерированных данных
|
|
```python
|
|
plt.scatter (X[:,0], X[:,1], c=y)
|
|
plt.show
|
|
```
|
|
![[1.png]]
|
|
|
|
---
|
|
### 4. Разбиение выборки на тестовое и обучающее множества. Отображение выборок на графиках
|
|
```python
|
|
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 1)
|
|
```
|
|
|
|
**Обучающая выборка**
|
|
```python
|
|
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()
|
|
```
|
|
![[train.png]]
|
|
|
|
**Тестовая выборка**
|
|
|
|
```python
|
|
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()
|
|
```
|
|
|
|
![[test.png]]
|
|
|
|
|
|
---
|
|
### 5. Реализация модели классификации: метод k-ближайших соседей
|
|
|
|
**n_neighbours = 1**
|
|
```python
|
|
knn = KNeighborsClassifier(n_neighbors=1, metric = 'euclidean')
|
|
knn.fit(X_train, y_train)
|
|
prediction = knn.predict(X_test)
|
|
```
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[97 31]
|
|
[23 99]]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.784
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.81</td>
|
|
<td>0.76</td>
|
|
<td>0.78</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.76</td>
|
|
<td>0.81</td>
|
|
<td>0.79</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.78</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.78</td>
|
|
<td>0.78</td>
|
|
<td>0.78</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.79</td>
|
|
<td>0.78</td>
|
|
<td>0.78</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.7846439549180328
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[RS1.png]]
|
|
|
|
**n_neighbours = 3**
|
|
```python
|
|
knn = KNeighborsClassifier(n_neighbors=3, metric = 'euclidean')
|
|
knn.fit(X_train, y_train)
|
|
prediction = knn.predict(X_test)
|
|
```
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[97 31]
|
|
[8 114]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.844
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.92</td>
|
|
<td>0.76</td>
|
|
<td>0.83</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.79</td>
|
|
<td>0.93</td>
|
|
<td>0.85</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.84</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.86</td>
|
|
<td>0.85</td>
|
|
<td>0.84</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.86</td>
|
|
<td>0.84</td>
|
|
<td>0.84</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.8461193647540983
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[RS3.png]]
|
|
|
|
|
|
**n_neighbours = 9**
|
|
```python
|
|
knn = KNeighborsClassifier(n_neighbors=9, metric = 'euclidean')
|
|
knn.fit(X_train, y_train)
|
|
prediction = knn.predict(X_test)
|
|
```
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[97 31]
|
|
[2 120]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.868
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.98</td>
|
|
<td>0.76</td>
|
|
<td>0.85</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.79</td>
|
|
<td>0.98</td>
|
|
<td>0.88</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.89</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.89</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.8707095286885246
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[RS9.png]]
|
|
|
|
---
|
|
### 6. Реализация модели классификации: наивный байесовский метод
|
|
```python
|
|
from sklearn.naive_bayes import GaussianNB
|
|
```
|
|
|
|
```python
|
|
gnb=GaussianNB()
|
|
gnb.fit(X_train, y_train)
|
|
prediction = gnb.predict(X_test)
|
|
```
|
|
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[96 32]
|
|
[0 122]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.872
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>1.00</td>
|
|
<td>0.75</td>
|
|
<td>0.86</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.79</td>
|
|
<td>1.00</td>
|
|
<td>0.88</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.90</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.90</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.875
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[NB.png]]
|
|
|
|
---
|
|
### 7. Реализация модели классификации: метод "Случайный лес"
|
|
|
|
**n_estimators = 5**
|
|
|
|
```python
|
|
from sklearn.ensemble import RandomForestClassifier
|
|
```
|
|
|
|
```python
|
|
rf=RandomForestClassifier(n_estimators=5,random_state=42)
|
|
rf.fit(X_train, y_train)
|
|
prediction = rf.predict(X_test)
|
|
```
|
|
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[103 25]
|
|
[12 110]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.852
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.90</td>
|
|
<td>0.80</td>
|
|
<td>0.85</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.81</td>
|
|
<td>0.90</td>
|
|
<td>0.86</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.85</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.86</td>
|
|
<td>0.85</td>
|
|
<td>0.85</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.86</td>
|
|
<td>0.85</td>
|
|
<td>0.85</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.8531634221311475
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[RF5.png]]
|
|
|
|
|
|
|
|
**n_estimators = 15**
|
|
|
|
```python
|
|
from sklearn.ensemble import RandomForestClassifier
|
|
```
|
|
|
|
```python
|
|
rf=RandomForestClassifier(n_estimators=15,random_state=42)
|
|
rf.fit(X_train, y_train)
|
|
prediction = rf.predict(X_test)
|
|
```
|
|
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[104 24]
|
|
[6 116]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.88
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.95</td>
|
|
<td>0.81</td>
|
|
<td>0.87</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.83</td>
|
|
<td>0.95</td>
|
|
<td>0.89</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.89</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.89</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.8816598360655737
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[RF15.png]]
|
|
|
|
**n_estimators = 50**
|
|
|
|
```python
|
|
from sklearn.ensemble import RandomForestClassifier
|
|
```
|
|
|
|
```python
|
|
rf=RandomForestClassifier(n_estimators=50,random_state=42)
|
|
rf.fit(X_train, y_train)
|
|
prediction = rf.predict(X_test)
|
|
```
|
|
|
|
**Оценка качества модели**:
|
|
- Предсказанные и истинные значения
|
|
```python
|
|
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]
|
|
|
|
- Матрица неточностей
|
|
```python
|
|
print ('Confusion matrix: ')
|
|
print (confusion_matrix(y_test, prediction))
|
|
```
|
|
Confusion matrix:
|
|
[[104 24]
|
|
[7 115]]
|
|
|
|
- Оценка аккуратности классификации
|
|
```python
|
|
print ('Accuracy score: ', accuracy_score(prediction, y_test))
|
|
```
|
|
Accuracy score: 0.876
|
|
|
|
- Оценка показателей полноты, точности и f-1 меры
|
|
```python
|
|
print(classification_report(y_test, prediction))
|
|
```
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.94</td>
|
|
<td>0.81</td>
|
|
<td>0.87</td>
|
|
<td>128</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.83</td>
|
|
<td>0.94</td>
|
|
<td>0.88</td>
|
|
<td>122</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
```python
|
|
roc_auc_score(y_test, prediction)
|
|
```
|
|
0.8775614754098361
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
```python
|
|
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)
|
|
```
|
|
![[RF50.png]]
|
|
|
|
|
|
### 8. Исследование для Random State = 2
|
|
![[train(2).png]]
|
|
|
|
![[test(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.86</td>
|
|
<td>0.78</td>
|
|
<td>0.82</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.83</td>
|
|
<td>0.90</td>
|
|
<td>0.86</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.84</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.85</td>
|
|
<td>0.84</td>
|
|
<td>0.84</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.85</td>
|
|
<td>0.84</td>
|
|
<td>0.84</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8388802889576883
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RS1(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.91</td>
|
|
<td>0.78</td>
|
|
<td>0.84</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.93</td>
|
|
<td>0.88</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.86</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.87</td>
|
|
<td>0.86</td>
|
|
<td>0.86</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.87</td>
|
|
<td>0.86</td>
|
|
<td>0.86</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8572626418988647
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RS3(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.99</td>
|
|
<td>0.78</td>
|
|
<td>0.87</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.99</td>
|
|
<td>0.91</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.90</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.92</td>
|
|
<td>0.89</td>
|
|
<td>0.89</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.91</td>
|
|
<td>0.90</td>
|
|
<td>0.89</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8866744066047471
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RS9(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.99</td>
|
|
<td>0.77</td>
|
|
<td>0.87</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.99</td>
|
|
<td>0.91</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.89</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.91</td>
|
|
<td>0.88</td>
|
|
<td>0.89</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.91</td>
|
|
<td>0.89</td>
|
|
<td>0.89</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8822884416924665
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[NB(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.90</td>
|
|
<td>0.80</td>
|
|
<td>0.85</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.85</td>
|
|
<td>0.93</td>
|
|
<td>0.88</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.87</td>
|
|
<td>0.86</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.862358101135191
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RF5(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.93</td>
|
|
<td>0.79</td>
|
|
<td>0.85</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.95</td>
|
|
<td>0.89</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.89</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
|
|
- Оценка показателя 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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.93</td>
|
|
<td>0.79</td>
|
|
<td>0.85</td>
|
|
<td>114</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.95</td>
|
|
<td>0.89</td>
|
|
<td>136</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.89</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8690015479876161
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RF50(2).png]]
|
|
|
|
|
|
### 9. Исследование для Random State = 3
|
|
![[train(3).png]]
|
|
![[test(3).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.85</td>
|
|
<td>0.81</td>
|
|
<td>0.83</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.80</td>
|
|
<td>0.85</td>
|
|
<td>0.83</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.83</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.83</td>
|
|
<td>0.83</td>
|
|
<td>0.83</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.83</td>
|
|
<td>0.83</td>
|
|
<td>0.83</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8288461538461539
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RS1(3).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.95</td>
|
|
<td>0.80</td>
|
|
<td>0.87</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.81</td>
|
|
<td>0.95</td>
|
|
<td>0.88</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.875
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RS3(3).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.97</td>
|
|
<td>0.77</td>
|
|
<td>0.86</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.80</td>
|
|
<td>0.97</td>
|
|
<td>0.88</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.89</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8721153846153846
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RS9(3).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.99</td>
|
|
<td>0.82</td>
|
|
<td>0.90</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.99</td>
|
|
<td>0.91</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.30</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.91</td>
|
|
<td>0.91</td>
|
|
<td>0.90</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.92</td>
|
|
<td>0.90</td>
|
|
<td>0.90</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.9073717948717948
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[NB(3).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.91</td>
|
|
<td>0.82</td>
|
|
<td>0.86</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.83</td>
|
|
<td>0.91</td>
|
|
<td>0.87</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.86</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.87</td>
|
|
<td>0.87</td>
|
|
<td>0.86</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.87</td>
|
|
<td>0.86</td>
|
|
<td>0.86</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.8657051282051281
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RF5(2).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.93</td>
|
|
<td>0.84</td>
|
|
<td>0.88</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.84</td>
|
|
<td>0.93</td>
|
|
<td>0.89</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.89</td>
|
|
<td>0.89</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.89</td>
|
|
<td>0.88</td>
|
|
<td>0.87</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.885897435897436
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RF15(3).png]]
|
|
|
|
**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 меры
|
|
<table>
|
|
<thead>
|
|
<tr>
|
|
<th> </th>
|
|
<th>precision</th>
|
|
<th>recall</th>
|
|
<th>f1-score</th>
|
|
<th>support</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>0</td>
|
|
<td>0.92</td>
|
|
<td>0.85</td>
|
|
<td>0.88</td>
|
|
<td>130</td>
|
|
</tr>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>0.85</td>
|
|
<td>0.93</td>
|
|
<td>0.88</td>
|
|
<td>120</td>
|
|
</tr>
|
|
<tr>
|
|
<td>accuracy</td>
|
|
<td> </td>
|
|
<td> </td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>macro avg</td>
|
|
<td>0.89</td>
|
|
<td>0.89</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
<tr>
|
|
<td>weighted avg</td>
|
|
<td>0.89</td>
|
|
<td>0.88</td>
|
|
<td>0.88</td>
|
|
<td>250</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
- Оценка показателя AUC ROC
|
|
0.885576923076923
|
|
|
|
- Отображение области принятия решений по каждому классу
|
|
![[RF50(3).png]]
|
|
|
|
|
|
### Таблица сравнения
|
|
![[tab.PNG]]
|
|
|
|
### ВЫВОД:
|
|
|
|
По результатам трёх экспериментов наилучшими показателями качества обладает наивный байесовский метод - вне зависимости от разбиения выборки, он показывал стабильно высокие значения показателей качества (accuracy, precision, recall, f1-score и ROC AUC) без большого разброса между ними и их значениями между экспериментами.
|
|
|
|
Также, высокие результаты показал RandomForest (n=15), и хотя значения показателей качества ниже, чем у наивного байесовского метода, различие метрик Accuracy и ROC AUC от эксперимента к эксперименту имеют меньший разброс, что говорит о более высокой стабильности метода
|