Skip to content

πŸ“ˆπŸ’° МодСль для прСдсказания склонности ΠΊ инвСстициям

Notifications You must be signed in to change notification settings

id-andyyy/AlfaHack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Арт

GitHub Created At Top Language AlfaHack

AlfaHackΒ πŸ“ˆ

МодСль для прСдсказания склонности ΠΊ ΠΈΠ½Π²Π΅ΡΡ‚ΠΈΡ†ΠΈΡΠΌΒ πŸ“Š. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ML-Ρ…Π°ΠΊΠ°Ρ‚ΠΎΠ½Π° ΠΠ»ΡŒΡ„Π°-Π‘Π°Π½ΠΊΠ°Β πŸ’Ž.

ОписаниС

МодСль машинного обучСния для прСдсказания склонности физичСских Π»ΠΈΡ† ΠΊ ΠΈΠ½Π²Π΅ΡΡ‚ΠΈΡ†ΠΈΡΠΌΒ πŸ’΅. Основная Π·Π°Π΄Π°Ρ‡Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° β€” ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π²Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои срСдства, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡΡΡŒ Π½Π° прСдоставлСнных Π΄Π°Π½Π½Ρ‹Ρ…Β πŸ—„.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ этапы Ρ€Π°Π±ΠΎΡ‚Ρ‹:

  • Π‘Π±ΠΎΡ€ ΠΈ ΠΏΡ€Π΅Π΄ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…: объСдинСниС ΠΈ сТатиС ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Π½Π°Π»ΠΈΠ·Π° Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ (PCA)
  • ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²: ΠΏΠΎΠ΄Π±ΠΎΡ€ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… настроСк для ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Optuna
  • ΠžΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ: использованиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² CatBoost, LightGBM ΠΈ HistGradientBoostingClassifier для достиТСния высокой точности
  • АнсамблированиС: объСдинСниС прСдсказаний всСх ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ качСства Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ²
  • ΠžΡ†Π΅Π½ΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ: основным ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅ΠΌ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ стала ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠ° ROC-AUC

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ инструмСнты

Python Pandas NumPy scikit-learn CatBoost LightGBM Optuna Jupyter Figma Git

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

  • ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ написан Π·Π° 12 Π΄Π½Π΅ΠΉ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ…Π°ΠΊΠ°Ρ‚ΠΎΠ½Π° AlfaHack
  • Python с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ Pandas ΠΈ NumPy для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…
  • scikit-learn, CatBoost ΠΈ LightGBM для создания ΠΈ обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ машинного обучСния
  • Optuna для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²
  • Jupyter Notebook для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ тСстирования
  • Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ использовался Π½Π°Π±ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, доступный ΠΏΠΎ ссылкС
  • Git для управлСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ контроля вСрсий

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

  • data_preprocessing.py β€” ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ ΠΏΡ€Π΅Π΄ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π³Π»Π°Π²Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ (PCA) для ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ размСрности ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠ².
  • model_tuning.py β€” ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ (CatBoost, LightGBM, HistGradientBoosting) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Optuna.
  • model_training.py β€” ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ с использованиСм Π»ΡƒΡ‡ΡˆΠΈΡ… Π³ΠΈΠΏΠ΅Ρ€ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².
  • prediction.py β€” ΠΌΠΎΠ΄ΡƒΠ»ΡŒ для создания прСдсказаний, ΠΈΡ… ансамблирования ΠΈ сохранСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ CSV.
  • main.py β€” Π³Π»Π°Π²Π½Ρ‹ΠΉ скрипт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСт вСсь процСсс ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, обучСния ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ прСдсказаний.
  • requirements.txt β€” список всСх зависимостСй, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Начало Ρ€Π°Π±ΠΎΡ‚Ρ‹

Typing SVG

git clone https://github.com/id-andyyy/AlfaHack.git
cd AlfaHack
pip install -r requirements.txt
python main.py

ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ связь

Π‘ΡƒΠ΄Ρƒ ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚Π΅Π»Π΅Π½, Ссли Π²Ρ‹ поставитС звСзду ⭐. Если Π²Ρ‹ нашли Π±Π°Π³ ΠΈΠ»ΠΈ Ρƒ вас Π΅ΡΡ‚ΡŒ прСдлоТСния ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π» Issues.

Команда

Команда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Mojarung:

Read in EnglishΒ πŸ‡¬πŸ‡§

About

πŸ“ˆπŸ’° МодСль для прСдсказания склонности ΠΊ инвСстициям

Topics

Resources

Stars

Watchers

Forks

Languages