Лабораторная работа 2: Методы классификации анализа данных вариант 12
Описание
Часть 1. Классификация данных методов наивного Байеса.
Цель задания: Изучение методов наивного байесовского классификатора при построении моделей машинного обучения и их применения, получение и закрепление умений и навыков при работе с наивным байесовским классификатором для решения задач линейной классификации.
Часть 2. Применение методов машинного обучения, дерево решений и случайные леса.
Цель задания: Изучение и применение классификации и регрессии данных методами построения дерева решений и случайного леса.
Задание.
Часть 1. Задание
С помощью данный методических указаний, рекомендуемой литературы (см., например, [1], глава 5) и материалов сети Интернет изучить основные теоретические сведения и инструкции по применению стандартных НБК.
Разработать модель классификации коротких документов по категориям. Для обучения использовать набор данных с разреженными признаками количеств слов из корпуса текста 20 Newsgroups («20 дискуссионных групп»). Для этого необходимо:
1. Скачать и загрузить данные. Набор данных доступен из библиотеки
sklearn: from sklearn.datasets import fetch_20newsgroups data =
fetch_20newsgroups()
2. Вывести заголовок набора данных, изучить признаки, выбрать
целевые переменные.
3. Для простоты обучения, выбрать несколько категорий.
4. Вывести образец записи на экран.
5. Определить количество классов и уникальных записей.
6. Подключить классы TfidfVectorizer и MultinomialNB из библиотеки
sklearn.
7. Преобразовать содержимое каждой строки в числовой вектор. Для
этого использовать векторизатор TF-IDF ().
8. При помощи функции make_pipeline преобразовать данные и
передать в классификатор.
9. Обучить модель.
10. Выполнить предсказание на примере разных предложений.
11. Проверить эффективность работы оценивателя. Построить
матрицу различий между настоящими и предсказанными метками для
контрольных данных (confusion_matrix). Сделать выводы по значениям
полученной матрицы ошибок.
12. Построить модель, применив другие алгоритмы семейства
байесовских классификаторов с различными параметрами. Сравнить
результаты.
13. Ответьте письменно на контрольные вопросы:
1. Что такое наивный байесовский классификатор и почему его называют
наивным?
2. С какими данными работает НБК и почему?
3. Какие задачи решает и какие решения генерирует НБК?
4. Каковы преимущества и недостатки НБК?
5. Каковы области применения НБК
6. В чем заключается смысл принципа максимального правдоподобия?
7. Дайте краткую характеристику стандартным модификациям НБК и
поясните их основные отличия.
8. Перечислите существующие классификаторы семейства байесовской
классификации. В чем заключаются характерные отличия и
особенности каждого из классификаторов?
9. Какие средства Python используются для реализации стандартных
НБК?
10. Что показывает матрица ошибок (confusion matrix) в отношении НБК?
11. Что выполняет функция pipeline()?
12. В каком случае и для каких данных используется векторизатор TFIDF?
13. Какие из метрик наилучшим образом подходят для определения
качества моделей байесовской классификации?
14. Таблица содержит данные о классификации писем на «СПАМ» и
«НЕ_СПАМ», а также информацию об общем количестве слов в
каждой группе:
Используя данные в таблице, посчитать вероятность того, что в
качестве следующего письма придет спам.
Часть 2. Задание
1. Загрузить набор данных, согласно варианту, провести
предварительную обработку данных, изучить набор данных, выполнить
описание.
Таблица 1. Выбор варианта
2. Разделить на тренировочный и тестовый наборы.
3. Обучить модель дерева решений на тренировочном наборе данных и
оцените ее точность на тестовом наборе, таких как точность, полнота и F1-
мера.
4. Построить график дерева решений, чтобы визуализировать процесс
принятия решений моделью.
5. Попробовать улучшить точность модели, изменяя параметры дерева
решений (глубина, минимальное количество объектов в листе и т. д.).
6. Обучить модель случайного леса на тренировочном наборе данных и
сравните ее точность с моделью дерева решений.
7. Используя метод feature_importances_ для оценки важности признаков в
модели случайного леса. Оценить важность признаков, используемых
моделью случайного леса, и сравните их с важностью признаков в модели
дерева решений.
8. Попробовать улучшить точность модели случайного леса, изменяя
количество деревьев, максимальную глубину деревьев и другие параметры.
9. Сравните результаты моделей дерева решений и случайного леса на
тестовом наборе данных и сделайте выводы об их эффективности в решении
данной задачи.
10.Выполнить отчет. Отчет по лабораторной работе необходимо представить
в текстовом формате с подробным описанием этапов выполнения заданий,
приложить скрины листингов и результатов выполнения.
СибГУТИ










