БЕЛАРУСЬ · 19 октября 2016, 11:40 · yankoits - Journalist в dev.by
Как американо-белорусский стартап WorkFusion автоматизирует «человеческие» процессы

Умная система для работы с крауд-платформами, интерактивные боты, автоматизация механического человеческого труда на основе машинного обучения — компания WorkFusion разрабатывает продукты, рынок для которых ещё только формируется. Контракты с топовыми банками США и Европы, CODiE Award в номинации Best Big Data Solution и инвестиции в $14 млн — всего этого амбициозный стартап достиг за пять лет. А начался WorkFusion в Минске, и именно здесь по-прежнему работает большая часть персонала компании — 70 из 110 человек. dev.by заглянул в белорусский офис американской компании и подробнее узнал о её программных продуктах.

В минском офисе WorkFusion

Smart Crowd: как перепоручить обработку данных крауд-платформам

Максим Кемежук, Head of Professional Services: Разработка WorkFusion началась со Smart Crowd — системы для организации работы с крауд-платформами. В то время краудсорсинг был для клиентов загадкой. Мы объясняли компаниям, что можно «нанять» виртуальных работников для конкретной задачи и не держать пул людей в штате, и нас просто не понимали: «Да быть такого не может! Объясните попроще, чем вы занимаетесь!»

Первый большой контракт мы подписали весной 2011 с крупным производителем напитков. Компания хотела понять, как их продажи зависят от расположения продукции в магазине. Мерчандайзеры фотографировали полки с продукцией перед тем, как снова их заполнить, фотографии автоматически попадали на data storage, а мы отправляли эти фотографии в виде задач на крауд-платформу Amazon mTurk.

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

Люди, которые работали над этими задачами, были отобраны системой заранее. Для этого подготавливается gold-сет: бизнес-аналитик берёт небольшой набор картинок, в том числе «нестандартных», с разным углом поворота изображения, и сам выполняет несколько задач краудсорсеров. Полученный им файл с результатами и есть gold-сет — доподлинно известно, что все ответы в нём правильные.

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

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

Максим Кемежук

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

Если клиенту нужно высокое качество выполнения работ (скажем, выше 95%), мы можем включить дополнительные правила. Например, «2+1» — это значит, каждую задачу выполняет минимум два разных человека. Если их ответы сходятся, результат принимается, если нет — опрашивается третий, и правильный ответ выбирается по принципу большинства.

Эту схему можно усложнить за счёт коэффициентов. Модуль Worker Fitness умеет загружать исторические данные, изучать, насколько хорошо человек исполнял предыдущие задачи и, если надо, менять его score — коэффициент доверия. Например, человек тратит на задачи по 5 секунд, хотя в среднем по платформе они занимают минуту — значит, халтурит, его score нужно понизить. Ответы постоянно не попадают в большинство — тоже понижаем. Если оценка снижается до определённого уровня, человек исключается из пула.

У работников с высоким score Worker Fitness может принимать ответ сразу, а в случае неуверенности в качестве результата — динамически передавать ту же задачу второму человеку, третьему и так далее, и выбирать правильный ответ как взвешенное по score большинство. Специальное правило Price Rule может автоматически изменять стоимость задачи. Не решает один участник, другой, третий — машина поднимает плату за выполнение задачи. Стратегия зависит от того, какие деньги клиент готов потратить на обработку данных: в одних случаях нужно высокое качество ответов, в других — максимальное количество.

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

На начальной стадии мы интегрировались только с Amazon mTurk, со временем расширили список крауд-платформ до десятка. В WorkFusion можно включить динамическое распределение задач (Dynamic Task Distribution) между разными платформами на основании текущей активности работников на каждой из них.

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

Smart Process Automation: как машина выполняет механическую работу вместо человека

Сергей Васильев, Head of Product Development: Вторая система внутри WorkFusion — Smart Process Automation, предназначенная для автоматизации бизнес-процессов. Автоматизация стала логичным развитием работы с крауд-платформами. Иногда одно и то же действие нужно повторять сотни тысяч раз, и даже если человек проходит каждый цикл за пару секунд, машина может сделать то же быстрее сотни людей.

Сергей Васильев

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

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

