Добавлен README для Учебной практике 2.4 по scikit-learn
This commit is contained in:
parent
ef357dbfec
commit
40ef4e1436
130
README.md
130
README.md
@ -2,3 +2,133 @@
|
|||||||
|
|
||||||
\# Ознакомиться с базовыми принципами построения и обучения искусственных нейронных сетей на Python. Представить библиотеку scikit-learn и её возможности для построения MLP-классификаторов. Научиться применять модели на встроенных и внешних датасетах. Укрепить навыки работы в JupyterLab и визуализации результатов обучения.
|
\# Ознакомиться с базовыми принципами построения и обучения искусственных нейронных сетей на Python. Представить библиотеку scikit-learn и её возможности для построения MLP-классификаторов. Научиться применять модели на встроенных и внешних датасетах. Укрепить навыки работы в JupyterLab и визуализации результатов обучения.
|
||||||
|
|
||||||
|
\# Искусственные нейронные сети: первые шаги
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Репозиторий содержит материалы по лабораторной работе, посвящённой базовым искусственным нейронным сетям и классификации в библиотеке scikit-learn.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\## Цель работы
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\- Ознакомиться с базовыми принципами построения и обучения искусственных нейронных сетей на Python.
|
||||||
|
|
||||||
|
\- Изучить использование `MLPClassifier` из библиотеки scikit-learn.
|
||||||
|
|
||||||
|
\- Научиться применять модели машинного обучения на встроенных и внешних датасетах.
|
||||||
|
|
||||||
|
\- Закрепить навыки работы в JupyterLab, Git и визуализации результатов.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\## Содержимое репозитория
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\- `week4\_scikit\_learn.ipynb` — основной ноутбук с выполнением лабораторной работы.
|
||||||
|
|
||||||
|
\- `requirements.txt` — список установленных зависимостей проекта.
|
||||||
|
|
||||||
|
\- `.gitignore` — список файлов и папок, исключённых из Git.
|
||||||
|
|
||||||
|
\- `README.md` — описание проекта.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\## Выполненные задания
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\### 1. Базовая нейросеть
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
В ноутбуке реализован пример многослойного перцептрона (`MLPClassifier`) на встроенном датасете Iris.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Рассмотрены параметры:
|
||||||
|
|
||||||
|
\- `hidden\_layer\_sizes=(10,)`
|
||||||
|
|
||||||
|
\- `activation='relu'`
|
||||||
|
|
||||||
|
\- `max\_iter=100`, `500`, `2500`
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Проведён анализ влияния количества итераций на сходимость модели и качество классификации.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\### 2. Самостоятельное задание
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Для самостоятельной части выбран пример из раздела \*\*Classification\*\* официальной документации scikit-learn:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\*\*Plot classification probability\*\*
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
В работе выполнено:
|
||||||
|
|
||||||
|
\- воспроизведение и адаптация примера;
|
||||||
|
|
||||||
|
\- сравнение нескольких классификаторов:
|
||||||
|
|
||||||
|
  - `LogisticRegression`
|
||||||
|
|
||||||
|
  - `Linear SVC`
|
||||||
|
|
||||||
|
  - `GaussianProcessClassifier`
|
||||||
|
|
||||||
|
\- визуализация вероятностей принадлежности объектов к классам.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\### 3. Работа с внешним датасетом
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Дополнительно выполнена классификация на внешнем датасете, загруженном через `openml`.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Использованы этапы:
|
||||||
|
|
||||||
|
\- загрузка данных;
|
||||||
|
|
||||||
|
\- выбор числовых признаков;
|
||||||
|
|
||||||
|
\- удаление пропусков;
|
||||||
|
|
||||||
|
\- масштабирование данных;
|
||||||
|
|
||||||
|
\- обучение модели `LogisticRegression`;
|
||||||
|
|
||||||
|
\- оценка качества с помощью `classification\_report`.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\## Используемые библиотеки
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
\- scikit-learn
|
||||||
|
|
||||||
|
\- matplotlib
|
||||||
|
|
||||||
|
\- pandas
|
||||||
|
|
||||||
|
\- openml
|
||||||
|
|
||||||
|
\- jupyterlab
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user