IIS_2023_1/kutygin_andrey_lab_6/README.md

39 lines
3.4 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.

**Задание**
***
Использовать нейронную сеть MLPClassifier для данных из таблицы 1 по
варианту, самостоятельно сформулировав задачу. Интерпретировать результаты и оценить, насколько хорошо она подходит для решения сформулированной вами задачи
**Как запустить лабораторную**
***
Запустить файл main.py
**Используемые технологии**
***
Библиотеки pandas, scikit-learn, их компоненты
**Описание лабораторной (программы)**
***
В представленном коде мы используем MLPClassifier (многослойный персептрон) для предсказания формы НЛО на основе доступных атрибутов.
1. Загружаем данные из файла CSV с помощью библиотеки pandas.
2. Проверяем наличие пропущенных значений в данных с помощью метода isna().sum(), где isna() обнаруживает пропущенные значения, а sum() возвращает число пропущенных значений для каждого столбца.
3. Заменяем пропущенные значения в категориальных столбцах (state/province, country, UFO_shape) на наиболее часто встречающиеся значения, используя метод mode()[0].
4. Удаляем строки с пропущенными значениями в числовом столбце UFO_shape с помощью метода dropna(subset=['UFO_shape']).
5. Преобразуем текстовый атрибут UFO_shape в числовые значения, используя LabelEncoder.
6. Разделяем данные на атрибуты (X) и целевую переменную (y).
7. Разделяем данные на обучающую и тестовую выборки с помощью метода train_test_split().
8. Создаем объект модели MLPClassifier с указанием размерности скрытого слоя (hidden_layer_sizes=(100,)) и количества итераций (max_iter=1000).
9. Обучаем модель на обучающей выборке с помощью метода fit().
10. Получаем предсказания на тестовой выборке с помощью метода predict().
11. Оцениваем точность модели с помощью метрики accuracy_score, сравнивая предсказанные значения с истинными.
12. Выводим точность модели.
**Результат**
***
Мы можем сделать выводы о точности модели на основе значения accuracy.
Accuracy: 0.125
Чем ближе значение к 1, тем более точная модель. Однако, точность нашей модели довольна низкая, так как предсказание формы НЛО может быть трудной задачей, основываясь только на доступных атрибутах.