👟 Sneakers_Classification Модель для классификации кроссовок с использованием сверточной нейронной сети на основе предобученного ResNet50. Проект реализован на PyTorch и обучается на кастомном датасете изображений различных моделей кроссовок. 📂 Описание проекта Цель — определить тип/модель кроссовок на изображении. Модель использует предобученную архитектуру ResNet50, дообученную на вашем собственном датасете, содержащем изображения кроссовок, отсортированные по папкам (одна папка = один класс). 🧠 Используемые технологии Python PyTorch torchvision scikit-learn PIL matplotlib / seaborn 🗂️ Структура данных Путь к данным: /kaggle/input/sneakers-classification/sneakers-dataset/sneakers-dataset/ python-repl Copy Edit sneakers-dataset/ ├── Adidas/ │ ├── img1.jpg │ ├── img2.jpg │ └── ... ├── Nike/ │ ├── img1.jpg │ ├── img2.jpg │ └── ... ├── Puma/ │ └── ... ... ⚙️ Запуск обучения 📌 Подготовка bash Copy Edit pip install torch torchvision scikit-learn matplotlib seaborn 🚀 Запуск скрипта python Copy Edit python sneakers_train.py В скрипте используется автоматическое определение устройства (GPU, если доступен) и происходит обучение в течение 50 эпох с использованием Adam и CrossEntropyLoss. 🏗️ Архитектура модели В качестве основы используется ResNet50, где последний fully connected слой заменяется на: python Copy Edit model.fc = nn.Linear(model.fc.in_features, NUM_CLASSES) Модель сохраняется в файл best_model.pth после каждой эпохи с улучшением метрики точности на валидации. 📊 Оценка модели Во время обучения выводятся: Loss (потери) Accuracy (точность) Также вы можете дополнительно использовать confusion_matrix и classification_report из sklearn на тестовой выборке после обучения. 💾 Файлы sneakers_train.py — основной скрипт обучения best_model.pth — веса лучшей модели после обучения 📈 Результаты Использовано классов: NUM_CLASSES Лучшая точность валидации: X.XXX (выводится в конце обучения) 📬 Обратная связь Если у вас есть предложения или улучшения, открывайте Issue или Pull Request!