39 lines
3.4 KiB
Markdown
39 lines
3.4 KiB
Markdown
|
**Задание**
|
|||
|
***
|
|||
|
Использовать нейронную сеть 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, тем более точная модель. Однако, точность нашей модели довольна низкая, так как предсказание формы НЛО может быть трудной задачей, основываясь только на доступных атрибутах.
|
|||
|
|