Максим: Бизнес-процесс обработки счёт-фактур очень прост: получить документы из внешней системы, распознать их, извлечь необходимую информацию, скомпоновать её в нужный формат и отправить в систему хранения. Есть компании, которые могут автоматизировать отдельные части этого процесса. Главный плюс WorkFusion — мы можем автоматизировать все подпроцессы и наладить между ними плавные переходы. Сам процесс описывается в специальном компоненте BP (business process), за распознание документов отвечает модуль OCR (optical character recognition), интеграция с внешними системами происходит благодаря модулю RPA (robotic process automation) или подключению к существующим API, для извлечения информации используется машинное обучение.

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

Более того, мы не ставим задачу полностью исключить человеческий фактор. Наоборот, участие живого человека пока остаётся важным условием выполнения задачи. Во-первых, чтобы запустить машинное обучение, необходимо собрать тренировочный набор данных, и этим обычно занимается человек. Для этого работник садится и выполняет привычную задачу, но в окружении WorkFusion: например, берёт документ, находит в нём два нужных поля, выделяет их и указывает системе их смысловое значение: например, «WorkFusion Inc.» — это название компании, $15k — сумма счёт-фактуры. Машина запоминает действия человека, тренируется на них. Спустя много-много документов она показывает точность, с которой может выполнить эту задачу самостоятельно.

Сначала машина учится делать 100-процентный recall — вытаскивать все данные, хоть сколько-нибудь похожие на нужные. На этом этапе она получает много мусора, но главная задача — не пропустить ни кусочка нужной информации. Потом программа принимает решение, какие из этих данных правильные (precision). Оба результата сравниваются с реальными человеческими решениями, и строится кривая precision-recall, или F1 Score. Эта кривая показывает, какой процент задач можно выполнить автоматически и с какой точностью. Чем больше тренировочный набор и чем равномернее в нём распределены данные разного качества, тем точнее будут цифры.

Максим: Чтобы выбрать нужные параметры качества, внутри WorkFusion можно просто перетащить ползунок. Для одних клиентов важно получить максимум качества обработки, для других — снизить стоимость работ, то есть максимально их автоматизировать. Можно отдать машине хоть все задачи, и точно знать, с каким качеством они будут решены.

Сергей: Допустим, с точностью выше 99% машина может выполнить 70% задач — значит, теперь без участия человека можно обрабатывать 70% документов. Если качество ниже 99% неприемлемо, к модели можно подключить human task, и тогда оставшиеся 30% задач будут автоматически уходить на ручную обработку. Человек здесь выступает как обработчик исключений, а human task — это последний «else» в машинном алгоритме, составленном из множества вложенных условных переходов. Если клиент не хочет держать специальный персонал для обработки исключений, то задачи можно отдавать на внешний краудсорсинг.

Максим: Подобная схема работает в разных проектах. Например, у нас есть свой геокодер, который принимает строку адреса и пытается разбить его по категориям — индекс, город, улица, дом. Если геокодер «не уверен», что качество результата соответствует определённому клиентом, задача передаётся человеку. В качестве исходных данных даётся и оригинальная строка, и результат разбивки геокодером. Человек либо принимает результат, либо поправляет, а геокодер добавляет результат этого выбора в свой тренировочный набор.

Сергей: Таким образом, изначальный тренировочный набор пополняется. Через какое-то время запускается ретренинг модели, и цифры precision-recall идут вверх. Часто случается так, что клиент даёт для тренировочного сета лучшие данные, которые у него есть. На этих данных модель работает неплохо, но когда мы выходим в продакшн, всё разваливается! И здесь нас спасает то, что машина способна обучаться самостоятельно. Мы можем даже предоставить клиенту базовую универсальную модель с нулевым тренировочным набором — и она будет учиться только на ответах людей. И она натренируется, но не сразу, поскольку для тренировки ей необходимо много данных. Параметры precision-recall будут видны в реальном времени. Увидел, что точность выросла — перетащил ползунок, и количество человеческой работы сократилось.

Максим: Плюс этого подхода и в том, что не у всех клиентов на начальном этапе есть набор данных в объёме, нужном для получения реальных результатов. Мы не говорим клиенту: «Вот соберёте нужный объём данных, тогда WorkFusion и заработает». Система с самого старта работает параллельно с человеком, её результаты постоянно улучшаются, а мы к тому же экономим время работников клиента за счёт того, что вся работа выполняется в едином удобном UI, а не в нескольких разных, как раньше. Люди перейдут на новый процесс и продолжат работать, а заодно нарабатывать тренировочный набор данных. А через какое-то время в бизнес-процессе внутри WorkFusion появится кнопка «Apply Recommendation» — это значит, модель готова выполнять часть человеческой работы сама.

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

