Машинное обучение для чайников. Что такое машинное обучение? Сервисы машинного обучения

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

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

Мы порой даже примерно не представляем, как работают некоторые приложения, основанные на методах машинного обучения. Скажем, никто не сможет вам ответить на вопрос «Почему мне сегодня в рекламе показали сайт A, а не Б?». Наиболее печальным во всей этой ситуации является то, что большинство людей имеет неверное представление о машинном обучении.

Вводная

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

Любую работающую технологию машинного обучения можно условно отнести к одному из трёх уровней доступности. Первый уровень - это когда она доступна только различным технологическим гигантам уровня Google или IBM. Второй уровень - это когда ей может воспользоваться людей студент с некоторым багажом знаний. Третий уровень - это когда даже бабуля способна с ней совладать.

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

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

Большую часть задач машинного обучения можно разделить на обучение с учителем (supervised learning) и обучение без учителя (unsupervised learning). Если вы представили себе программиста с плёткой в одной руке и куском сахара в другой, вы немного ошиблись. Под «учителем» здесь понимается сама идея вмешательства человека в обработку данных. При обучении с учителем у нас есть данные, на основании которых нужно что-то предсказать, и некоторые гипотезы. При обучении без учителя у нас есть только данные, свойства которых мы и хотим найти. На примерах разницу вы увидите немного яснее.

Обучение с учителем

У нас есть данные о 10 000 квартирах в Москве, причём известна площадь каждой квартиры, количество комнат, этаж, на котором она расположена, район, наличие парковки, расстояние до ближайшей станции метро и так далее. Кроме того, известна стоимость каждой квартиры. Нашей задачей является построение модели, которая на основе данных признаков будет предсказывать стоимость квартиры. Это классический пример обучения с учителем, где у нас есть данные (10 000 квартир и различные параметры для каждой квартиры, называемые признаками) и отклики (стоимость квартиры). Такая задача называется задачей регрессии . О том, что это такое, мы поговорим чуть позже.

Другие примеры: на основании различных медицинских показателей предсказать наличие у пациента рака. Или на основании текста электронного письма предсказать вероятность того, что это спам. Такие задачи являются задачами классификации .

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

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

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

Классы задач машинного обучения

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

  • Задача регрессии : на основании различных признаков предсказать вещественный ответ. Другими словами, ответом может быть 1, 5, 23.575 или любое другое вещественное число , которое, например, может олицетворять стоимость квартиры. Примеры : предсказание стоимости акции через полгода, предсказание прибыли магазина в следующем месяце, предсказание качества вина на слепом тестировании.
  • Задача классификации : на основании различных признаков предсказать категориальный ответ. Другими словами, ответов в такой задаче конечное количество, как в случае с определением наличия у пациента рака или определения того, является ли письмо спамом. Примеры : распознавание текста по рукописному вводу, определение того, находится на фотографии человек или кот.
  • Задача кластеризации : разбиение данных на похожие категории. Примеры : разбиение клиентов сотового оператора по платёжеспособности, разбиение космических объектов на похожие (галактики, планеты, звезды и так далее).
  • Задача уменьшения размерности : научиться описывать наши данные не N признаками, а меньшим числом (как правило, 2-3 для последующей визуализации). В качестве примера помимо необходимости для визуализации можно привести сжатие данных.
  • Задача выявления аномалий : на основании признаков научиться различать отличать аномалии от «не-аномалий». Кажется, что от задачи классификации эта задача ничем не отличается. Но особенность выявления аномалий состоит в том, что примеров аномалий для тренировки модели у нас либо очень мало, либо нет совсем, поэтому мы не можем решать такую задачу как задачу классификации. Пример : определение мошеннических транзакций по банковской карте.

Нейронные сети

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

