Файл: северокавказский федеральный университет методы машинного обучения учебное пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 10.01.2024

Просмотров: 308

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

70 3.2 Индивидуальное задание
1. Подберите набор данных на ресурсах [5-7] и согласуйте свой выбор с преподавателем. Студент может предложить синтезированный набор данных.
2. Постройте модель многомерной регрессии с использованием стратегии backward elimination.
4. Содержание отчета и его форма
Отчет по лабораторной работе должен содержать:
1. Номер и название лабораторной работы; задачи лабораторной работы.
2. Реализация каждого пункта подраздела «Индивидуальное задание» с приведением исходного кода программы, диаграмм и графиков для визуализации данных.
3. Ответы на контрольные вопросы.
4. Экранные формы (консольный вывод) и листинг программного кода с комментариями, показывающие порядок выполнения лабораторной работы, и результаты, полученные в ходе её выполнения.
Отчет о выполнении лабораторной работы подписывается студентом и сдается преподавателю.
5. Контрольные вопросы
1. Почему при реализации многомерной линейной регрессии необходимо добавить фиктивный признак с единственным значением 1.0?.
2. Что такое фиктивная переменная? Поясните причину удаления одной фиктивной переменной, возникающей при перекодировке категориального признака.
3. На основе какого критерия можно выбирать удаляемый признак в алгоритме back elimination.
4. В чем заключается алгоритм all-in regression?
5. В чем заключается алгоритм forward selection regression?

71 6. В чем заключается алгоритм Bidirectional Elimination?
7. Стратегия Backward Elimination предполагает удаление признаков на основе анализа p-критерия. Как реализовать удаление признаков в автоматическом режиме?
9. Список литературы
Для выполнения лабораторной работы, при подготовке к защите, а также для ответа на контрольные вопросы рекомендуется использовать следующие источники: [1, 2, 5-7].

72
ЛАБОРАТОРНАЯ РАБОТА 8. ПОЛИНОМИАЛЬНАЯ
РЕГРЕССИЯ
1. Цели и задачи
Цель лабораторной работы: научиться применять разработанный пайплайн для тиражирования кода с целью решения задачи полиномиальной регрессии.
Основные задачи:
– получение навыков рефакторинга кода в проектах машинного обучения;
– изучение поведения модели полиномиальной регрессии при изменении степени полинома;
– исследование свойств набора данных в рамках задачи полиномиальной регрессии.
2. Теоретическое обоснование
Линейная и параболическая модели являются частными случаями более сложной модели – полиномиальной. Построить модель регрессии – это значит найти параметры той функции, которая будет в ней фигурировать. Для линейной регрессии – два параметра: коэффициент и свободный член.
Полиномиальная регрессия может применяться в математической статистике при моделировании трендовых составляющих временных рядов.
Временной ряд – это, по сути, ряд чисел, которые зависят от времени.
Например, средние значения температуры воздуха по дням за прошедший год, или доход предприятия по месяцам. Порядок моделируемого полинома оценивается специальными методами, например, критерием серий. Цель построения модели полиномиальной регрессии в области временных рядов всё та же – прогнозирование.


73
3. Методика и порядок выполнения работы
Перед выполнением индивидуального задания рекомендуется выполнить все пункты учебной задачи.
3.1 Учебная задача
Задание. На основе разработанного пайплайна для линейной одномерной регрессии разработать полиномиальную модель регрессии.
Решение. Для разработки модели необходимо реализовать следующий код:

74

75
Рисунок 8.1 – Код Python для построения модели полиномиальной регрессии
Рассмотрим как изменяется модель при изменении степени апроксимирующего полинома (рисунок 8.2). n = 15 n = 2 n = 3 n = 6
Рисунок 8.2 – Анализ модели полиномиальной регрессии
Очевидно, что при реализации полиномиальной регрессии нет необходимости в немотивированном увеличении степени аппроксимации.
Выполните индивидуальное задание.
3.2 Индивидуальное задание
1. Подберите набор данных на ресурсах [5-7] и согласуйте свой выбор с преподавателем. Студент может предложить синтезированный набор данных.
2. Постройте модель полиномиальной регрессии с использованием.
Проанализируйте кривые аппроксимации при различных степенях полинома.

