AzoftБлогПрименение машинного обучения в мобильных приложениях

Применение машинного обучения в мобильных приложениях

Дарья Казовская Июнь 7, 2016

Применение машинного обучения в мобильных приложениях

Сегодня машинное обучение или Machine Learning – одна из самых популярных областей Computer Science. Благодаря широкому распространению цифровых устройств, о машинном обучении заговорили как о революционном способе решения таких задач, как распознавание изображений, классификация и анализ данных, построение прогнозов и многих других.

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

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

Машинное обучение как инструмент разработчиков

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

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

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

Возможности приложений с алгоритмами машинного обучения

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

• Кастомизация

Кастомизированное мобильное приложение

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

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

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

• Распознавание фото и видео контента

Распознавание фото и видео контента

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

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

• Распознавание текста

Распознавание текста

Особое положение в распознавании контента занимает задача распознавания текста — Optical Character Recognition. Не секрет, что возможность автоматически различать текстовые символы способна сэкономить людям массу времени. Скажем, при наличии такой функции в мобильных приложениях пользователи могли бы легко распознавать документы, кредитные карты или переводить на свой язык иностранные слова на различных изображениях.

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

• Распознавание звука

Распознавание звука

Если вы хоть раз общались с так называемым мобильными помощниками, включая Siri от Apple или Ok, Google от Google, то наверняка знаете, что в этих программах заложены алгоритмы распознавания голоса. Конечно, эти инструменты не всегда срабатывают идеально, но они способны совершенствоваться с помощью машинного обучения. Сейчас проблема распознавания звуков актуальна как никогда. В идеале её решение открывает обществу перспективы создания текстов с помощью простого проговаривания информации.

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

• Анализ данных с сенсоров

Анализ данных с сенсоров

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

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

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

• Навигация и контроль действий

Навигация и контроль действий

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

• Прогнозирование трендов на основе анализа Big Data

Прогнозирование трендов на основе анализа Big Data

Отдельным направлением машинного обучения является использование Big Data. С помощью алгоритмов анализа Big Data можно решать задачи по использованию архивных данных и статистики для построения прогнозов на будущее. Эта технология успешно применяется различными сервисами мобильной аналитики, такими, как Amazon Mobile Analytics или Google Cloud Machine Learning.

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

Кто может брать на вооружение

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

• Интернет-компании

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

• Службы безопасности

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

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

Модели Machine Learning пригодятся компаниям по кибербезопасности для разработки решений по защите от вирусов и предотвращения угроз взлома мобильных устройств. Например, Snapdragon от Qualcomm.

• Ритейлеры

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

• Финансовые институты

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

• Умные дома

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

• Медицинские учреждения

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

Перспективы

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

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

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

Комментарии

комментарии