Зачем нужен ML и какие задачи он решает? Машинное обучение (ML). Часть 3

Зачем нужен ML и какие задачи он решает? Машинное обучение (ML). Часть 3

07.02.2022

ML — это инструмент, при помощи которого решается определенный класс задач.

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

 

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

1) Самый простой способ решить эту проблему — посадить человека с хорошим зрением, который подписывал бы полученное фото. Очевидно, что такой подход имеет свои недостатки:
a. Человек может устать, не выйти на работу
b. Человеку нужно платить зарплату, оформить страховку, ему нужно искать замену, когда он захочет в отпуск
c. Человек (в сравнении с компьютером) достаточно медленно выполняет поставленную ему задачу

2) Тогда мы решаем вместо человека написать программу, которая бы решала нашу задачу. Мы даже соберём ведущих в мире экспертов по мандаринам и яблокам и попросим их описать программисту все возможные отличия этих фруктов друг от друга. В результате мы получим программу, которая на основании цвета фрукта, длины листа и продолговатости фрукта говорит нам — яблоко это или мандарин. Система работает какое-то время, до тех пор, пока нам не попадется яблоко с формой листа мандарина или яблоко красноватого (почти оранжевого цвета) как мандарин или же яблоко довольно круглой формы. Человек сразу увидит, что это яблоко, но наша программа скажет: “это мандарин!” Тогда мы снова соберём экспертов, обсудим, почему у нас здесь ошибка, добавим в программу еще ряд правил и так будет продолжаться каждый раз, пока мы не добьемся желаемого результата.
Минусы такого подхода:
a. Высокая стоимость разработки (оплата экспертов, программистов и тд)
b. Получившаяся программа будет очень сложна и объемна
c. Большие временные затраты на разработку
d. Невозможность сразу выловить все возможные зависимости в предметной отрасли, и описать все возможные случаи, различия.

3) Поняв, что варианты 1 и 2 нам не подходят, мы ищем альтернативные способы решения этой задачи и приходим к алгоритмам машинного обучения. Используя нужные алгоритмы машинного обучения, мы получаем программу, которая, обучившись на большом количестве фото яблок и мандарин, решает нашу проблему. Из минусов, необходимо большое количество размеченных данных (большое количество фото яблок и мандарин, к тому же ещё и отсортированных)

А теперь представим, что у нас не 2 фрукта, а 100, и тут у нас второй вариант становится совершенно нереализуемым. К тому же, это могут быть не фрукты, а распознавание раковых опухолей на рентгеновских снимках, детекция мошеннических действий с банковской картой, выявление спама в почте, распознавание речи т.д. Есть часть задач, решать которые попросту нерационально (а порой и невозможно) без участия ML.

Определившись с вопросом зачем нам нужен ML, разберем, для каких задач он подходит.

Основные задачи, которые решают алгоритмы машинного обучения — это те задачи, которые тяжело либо невозможно, либо нерационально решать непосредственным, “явным” (explicit) программным либо аналитическим способом. Среди этих задач (по типу решаемых проблем) можно выделить следующие 4:

 

 

 

 

Регрессия — это задача предсказания значения непрерывной числовой величины для определенного объекта на основе его характеристик. Например, прогноз цен на рынке недвижимости, прогноз температуры, количество денег, потраченных в магазине клиентом, и т.д..

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

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

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

Читайте также

смотреть все

Зачем нужен ML и какие задачи он решает? Машинное обучение (ML). Часть 3

Dell PowerStore – абсолютная готовность к инновациям в IT

Что такое AI, ML и Data Science? Машинное обучение (ML). Часть 2