Максим: За отладкой и тренингом моделей стоит VDS — Virtual Data Scientist. Модели для него разрабатывают реальные исследователи данных: наши, которые работают в Минске и Нью-Йорке, и внешние. Мы сотрудничаем с многими университетами (Нью-Йоркским, Оксфордским, Стенфордским, MIT), и часто нам предлагают готовые модели по нашим запросам. Если эти модели дают реальные результаты выше, чем наши собственные разработки — мы внедряем их в WorkFusion, а авторов вознаграждаем. Но прежде эти разработки нужно проверять в боевых условиях: часто модели достигают высоких показателей на хороших данных, но стоит чуть-чуть усложнить задачу — и всё сыплется.

Как работать с клиентами на рынке, которого ещё нет

Сергей: Рынок для индустрии, в которой мы работаем, пока не сформировался. Мы сами его создаём, где-то набивая шишки, где-то набираясь опыта. Smart process automation — это не «1С: Бухгалтерия» о которой слышал любой менеджер, и которую опытный главный бухгалтер способен настроить — а потом и обучить коллег. Мы учим каждого клиента с нуля.

Поставки продукта можно разделить на две части: одна — отладка уже хорошо известных нам бизнес-процессов, вторая — построение новых. Для описания бизнес-процессов внутри WorkFusion используется BPMN — Business Process Model and Notation. И для известных процессов у нас есть готовые описания, которые мы можем предлагать почти как «коробочный» продукт. Поставка конкретному заказчику будет отличаться только интеграцией с внешними системами и некоторыми деталями обработки данных.

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

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

Пока мы не можем уверенно заявлять, что люди из бизнеса смогут внедрять WorkFusion самостоятельно, без участия технических специалистов, но рынок движется к этому. Зная нотацию BPMN, можно просто «нарисовать» процесс в WorkFusion, составить его из понятных «кубиков». Если этих кубиков недостаточно, внутри WorkFusion можно писать куски кода на нашем DSL (domain-specific language), который выработался в процессе эволюции WorkFusion. На нём, например, можно описывать интеграцию с внешними системами или сложное преобразование данных.

Иногда абстракций DSL недостаточно, требуется глубокое погружение в процесс — и тогда специалисты по интеграции WorkFusion могут писать код на языках высокого уровня, например, Groovy или Java. Готовый код пакуется, динамически доставляется в исполняемое окружение, и WorkFusion выполняет этот код в реальном времени. Иными словами, можно использовать WorkFusion как low-code-платформу.

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

Сегодня мы работаем более чем с двадцатью партнёрами, численность ИТ-специалистов в некоторых из них — более 100 тысяч. Это позволяет удовлетворить постоянно растущий спрос на оптимизацию процессов.

Максим: Сделать так, чтобы любой процесс мог заработать «из коробки», невозможно, и особенно это касается машинного обучения. Можно выстроить решение вроде IBM Watson, но оно будет работать по принципу «чёрного ящика». А мы не хотим «паковать» процессы — мы всегда даём доступ к деталям, к рычагам, за которые можно подёргать. В WorkFusion любой процесс можно настроить, добавить на модели новые классы.

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

Сергей: Одно из направлений, над которым мы активно работаем прямо сейчас — обработка естественного языка (Natural Language Processing, NLP). В первую очередь — в использовании со «смарт»-ботами. Судя по тенденциям, следующее поколение взаимодействия человека и компьютера будет проходить в нативном режиме.

Мы в WorkFusion не занимаемся решением таких узких задач, как алгоритмы OCR или распознавания голоса. Есть немало компаний, которые решают эти вопросы, и мы используем их разработки как сервисы внутри нашего продукта. Наш бизнес — автоматизация процесса, и если в этом процессе есть подпроцесс трансформации голоса в текст — это всего лишь один кубик в большой схеме. Если вы сказали: «Закажи такси сейчас», то наша задача — не распознать слово «такси», а сделать так, чтобы к вам приехал автомобиль.

Чем в WorkFusion занимаются исследователи данных

Отдел data science географически разделён между минским и нью-йоркским офисами WorkFusion. Логически он тоже делится на две команды: исследователи данных занимаются разработкой моделей, а инженеры в основном программируют эти модели. Впрочем, Lead Data Science Engineer минского офиса Алексей Чеусов рассказывает, что это разделение относительное.

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

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

Алексей Чеусов

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

