Краткое введение в машинное обучение

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

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

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

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

Хотя алгоритмы были разработаны, возможность широко исследовать машинное обучение была ограничена доступом к большим данным. Чем больше данных воздействует на машины, тем точнее они становятся. Машины обучаются на предыдущих вычислениях для получения надежных, воспроизводимых решений и результатов. В прошлом доступ к большим массивам данных был крайне ограничен.

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

«Возможность автоматически применять сложные математические вычисления к большим данным — снова и снова, все быстрее и быстрее — появилась недавно

Алгоритмы машинного обучения улучшают свою производительность по мере увеличения количества образцов, доступных для обучения. С помощью больших наборов данных машины могут научиться действовать непосредственно на основе введенных данных, не полагаясь на заранее определенную исследователем модель того, как реагировать. Это шаг к полностью автономному принятию решений.

Почему машинное обучение?

Настало время для масштабных достижений в области машинного обучения. Но почему это должно иметь значение?

Помимо своей научно-фантастической привлекательности, машины, которые могут учиться, ценны по многим причинам.

Вычислительная мощность машин намного превосходит человеческую. Машины могут быстро находить закономерности, решать сложные задачи и анализировать большие наборы данных. Машины помогают нам делать выводы, которые, в свою очередь, подсказывают практические решения проблем, о которых мы, возможно, даже не догадывались.

Примеры полезных приложений машинного обучения:

  • Прогнозировать тенденции акций и выявлять мошенничество с кредитами.
  • Распознавание лиц, движение и обнаружение объектов.
  • Системы видеонаблюдения для отслеживания необычного поведения
  • Обнаружение опухолей, открытие лекарств и секвенирование ДНК
  • Распознавание голоса
  • Языковой перевод
  • Личные помощники, которые учатся на ваших потребностях и адаптируют свои действия к вашим предпочтениям.
  • Прогнозы веб-поиска
  • Индивидуальные рекламные объявления на основе анализа истории покупок и поиска.
  • Носимые устройства и датчики для определения здоровья
  • Приложения, помогающие медицинским экспертам анализировать данные для выявления тенденций или тревожных сигналов, которые могут привести к улучшению диагностики и лечения. “
  • Предложения друзей и контактов на основе общих интересов, профессий и т. д.
  • Автономные транспортные средства
  • Картирование трафика и маршрутов, прогнозирование областей, которые могут стать перегруженными.
  • Прогноз погоды

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

Как на самом деле работает машинное обучение?

Что значит для машины учиться? Как «научить» компьютер что-либо делать?

Чтобы позаимствовать это простое объяснение:

Чтобы «обучить компьютер, вы снова и снова скармливаете ему данные, говорящие ему, что это щенок, а это другое — маффин. В конце концов компьютер, используя вычислительную статистику, начинает определять, что весьма вероятно, что это одна вещь — собака, а другая — углевод».»

Процесс машинного обучения начинается с алгоритмов обучения. По словам Вишала Майни, алгоритм машинного обучения позволяет ему выявлять закономерности в наблюдаемых данных, строить модели, объясняющие мир, и предсказывать вещи без явных заранее запрограммированных правил и моделей. Короче говоря, фундаментальная цель алгоритмов машинного обучения состоит в том, чтобы обобщать за пределы обучающих выборок, т.е. успешно интерпретировать данные, которые он никогда раньше не «видел».

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

Множество алгоритмов

Не существует единственно правильного способа научить машину. Это отражено во множестве уже существующих алгоритмов обучения и в сотнях новых, публикуемых каждую неделю.

Хотя алгоритмы обучения легко доступны, менее очевидной проблемой для ученых, занимающихся машинным обучением, является преобразование данных в пригодный для использования ресурс. Алгоритмы часто доступны запеченными, в то время как на самом деле вам нужно проделать много работы, чтобы собрать все различные фрагменты информации, которые у вас есть, и связать их вместе во что-то, что вы можете использовать в алгоритме»

Стили обучения

