47 lines
4.4 KiB
Markdown
47 lines
4.4 KiB
Markdown
# Лабораторная работа 1. Работа с типовыми наборами данных и различными моделями
|
||
### Вариант № 18
|
||
Используя код из пункта «Регуляризация и сеть прямого распространения», сгенерируйте определенный тип данных и сравните на нем 3 модели (по варианту). Постройте графики, отобразите качество моделей, объясните полученные результаты.
|
||
|
||
**Данные**: make_classification (n_samples=500, n_features=2, n_redundant=0, n_informative=2, random_state=rs, n_clusters_per_class=1)
|
||
|
||
**Модели**:
|
||
* Линейную регрессию
|
||
* Персептрон
|
||
* Гребневую полиномиальную регрессию (со степенью 3, alpha = 1.0)
|
||
***
|
||
## *Как запустить лабораторную работу:*
|
||
Чтобы запустить программу, открываем файл lab1 в PyCharm и нажимаем на зеленый треугольник в правом верхнем углу.
|
||
***
|
||
## *Использованные технологии:*
|
||
**Scikit-learn** - один из наиболее широко используемых пакетов Python для Data Science и Machine Learning. Он позволяет выполнять множество операций и предоставляет множество алгоритмов.
|
||
|
||
**Matplotlib** — это комплексная библиотека для создания статических, анимированных и интерактивных визуализаций на Python.
|
||
|
||
**NumPy** — это фундаментальный пакет для научных вычислений на Python.
|
||
***
|
||
## *Что делает ЛР:*
|
||
В данной работе генерируется определенный тип данных (при помощи генератора линейных задач make_classification). На данном типе данных проверяется работа трёх моделей: линейная регрессия, персептрон и гребневая полиномиальная регрессия.
|
||
|
||
**Результатом работы программы** являются: вывод показателей качества моделей (в консоли) и 3 изображения с графиками, на которых показаны сами данные, разбитые на два класса (тренировочные и тестовые), а также разбиение по классам по моделям.
|
||
***
|
||
## *Пример выходных данных:*
|
||
>Вывод в консоли:
|
||
|
||
![](https://sun9-27.userapi.com/impg/Xc_p5nTj7wWRVxuKx8PXcvnnJcPRYXM5PijZsA/bQJSoWPqZqo.jpg?size=602x76&quality=96&sign=5797d8960621a547a08ba7bdc1e83965&type=album)
|
||
|
||
>График линейной регрессии:
|
||
|
||
![](https://sun9-28.userapi.com/impg/DaF38aVW1XXfrsbt8d1eNYgyssVpffN3kgZTpA/UvJiTp6ACW0.jpg?size=604x423&quality=96&sign=74a0543fa50da772fc72214c6d695e81&type=album)
|
||
|
||
>График персептрона:
|
||
|
||
![](https://sun9-72.userapi.com/impg/6NLpLzpUvR5EVGIy2kPAwLWp7TGjUZWdL3Jb2w/Pbu6IPLsUuc.jpg?size=604x423&quality=96&sign=83e2340b57fe60de0adda95fe1ad686d&type=album)
|
||
|
||
>График гребневой полиномиальной регрессии:
|
||
|
||
![](https://sun9-27.userapi.com/impg/DzhYdeV18GWPbay__0W88Zg6oEDipT62zVB2Og/k5SfwXDyKhU.jpg?size=604x423&quality=96&sign=a6c08a960b55b6aec9aa0aa2307d1978&type=album)
|
||
***
|
||
**Вывод**: Для сгенерированного типа данных лучшей моделью оказалась модель персептрона (с точностью 0.795), а худшей модель линейной регрессии (с точностью 0.44).
|
||
Персептрон может хорошо работать в задачах классификации, если данные хорошо разделимы линейно. Гребневая полиномиальная регрессия показала среднюю точность.
|
||
Дополнительно в данные был добавлен случайный шум, что тоже могло повлиять на результаты оценки качества моделей.
|