3.3 KiB
3.3 KiB
Лабораторная 1
Задание
Сгенерируйте определенный тип данных и сравнить на нем 3 модели (по варианту 9). Построить графики, отобразить качество моделей, объяснить полученные результаты
Данные
make_classification (n_samples=500, n_features=2, n_redundant=0, n_informative=2, random_state=rs, n_clusters_per_class=1)
- Модели:
-
- Персептрон
-
- Многослойный персептрон с 10-ю нейронами в скрытом слое (alpha = 0.01)
-
- Многослойный персептрон со 100-а нейронами в скрытом слое (alpha =0.01)
Описание Программы
Используемые библиотеки
- scikit-learn
- numpy
- matplotlib
Шаги программы
-
Генерация данных:
- Используется функция
make_classification
из библиотеки scikit-learn. - Создаются два признака, и данные разделяются на два класса.
- Используется 500 сэмплов.
- Используется функция
-
Разделение данных:
- Данные разделяются на обучающий и тестовый наборы с использованием
train_test_split
из scikit-learn. - Размер тестового набора установлен в 20% от общего размера.
- Данные разделяются на обучающий и тестовый наборы с использованием
-
Создание моделей:
- Три модели создаются с использованием библиотеки scikit-learn:
- Персептрон
- Многослойный персептрон с 10 нейронами в скрытом слое
- Многослойный персептрон с 100 нейронами в скрытом слое
- Три модели создаются с использованием библиотеки scikit-learn:
-
Обучение и Оценка:
- Каждая модель обучается на обучающем наборе данных.
- Производится оценка каждой модели на тестовом наборе с использованием метрики точности (
accuracy
).
-
Визуализация данных и Границ Решения:
- Для каждой модели строится график, на котором отображаются точки тестового набора и граница решения модели.
- Каждый график снабжен названием, указывающим на модель и ее точность.
Запуск программы
- Склонировать или скачать код
main.py
. - Запустите файл в среде, поддерживающей выполнение Python.
Результаты
- Можно проанализировать точность на графиках и понять, что самая точная из 3 моделей оказалась Многослойный персептрон со 100-а нейронами в скрытом слое.
- Многослойный персептрон со 100-а нейронами: 0.96
- Многослойный персептрон с 10-ю нейронами: 0.90
- Персептрон: 0.86