«Машинное обучение — это приложение искусственного интеллекта (ИИ), которое предоставляет системам возможность автоматически учиться и совершенствоваться на основе полученного опыта без явного программирования», — определяет Expert System.
За последнее десятилетие машинное обучение дало нам много вещей, таких как лучшее знание человеческих генов, более эффективный веб-поиск, беспилотные автомобили и многое другое. Очевидно, что машинное обучение сегодня настолько распространено, что мы, вероятно, используем его множество раз каждый день, даже не подозревая об этом.
Исследователи считают, что машинное обучение — это лучший способ добиться прогресса в создании искусственного интеллекта человеческого уровня.
Итак, что такое машинное обучение?
Простыми словами, машинное обучение — это использование данных, которые вам нужны, чтобы делать прогнозы. Благодаря новым вычислительным технологиям машинное обучение уже не то, что раньше. Эволюция машинного обучения произошла от распознавания образов и применения алгоритмов, которые могут наблюдать и учиться на данных, а затем делать прогнозы.
Этот итеративный аспект машинного обучения имеет решающее значение, потому что по мере того, как модели получают новые данные, они могут адаптироваться независимо. Говоря человеческим языком, вы обучаете компьютер, снова и снова вводя данные, которые говорят им, что это чихуахуа, а это маффин, как в приведенном ниже примере.
В конце концов, используя вычислительную статистику, машинное обучение начинает определять, что, скорее всего, будет щенком, а что, скорее всего, будет лакомством.
Все это означает, что когда у компьютера есть огромные наборы данных, он может начать делать прогнозы для вас.
Например, есть системы, которые можно научить предсказывать числа или буквы — логика, которую почтовые службы используют для распознавания рукописного ввода. Та же логика используется при разработке беспилотных автомобилей, плюс алгоритм, который Target использовал для предсказания женщина беременна.
Алгоритм машинного обучения позволяет системе находить закономерности в наблюдаемых наборах данных, создавать модели и объяснять мир, давать прогнозы, не имея четких заранее запрограммированных моделей и правил, — объясняет Вишал Мани из Codecademy.
Вот почему важно использовать разные команды, работающие над алгоритмами машинного обучения. Вам нужно предоставить широкий спектр функций и возможностей для вашего алгоритма, чтобы он работал в реальности.
Например, вы не можете ввести только лица европеоидов в алгоритм распознавания лиц и ожидать, что он будет обучен тому, что делать с лицами других рас. Мало того, что это плохая формула, но, как выяснил Google, это может быть плохо для PR, ссылаясь на инцидент, когда их приложение «Фото» пометило двух чернокожих как «горилл» из-за проблемы с их алгоритмом.
Как работает машинное обучение?
Процесс обучения начинается с наблюдений или данных, таких как инструкции или примеры, чтобы найти закономерности в данных и принять лучшее решение относительно будущего на основе примеров, которые вводятся в систему. Цель, очевидно, состоит в том, чтобы компьютеры обучались автоматически без вмешательства человека и вносили соответствующие коррективы.
Методы машинного обучения в основном контролируются или не контролируются, но есть и другие — вот обзор самых популярных из них.
Контролируемое обучение
Алгоритмы контролируемого машинного обучения «обучаются на примерах с пометками, таких как входные данные, где известен желаемый результат». Начиная с анализа известного набора обучающих данных, алгоритм обучения генерирует предполагаемую функцию для прогнозирования выходных значений. После адекватного обучения система способна давать цели для любых новых входных данных. Затем алгоритм может сравнить свои выходные данные с правильными предполагаемыми выходными данными и обнаружить ошибки для соответствующей адаптации модели. Он использует такие методы, как регрессия, классификация, прогнозирование и повышение градиента, чтобы использовать шаблоны для прогнозирования значения метки для дополнительных немаркированных данных.
Он обычно используется в приложениях, которые используют исторические данные для прогнозирования будущего. Например, он может предвидеть, когда операции с кредитными картами имеют наибольшую вероятность быть мошенническими.
Неконтролируемое обучение
В отличие от обучения с учителем, алгоритмы обучения без учителя используются, когда данные, используемые для обучения, не классифицируются и не маркируются. Проще говоря, SAS объясняет, что системе не говорят «правильный ответ», и алгоритм должен выяснить, что показывается. Цель состоит в том, чтобы изучить данные и найти внутри некоторую структуру. Этот метод хорошо работает с транзакционными данными.
Например, он может обнаруживать сегменты клиентов со схожими атрибутами, на которых можно ориентироваться аналогичным образом в маркетинговой кампании. Наиболее часто используемые методы включают отображение ближайших соседей, самоорганизующиеся карты, разложение по сингулярным числам, кластеризацию k-средних и т. д. Эти алгоритмы используются для сегментации рекомендуемых элементов, сегментации текстовых тем и выявления выбросов данных.
Полуконтролируемое обучение
Алгоритмы полууправляемого машинного обучения находятся где-то посередине между обучением без учителя и обучением с учителем, потому что они используют для обучения как немаркированные, так и маркированные данные (хотя обычно больше немаркированных, чем маркированных). Системы, улучшающие этот метод, способны значительно повысить точность обучения. Как правило, этот метод используется, когда полученные размеченные данные требуют соответствующих/квалифицированных ресурсов для обучения и извлечения уроков из них. Кроме того, получение неразмеченных данных обходится дешевле и требует меньше усилий.
Популярными используемыми методами являются регрессия, классификация и прогнозирование. Ранний пример этого метода включает идентификацию лица на веб-камере.