«Машинное обучение - это исследование, которое дает компьютеру возможность учиться без явного программирования». (Артур Сэмюэл 1959)
Проще говоря, машинное обучение можно определить как науку и искусство программирования компьютеров, чтобы они могли учиться на данных.
Машинное обучение позволяет компьютерам выполнять те задачи, которые до сих пор выполнялись только людьми.
Машинное обучение - от вождения автомобилей до перевода речи - резко расширяет возможности искусственного интеллекта. Машинное обучение придает смысл программному обеспечению в беспорядочном и непредсказуемом мире.
Но что такое машинное обучение и какие изменения принесет машинное обучение в будущем?
Что такое машинное обучение?
Машинное обучение - это процесс обучения компьютерной системы точному прогнозированию с помощью данных.
Эти прогнозы могут быть в форме того, является ли фрукт на картинке яблоком или манго, относится ли присутствие словаря в предложении к книге в мягкой обложке или к бронированию отеля, электронные письма являются спамом или нет, для распознавания рукописных цифр, распознавания речь, чтобы создавать субтитры для YouTube и замечать людей, переходящих дорогу перед автономным автомобилем.
Это задачи, для выполнения которых требуется некоторый интеллект и время, но если эти задачи предоставляются машине, то машина может легко выполнять эти задачи в короткие сроки.
Типы машинного обучения
Существует четыре типа машинного обучения:
- Контролируемое обучение
- Неконтролируемое обучение
- Полуавтоматическое обучение
- Обучение с подкреплением
Обучение с учителем
При обучении с учителем в систему для обучения предоставляется огромное количество помеченных данных, например, изображения рукописных цифр, снабженные аннотациями для обозначения каждого отдельного числа. На основе заданных данных система распознает кластеры пикселей и формы, связанные с каждым числом, может распознавать рукописные числа, способные четко различать 0 и 8 или 5 и 2.
Однако для обучения системы контролируемому обучению требуется огромное количество помеченных данных, а некоторым системам требуются миллионы наборов данных для выполнения задачи.
Обучение без учителя
При обучении без учителя, как вы могли догадаться, данные не помечены, и система пытается учиться без учителя. В задачи обучения без учителя входит выявление закономерностей в данных, попытка найти сходства, попытка выявить корреляции.
Например, у вас есть набор данных, относящийся к посетителям блога. Вы должны определить разные категории посетителей и попытаться найти похожих посетителей. Когда вы запустите алгоритм для набора данных, система попытается связать посетителей по их вкусу. И в зависимости от вкусов алгоритм будет формировать кластеры связанных посетителей.
Полуавтоматическое обучение
Некоторые алгоритмы могут работать с частично размеченными данными и частично немаркированными данными. Это называется полууправляемым обучением. Метод полууправления заключается в использовании небольшого количества помеченных данных и огромного количества немаркированных данных для обучения системы. Генеративные состязательные сети (GAN) работают с техникой полууправляемого обучения. GAN может создавать новые изображения из нескольких существующих изображений.
Обучение с подкреплением
Чтобы сначала понять концепцию обучения с подкреплением, давайте возьмем пример в нашем детстве, когда мы впервые пытались сыграть в старую компьютерную игру без каких-либо знаний, мы не были знакомы с правилами управления игрой. Сначала мы выполнили некоторые действия, и в результате этих действий мы учимся играть в игру.
Это тот же подход к обучению с подкреплением, что наш агент выполняет действия, и в соответствии с действиями, которые агент получает вознаграждение или штраф, и пройдя количество итераций, которые наш агент изучает.
Программа DeepMind AlphaGO - лучший пример обучения с подкреплением. AlphaGO попала в заголовки газет в марте 2016 года, победив чемпиона мира Ли Седола. AlphaGO извлекла уроки из политики выигрыша, проанализировав миллионы игр, а затем сама поиграв во многие игры.
Подводя итог, машинное обучение полезно для:
- Задачи, для решения которых требуется много времени, требуют большой настройки правил для определения, но машинное обучение может легко выполнять эти задачи.
- Проблемы являются сложными, и решение этих проблем с использованием традиционного подхода невозможно, поэтому мы можем использовать машинное обучение, чтобы найти решение.
- Чтобы найти скрытые закономерности из сложных данных.
- Среды колебаний: система машинного обучения может адаптироваться к новым данным.