Машинное обучение для вашего стартапа

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

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

Действительно ли вам это нужно?

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

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

Часто точка максимальной выгоды продукта или сервиса оказывается на полпути от человеческого обучения к автоматизированному машинному обучению. Либо человек даёт машине подсказки, когда алгоритм не в состоянии решить проблему, либо компьютер помогает человеку избавиться от лишнего и выйти на новый уровень. 

Если вы твёрдо убеждены, что машинное обучение пойдёт вашему продукту на пользу и определились с его объёмом, возникает проблема разметки данных.

Разметка данных

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

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

Ценность в угоду разметки

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

Например, возьмём бесплатный Google-сервис reCAPTCHA — он помогает оградить веб-сайты от спама. Пользователю предлагается распознать изображения, чтобы доказать, что он живой человек. Однако не стоит забывать, что reCAPTCHA — это не что иное, как обучающий алгоритм для распознавания предметов в реальном мире. Предлагаемые изображения — это данные для обучения, и по мере того, как пользователи распознают объекты, информация получают требуемую разметку.

Разметка не может быть средством для достижения какого-то далёкого результата. Если задание, которое вы применяете для тренировки алгоритмов, не приносит пользу, или если в течение долгого времени пользователи не видят этой пользы, они не будут участвовать. Даже reCAPTCHA с её явной ценностью для безопасности и качества, выводит из себя интернет-пользователей — и сейчас Google пытается найти пути решения этой проблемы.

Типы ценности разметки

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

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

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

Благодаря пассивному отслеживанию местоположения Foursquare больше не нужно использовать «чекины», но они продолжили жизнь в Foursquare Swarm, а на ранних этапах все эти «чекины» предоставляли FourSquare информацию, которая добавляла контекст к местоположению.

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

Наблюдение за поведением

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

Возьмём Amazon: компания наблюдает за поведением покупателей, чтобы рекомендовать продукты и предложения. В компании Alation пошли похожим путём. Они отслеживают использование данных, например, какие отчёты чаще всего используются и какие SQL-запросы задаются, чтобы помочь аналитикам искать правильный набор данных для имеющейся задачи.

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

В скором времени пользователи, возможно, уже не будут так же необходимы для тренировки алгоритмов. Симуляции обеспечат локализованную среду и идеальный подход к разметке. Шахматы, го и понг — эти игры не составит труда смоделировать и запускать сразу тысячи или сотни тысяч сценариев. Alpha Zero от Google самостоятельно научился играть в шахматы и победил лучшие шахматные программы, продолжая осваивать две другие игры — при этом он играл сам с собой.

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

Самое важное — пользовательский опыт

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

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