Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Васильев Ю. - Python для data science (Библиотека программиста) - 2023.pdf
Скачиваний:
7
Добавлен:
07.04.2024
Размер:
7.21 Mб
Скачать

248      Глава 12. Машинное обучение для анализа данных

изображений, которое умеет различать виды животных на основе предоставленных фотографий. Для этого гипотетического сценария у нас уже есть библиотека кода, которая может идентифицировать границы объекта (например, животного) на изображении. Таким образом, животное на фотографии можно превратить в характерный набор линий. Но как с помощью кода различить линии, изображающие двух разных животных, например кошку и собаку?

Традиционный подход к программированию заключается в создании правил, которые сопоставляют каждую комбинацию характерных линий с животным. К сожалению, такое решение потребует большого объема кода, и приложение может не справиться, если границы объектов на какой-то фотографии не будут соответствовать ни одному из правил, заданных вручную. Напротив, приложения, в основе которых лежат алгоритмы машинного обучения, не опираются на заранее определенную логику, а зависят от способности приложения автоматически обучаться на ранее просмотренных данных. Таким образом, приложение для разметки фотографий на основе МО будет искать закономерности в комбинациях линий просмотренных фотографий, а затем, исходя из статистики вероятности, делать прогнозы относительно того, какие животные изображены на новых фотографиях.

Типы машинного обучения

Специалисты по работе с данными различают несколько типов машинного обучения. Наиболее распространенные — это обучение с учителем (supervised learning) и обучение без учителя (unsupervised learning). Эта глава в основном посвящена обучению с учителем, но в данном разделе представлен краткий обзор обоих типов.

Обучение с учителем

Обучение с учителем использует размеченный датасет (называемый обучающим набором), чтобы натренировать модель на выдачу желаемого результата при получении новых, ранее неизвестных данных. Строго говоря, обучение с учителем — это техника выведения функции, которая сопоставляет входные данные обучающего набора с выходными данными. Вы уже видели пример обучения такого типа в главе 3, где мы использовали выборку отзывов о товарах, чтобы обучить модель предсказывать, какими будут отзывы о новом товаре — положительными или отрицательными.

Входные данные для алгоритма обучения с учителем могут представлять собой характеристики реальных объектов или событий. Например, можно

Типы машинного обучения      249

использовать характеристики выставленных на продажу домов (площадь, количество спален и ванных комнат и т. д.) в качестве входных данных для алгоритма прогнозирования цен на недвижимость. Цены будут выходными данными алгоритма. На наборе пар входных и выходных данных — характеристик домов и связанных с ними цен — необходимо обучить алгоритм. Тогда можно будет подавать на вход алгоритма характеристики новых домов и на выходе получать их предполагаемую стоимость.

Кроме того, существуют алгоритмы обучения с учителем, которые предназначены для работы не с характеристиками, а с данными наблюдений, сведениями, собранными путем наблюдения за работой или поведением. В качестве примера рассмотрим временной ряд с информацией, поступающей с датчиков, которые контролируют уровень шума в аэропорту. Эти наблюдения об уровне шума можно передать алгоритму машинного обучения вместе со сведениями о времени суток и дне недели, чтобы научить его предсказывать уровень шума в ближайшие несколько часов. В данном примере время и дни недели являются входными данными, а уровень шума — выходными. Другими словами, алгоритм разрабатывается для прогнозирования данных будущих наблюдений.

ВХОДНЫЕ И ВЫХОДНЫЕ ДАННЫЕ В МАШИННОМ ОБУЧЕНИИ

Впрограммированиивходнымиданными(input)обычноназываютинформацию, которую получает функция, скрипт или приложение. Впоследствии из входных данных получают выходные данные (output). Это значения, которые функция, скрипт или приложение возвращают. Однако в контексте машинного обучения с учителем входные и выходные данные имеют несколько иное значение. Когда модельобучается,онаполучаетпарывходныхивыходныхданных,напримеротзывыопродукте(входныеданные)иихкласс:положительныйилиотрицательный (выходныеданные).Затем,послеобучениямодели,предоставляютсятольконовые входные значения, и модель генерирует соответствующие выходные данные на основе того, чему она научилась на примерах пар «вход — выход».

ВходныеданныемоделиМОмогутсостоятьизоднойилинесколькихпеременных,

которые называются независимыми переменными (independent variables), или

признаками (features). А выходное значение обычно представляет собой одну переменную, известную как целевая (target), или зависимая (dependant), переменная, поскольку выходные данные зависят от входных.

Предсказание стоимости дома или уровня шума — типичный пример регрессии, распространенного метода обучения с учителем для прогнозирования непрерывных величин. Другой распространенный метод обучения