Машинное обучение — магия или наука?

в 10:16, , рубрики: sap, Блог компании SAP, машинное обучение, нейронные сети

Это пятая публикация в рамках помощи участникам конкурса «SAP Кодер-2017».


18 мая 2017 года на презентации в офисе SAP Денис Савкин, руководитель Центра экспертизы SAP СНГ по решениям и технологиям, рассказал о принципах в основе машинного обучения. На реальных кейсах он показал, как технологии искусственного интеллекта могут изменить бизнес. Вопреки сложившемуся на рынке впечатлению, здесь нет никакой магии — лишь математика и ее правильное применение в соответствии с поставленной задачей. Предлагаем расшифровку его доклада.

Машинное обучение — магия или наука? - 1

Немного теории

Когда мы говорим с заказчиками о машинном обучении (machine learning), оно зачастую воспринимается как магия — «непонятно как» работающий и «не ясно кем созданный» черный ящик. Как и в любой магии, в результатах его работы сомневаются. В классических продуктах (ERP и т.д.) все понятно: сделал заказ превратил его в поступление; из поступления сформировал счет. Все просто и легко. А машинное обучение лежит за рамками этого понимания. Так есть ли в его основе вообще какая-либо наука?

Об этом я и расскажу.

За последние 100 лет (а может и немногим меньше) мы накопили огромное количество разных знаний, в том числе, в каждой отдельной компании. При этом мы  научились замечательно работать лишь с верхушкой этого айсберга — примерно 5% всей имеющейся информации.

Машинное обучение — магия или наука? - 2

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

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

Интернет подтолкнул настоящий бум роста объема накопленной информации: за 2 тыс. лет своего существования человечество накопило порядка терабайта данных; а еще терабайт — за последние 2 года. И общий объем информации постоянно увеличивается. 90% данных, существующих на сегодняшний день, были созданы за последние 2 года. И каждый день создается еще 2,5 экзобайта данных, что эквивалентно примерно 7,5 тысяч Библиотек Конгресса США (одна из самых больших библиотек в мире).

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

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

История развития алгоритмов машинного обучения

Примерно в 70-х годах прошлого века появилось понятие баз данных и методы работы с ними. Отличный пример — язык SQL. Систему можно попросить: выбери мне всех сотрудников с фамилией Иванов; и система выбирает. Это простые механизмы, с них все и начиналось.

Машинное обучение — магия или наука? - 3

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

Машинное обучение (в рамках нашей иерархии) — это подкласс искусственного интеллекта: помимо него, туда входит и робототехника, и много всего другого. Само машинное обучение включает различные методы, в частности, работу с нейронными сетями, которые сейчас так популярны. И один из подклассов обучения нейронных сетей — это deep learning (глубокое обучение).

Здесь мы не будем подробно рассматривать классификацию методов машинного обучения. Я просто хотел показать, сколько всяких ветвлений есть у этого термина.  Здесь нейронные сети — это лишь маленький кусочек, как и deep learning. А все остальное — это множество математических методов, которые продолжают разрабатываться. Это большая наука, которая сейчас движется вперед с огромной скоростью, в том числе благодаря появлению совсем других аппаратных средств.

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

Как работает машинное обучение

Как же работает самый популярный на сегодняшний день алгоритм машинного обучения — нейронная сеть?

Представьте себе самое фантастическое животное. Оно может быть таким:

Машинное обучение — магия или наука? - 4

или таким:

Машинное обучение — магия или наука? - 5

или даже вот таким:

Машинное обучение — магия или наука? - 6

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

Любая математическая модель, основанная на обучении, работает точно так же. Это логично, ведь человечество всегда подсматривало за тем, как те или иные вещи реализованы в природе.
Таким образом первый алгоритм, который работает в machine learning, — это поиск закономерностей. Например, имея такой набор букв, мы можем заставить систему искать, какие слова из них можно составить:

Машинное обучение — магия или наука? - 7