76
1   2   3   4

4. Содержание отчета и его форма
Отчет по лабораторной работе должен содержать:
1. Номер и название лабораторной работы; задачи лабораторной работы.
2. Реализация каждого пункта подраздела «Индивидуальное задание» с приведением исходного кода программы, диаграмм и графиков для визуализации данных.
3. Ответы на контрольные вопросы.
4. Экранные формы (консольный вывод) и листинг программного кода с комментариями, показывающие порядок выполнения лабораторной работы, и результаты, полученные в ходе её выполнения.
Отчет о выполнении лабораторной работы подписывается студентом и сдается преподавателю.
5. Контрольные вопросы
1. Почему при реализации многомерной линейной регрессии необходимо добавить фиктивный признак с единственным значением 1.0?
2. Что такое фиктивная переменная? Поясните причину удаления одной фиктивной переменной, возникающей при перекодировке категориального признака.
3. С использованием какого класса создается модель полиномиальной регрессии?
4. Поясните принцип преобразования признаков при построении полиномиальной регрессии.
5. Возможно ли применение технологий масштабирования признаков при реализации полиномиальной регрессии?

77
6. Список литературы
Для выполнения лабораторной работы, при подготовке к защите, а также для ответа на контрольные вопросы рекомендуется использовать следующие источники: [1, 2, 5-7].

78
ЛАБОРАТОРНАЯ РАБОТА 9. КЛАСТЕРИЗАЦИЯ
1. Цели и задачи
Цель лабораторной работы: научится производить кластерный анализ данных на основе метода К-средних.
Основные задачи:
– получение навыков рефакторинга кода в проектах машинного обучения;
– изучение принципов определения оптимального количества кластеров в методах кластерного анализа;
– изучение возможностей языка Python для реализации кластероного анализа.
2. Теоретическое обоснование
Кластеризация – это разбиение множества объектов на подмножества
(кластеры) по заданному критерию. Каждый кластер включает максимально схожие между собой объекты. Представим переезд: нужно разложить по коробкам вещи по категориям (кластерам) – например одежда, посуда, декор, канцелярия, книги. Так удобнее перевозить и раскладывать предметы в новом жилье. Процесс сбора вещей по коробкам и будет кластеризацией. Критерии кластеризации определяет человек, а не алгоритм, – этим она отличается от классификации. Этот метод машинного обучения часто применяют в различных неструктурированных данных – например если нужно автоматически разбить коллекцию изображений на мини-группы по цветам.
Кластерный анализ применяют в разных сферах:
 в маркетинге – для сегментирования клиентов, конкурентов, исследования рынка;
 медицине – для кластеризации симптомов, заболеваний, препаратов;


79
 биологии – для классификации животных и растений;
 социологии – для разбиения респондентов на однородные группы;
 компьютерных науках – для группировки результатов при поиске сайтов, файлов и других объектов.
3. Методика и порядок выполнения работы
3.1 Учебная задача
Задание. На основе предоставленного набора данных Mall_custumers.csv реализуйте модель кластеризации методом К-средних.
Подключаем библиотеки и загружаем имеющийся набор данных:
Рисунок 9.1 – Набор данных для задачи кластеризации
Исходный набор данных содержит сведения о посетителях торгового центра. В наборе присутствуют признаки, представленные в таблице 9.1.
Признак набора данных
Описание
CustomerID
Идентификатор клиента
Genre
Пол
Age
Возраст
Annual Income
Годовой доход
Spending Score
Баллы, присвевыемые клиенту специалистами по анализу данных торгового центра (от 1 до 100).

80
Чем больше клиент тратит – тем больше баллов ему присваивается.
Решение. Для разработки модели необходимо реализовать следующий код:

