\# Сравнение GridSearchCV и HalvingGridSearchCV для подбора гиперпараметров SVM \## Описание проекта В рамках задания по теме «Искусственные нейронные сети: первые шаги» выполнено сравнение двух методов подбора гиперпараметров для классификатора SVM: \- \*\*GridSearchCV\*\* – полный перебор всех комбинаций гиперпараметров. \- \*\*HalvingGridSearchCV\*\* – итеративный отсев неперспективных комбинаций (Successive Halving). \## Используемые алгоритмы и данные \### Алгоритмы \- `SVC` – метод опорных векторов из библиотеки scikit-learn. \- `GridSearchCV` – полный перебор с кросс-валидацией. \- `HalvingGridSearchCV` – итеративный подбор гиперпараметров. \### Данные 1\. \*\*Синтетические\*\* – сгенерированы через `make\_classification` (1000 образцов, 20 признаков). 2\. \*\*Реальные\*\* – встроенный датасет Wine (178 образцов, 13 признаков, 3 класса). \## Результаты работы \### Синтетические данные \- \*\*HalvingGridSearchCV\*\* выполнился за \~1.2 секунды. \- \*\*GridSearchCV\*\* выполнился за \~4.8 секунды. \- Ускорение: \~4 раза. \### Реальные данные (Wine) \- \*\*HalvingGridSearchCV\*\* выполнился за \~0.8 секунды. \- \*\*GridSearchCV\*\* выполнился за \~0.25 секунды. \- На малом датасете GridSearchCV может быть быстрее, но Halving показывает сопоставимое качество за меньшее количество итераций. \### Ключевые выводы \- HalvingGridSearchCV значительно ускоряет подбор параметров на больших сетках. \- При малом объёме данных преимущество может быть не таким заметным. \- Тепловые карты позволяют наглядно сравнить области оптимальных параметров. \## Графики и визуализация В ноутбуке `week4\_model\_selection.ipynb` построены: \- Тепловые карты для синтетических данных (Halving и GridSearch) \- Тепловые карты для датасета Wine (Halving и GridSearch) \- Столбчатая диаграмма сравнения времени выполнения \## Файлы в репозитории \- `week4\_model\_selection.ipynb` – основной Jupyter Notebook с кодом и анализом. \- `requirements.txt` – список зависимостей для воспроизведения окружения. \- `.gitignore` – исключённые файлы (виртуальное окружение, кеши). \- `README.md` – описание проекта. \## Запуск проекта 1\. Клонировать репозиторий: ```bash git clone https://git.vyatsu.ru/stud203996/scikit\_learn\_lab.git cd scikit\_learn\_lab