Смотрите, как это работает. Человеческий мозг состоит из клеток — нейронов, связанных друг с другом.

Машинное обучение — магия или наука? - 8

Вся «магия» происходит в тот момент, когда электрический сигнал переходит от одной клетки к другой — этим и определяется наше с вами запоминание опыта.

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

Нейронная сеть функционирует на основе аналогичных описанным искусственных нейронов. Поясню на примере.

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

Понятно, что критерии для нас не равнозначны, поэтому я расставлю циферки («стоимость») каждого критерия по степени важности: 5 — это самый важный для меня параметр; погода — чуть менее важна, дальше работа и еда, имеющая наименьшую важность. Теперь мы можем сделать так, чтобы наш искусственный нейрон решал поставленную задачу.

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

Допустим, стоимость нашего отпуска маленькая, погода плохая, с работой завал, зато еда отличная. Набрали 6 баллов — в отпуск едем. Или предположим, ситуация изменилась: стоимость — высокая (плохо), с погодой — плохо, зато с работой и едой все хорошо. Набрали 3 балла — не едем.

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

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

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

Машинное обучение — магия или наука? - 9

Есть еще такой умный термин — глубокое обучение (deep learning). Это просто математический метод, который позволяет обучать внутренние слои нейронной сети (поэтому он и носит название deep learning). Без этого метода может оказаться, что при обучении коэффициенты проставляются в первом слое сети, но не внутри. Вот, собственно, и вся теория, которую я вам хотел показать.

В 70-х годах прошлого века математики придумали методы обучения сети. Но судьбу этого сегмента во многом определили две книжки. Еще в 60-х годах казалось, что на основе нейронных сетей сейчас будет реализован искусственный интеллект — будет прорыв. И вышла книга, где рассказывалось, что все задачи будем решать с помощью искусственного интеллекта. Однако коллега автора первой книги по университету в середине 70-х написал свое опровержение. В своей книге он доказывал, что все это — лишь миф, модель, которая позволяет решать только очень маленькие задачи. Популярность второй книги откинула математику нейронных сетей лет на 20. Ее автор впоследствии публично сожалел о своем творении, т.к. это оказало негативное влияние на математику, как науку, из-за последовавшего всеобщего разочарования.

С конца 70-х — начала 80-х — вплоть до начала 90-х нейронные сети находились в упадке. А потом опять пошел взлет. Были придуманы новые модели, созданы новые компьютеры. И сейчас Siri, Google-помощник и еще масса задач, в частности, распознавание речи и видео (в том числе, распознавание автомобильных номеров) реализовано на базе нейронных сетей.

Как происходит обучение

Рассмотрим этот процесс на простой задаче. Мы даем машине текст и хотим, чтобы машина могла сказать, имеет ли этот текст смысл.

Машинное обучение — магия или наука? - 10

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

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

Машинное обучение — магия или наука? - 11

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

Машинное обучение — магия или наука? - 12

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

Машинное обучение — магия или наука? - 13

Это два разных подхода к решению подобных задач.

Живые примеры

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

Есть вот такая игра: система просит нарисовать что-то. Например, за 20 секунд нарисуем траву. А теперь мы можем посмотреть, почему он соотнес наш рисунок с травой.

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

Эта задача решается только с помощью нейронных сетей (это самый простой и легкий способ). Все, что нужно алгоритму, — это большое количество — много-много людей, которые рисуют. Их легко найти в интернете.

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

Это очень полезно для бизнеса. В настоящее время, если кто-то пишет отзыв в социальной сети о бизнесе, это сообщение лучше найти и как-то на него отреагировать. Если вы обращали внимание, сейчас в booking.com гостиницы отвечают почти на каждый отзыв постояльцев извинениями или благодарностью. Но Booking — специализированное место (понятно, что гостиница туда будет смотреть). А сообщение в Фейсбуке или Вконтакте еще надо найти, чтобы отреагировать. Решить эту задачу помогают как раз подобные интеллектуальные системы.

