Восстание машин: Как роботы захватили бухгалтерию

МЕНЮ


Искусственный интеллект
Поиск
Регистрация на сайте
Помощь проекту

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


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

В 2016 году разработчики Кнопки создали много роботов, всего их — 42. Это наши помощники, они забирают на себя рутину в работе бухгалтера: один распознаёт документы, второй их сортирует, третий проводит банковскую выписку. У каждого робота есть имя: Раскукожка, Сортировка, Проводник, есть даже робот Паникёр. Рассказываем, зачем нам помощники с искусственным интеллектом и как они работают.

Техническая вводная

Наши клиенты общаются с нами через веб-приложение или в мобильном приложении на Айфоне или Андроиде. Веб-приложение разработано на платформе .NET. Сначала была Java, но сейчас её почти не осталось. Недавно перенесли приложения в Azure.

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

Так мы уверены, что все документы, базы клиентов и другие данные в безопасности.

Рассказывает разработчик Кнопки. Почему перешли с Java на .NET:1. Наше приложение в тот момент — это наследие, которое мы получили после 5 лет разработки. Оно создавалось без применения каких-либо инженерных практик. Структура кода и отсутствие его тестирования создавали гигантские трудности в написании новых фич. Чтобы сделать хоть какое-то даже небольшое изменение, мы тратили кучу сил и времени. Кроме того, приложение было спроектировано таким образом, что любые тесты приходилось очень долго и неудобно писать. Модульного тестирования не существовало. Были только интеграционные тесты, которые использовали живую базу. По итогу, все тесты проходили часами.2. В силу того, что в приложении был один Enterprise и он погонял другой Enterprise, наше приложение очень долго разворачивалось и собиралось. Долго — это до 40 минут. Приходилось очень много времени, чтобы собрать и развернуть приложение после малейшего изменения или чтобы просто посмотреть на то, как выглядит какая-то фича на форме в вёрстке. Появлялись билд-хобби. :)3. Стало очевидно, что новые фичи мы должны писать в отдельном приложении сбоку. Наших компетенций в .NET в тот момент стало сильно больше — у нас поменялась команда. Команда единогласно признавала, что язык C# намного приятнее Java. Кроме того, в .NET есть такие технологии как Linq, которые позволяют иметь дело не с настоящей базой, а с полноценной её InMemory реализацией.4. Большая часть нашего приложения работает с 1С. И делаем мы это очень спорным способом через COM API, COM — работает только в Windows среде и .NET имеет нативную поддержку COM-а. То есть у нас всё равно было уже много кода на .NET, и команда видела, что этот код приятнее.

Как было до роботов

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

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

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

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

Как теперь

Андрей — владелец небольшой кофейни в Москве. Каждый день он закупает продукты у поставщиков, кормит москвичей отменной выпечкой и угощает кофе.
Учёт ведёт в iiko, а бухгалтерию доверяет Кнопке. Первичные документы аккуратно собирает и раз в неделю привозит к нам в Московский офис. Мы работаем с первичкой: сканируем, сортируем и отправляем контрагентам. Клиенту документы доступны в облаке, оригиналы храним в несгораемых шкафах, а сканы сразу попадают на конвейер документов.
Первым делом первичку Андрея мы сканируем и получаем pdf со всеми документами в одном файле. Чтобы разделить документы, в работу вступает робот Раскукожка. Он превращает пдфку в 150 джипегов.
Потом робот Сортировщик смотрит на каждый скан и понимает, какой из документов — акт, какой — УПД, а какой — товарная накладная. Он аккуратно сортирует их и кладёт в нужную папку.
Сканы бывают разные. Если документ вверх ногами или лежит на боку, Сортировщик их переворачивает, чтобы человеку было удобно читать.
Внутри Сортировщика живёт две свёрточных нейронных сети — одна для поворота, другая для классификации документов. Для обучения сетей потребовалось 40 тысяч размеченных вручную сканов.
Затем весь текст в документе распознаётся другим роботом. Он определяет название клиента, контрагента, дату, номер и всю фактурную часть. Для распознавания мы пользуемся решением от наших партнёров, которые, в свою очередь, используют софт ABBYY.
И только после этого скан попадает к бухгалтеру:
Бухгалтер проверяет и нажимает кнопку «Сохранить».
Дальше в работу включается робот Проводник, он сохраняет каждый документ в 1С и проводит его.
После этого бухгалтер проверяет все поступления и списания с расчётного счёта компании. Для этого нужна выписка с банковского счёта клиента. Раньше нам приходилось её запрашивать у всех клиентов.
Теперь всё проще. Чтобы получать выписку без участия клиента, мы интегрировались с Альфой, Точкой и Тинькофф банком. Клиентам не нужно заходить в интернет-банк, качать выписку и высылать её бухгалтеру. А в 1С всегда актуальная информация по платежам. Также выписка из этих банков отображается в клиентских приложениях. Остальные банки пока обслуживаются вручную.
Но просто скопировать платёж из банка в 1С недостаточно. Каждый платёж нужно правильно провести — и это тоже делает специальный робот. Для обучения использовались несколько сотен тысяч платежей, проведённых вручную.
Но прежде нам нужно было договориться со всеми бухгалтерами компании, чтобы проводить выписку одинаково. Оказалось, в бухгалтерии присутствует творчество. :)
В итоге, получили точность проведения выписки 97 % — это сравнимо с точностью человека.
Когда всё сделано и проверено, бухгалтер Ирина отправляет Андрею готовый отчёт и предварительную сумму налога. Андрей счастлив, заранее знает предварительную сумму налога и может её скорректировать. Как — подскажет бухгалтер.

Что всё это значит?

Использование алгоритмов машинного обучения позволяет нам увеличивать клиентскую базу и при этом не нанимать новых сотрудников.
Для бухгалтеров Кнопки рабочий процесс упрощается и позволяет за короткий срок проверить правильность выполненных операций и что-то поправить, если нужно. Алгоритм самообучающийся, каждое исправление бухгалтера совершенствует процесс и улучшает алгоритм.
Не так давно Минфин прогнозировал замену бухгалтеров на искусственный интеллект и постепенное исчезновение профессии бухгалтера. Не волнуйтесь, совсем без бухгалтеров не останемся, но отбор пройдут явно лучшие. Они и будут управлять роботами.
Мы считаем, это неплохо — зачем нам 5 миллионов бухгалтеров на население в 145 миллионов? Для сравнения, в США при населении в 300 миллионов насчитывается чуть больше миллиона бухгалтеров.
Мы верим, что в ближайшем будущем за счёт искусственного интеллекта качество бухгалтерского и налогового учёта вырастет в разы.


Источник: m.vk.com

Комментарии: