Этот проект представляет собой реализацию различных алгоритмов классификации с использованием Python и популярных библиотек машинного обучения. Проект включает в себя реализацию нескольких классических алгоритмов классификации, их сравнение и анализ на различных наборах данных.
Проект направлен на решение задач классификации с использованием различных методов машинного обучения. В рамках проекта реализованы следующие возможности:
- Предобработка и анализ данных
- Реализация различных алгоритмов классификации
- Оценка и сравнение эффективности моделей
- Визуализация результатов
- Оптимизация гиперпараметров моделей
- Логистическая регрессия
- Случайный лес (Random Forest)
- Метод опорных векторов (SVM)
- Градиентный бустинг (Gradient Boosting)
- K-ближайших соседей (KNN)
- Клонируйте репозиторий:
git clone [email protected]:IvanTishk0/Classification.git
cd Classification- Создайте виртуальное окружение:
python -m venv venv
source venv/bin/activate # для Linux/Mac
# или
venv\Scripts\activate # для Windows- Установите зависимости:
pip install -r requirements.txtClassification/
├── data/ # Директория для датасетов
│ ├── raw/ # Исходные данные
│ └── processed/ # Обработанные данные
├── notebooks/ # Jupyter notebooks
│ ├── EDA/ # Ноутбуки с разведочным анализом данных
│ └── models/ # Ноутбуки с моделями
├── src/ # Исходный код
│ ├── data/ # Скрипты для обработки данных
│ ├── features/ # Скрипты для создания признаков
│ ├── models/ # Реализации моделей
│ └── visualization/ # Скрипты для визуализации
├── requirements.txt # Зависимости проекта
└── README.md # Документация
- Поместите ваши данные в директорию
data/raw/ - Используйте скрипты из
src/data/для предобработки данных - Обработанные данные будут сохранены в
data/processed/
- Откройте соответствующий ноутбук из директории
notebooks/models/ - Следуйте инструкциям в ноутбуке для обучения и оценки модели
- Результаты будут сохранены в соответствующей директории
Для визуализации результатов используйте скрипты из директории src/visualization/ или соответствующие ноутбуки.
- numpy (1.24.3) - для численных вычислений и работы с массивами
- pandas (2.0.3) - для обработки и анализа структурированных данных
- scikit-learn (1.3.0) - для реализации алгоритмов машинного обучения
- matplotlib (3.7.2) - для создания статических графиков
- seaborn (0.12.2) - для статистической визуализации
- jupyter (1.0.0) - для интерактивной разработки и анализа
from src.models.classifier import RandomForestClassifier
from src.data.preprocessor import DataPreprocessor
# Загрузка и предобработка данных
preprocessor = DataPreprocessor()
X_train, X_test, y_train, y_test = preprocessor.prepare_data()
# Создание и обучение модели
model = RandomForestClassifier()
model.train(X_train, y_train)
# Оценка модели
accuracy = model.evaluate(X_test, y_test)- Форкните репозиторий
- Создайте ветку для ваших изменений
- Внесите изменения
- Создайте pull request
Если у вас возникли проблемы при использовании проекта:
- Проверьте версии установленных библиотек
- Убедитесь, что все зависимости установлены корректно
- Проверьте наличие необходимых данных в соответствующих директориях
MIT
Ivan Tishko
- GitHub: IvanTishk0
- Инициализация проекта
- Базовая структура репозитория
- Настройка зависимостей