В Америке произошла такая история. Возможно, вы о ней слышали. Во время перелета с авиакомпанией United Airlines некому гитаристу сломали гитару. Он просил возместить ущерб (попытался решить вопрос мирным путем), но компания отказалась что-либо компенсировать. Тогда он пообещал написать им песню с негативным отзывом и разместить ее на YouTube. И он действительно так сделал. Песня разошлась миллионными тиражами, лайками и т.п. Сотрудники United Airlines пытались впоследствии договориться о том, чтобы автор убрал песню, но у них ничего не вышло.

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

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

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

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

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

Продукты SAP

От теории переходим к тому, что происходит в компании SAP с точки зрения машинного обучения и искусственного интеллекта.

В Орландо в эти дни проходит SAP-форум (речь о SAPPHIRE, 16-18 мая 2017 года), — — это ежегодное событие, где на весь мир анонсируются самые интересные новинки, технологии и продукты. В этом году был анонсирован инновационный набор, который включает в себя технологические продукты, методики (подходы к внедрению этих продуктов) и акселераторы под разные индустрии для того, чтобы работать с клиентами с точки зрения цифровой трансформации.

Пока для многих «цифровая трансформация» — это красивое словосочетание. Чтобы оно перестало быть просто слоганом где-то на рекламном плакате, а превратилось в нечто осязаемое, у SAP появился новый пакет — SAP Leonardo.

Машинное обучение — магия или наука? - 14

Технологически SAP Leonardo состоит из нескольких кусочков. Первое — это технологии.

Машинное обучение — магия или наука? - 15

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

С точки зрения технологий в портфель SAP Leonardo входит целая платформа, с помощью которой можно создавать подобные решения. Она включает в себя алгоритмы machine learning, работу с большими данными (big data), Blockchain, умные системы, Интернет вещей и аналитику.

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

Еще один слайд с SAPPHIRE, который я хотел показать (простите, что на английском):

Машинное обучение — магия или наука? - 16

Есть классические системы, которые мы называем транзакционными (или системами записи), а есть некие умные системы, включающие новые технологии.

Например, есть классическая хорошо известная SAP ERP, которая сейчас у нас называется SAP S/4HANA. Вместе с SAP Leonardo она превращается в новую ERP, которая включает в себя в том числе и элементы новых технологий.

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

В рамках SAPPHIRE было объявлено о выходе нескольких программных продуктов, включающих в себя технологии искусственного интеллекта: SAP Resume matching, SAP Cash applications, SAP Service ticket intelligence и SAP Brand Impact.

Машинное обучение — магия или наука? - 17

Далее я о каждом из них расскажу подробнее. Начну с решения, которое соотносит счета и платежи.

SAP Cash applications

Машинное обучение — магия или наука? - 18

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

Садится бухгалтер и начинает проводить соответствие, за что это 1 млн рублей заплатили, что это они такое продавали. Хорошо, когда каждый заказ связан с каждым счетом. Но на практике так не происходит. Мы сколько лет пытаемся добиться, чтобы предприятия внедрили электронный документооборот, когда все хранится не на бумаге, а каждый заказ, каждый документ связаны. Но воз и ныне там. Кое-кто переходит, а кое-кто нет. И проблема остается та же самая: вот счет на 1 млн рублей, а дальше, бухгалтера, как хотите, так его и разносите. Платеж может быть не равен счету,  платеж и счет могут быть в разных валютах, могут быть неправильно указаны реквизиты или наименование клиента и другие детали. Т.е. в этих документах полно ошибок. В итоге бухгалтера сидят с огромными пачками документов на столе и ищут в них ошибки.

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

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

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

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

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

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

Этот процесс автоматизирован на 100%. И не нужны эти десятки людей в окошечках, которые что-то там спрашивают. Процесс автоматизирован от и до — до получения физически карточки (думаю, и карточку печатали без участия человека). Конечно, такие банки будут более эффективны, максимально внедряя автоматизированные средства работы с клиентом.