Сейчас у нас готов прототип новой модели. Идея в том, чтобы выполнять задачу извлечения информации в два прохода по документу, а не в один, как раньше. На первом этапе мы делаем 100-процентный recall кандидатов, на втором — классифицируем их, а потом выбираем того, который получил максимальный вес. Этот подход хорош тем, что классификация — широко известная и хорошо изученная задача, для которой существует миллион способов решения. К тому же такая модель эффективно тренируется — в отличие от нашего оригинального подхода, который зачастую требовал недель работы. Когда я написал новый прототип, то со старта получил значительное улучшение — порядка 5% F1.

Но в этом подходе есть слабое место: наш механизм извлечения кандидатов не всегда достигает вероятности 100%. Сейчас мы его улучшаем за счёт идей из старого алгоритма. В итоге возникла конечно-автоматная модель — автомат BIESO. Мы вытаскиваем из текста chunks — последовательности слов, например, названия компаний или даты, и классифицируем отдельные слова тегами BIESO: B — begin, I — inside, E — end, S — single word token, O — outside. После этой классификации мы можем собрать все последовательности слов вида B(I)E — то есть тех, которые начинаются с B, заканчиваются на E, а внутри опционально могут содержать много I. Классифицируя каждое слово документа и накладывая ограничение на валидность последовательности тегов BIESO, мы получаем что-то вроде марковских моделей максимальной энтропии — только конечный автомат получается гораздо проще, и построен он не на буквах, а на словах.

Ещё один недавний пример улучшения модели — модуль CUSIP Correction. Из документов, с которыми мы работаем, очень часто нужно извлекать CUSIP — принятый в Северной Америке идентификатор финансовой организации. У CUSIP есть внутренняя структура: он состоит из девяти символов, последний из которых — контрольная сумма по предыдущим. Любой OCR-движок, который мы используем — например, Tesseract или ABBYY — умеет исправлять ошибки в обычном тексте, но на CUSIP он часто ошибается: О распознаёт как 0, l как 1. Мы решили написать специальный модуль, который бы рассчитывал валидность CUSIP и был максимально независим от конкретной задачи.

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

На следующем шаге мы рассчитали вероятности не на каждом отдельном символе, а на паре и тройке символов. Теперь мы уже не максимизировали совместную вероятность, а свели задачу к цепям Маркова первого и второго порядка. В итоге получился взвешенный конечный преобразователь (weighted finite-state transducer) — неклассическая модель, при этом очень надёжная. Сработало очень здорово — гораздо лучше, чем все наши предыдущие попытки.

Офис WorkFusion

Что будет дальше: Smart Bots

Сергей: Сейчас WorkFusion представляет из себя три разных продукта: Smart Crowds, Smart Process Automation и Smart Bots. У них есть общий code base, но они сильно отличаются, даже с точки зрения разработки. В каждом из трёх направлений заложены разные процессы, и развиваться будут все три. Особый упор — на Worker Fitness, RPA-часть Smart Process Automation и на машинное обучение, который накрывает все три направления.

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

Третье направление развития WorkFusion, Smart Bots — это решение, которое может привнести машинное обучение WorkFusion в ежедневные дела, в человеко-компьютерное взаимодействие. Прямо сейчас мы активно развиваем это направление внутри компании, причём делаем упор не на «внешность» чата, а на мозги «умного» бота — делаем так, чтобы он понимал больше и лучше, быстрее принимал решения.

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

«Умные» боты уже вошли в нашу жизнь: Siri и OK Google в каждом телефоне, банки используют ботов в Telegram как интерфейс для работы с клиентами, интернет-магазины снабжены полуавтоматическими «помощниками». Следующий главный кандидат на замену смарт-ботами — колл-центры, которые, как правило, решают определённый набор задач. Единственное, что мешает сделать замену прямо сейчас — отсутствие нормальной реализации распознавания голоса и извлечения данных из распознанной фразы.

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

Зачем набирать домашний номер, если можно просто сказать «Позвони домой»? «Сколько сейчас градусов?», «Включи мне музыку» — простые задачи, которые можно легко решить без «тыкания» в экран. Я думаю, что телефон уже скоро претерпит серьёзную трансформацию. Всё идёт к тому, что человеко-машинное взаимодействие будет происходить на человеческом языке. Может, гаджеты и останутся в наших карманах, но вынимать их оттуда точно никто не будет.

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

 

 

Фото: Андрей Давыдчик

Источник: dev.by
Нашли в тексте ошибку — выделите её и нажмите Ctrl+Enter.
Вакансии
Новые комментарии
Вот смотрите, многие вещи как бы на поверхности. Любой адекватный опытный ИТ-шник вам скажет, что все эти ассоциации ИИ, федерации и прочие профанации, всё это шелуха никому не нужная, и нужная если только для ЧСВ их председателей и членов советов. Сейчас самая насущная необходимость при строительстве ИТ-страны это кадры. И это не только и не столько кадры для ПВТ. Эта не та проблема, которая сейчас закрывается кадрами из россии, украины и даже возвращенцами из США, как здесь. Есть более глобальная проблема с кадрами. Если мы меняем экономику, строим ИТ-страну, то это проблема с ИТ-кадрами для всей экономики: начиная от крупного ИТ-менеджмента ИТ-директоров до последней тестировщицы и сисадмина. И не только их. Сейчас каждый второй специалист должен быть отчасти ИТ-шником. Если мы берем МАЗ или БелАЗ, то в ИТ-стране это уже не будут предприятия в их нынешнем понимании. Они должны стать ИТ-компаниями, как у Маска. Вон точно так же, как идея Грефа - Сбербанк это ИТ-компания с банковской лицензией. Поэтому на МАЗе в ИТ-стране должно работать не 0,5% или 0,05% ИТ-шников, как сейчас (не знаю точно, да это не важно, главное - суть), а 50%, а может и больше. Пусть это не будут все 50% программистов и тестировщиков. Но в любом случае это будут 50% ИТ-шников - людей разбирающихся в ИТ, в современной цифровой экономике и цифровом бизнесе. Вот тогда это будет предприятие ИТ-страны. Тогда хотя бы теоретически появится возможность конкурировать с мировыми компаниями. Пусть даже с тем же Маском. А теперь давайте прикинем, какое количество ИТ-шников в таком случае необходимо в разрезе всей страны? Поэтому толковые уважаемые люди вроде Лознера (или неуважаемый я уже десятый год) и говорят про современный ИТ-университет национального масштаба. Пусть он будет называться как угодно - "ИТ-академия", "ИТ-кластер", пусть он будет построен с нуля или на базе БГУИР, образовательного центра ПВТ или Белхарда или ещё какого-нибудь - это всё уже вторичные вопросы... Пока речь про стратегию и концепцию... Но этот ИТ-университет нужен и должен создаваться с конкретной целью - кадры для ИТ-страны. Не для ПВТ, как сейчас, куда идут лучшие кадры, но который работает на себя, для себя, а не в интересах развития предприятий остальной экономики. И не так как сейчас для остальной экономики - куда идут лузеры не попавшие в ПВТ, которые растворяются в этих 0,05% описанных выше и ничего не могут изменить на предприятиях и делают тоже самое, что и остальные - тупо плывут по течению госрегулирования. Поэтому только когда все предприятия станут одним большим ПВТ - это и будет ИТ-страна. Так казалось бы, что мешает взять не эту девочку, которая при всём к ней уважении, но я не понимаю, какое вообще отношение может иметь к ИТ-стране, а нанять какого-нибудь Богуша или Цепкало. Неужели если взять все их навыки и знания в области управления глобальными процессами такого масштаба (на уровне целого государства), знания в управлении образовательным процессом, те связи, которые есть у этих людей (сравните это всё – с девочкой-пекарем, ещё раз никого не хочу обидеть, просто по фактам и реальному положению вещей) и к этом всему добавить ИТ-экспертизу Мамоненко и его людей, его связи с белорусским ИТ-сообществом и бизнесом – неужели такой союз не смог бы поднять подобный проект? Или хотя бы начать этот проект. Что б остальное ИТ-сообщество + государство подхватило. Проект ИТ-университета, проект, который был бы вкладом в ИТ-страну намного большим, чем любая очередная ассоциация – как бы она там не называлась “искусственного интеллекта”, “блокчейна” и чего там ещё. Почему же они не делают это? Отчасти ответ уже прозвучал выше. Эти все топы и владельцы ИТ-компаний получается, если так по-честному брать - вруны и лицемеры. На самом деле им не нужна ИТ-страна. Какие бы они красивые статьи не писали и интервью не давали. Потому что сами принципы построения ИТ-страны идут в разрез с их интересами. Ведь если будет создан такой университет, сразу встанет вопрос, куда отправлять лучших выпускников? Куда отправлять лучшие кадры? Ведь речь не только про молодежь. А выпускников и квалифицированные кадры надо отправлять в реальный сектор экономики: на МАЗы и БелАЗы и прочие предприятия. В школы, больницы, университеты, органы власти, армию и милицию – всюду отправлять. Что бы во всех сферах создавать ИТ-страну. Так какой владелец ИТ-компании согласиться тратить свои ресурсы на создание такого университета, если потом выпускники должны будут идти не к нему? Нет, на самом дели эти вышеназванные топы и владельцы ИТ-компаний блюдут исключительно свои меркантильные интересы. И им нужен моментальный, краткосрочный эффект. Поэтому занимаются мелким пиаром. Много говорят высоких красивых слов. Но делают гораздо меньшие шаги. Вроде найма не совсем понятной девушки не особо понятно для чего, но не забывая при этом добавить какие то высокопарные слова про “ИТ-страну”.
mihail_che
20.07.2018 в 12:41
Belarusian Dream. Белоруска училась за деньги Госдепа, работала в Нью-Йорке, пекла хлеб в Аризоне, получила американский паспорт — и вернулась строить ИТ-страну