Нейронная сеть (или искусственная нейронная сеть) - это сеть нейронов, где каждый нейрон является математической моделью реального нейрона. Нейронные сети начали пользоваться большой популярностью в 80-х и ранних 90-х, однако в конце 90-х их популярность сильно упала. Впрочем, в последнее время это одна из передовых технологий, используемых в машинном обучении, применяемая в огромном количестве приложений. Причина возврата популярности проста: увеличились вычислительные способности компьютеров.

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

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

Ограниченность нейронных сетей

Впрочем, в нейронных сетях нет ничего магического и в большинстве случаев опасения касательно сценария «Терминатора» не имеют под собой оснований. Допустим, учёные натренировали нейронную сеть на распознавание рукописных цифр (такое приложение может использовать, скажем, на почте). Как может работать такое приложение и почему здесь не о чем беспокоиться?

Допустим, мы работаем с изображениями 20x20 пикселей, где каждый пиксель представляется оттенком серого (всего 256 возможных значений). В качестве ответа у нас имеется одна из цифр: от 0 до 9. Структура нейронной сети будет следующая: в первом слое будет 400 нейронов, где значение каждого нейрона будет равно интенсивности соответствующего пикселя. В последнем слое будет 10 нейронов, где в каждом нейроне будет вероятность того, что на изначальном изображении нарисована соответствующая цифра. Между ними будет некоторое число слоев (такие слоя называются скрытыми) с одинаковым количеством нейронов, где каждый нейрон соединён с нейроном из предыдущего слоя и ни с какими более.

Рёбрам нейронной сети (на картинке они показаны как стрелочки) будут соответствовать некоторые числа. Причем значение в нейроне будет считаться как следующая сумма: значение нейрона из предыдущего слоя * значение ребра, соединяющего нейроны . Затем от данной суммы берётся определенная функция (например, сигмоидная функция, о которой мы говорили ранее).

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

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

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

Например, вторая кампания Барака Обамы была фактически выиграна лучшей на тот момент командой в области анализа данных. Разумеется, речь не идет о том, что они советовали ему соврать о чем-то, работа строилась значительно более умным путем: они выбирали, в каком штате, перед какой аудиторией, в какой день и на какую тему он должен выступать. Причем каждый раз они замеряли, как это сказывается на опросах вида «За кого бы вы проголосовали, если бы выборы были в ближайшее воскресенье?». Другими словами, подобные решения принимали не политтехнологи, а исключительно специалисты по анализу данных. Особенно интересным это становится в свете того, что, по оценкам специалистов, это дало ему преимущество в 8-10%.

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

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

Если у вас появилось желание изучить технологии машинного обучения, стоит отметить, что для глубокого изучения предмета с пониманием всего фундамента следует разбираться как минимум в математическом анализе, линейной алгебре и методах оптимизации (с упором на последние два). Кроме того, желательно знать основы программирования и какой-нибудь язык программирования. В машинном обучении, как правило, используется R, Python или Matlab.

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

Мотивировать его изучение можно следующим образом: посмотрите учебный план. Если вы просмотрите все лекции и решите все задания, то вы гарантированно сможете применять все эти вещи на практике. В частности, вы освоите алгоритмы линейной регрессии (задача регрессии), логистической регрессии, метода опорных векторов, нейронных сетей (задача классификации), K-means (кластеризация), PCA (понижение размерности), выявления аномалий и узнаете как построить рекомендательную систему (рекомендация товаров по вашим оценкам, например, фильмов или песен). На последней неделе курса вам также расскажут, как построить систему, которая будет находить и расшифровывать надписи на картинках или опознавать людей.

Для тех, кто хочет изучать предмет со всеми математическими тонкостями в лучших традициях сильных технических вузов, можно порекомендовать курс от ВШЭ или специализацию от МФТИ . Заметим лишь, что специализация является платной и для доступа к ней придется оформить подписку приблизительно за 3000 рублей в месяц. Впрочем, есть бесплатный период в 7 дней.

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

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

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

Распознают текст

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

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

Распознают звуки

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

Анализируют данные с сенсоров

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

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