В машинном обучении нейронная сеть представляет собой набор алгоритмов машинного обучения, которые объединены и обучены для выполнения задачи. Сложная часть процесса заключается в том, чтобы решить, какая конфигурация алгоритмов будет оптимальной для поставленной задачи.

Алгоритмы обучения можно разделить на несколько типов. Тип алгоритмов обучения, выбранный для решения конкретной проблемы, зависит от метода обучения, который считается подходящим для данной ситуации. Эти методы можно разделить на несколько общих категорий:

Контролируемое обучение

Обучение без учителя

Обучение под наблюдением

Обучение с подкреплением

Контролируемое обучение

Контролируемое обучение

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

В некотором смысле контролируемое обучение имитирует человеческую память. Алгоритмы контролируемого машинного обучения по существу применяют то, что было изучено в прошлом, к новым данным для прогнозирования будущих событий.

Какие алгоритмы прогнозирования существуют?

Алгоритмы контролируемого обучения используют методы классификациии регрессии для формирования прогнозов:

Классификация:

Когда данные можно разделить на определенные группы или классы. Алгоритмы классификации работают, чтобы различать буквы и числа, например, или обрабатывать изображения.

Регрессия:

Алгоритмы регрессии используются для прогнозирования непрерывных откликов, т. е. изменений скорости, температуры или использования полосы пропускания.

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

Обучение без учителя:

В отличие от обучения с учителем, «правильный ответ» на данные, предоставляемые алгоритмам обучения без учителя, не дается заранее. Алгоритм предоставляет только немаркированную, несекретную информацию.

Вместо того, чтобы обучать машины распознавать известные шаблоны данных, чтобы определенным образом реагировать на различные выходные данные, цель неконтролируемого обучения состоит в том, чтобы алгоритм создавал функции, которые могут находить неясные шаблоны и структуры в данных и делать выводы из наборов данных. . Цель состоит не в том, чтобы узнать «правильный» вывод, а в том, чтобы изучить данные, чтобы предоставить пользователю полезную информацию.

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

См. алгоритмы кластеризации

Модели полуконтролируемого обучения используют для обучения как размеченные, так и неразмеченные данные.

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

Обучение с подкреплением

Алгоритмы обучения с подкреплением учатся методом проб и ошибок. Алгоритмы (называемые агентами) взаимодействуют со своей средой, выполняя действия, которые, в свою очередь, либо приводят к ошибкам, либо задерживают/или приносят вознаграждение. Чтобы агент узнал, какое действие является лучшим, необходима обратная связь с вознаграждением. Это вознаграждение называется сигналом подкрепления. Задача агента состоит в том, чтобы максимизировать вознаграждение или быстрее достичь своей цели с течением времени. Благодаря этому процессу обучения алгоритмы разрабатывают оптимальные политики для выполнения задач.

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

Такое программное обеспечение можно найти в робототехнике, играх и навигационных технологиях.

Другие подходы к обучению

Полный список дополнительных подходов к машинному обучению см. в этом.

Какой алгоритм выбрать?

С сотнями алгоритмов обучения и многочисленными подходами к машинному обучению… как мы можем выбрать правильные алгоритмы и метод обучения для задачи? Ответ не всегда однозначен. На самом деле, «поиск правильного алгоритма отчасти является методом проб и ошибок — даже очень опытные специалисты по данным не могут сказать, будет ли алгоритм работать, не попробовав его». Выбор алгоритма также зависит от размера и типа данных, с которыми он будет работать, от выводов, которые человек надеется извлечь из данных, и от того, как эта информация может быть впоследствии применена.

Источники:

https://www.techemergence.com/what-is-machine-learning/

https://www.sas.com/en_us/insights/analytics/machine-learning.html

https://medium.com/app-affairs/9-applications-of-machine-learning-from-day-to-day-life-112a47a429d0

https://news.codecademy.com/what-is-machine-learning/

https://www.mathworks.com/discovery/machine-learning.html

https://www.expertsystem.com/machine-learning-definition/