Skip to content

VAlduinV/Basic-classification-algorithms-using-the-Scikit-learn-library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Технічний аналіз: дані, графіки та моделі

Проєкт класифікує дні на високі/низькі втрати (target_high_loss) за показниками втрат техніки/об'єктів. Нижче — візуалізації (вбудовані прямо в README) та технічні інтерпретації.

1) Дані

Файл: data/processed/cleaned.csv
Розмір: 48×15
Ціль: target_high_loss (1 — втрати вище медіани головного числового показника, 0 — інакше).

1.1. Попередній перегляд (перші 8 рядків, частина колонок)

date_end date_start APV Ammunition/fuel depot Anti-aircraft warfare systems Cannons MRL Mortar/ATGM/MG
2023-06-25 2023-06-19 59 3 nan 3 3 6
2023-07-03 2023-06-26 27 7 nan 4 2 2
2023-07-10 2023-07-03 18 3 nan 1 1 6
2023-07-17 2023-07-10 15 8 nan 5 1 3
2023-07-24 2023-07-17 36 3 3 5 nan nan
2023-07-31 2023-07-24 26 5 1 6 nan 5
2023-08-07 2023-07-31 42 2 1 9 nan 5
2023-08-14 2023-08-07 33 7 3 17 nan 3

1.2. Базові статистики ключових ознак

Ознака n mean median std min q1 q3 max skew
APV 48 53.5 42.5 31.874 15 34 60.5 174 1.953
Cannons 48 50.229 49.5 35.554 1 29 65 175 1.07
MRL 39 3.59 3 3.024 1 2 4 18 3.049
Anti-aircraft warfare systems 37 2.811 3 1.853 1 1 3 9 1.289

Пояснення метрик: mean — середнє, median — медіана, std — стандартне відхилення, q1/q3 — квартилі, iqr=q3-q1, skew — асиметрія (правий «хвіст» при skew>0).


2) Кореляції

Heatmap: img/heatmap_correlations.png

Технічний аналіз. Обчислено кореляцію Пірсона між числовими ознаками (категоріальні закодовані). Топ-звʼязки з ціллю:

Ознака corr_target
Personnel 0.785947
Strongpoint 0.499741
APV 0.477978
Tanks 0.454517
Cannons 0.382548
date_end 0.359731
date_start 0.359731
Self-propelled artillery 0.328671
Mortar/ATGM/MG 0.281915
Vehicles 0.262352
MRL 0.25186
Radio equipment 0.17628
  • Високі додатні кореляції у Personnel, Strongpoint, APV, Tanks, Cannons — саме ці ознаки тягнуть рішення моделей з порогами.
  • Vehicles, MRL — помірні кореляції, корисні у взаємодіях.
  • AA systems — слабкий соло-сигнал; Ammunition/fuel depot — майже нульовий (можлива шумність/рідкісність подій).
  • date_start/date_end мають певний звʼязок — вказує на часові кластери; краще агрегувати їх у тижні/місяці.

3) Розподіли (гістограми) та що вони означають

3.1. APV

Технічний аналіз. Правоскошений розподіл (skew≈1.95) з викидами (120–175). Саме «хвіст» створює високі значення у класі 1; для моделей — природні пороги на ~60/90/120.

3.2. Cannons

Технічний аналіз. Довгий правий хвіст (skew≈1.07), кластери 40–70 та піки 90+, 130+, 170+. Інформативно, але чутливо до викидів — дерева/ансамблі працюють краще за kNN/SVM.

3.3. MRL

Технічний аналіз. Більшість значень 1–5, поодинокі піки (10, 18) формують «хвіст» (skew≈3.05). Корисна як додатковий тригер «високих» днів у комбінації з APV/Cannons.

3.4. Anti‑aircraft warfare systems

Технічний аналіз. Вузький розподіл (1–3), менша варіативність — слабший самостійний предиктор; дає приріст у складі ансамблів.


4) Boxplot-и: відносно цілі

4.1. Узагальнений набір (2×3 сабплоти)

Технічний аналіз. Для APV та Cannons медіани й верхні квартилі у класі 1 вищі → великі ефекти зміщення. Для MRL — помірний ефект; для AA systems — слабкий, різницю роблять поодинокі високі значення.

4.2. Окремі приклади