Помогают с навигацией

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

Строят точные прогнозы

Квентин любит заказывать пиццу через мобильное приложение, но интерфейс в нем не очень удобен, и это раздражает. Разработчик использует сервисы мобильной аналитики Amazon и Google , чтобы понять, что не нравится Квентину в мобильном приложении. Сервисы анализируют поведение пользователя и подсказывают, что исправить, чтобы заказывать пиццу стало просто и удобно.

Кому будет полезно

  • Интернет-компаниям. Почтовые сервисы используют алгоритмы машинного обучения, чтобы фильтровать спам. Социальные сети учатся показывать только интересные новости и пытаются создать «идеальную» ленту новостей.
  • Службам безопасности. Пропускные системы основаны на алгоритмах распознавания фото или биометрических данных. Дорожные службы используют автоматическую обработку данных, чтобы отслеживать нарушителей.
  • Компании в сфере кибербезопасности разрабатывают системы для защиты от взлома мобильных устройств, используя машинное обучение. Яркий пример - Snapdragon от Qualcomm .
  • Ритейлерам. Мобильные приложения торговых сетей могут изучать данные о покупателях, чтобы создавать персональные списки покупок, повышая лояльность клиентов. Еще умное приложение может советовать товары, которые интересны конкретному человеку.
  • Финансовым организациям. Банковские приложения изучают поведение пользователей и предлагают продукты и услуги, основываясь на особенностях клиента.
  • Умным домам. Приложение на основе машинного обучения будет анализировать действия человека и предлагать свои решения. Например, если на улице холодно, закипит чайник, а если в домофон звонят друзья, приложение заказывает пиццу.
  • Медицинским учреждениям. Клиники смогут наблюдать за пациентами, которые находятся вне больницы. Отслеживая показатели организма и физическую активность, алгоритм предложит записаться к врачу или сесть на диету. Если показать алгоритму миллион томографических снимков с опухолями, система с большой точностью сможет предсказывать рак на ранней стадии.

И что дальше?

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

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

Термин «машинное обучение», скорее всего, встречался вам не раз. Хотя его нередко используют как синоним искусственного интеллекта, на самом деле машинное обучение - это один из его элементов. При этом оба понятия родились в Массачусетском технологическом институте в конце 1950-х годов.

Сегодня вы сталкиваетесь с машинным обучением каждый день, хотя, возможно, и не знаете этого. Голосовые помощники Siri и Google, распознавание лиц в Facebook и Windows 10, рекомендации в Amazon, технологии, не позволяющие автомобилям-роботам натыкаться на препятствия, созданы благодаря прогрессу машинного обучения.

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

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

Самообучающееся программное обеспечение

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

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

Классический пример - распознавание образов. Покажите системе машинного обучения достаточное количество снимков собак с пометкой «собака», а также кошек, деревьев и других объектов, помеченных «не собака», и она со временем начнет хорошо отличать собак. И для этого ей не нужно будет объяснять, как именно те выглядят.

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

Обучение с учителем и без

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

Типичные задачи обучения с учителем - классификация и прогнозирование (или регрессионный анализ). Распознавание спама и образов - задачи классификации, а прогнозирование котировок акций - классический пример регрессии.

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

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

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

Ограничения машинного обучения

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

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

HP попала в неприятную ситуацию в 2009 году, когда система идентификации лиц для веб-камеры на ноутбуке HP MediaSmart оказалась неспособной распознавать лица афроамериканцев. А в июне 2015 года некачественный алгоритм сервиса Google Photos назвал двух черных американцев «гориллами».

Еще один пример - печально знаменитый Twitter-бот Microsoft Tay, с которым в 2016 году поставили эксперимент: тогда попытались выяснить, сможет ли искусственный интеллект «притвориться» человеком, обучившись на реальных сообщениях от людей. Меньше чем за день тролли в Twitter превратили Tay в отъявленного ксенофоба - вот вам типичный пример испорченных учебных данных.