Обсуждение

Missing-male
+4

Алексей, приятно видеть знакомое лицо)

"Всё, что нужно сделать — поставить на каждой бутылке на картинке маркеры продуктов, то есть провести классификацию." - сейчас это модно делать автоматически или человеком дешевле чем обчить алгоритм?

Missing-male

Модно -- делать дешевле :-P

Missing
+1

Мы работаем во всех направлениях: и машинном, и ручном.

Зависит от размера задачи. Там, где объемы небольшие, например до 100 тысяч кадров, проще и дешевле сделать вручную, если больше этого - есть смысл тренировать модель.

Кроме того, ответы фрилансеров сами по себе и помогают обучать модель и контролировать качество.

83a12e584be3e461745458386a93f5ae?1532046141
+4

Ребята большие молодцы!

Такую крутую систему разработали.

Да и инвестиции.

Так держать!

Missing
+6

Лёха, за такие гламурные фотографии клуб Unix-знатоков может лишить тебя звания бородатой совы и хрустального свитера.

Missing-male

В клубе знатоков UNIX давно забыли, как я выгляжу, а борода и свитер почили в бозе :-)

Missing
+2

"На отдельных кейсах нам удавалось освобождать по несколько тысяч человек."

...а где-то в Бангалор индийский паренек пишет программу которая освободит тысячи белорусских программистов :)

Missing
+3

Классная статья, видно что готовились :)

Достаточно доходчиво и при этом не поверхностно.

Интересно откуда вообще пришла идея? Из опыта работы с краудсорсом?

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

это конечно умиляет :)

вероятно по английски это звучит как managed to let go a few thousand of workers :)

D01ec663af15d8da4e95ffaebebfdc27?1365522379
+1

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

Picture_1982?1356409860

Долгой жизни Че!

А статью писало несколько человек. Читаешь, как буриме. И где ж вы, редакторы-корректоры dev.by? Ну я понимаю, что precision и recall уже сложно перевести. Но "механизм извлечения кандидатов", "ретренинг модели"... Уши вянут.

Кстати, BIESO — это нвый WRE? Кто о чём, а курица всегда говорит о яйцах.

Missing-male
+1

B -- begin

I -- inside

E -- end

S -- не помню

O -- outside

BIESO chunking -- методика, использующаяся для того, чтобы натянуть ужа (sequence labeling, например, CRF или MEMM) на ежа (information extraction).

WRE_S --_O это_O совсем_B другая_I штука_E ._O Ты_O путаешь_O мягкое_O с_O теплым_O ._O

Аналогично можно выделять AdjP, VerbP, PrepP etc.

Хотя, если подумать, WRE+WFST можно было бы использовать как инструмент для извлечения...

А насчет курицы я с тобой согласен :-P

Missing-male
yankoits
– Journalist в dev.by

+1

S — Single Word?

Missing-male

Я так и говорю обычно, но писать не стал. Не уверен, что в оригинале именно так. Искать -- лень.

Missing-male

Любопытно!

А есть пример видео с демонстрацией как описать бизнес-процессы на вашем DSL?


Авторизуйтесь, чтобы оставлять комментарии

Использование материалов, размещенных на сайте, разрешается при условии прямой гиперссылки на dev.by. Ссылка должна быть размещена в подзаголовке или в первом абзаце публикации.
datahata — хостинг в Беларуси