Я не говорю уже о колл-центрах. Чтобы дозвониться в компании до человека, надо 10 раз нажать 0, 1, 2, 3. Его там еще найти надо в голосовом меню. Но я, как потребитель, второй раз уже не буду звонить в колл-центр, по голосовому меню которого я буду 20 лет бродить. Так что дальше встанет вопрос эффективности этого колл-центра (чтобы на той стороне был практически человек).

Service tickets intelligence

Следующая типовая задача — Service tickets intelligence

Машинное обучение — магия или наука? - 19

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

Оказалось, что в этих компаниях есть очень много людей, которые занимаются такой вот категоризацией и правильной маршрутизацией входящих сообщений. А как вы понимаете, текст, который я напишу в свободной форме, может быть любой — хоть в стихах. Человек, читая эти стихи, делает предположения о проблеме и, соответственно, необходимом специалисте. Но с этим отлично справляется нейронная сеть. Машина читает написанный человеком текст и понимает характер проблемы. Это тоже типовое решение на нейронных сетях, которое поставляется, обучается под конкретный язык (русский, английский и т.п.) и может дообучаться под специфику работы компании (если это IT-компания, то и обращения будут по большей части из IT).

SAP resume matching

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

SAP Brand Impact

Фантастически популярная тема сейчас — распознавание образов. Например, стоит новый холодильник от компании Coca-cola. Цель компании Кока-кола заключается в том, чтобы в ее брендованном холодильнике стояла только продукция Coca-cola, а не пиво, мороженое или еще что-либо (холодильник должен использоваться по назначению). Поэтому устанавливается камера наблюдения. Следить за соблюдением условий установки холодильника, а также за появлением бренда на видео в иных ситуациях позволяет еще одно типовое решение — SAP Brand Impact.

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

Во-первых, сколько-то рекламы они дают например на эфирных телевизионных каналах. Кроме того, машины BMW появляются в фильмах, в журналах и т.п.

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

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

Кстати, знаете ли вы, чем промышленное решение в сфере машинного обучения отличается от любого непромышленного? Поясню на примере.

Много кто делает распознавание текста на видео. Наши коллеги занимаются этой задачей в инновационном центре Израиля. С использованием типового аппаратного обучения получилось примерно 1 кадр в 6 секунд (можно представить, какие нужны сервера и распараллеливание задачи, чтобы посмотреть весь эфир). Поэтому было заключено соглашение с компанией NVidia, которая создает отличные графические видеокарты. Оказалось, что работа с нейронными сетями — это матричные операции — отлично выполняются на этих видеокартах.

В результате компания Nvidia создала суперкомпьютер для машинного обучения, фактически, состоящий из одних видеокарт. На таком компьютере трансляция обрабатывается на очень низком уровне, достигая скорости обработки порядка 20 кадров в секунду. И это только первый шаг. Сейчас уже рассматриваются варианты, чтобы нейронные сети реализовать на уровне чипа (чтобы промышленно поставлять обученные нейронные сети). Но промышленные системы уже сейчас отличаются скоростью работы и масштабированием.

Хочу отметить, что представленная выше карта продуктов SAP — предварительный вариант. Т.е. каждая запись здесь может поменяться. Я ее демонстрирую лишь для того, чтобы показать, что нейронные сети — это концепция, потенциально применимая к разным сценариям. Сейчас в голове у SAP множество идей продуктов, в которые  можно добавить машинное обучение и искусственный интеллект. Это и умные боты, и работа с социальными сетями, и работа по рекомендации карьеры, и риск платежей (или неплатежей), и поддержание беседы. К примеру, систему S/4HANA (систему ERP) мы  уже сейчас разрабатываем таким образом, чтобы с ней можно было пообщаться.

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

Автор: SAP

Источник

Поделиться

* - обязательные к заполнению поля