Словарь терминов

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

Нейронная сеть. Это компьютерная архитектура, имитирующая структуру нейронов головного мозга; каждый искусственный нейрон соединяется с другими. Нейронные сети выстроены слоями; нейроны на одном слое передают данные множеству нейронов на следующем и т. д., пока не будет достигнут выходной слой. Именно на последнем слое сеть выдает свои догадки - скажем, на что похож тот объект в форме собаки, - сопровождая ответ рейтингом уверенности.

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

Глубокое обучение. Это, по сути, машинное обучение «на стероидах» - использование многослойных (глубоких) сетей для принятия решений на основе неточной или неполной информации. Система глубокого обучения DeepStack в декабре прошлого года обыграла 11 профессиональных игроков в покер путем перерасчета стратегии после каждого раунда ставок.

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

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

- Dan Tynan. What is machine learning? Software derived from data. InfoWorld. August 9, 2017

В Москве создают нейросеть, распознающую показания счетчиков на воду по фотографиям

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

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

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

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

MoneyСare использует машинное обучение для прогнозирования одобрения кредитов

Независимый кредитный брокер MoneyCare создал модель прогнозирования на основе облачного сервиса Microsoft Azure Machine Learning. Решение позволяет оценить вероятность положительного ответа банка на запрос кредита.


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

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

На первом этапе проекта был создан прототип классификатора в Azure Machine Learning, задача которого - отбор более 60% заявок на кредит с вероятностью одобрения свыше 80%. При этом были использованы такие методы, как дискриминантный анализ, регрессионный анализ, кластеризация, классификация на основе разделимости, а также алгоритмы сокращения размерности.

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

Правительство Мурманской области применит машинное обучение в документообороте

Кафедра технологии программирования СПбГУ совместно с компанией «Диджитал Дизайн» исследовала возможность применения в системах электронного документооборота алгоритмов машинного обучения. Объектом исследования стала СЭД Правительства Мурманской области. В качестве базы данных были использованы более 250 тыс. обезличенных документов служебной переписки.

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

Было определено, что, используя интеллектуальные алгоритмы, можно автоматизировать сортировку документов по содержимому прикрепленных файлов и составить семантическое ядро для каждой категории, искать схожие или идентичные документы, определять зависимости одних атрибутов документа от других и даже автоматизировать построение вероятностной модели предсказания значений атрибутов. В ходе исследования удалось достигнуть 95-процентной точности при определении категории документа по содержанию текста. На следующем этапе будет проведено тестирование на узкой группе ключевых пользователей СЭД Правительства Мурманской области, обрабатывающих большие объемы документов.

«Хлынов» оптимизировал обслуживание банкоматов

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

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

Применение сервисов машинного обучения из облака Microsoft Azure позволило банку снизить объем резервируемых денежных средств в банкоматах до 16-20% от среднемесячного остатка на картах: он возрос до 1,2 млрд руб., а резервируемая сумма составила 200-230 млн руб. Освободившиеся средства банк смог направить на другие операционные задачи, в частности на кредитование своих клиентов.

Созданный совместно с интегратором «Рубикон» алгоритм, задействующий методы машинного обучения, позволил банку сократить число ежемесячных инкассаторских выездов более чем в 1,5 раза. Каждый из таких выездов обходится в 3 тыс. руб., а каждая перевозимая тысяча рублей облагается комиссией 0,026%.

В ближайшем будущем банк «Хлынов» планирует внедрить дополнительные инструменты прогнозной аналитики из облака Microsoft Azure для продуктивного использования информации, накопленной за более чем 25 лет работы с клиентами.

«Газпром нефть» будет пользоваться искусственным интеллектом «Яндекса»

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


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

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

Михаил Ежов — сооснователь блокчейн-сервиса по распознаванию и анализу речи Anryze

