IIS_2023_1/zhukova_alina_lab_1/readme.md

61 lines
3.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Задание
Работа с типовыми наборами данных и различными моделями.
Сгенерируйте определенный тип данных и сравните на нем 3 модели
Вариант №10
Данные: make_moons (noise=0.3, random_state=rs)
Модели:
+ Линейная регрессия
+ Многослойный персептрон с 10-ю нейронами в скрытом слое (alpha = 0.01)
+ Многослойный персептрон со 100-а нейронами в скрытом слое (alpha = 0.01)
## Используемые технологии
В лабораторной были использованы библиотеки:
+ numpy - позволяет работать с массивами и матрицами
+ matplotlib - используется для создания графиков
+ sklearn - используется для работы с моделями машинного обучения
+ Flask - предоставляет способ быстрого создания веб-страниц для визуализации работы приложения
## Как запустить
Запустить файл flask-server, который поднимет локальный сервер
и позволит обратиться к программе через браузер по ссылке [http://127.0.0.1:5000/](http://127.0.0.1:5000/)
## Что делает программа
Генерирует набор данных типа луны (moons), делит его на обучающую и тестовую выборки.
По очереди обучает на данных обучающей выборки 3 модели:
модель линейной регрессии, модель многослойного перцептрона с 10 нейронами в скрытом слое и
модель многослойного перцептрона со 100 нейронами в скрытом слое.
После обучения проверяются предсказания моделей на тестовых данных. Строится три графика, по одному для каждой модели,
где `#FF0000`, `#0000FF` - точки обучающей выборки первого и второго типа.
`#FF000066`, `#0000FF66` - точки тестовой выборки первого и второго типа
`#FFFF00` - линия по которой модель разделила данные на группы
Далее программа выведет оценки точности моделей. Полученные оценки:
+ Линейная регрессия - 0.68
+ Перцептрон с 10 нейронами в скрытом слое - 0.95
+ Перцоптрон со 100 нейронами в скрытом слое - 0.95
Так как для двух последних моделей оценки оказались одинаковы,
я сравнила их точность на всех данных, а не только на тестовой выборке.
+ Точность Перцептрона с 10 нейронами в скрытом слое - 0.91
+ Точность Перцептрона со 100 нейронами в скрытом слое - 0.95
## Скриншоты работы программы
Главная страница в браузере (доступ по ссылке [http://127.0.0.1:5000/](http://127.0.0.1:5000/))
![img.png](img_screen_1.png)
Полученные графики разбиения точек на классы
Линейная регрессия - Перцептрон 10 нейронов - Перцептрон 100 нейронов
![img.png](img_screen_2.png)
Вывод анализа точности работы моделей
![img.png](img_screen_3.png)