text_lab1
.pdf11. Разбиение данных на обучающую и тестовую выборку в соотношении 65% - 35%.
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.35, random_state = 1, )
plt.scatter (X_train[:,0], X_train[:,1], c=y_train)
plt.show
plt.scatter (X_test[:,0], X_test[:,1], c=y_test)
plt.show
1)Метод к-ближайших соседей при n_neighbors=1:
Prediction and test:
[0 0 1 1 0 0 0 0 0 0 1 0 0 1 1 0 1 0 1 0 0 1 1 1 0 0 0 0 1 0 1 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[19 3] [ 3 10]]
Accuracy score: 0.8285714285714286
precision recall f1-score support
0 |
0.86 |
0.86 |
0.86 |
22 |
1 |
0.77 |
0.77 |
0.77 |
13 |
accuracy |
|
|
0.83 |
35 |
macro avg |
0.82 |
0.82 |
0.82 |
35 |
weighted avg |
0.83 |
0.83 |
0.83 |
35 |
roc_auc_score: 0.8164335664335665
2)Метод к-ближайших соседей при n_neighbors=3:
Prediction and test:
[0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[21 1] [ 3 10]]
Accuracy score: 0.8857142857142857
precision recall f1-score support
0 |
0.88 |
0.95 |
0.91 |
22 |
1 |
0.91 |
0.77 |
0.83 |
13 |
accuracy |
|
|
0.89 |
35 |
macro avg |
0.89 |
0.86 |
0.87 |
35 |
weighted avg |
0.89 |
0.89 |
0.88 |
35 |
roc_auc_score: 0.8618881118881119
3) Метод к-ближайших соседей при n_neighbors=5:
Prediction and test:
[0 0 1 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[20 2] [ 3 10]]
Accuracy score: 0.8571428571428571
precision recall f1-score support
22
0 |
0.87 |
0.91 |
0.89 |
22 |
1 |
0.83 |
0.77 |
0.80 |
13 |
accuracy |
|
|
0.86 |
35 |
macro avg |
0.85 |
0.84 |
0.84 |
35 |
weighted avg |
0.86 |
0.86 |
0.86 |
35 |
roc_auc_score: 0.8391608391608392
4)Метод к-ближайших соседей при n_neighbors=9:
Prediction and test:
[0 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[21 1] [ 3 10]]
Accuracy score: 0.8857142857142857
precision recall f1-score support
0 |
0.88 |
0.95 |
0.91 |
22 |
1 |
0.91 |
0.77 |
0.83 |
13 |
accuracy |
|
|
0.89 |
35 |
macro avg |
0.89 |
0.86 |
0.87 |
35 |
weighted avg |
0.89 |
0.89 |
0.88 |
35 |
roc_auc_score: 0.8618881118881119
23
5)Наивный байесовский метод:
Prediction and test:
[0 1 1 1 1 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[20 2] [ 3 10]]
Accuracy score: 0.8571428571428571 precision recall f1-score support
0 |
0.87 |
0.91 |
0.89 |
22 |
1 |
0.83 |
0.77 |
0.80 |
13 |
accuracy |
|
|
0.86 |
35 |
macro avg |
0.85 |
0.84 |
0.84 |
35 |
weighted avg |
0.86 |
0.86 |
0.86 |
35 |
roc_auc_score: 0.8391608391608392
6)Случайный лес при n_estimators=5:
Prediction and test:
[0 0 1 1 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[19 3] [ 3 10]]
Accuracy score: 0.8285714285714286
precision recall f1-score support
0 |
0.86 |
0.86 |
0.86 |
22 |
1 |
0.77 |
0.77 |
0.77 |
13 |
accuracy |
|
|
0.83 |
35 |
macro avg |
0.82 |
0.82 |
0.82 |
35 |
weighted avg |
0.83 |
0.83 |
0.83 |
35 |
roc_auc_score: 0.8164335664335665
24
7)Случайный лес при n_estimators=10:
Prediction and test:
[0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[21 1] [ 3 10]]
Accuracy score: 0.8857142857142857
precision recall f1-score support
0 |
0.88 |
0.95 |
0.91 |
22 |
1 |
0.91 |
0.77 |
0.83 |
13 |
accuracy |
|
|
0.89 |
35 |
macro avg |
0.89 |
0.86 |
0.87 |
35 |
weighted avg |
0.89 |
0.89 |
0.88 |
35 |
roc_auc_score: 0.8618881118881119
8)Случайный лес при n_estimators=15:
Prediction and test:
[0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[21 1] [ 3 10]]
Accuracy score: 0.8857142857142857
precision recall f1-score support
25
0 |
0.88 |
0.95 |
0.91 |
22 |
1 |
0.91 |
0.77 |
0.83 |
13 |
accuracy |
|
|
0.89 |
35 |
macro avg |
0.89 |
0.86 |
0.87 |
35 |
weighted avg |
0.89 |
0.89 |
0.88 |
35 |
roc_auc_score: 0.8618881118881119
9)Случайный лес при n_estimators=20:
Prediction and test:
[0 1 1 1 1 0 0 1 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0]
Confusion matrix: |
|
|
|
||
[[18 |
4] |
|
|
|
|
[ 3 10]] |
|
|
|
|
|
Accuracy score: |
0.8 |
|
|
|
|
|
precision |
recall |
f1-score |
support |
|
|
0 |
0.86 |
0.82 |
0.84 |
22 |
|
1 |
0.71 |
0.77 |
0.74 |
13 |
|
accuracy |
|
|
0.80 |
35 |
|
macro avg |
0.79 |
0.79 |
0.79 |
35 |
weighted avg |
0.80 |
0.80 |
0.80 |
35 |
roc_auc_score: 0.7937062937062936
26
10)Случайный лес при n_estimators=50:
Prediction and test:
[0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0] [0 0 1 1 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0] Confusion matrix:
[[21 1] [ 3 10]]
Accuracy score: 0.8857142857142857
precision recall f1-score support
0 |
0.88 |
0.95 |
0.91 |
22 |
1 |
0.91 |
0.77 |
0.83 |
13 |
accuracy |
|
|
0.89 |
35 |
macro avg |
0.89 |
0.86 |
0.87 |
35 |
weighted avg |
0.89 |
0.89 |
0.88 |
35 |
roc_auc_score: 0.8618881118881119
27
Таблица с результатами: |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
Метод |
Параметр |
Accuracy |
AUC ROC |
Precision |
Recall |
F1-score |
|||
|
|
|
|
|
|
|
||||
|
|
|
|
|
macro avg |
weighted avg |
macro avg |
weighted avg |
macro avg |
weighted avg |
|
|
|
0.83 |
|
|
|
|
|
|
|
|
к- |
1 |
0.82 |
0.82 |
0.83 |
0.82 |
0.83 |
0.82 |
0.83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
ближайших |
|
0.89 |
|
|
|
|
|
|
|
|
3 |
0.86 |
0.89 |
0.89 |
0.86 |
0.89 |
0.87 |
0.88 |
||
|
соседей |
|
0.86 |
|
|
|
|
|
|
|
|
(параметр |
5 |
0.84 |
0.85 |
0.86 |
0.84 |
0.86 |
0.84 |
0.86 |
|
|
n_neighbours) |
|
|
|
|
|
|
|
|
|
|
9 |
0.89 |
0.86 |
0.89 |
0.89 |
0.86 |
0.89 |
0.87 |
0.88 |
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
Наивный |
- |
0.86 |
0.84 |
0.85 |
0.86 |
0.84 |
0.86 |
0.84 |
0.86 |
|
байесовский |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0.83 |
|
|
|
|
|
|
|
|
|
5 |
0.82 |
0.82 |
0.83 |
0.82 |
0.83 |
0.82 |
0.83 |
|
|
Случайный |
|
0.89 |
|
|
|
|
|
|
|
|
10 |
0.86 |
0.89 |
0.89 |
0.86 |
0.89 |
0.87 |
0.88 |
||
|
лес |
|
|
|
|
|
|
|
|
|
|
15 |
0.89 |
0.86 |
0.89 |
0.89 |
0.86 |
0.89 |
0.87 |
0.88 |
|
|
(параметр |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
n_estimators) |
|
0.80 |
|
|
|
|
|
|
|
|
20 |
0.79 |
0.79 |
0.80 |
0.79 |
0.80 |
0.79 |
0.80 |
||
|
|
|
0.89 |
|
|
|
|
|
|
|
|
|
50 |
0.86 |
0.89 |
0.89 |
0.86 |
0.89 |
0.87 |
0.88 |
|
|
|
|
|
|
|
|
|
|
|
|
Вывод: наилучшие значения, наиболее близкие к единице, метрик accuracy, AUC ROC, precision, recall, f1-score были получены для метода классификации к-ближайших соседей при параметре n_neighbours = 3, 9, и метода «случайный лес» при параметре n_estimators = 10, 15, 50. Судя по графикам области принятия решений для метода «случайный лес», данный метод не следует использовать для классификации. Следовательно, при разбиении исходных данных на обучающую и тестовую выборки в соотношении 65% - 35% метод классификации к-ближайших соседей при параметре n_neighbours = 3, 9 можно считать наилучшим.
Сравнение полученных значений со значениями при разбиении данных 75% - 25% показывает, что разбиение 75% - 25% позволяет получить более качественные результаты - значения метрик для наилучшего метода классификации ближе к единице, чем при разбиении 65% - 35%.
Таким образом, анализируя результаты, полученные в результате анализа таблиц и графиков разбиения областей для трех случаев разделения выборок на обучающую и тестовую, можно сделать вывод, что лучший метод классификации – метод к-ближайших соседей с параметром 9, так как он давал наилучшие результаты для разных соотношений при разбиении выборок.