«Мы посчитали, если сравнить банк сегодня и Сбербанк пять лет назад, то примерно 50% тех решений, которые принимались людьми, сегодня принимаются машинами. И через пять лет, мы считаем, мы сможем принимать примерно 80% всех решений автоматически с помощью искусственного интеллекта».

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

Основные понятия

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

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

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

Смена парадигмы предоставления банковских услуг в России и в мире

Стремясь выделиться среди конкурентов и завоевать внимание целевой аудитории, банковские компании переходят от пассивного взаимодействия с клиентом к проактивному. Банки создают новые сервисы, продвигают новые услуги и пакеты услуг, опираются на принцип клиентоориентированности — предлагают каждому именно то, в чем он заинтересован, подбирают индивидуальные предложения по кредитам. Развитие решений, основанных на использовании нейросетей, идет в нескольких направлениях. Появляются умные помощники, которые позволяют быстро получить нужную информацию или принять решение, — например, Telegram-бот банка «Райффайзен» поможет найти ближайшее отделение и узнать, работает ли оно по субботам. Совершенствуются решения, связанные со скорингом, — интеллектуальной оценкой кредитной истории клиента. Онлайн-сервис Scorista оценивает благонадежность заемщиков МФО. Инструмент для автоматизации деятельности МФО Credit Sputnik включает в себя интеграцию с продуктами поставщиков кредитных историй ОКБ, Equifax, «Русский Стандарт», сервисом ФССП.

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

Нейросети позволяют эффективно обрабатывать данные о клиентах и пользователях услуг. Многие современные стартапы — американская система Brighterion, системы iPrevent и iComply — основаны на применении подхода Know Your Customer (KYC). Суть подхода — в подробном анализе поведения клиента. Сбор данных о поведении помогает составить полное представление о клиенте и обеспечить более персонализированный сервис. А еще подобное позволяет выявлять отклонения от стандартного паттерна и распознавать несанкционированные действия с аккаунтом.

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

Искусственный интеллект для повышения индекса лояльности клиентов

Оценивать можно не только клиентов, но и самих сотрудников банка — чтобы иметь возможность постоянно совершенствовать качество предоставляемых услуг. И тут на помощь снова приходят нейросети: централизованные сервисы Amazon Connect, Google Cloud Speech API или платформа Anryze, использующая распределенные вычисления на базе блокчейна, позволяют расшифровывать телефонные переговоры в текст и обрабатывать полученную информацию. Записи телефонных разговоров позволяют контролировать деятельность сотрудников, дорабатывать скрипты продаж, выявлять ошибки и повышать лояльность клиентов за счет определения и решения основных проблем коммуникации. Текстовый формат обеспечивает больше возможностей для анализа информации: например, поиск по ключевым словам.

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

Скоринг (англ. score — «счет») — это система и метод оценки рисков по кредитам, а также управление рисками на основе прогноза вероятности просрочки конкретным заемщиком платежа по кредиту. Использование систем скоринга на базе технологий машинного обучения позволяет автоматизировать процесс выдачи кредитов. На сегодняшний день скоринговые решения используют «Банк Москвы», «Юниаструм Банк», банк МДМ, «Росгосстрах» и «Хоум Кредит». «Бинбанк» ведет проекты по включению в анализ данных телекоммуникационных компаний и информации из социальных сетей, чтобы принимать решения по кредиту на основании максимального количества информации о каждом клиенте.

Нейросети для автоматизации рутинных процессов и оптимизации сложных задач

Современные алгоритмы машинного обучения способны автоматизировать некоторые рутинные этапы процесса AML (Anti Money Laundering): создание и подготовку отчетов, рассылку уведомлений, отбор счетов и транзакций по определенным вызывающим подозрение параметрам. Подобную систему — SAS AML — в прошлом году внедрил «Тинькофф-банк» : за счет автоматизации удалось перераспределить человеческие ресурсы с необходимого контроля на непосредственное расследование криминальных схем и повысить индекс выявления подозрительных операций на 95%.

Глубокое обучение: противодействие мошенничеству на базе нейросетей

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

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

Индийский банк HDFC с помощью SAS Institute внедрил систему, выявляющую мошеннические операции. Американский стартап Merlon Intelligence разработал платформу для выявления подозрительных транзакций с использованием алгоритмов NLP (Natural Language Processing) и в итоге получил финансирование на сумму более 7 млн долларов от венчурного фонда Data Collective.

Что дальше?

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

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

Когда-то давно я рассказывал, как проходил курс по машинному обучению на Coursera. Курс ведет Andrew Ng, который объясняет все настолько простыми словами, что довольно сложный материал поймет даже не самый усердный студент. С тех пор тема машинного обучения мне стала близка, и я периодически смотрю проекты как в области Big Data (читай предыдущую колонку), так и в области машинного обучения.

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

Google Prediction API

Одним из самых первых предлагать Machine Leaning as a Service стал Гугл! Уже довольно долгое время любой желающий может воспользоваться Google Prediction API (дословно «API для предсказаний»). До определенного объема данных использовать его можно абсолютно бесплатно, просто заведя аккаунт на Google Prediction API . О каких предсказаниях идет речь? Задача может быть разная: определить будущее значение некоего параметра на базе имеющихся данных или определить принадлежность объекта к какому-то из типов (например, язык текста: русский, французский, английский).

После регистрации у тебя появляется доступ к полноценному RESTful API, на базе которого можно построить, скажем, рекомендательную систему, детектирование спама и подозрительной активности, анализа поведения пользователей и многое другое. Уже успели появиться интересные проекты, построенные на базе интенсивного использования Google Prediction API, например Pondera Solutions, который использует машинное обучение от Гугла для построения системы антифрод.

В качестве эксперимента можно взять готовые модели данных: идентификаторов языка для построения системы, определяющих, на каком языке написан входящий текст, или идентификаторов настроения, чтобы автоматически определить тональность комментариев, которые оставляют пользователи. Думаю, в будущем мы расскажем о Google Prediction API подробнее.

BigML

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

Разработчики сделали все, чтобы с системой могла справиться домохозяйка. После регистрации к твоим услугам несколько примеров исходных данных, в том числе часто используемый в учебниках набор данных «Ирисы Фишера», который считается классикой для решения задачи по классификации. В набор описывается 150 экземпляров цветка ириса трех разных видов, с описанием характеристик. На базе этих данных можно построить систему, которая будет определять принадлежность цветка к одному из видов по введенным параметрам.

Эксперимент

Все действия выполняются в понятной админке (не стану описывать нюансы, все будет предельно доступно).

  1. Выбираем CSV-файл, в котором хранятся строчки, описывающие характеристики разных видов цветков, как источник данных (Source).
  2. Далее используем эти данные для построения набора данных (Dataset), указав, что предсказывать нужно будет тип цветка. BigML автоматически распарсит файл и, проведя анализ, построит различные графики, визуализируя данные.
  3. На базе этого Dataset’а одним кликом строится модель, на которой будут основываться предсказания. Причем BigML опять же визуализирует модель, объясняя логику ее работы. Можно даже экспортировать результат в виде скрипта для Python или любого другого языка.
  4. После того как модель готова, появляется возможность делать предсказания (Predictions). Причем делать это в разных режимах: сразу задать все параметры цветка или же отвечать на вопросы системы, которая, исходя из ситуации, будет спрашивать только то, что ей нужно.

То же самое можно было бы провернуть и без UI, а общаясь с BigML через консольное приложение BigMLer или через REST API, общаясь из консоли обычным curl’ом.

Две главные задачи

Внутри BigML и Google Prediction API ничего сверхъестественного нет. И неглупые разработчики смогут реализовать аналогичные движки самостоятельно, дабы не платить сторонним сервисам (и не выгружать им данные, которые часто нельзя выгружать).

Последние материалы сайта