81
Рисунок 9.2 – Реализация метода кластеризации методом К-средних
3.2 Индивидуальное задание
1. Подберите набор данных на ресурсах [5-7] и согласуйте свой выбор с преподавателем. Студент может предложить синтезированный набор данных.
2. Постройте модель кластеризации (K-Means) с использованием.
Проанализируйте кривые аппроксимации при различных степенях полинома.
4. Содержание отчета и его форма
Отчет по лабораторной работе должен содержать:
1. Номер и название лабораторной работы; задачи лабораторной работы.
2. Реализация каждого пункта подраздела «Индивидуальное задание» с приведением исходного кода программы, диаграмм и графиков для визуализации данных.
3. Ответы на контрольные вопросы.
4. Экранные формы (консольный вывод) и листинг программного кода с комментариями, показывающие порядок выполнения лабораторной работы, и результаты, полученные в ходе её выполнения.
Отчет о выполнении лабораторной работы подписывается студентом и сдается преподавателю.

82
5. Контрольные вопросы
1. Что такое кластерный анализ?
2. Перечислите известные методы кластерного анализа.
3. Перечислите классы и функции Python, которые задействованы при реализации кластерного анализа.
4. Опишите принцип определения оптимального количества кластеров.
5. Опишите принципиальные отличия методов регрессии, кластеризации и классификации.
6. Список литературы
Для выполнения лабораторной работы, при подготовке к защите, а также для ответа на контрольные вопросы рекомендуется использовать следующие источники: [1, 2, 5-7].


83
ЗАКЛЮЧЕНИЕ
Учебное пособие (лабораторный практикум) по дисциплине «Методы машинного обучения» для студентов направления 09.03.02 «Информационные системы и технологии». Пособие охватывает теоретические аспекты построения информационных систем на основе методов машинного обучения, а также предлагает студентам практические рекомендации по разработке интеллектуальных систем. Основное внимание уделяется теории обучения машин (машинное обучение, machine learning).
В пособии рассмотрены практические аспекты проектирования и разработки информационных систем для решения различных задач с использованием следующих подходов: линейных методов классификации, алгоритмов восстановления регрессии, алгоритмов логической классификации, кластерного анализа.
Многие задачи, возникающие в практических приложениях, не могут быть решены заранее известными методами или алгоритмами. Это происходит по той причине, что нам заранее не известны механизмы порождения исходных данных или же известная нам информация недостаточна для построения модели источника, генерирующего поступающие к нам данные.
Машинное обучение – чрезвычайно широкая и динамически развивающаяся область исследований, использующая огромное число теоретических и практических методов.

84
СПИСОК ЛИТЕРАТУРЫ
Список основной литературы
1. Уэс, Маккинли. Python и анализ данных Электронный ресурс /
Маккинли Уэс ; пер. А. А. Слинкин. - Python и анализ данных,2022-04-19. -
Саратов : Профобразование, 2017. - 482 с. - Книга находится в премиум-версии
ЭБС IPR BOOKS. - ISBN 978-5-4488-0046-7, экземпляров неограниченно.
2. Сузи, Р.А. Язык программирования Python Электронный ресурс : учебное пособие / Р.А. Сузи. - Язык программирования Python,2020-07-28. -
Москва : Интернет-Университет Информационных Технологий (ИНТУИТ),
2016. - 350 c. - Книга находится в базовой версии ЭБС IPRbooks. - ISBN 5-
9556-0058-2, экземпляров неограниченно
Список дополнительной литературы
3. Стенли, Липпман. Язык программирования С++ Электронный ресурс
: Полное руководство / Липпман Стенли, Лажойе Жози ; пер. А. Слинкин. -
Язык программирования С++,2022-04-19. - Саратов : Профобразование, 2017.
- 1104 с. - Книга находится в премиум-версии ЭБС IPR BOOKS. - ISBN 978-5-
4488-0136-5, экземпляров неограниченно
4. https://github.com/enikolaev/MMO
– Репозиторий с примерами кода из лабораторных работ.
5. https://archive.ics.uci.edu/ml/index.html
– Репозиторий наборов данных для машинного обучения (Центр машинного обучения и интеллектуальных систем).
6. https://www.kaggle.com
– Портал и система проведения соревнований по проблемам анализа данных.
7. https://www.mockaroo.com
– Сайт для генерации наборов данных.