APV:
Cannons:
MRL:
AA systems:

Пояснення. Розрив медіан та IQR між класами підтверджує, що прості порогові правила (дерева/ансамблі) мають перевагу, тоді як методи відстаней (kNN) та гладких кордонів (SVM) втрачають на перекриттях.


5) Моделі та метрики

5.1. Матриці похибок

  • kNN —
  • SVM —
  • DecisionTree —
  • RandomForest —
  • AdaBoost —

Технічний аналіз. Ансамблі/дерево: 0 помилок на тесті (10 прикладів) — правдоподібно при чітких порогах по APV/Cannons, але оцінка може бути оптимістичною через малий тест → потрібен Stratified K‑Fold та регуляризація дерев. kNN/SVM помиляються на прикордонних точках.

5.2. Зведена таблиця macro‑F1 (з класифікаційного звіту)

Модель macro_F1
DecisionTree 1
RandomForest 1
AdaBoost 1
kNN 0.8
SVM 0.791667

7) Файли даних: технічний аналіз (з посиланнями)

Дерево папок: див. розділ «Навігація по директоріях» вище.

7.1. cleaned.csv — базовий очищений датасет

  • Шлях: data/processed/cleaned.csv
  • Сенс: після видалення колонок з >40% пропусків + додана ціль target_high_loss (1 — втрати вище медіани ключового показника).
  • Що кажуть дані: у класі 1 розподіли APV і Cannons зміщені вгору, MRL помірно вищий; це створює природні порогові правила для дерев/ансамблів.
  • Навіщо зберігати: «еталон» сирих числових значень для EDA/графіків.

7.2. encoded_scaled.csv — імп'ютовано/закодовано/масштабовано

  • Шлях: data/processed/encoded_scaled.csv
  • Сенс: результат Pipeline (SimpleImputer + OneHotEncoder + StandardScaler); 88 ознак + target.
  • Що кажуть дані: простір без пропусків і в одному масштабі — коректна база для SVM/kNN; збільшення розмірності через OHE пояснює чутливість до тюнингу.
  • Навіщо зберігати: швидкий реюз для повторного навчання/валідацій без прогону всього препроцесингу.

7.3. Train/Test матриці ознак

  • Шляхи: data/processed/X_train_scaled.csv, data/processed/X_test_scaled.csv
  • Сенс: готові матриці після Pipeline; фіт препроцесора лише на train ⇒ нема витоків.
  • Що кажуть дані: тест містить 10 прикладів (баланс 5/5), тож метрики волатильні; однак пороговість сигналу дозволяє ансамблям давати 1.00 на цьому тесті.

7.4. Train/Test цілі

  • Шляхи: data/processed/y_train.csv, data/processed/y_test.csv
  • Сенс: бінарна ціль target для train/test.
  • Що кажуть дані: баланс класів на train ≈ 20/18, на test — 5/5 ⇒ macro-F1 ≈ accuracy та відсутній системний перекіс.

7.5. classification_reports_*.txt — метрики і матриці похибок

  • Шлях: data/processed/classification_reports_YYYYMMDD-HHMMSS.txt
  • Що всередині: precision/recall/F1/support для кожної моделі + друк матриць похибок.
  • Зведення macro-F1 на тесті:
Модель macro_F1
DecisionTree 1
RandomForest 1
AdaBoost 1
kNN 0.8
SVM 0.791667

Інтерпретація:

  • DecisionTree / RandomForest / AdaBoost = 1.00 — на малому тесті порогові розділення по APV/Cannons дають ідеальні метрики; перевіряти Stratified K-Fold і регуляризувати дерева.
  • kNN ≈ 0.80, SVM ≈ 0.79 — помилки на «перекриттях» розподілів і в «хвостах» (див. гістограми), де гладка межа/локальна більшість не завжди співпадають з порогами.

8) Висновки

  • Найінформативніші фічі: APV, Cannons; помірні: MRL, Vehicles; слабші соло: AA systems, Ammunition/fuel depot.
  • Моделі‑лідери на цьому тесті: RandomForest, AdaBoost, DecisionTree (F1=1.00) — через порогову природу сигналу.
  • Для виробничої якості: додати Stratified K‑Fold, регуляризувати дерева, агрегувати дати у тиждень/місяць, оцінити Permutation/SHAP‑важливості.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages