В нашем пайплайне выделение табличных областей (включая случаи, когда таблицы расположены вплотную или «слиплись» без видимых разделителей) решается на этапе предобработки. И на вход регулярным выражениям уже подается корректно изолированная табличная зона.
Что касается вложенных таблиц - это отдельная интересная нетривиальная задача, мы расскажем про это уже в другой статье.
У корпоративного ПО цена зависит не только от самого продукта, но и от сценария использования. Поэтому одна цифра на странице «Цены» скорее вводила бы в заблуждение, чем помогала сориентироваться.
Более того, именно в диалоге наши менеджеры могут разобраться в вашей задаче и предложить ровно ту конфигурацию и схему лицензирования, которая вам нужна — без лишних функций и затрат.
Если у Вас возникают психологические технические трудности с заполнением формы, то всегда можно написать напрямую на почту sales@smartengines.ru или позвонить по телефону +7 (495) 649 82 60
Естественно, мы возвращаем эти сигналы через разные элементы в интерфейсе. Иначе было бы сложно представить, как нашими продуктами пользовались в системообразующих банках, в крупных государственных структурах, вплоть до границы.
Имелось в виду document poisoning — класс атак, при которых в документ намеренно вносятся изменения, нарушающие работу алгоритмов распознавания. Для LLM- и VLM-подходов эта тема действительно становится все более актуальной.
В Smart Engines мы развиваем собственный движок OCR, который не использует LLM для распознавания документов. Он поддерживает более 100 языков и письменностей мира, включая кириллическую рукопись, и полностью работает локально без передачи данных в облако.
Спасибо за комментарий. Мы нигде не утверждаем, что типизация заменяет OCR – это разные задачи.
Более того, на практике существует немало сценариев, где OCR вообще не требуется. Например, проверка комплектности пакета документов, контроль заполнения обязательных полей, наличия подписей, печатей или других реквизитов. Во всех этих случаях сначала необходимо понять, что за документ перед нами, а извлечение текста может вообще не понадобиться.
Поэтому типизация – это не только пре-фильтр перед OCR, но и самостоятельная задача, которая во многих бизнес-процессах имеет вполне самостоятельную ценность.
Кажется, здесь смешаны сразу несколько разных сценариев.
Если можно заставить пользователя что-то сразу заполнить, то конечно никаких задач определения типа и тем более распознавания текста нет. Но статья вообще не про это. Мы рассматриваем ситуацию, когда система уже получила готовый скан документ. В этот момент спрашивать пользователя, что это за документ, уже поздно – это и есть задача типизации.
Что касается современных OCR-моделей, никто не спорит с их возможностями. Но использовать полноценный OCR или VLM только для того, чтобы понять тип документа, – это примерно как запускать компилятор, чтобы проверить расширение файла. Если задачу можно решить за 3 мс на CPU без OCR, без нейросетей и без обучения, то именно такой подход и выглядит наиболее рациональным.
По абсолютным цифрам — спасибо, добавим в следующий раз. Если коротко: на Jetson Orin Nano наша локализация занимает 87 мс против 5400 мс у DocTr, ректификация — 200 мс против 600 мс.
Связь с fixed-point арифметикой здесь и правда есть, но не тождественная.4.6-битная схема является равномерным симметричным квантованием: мы используем целые уровни от -11 до 11 и масштаб, который связывает эти уровни с вещественными значениями. В q-format масштаб задаётся положением двоичной точки, то есть степенью двойки, а пересчёт после умножения часто сводится к сдвигу. У нас масштаб выбирается как параметр квантования слоя/активации и не обязан быть степенью двойки.
Главная особенность 4.6-битной схемы в выбранном диапазоне уровней. Веса и активации квантуются так, что их произведения помещаются в знаковый 8-битный тип. Дальше суммы, конечно, накапливаются в более широких аккумуляторах — 16- и 32-битных.
Схема рассчитана не на ПЛИС и не на специализированный DSP, а на обычные CPU с SIMD-расширениями, например ARM NEON или x86 AVX. Такие процессоры хорошо работают с 8-битными целыми типами, но не поддерживают напрямую «настоящие» 4.6-битные числа или форматы вроде FP8.
Низкоуровневую арифметику инференса мы подробнее разбирали в предыдущем посте: https://habr.com/ru/companies/smartengines/articles/822407. В этом посте фокус другой: как обучать сети с таким квантованием и какую архитектуру сети выбрать, чтобы на инференсе не появлялись промежуточные 32-битные карты признаков между слоями.
При обучении мы не считаем градиенты в 4.6-битной арифметике. Обучение может быть «дорогим»: с float32, эмуляцией квантования и аппроксимацией градиента. Цель — получить после обучения небольшую утилитарную сеть, которая быстро и дёшево исполняется на устройстве пользователя.
К сожалению или к счастью, реальный рынок, где используются KYC технологии, обычно заметно менее идеален, чем презентации вендоров KYC-платформ.
В реальности существуют разные сценарии. Да, есть кейсы, в которых есть видеопоток и где можно проверить наличие OVD. Распознавание паспорта в видеопотоке мы сделали 11 лет назад. Проверку голограмм в видеопотоке мы сделали и запатентовали в США 7 назад. А датасет ID документов с голограммами, для ученых, которые действительно в теме, MIDV-Holo мы опубликовали и представили на ICDAR 3 года назад.
Но это далеко не весь рынок и уж точно не большинство проверок документов в мире.
Достаточно посмотреть на то, как сегодня оформляются кредиты, особенно микрозаймы. Ежедневно выдаются десятки тысяч займов по фотографии документа, загруженной через веб-форму или мобильное приложение, зачастую без какого-либо видео.
Паспорт РФ в статье используется просто как пример документа. Если обязательная возрастная идентификация будет регулироваться государством, то, скорее всего, нормативно будет определен и перечень документов, которые допускается использовать для подтверждения возраста. С технической точки зрения это не создает ограничений: на сегодняшний день наши технологии поддерживают более 5000 типов документов из более чем 230 стран и юрисдикций.
На наш взгляд, вопрос доверия здесь относится не столько к технологии, сколько к самой онлайн-платформе. Технически наше решение работает полностью локально: изображения документа не отправляются на сервер для распознавания. В этом легко убедиться самостоятельно, включив авиарежим во время тестирования. Мы даем надежный и безопасный инструмент для решения задачи. А убедить пользователя онлайн-платформа может самостоятельно средствами своего веб-интерфейса и пользовательского сценария.
Мы предлагаем альтернативу: без ЕБС, биометрии и облачных сервисов. В этой модели приватность и защита от подделок не противоречат друг другу. Если проверка возраста становится обязательной, можно сделать так, чтобы она не привела к тотальному нарушению прав человека, утечкам персональных данных и незаконной деанонимизации.
Что касается вашего третьего пункта, то это в первую очередь вопрос доверия к самой платформе. Наш код уже много лет работает в системах крупнейших банков, страховых компаний, операторов связи и госорганизаций – в процессах, от которых зависят деньги, доступ к услугам и юридически значимые действия миллионов людей. Использовать наши технологии для обычной проверки возраста или нет – пусть каждый решает сам. Мы лишь показываем, что такая альтернатива существует.
Первый вопрос: можно ли реализовать подтверждение возраста без ЕБС, биометрии и передачи персональных данных? – Да, именно на него мы и отвечаем этой статьей, показывая альтернативный способ решения задачи без сбора и передачи данных.
Второй: можно ли такую систему обойти или взломать? – В принципе – можно. Но уже существуют и используются способы защиты, которые минимизируют вероятность взлома. Но это тема для совершенно другой статьи.
Вы правы, наносекунды получатся, если оценивать время на пиксель изображения. В Таблице 2 приведено время обработки всего изображения, поэтому правильная единица измерения - миллисекунды. Спасибо, исправили в статье.
Спасибо за вопрос.
В нашем пайплайне выделение табличных областей (включая случаи, когда таблицы расположены вплотную или «слиплись» без видимых разделителей) решается на этапе предобработки. И на вход регулярным выражениям уже подается корректно изолированная табличная зона.
Что касается вложенных таблиц - это отдельная интересная нетривиальная задача, мы расскажем про это уже в другой статье.
У корпоративного ПО цена зависит не только от самого продукта, но и от сценария использования. Поэтому одна цифра на странице «Цены» скорее вводила бы в заблуждение, чем помогала сориентироваться.
Более того, именно в диалоге наши менеджеры могут разобраться в вашей задаче и предложить ровно ту конфигурацию и схему лицензирования, которая вам нужна — без лишних функций и затрат.
Если у Вас возникают
психологическиетехнические трудности с заполнением формы, то всегда можно написать напрямую на почту sales@smartengines.ru или позвонить по телефону +7 (495) 649 82 60Спасибо за интересный комментарий!
Естественно, мы возвращаем эти сигналы через разные элементы в интерфейсе. Иначе было бы сложно представить, как нашими продуктами пользовались в системообразующих банках, в крупных государственных структурах, вплоть до границы.
Имелось в виду document poisoning — класс атак, при которых в документ намеренно вносятся изменения, нарушающие работу алгоритмов распознавания. Для LLM- и VLM-подходов эта тема действительно становится все более актуальной.
В Smart Engines мы развиваем собственный движок OCR, который не использует LLM для распознавания документов. Он поддерживает более 100 языков и письменностей мира, включая кириллическую рукопись, и полностью работает локально без передачи данных в облако.
Спасибо за комментарий. Мы нигде не утверждаем, что типизация заменяет OCR – это разные задачи.
Более того, на практике существует немало сценариев, где OCR вообще не требуется. Например, проверка комплектности пакета документов, контроль заполнения обязательных полей, наличия подписей, печатей или других реквизитов. Во всех этих случаях сначала необходимо понять, что за документ перед нами, а извлечение текста может вообще не понадобиться.
Поэтому типизация – это не только пре-фильтр перед OCR, но и самостоятельная задача, которая во многих бизнес-процессах имеет вполне самостоятельную ценность.
Кажется, здесь смешаны сразу несколько разных сценариев.
Если можно заставить пользователя что-то сразу заполнить, то конечно никаких задач определения типа и тем более распознавания текста нет. Но статья вообще не про это. Мы рассматриваем ситуацию, когда система уже получила готовый скан документ. В этот момент спрашивать пользователя, что это за документ, уже поздно – это и есть задача типизации.
Что касается современных OCR-моделей, никто не спорит с их возможностями. Но использовать полноценный OCR или VLM только для того, чтобы понять тип документа, – это примерно как запускать компилятор, чтобы проверить расширение файла. Если задачу можно решить за 3 мс на CPU без OCR, без нейросетей и без обучения, то именно такой подход и выглядит наиболее рациональным.
Все крайне прагматичнее. Если примеры из нашей с Вами повседневности:
Полис ОСАГО, который распечатывается на А4, а носится сложенным
Электронная виза РФ, которую получают иностранцы, аналогично, формата А4, но носится в паспорте
ОМС, который традиционно тоже носится в паспорте
Транспортные документы, которые привозят вам экспедитор вместе с товаром
...
По абсолютным цифрам — спасибо, добавим в следующий раз. Если коротко: на Jetson Orin Nano наша локализация занимает 87 мс против 5400 мс у DocTr, ректификация — 200 мс против 600 мс.
Связь с fixed-point арифметикой здесь и правда есть, но не тождественная.4.6-битная схема является равномерным симметричным квантованием: мы используем целые уровни от -11 до 11 и масштаб, который связывает эти уровни с вещественными значениями. В q-format масштаб задаётся положением двоичной точки, то есть степенью двойки, а пересчёт после умножения часто сводится к сдвигу. У нас масштаб выбирается как параметр квантования слоя/активации и не обязан быть степенью двойки.
Главная особенность 4.6-битной схемы в выбранном диапазоне уровней. Веса и активации квантуются так, что их произведения помещаются в знаковый 8-битный тип. Дальше суммы, конечно, накапливаются в более широких аккумуляторах — 16- и 32-битных.
Схема рассчитана не на ПЛИС и не на специализированный DSP, а на обычные CPU с SIMD-расширениями, например ARM NEON или x86 AVX. Такие процессоры хорошо работают с 8-битными целыми типами, но не поддерживают напрямую «настоящие» 4.6-битные числа или форматы вроде FP8.
Низкоуровневую арифметику инференса мы подробнее разбирали в предыдущем посте: https://habr.com/ru/companies/smartengines/articles/822407. В этом посте фокус другой: как обучать сети с таким квантованием и какую архитектуру сети выбрать, чтобы на инференсе не появлялись промежуточные 32-битные карты признаков между слоями.
При обучении мы не считаем градиенты в 4.6-битной арифметике. Обучение может быть «дорогим»: с float32, эмуляцией квантования и аппроксимацией градиента. Цель — получить после обучения небольшую утилитарную сеть, которая быстро и дёшево исполняется на устройстве пользователя.
А Вы, батенька, похоже бот, если не заметили и тут на Хабре, и на нашем сайте ссылки на демо-приложения, бесплатно и без регистрации.
В Вашем рассуждении есть зияющая дыра, которая очевидно закрывается сразу на первых страницах нашего сайта. Мы не сервис.
К сожалению или к счастью, реальный рынок, где используются KYC технологии, обычно заметно менее идеален, чем презентации вендоров KYC-платформ.
В реальности существуют разные сценарии. Да, есть кейсы, в которых есть видеопоток и где можно проверить наличие OVD. Распознавание паспорта в видеопотоке мы сделали 11 лет назад. Проверку голограмм в видеопотоке мы сделали и запатентовали в США 7 назад. А датасет ID документов с голограммами, для ученых, которые действительно в теме, MIDV-Holo мы опубликовали и представили на ICDAR 3 года назад.
Но это далеко не весь рынок и уж точно не большинство проверок документов в мире.
Достаточно посмотреть на то, как сегодня оформляются кредиты, особенно микрозаймы. Ежедневно выдаются десятки тысяч займов по фотографии документа, загруженной через веб-форму или мобильное приложение, зачастую без какого-либо видео.
Паспорт РФ в статье используется просто как пример документа. Если обязательная возрастная идентификация будет регулироваться государством, то, скорее всего, нормативно будет определен и перечень документов, которые допускается использовать для подтверждения возраста. С технической точки зрения это не создает ограничений: на сегодняшний день наши технологии поддерживают более 5000 типов документов из более чем 230 стран и юрисдикций.
На наш взгляд, вопрос доверия здесь относится не столько к технологии, сколько к самой онлайн-платформе. Технически наше решение работает полностью локально: изображения документа не отправляются на сервер для распознавания. В этом легко убедиться самостоятельно, включив авиарежим во время тестирования. Мы даем надежный и безопасный инструмент для решения задачи. А убедить пользователя онлайн-платформа может самостоятельно средствами своего веб-интерфейса и пользовательского сценария.
Мы предлагаем альтернативу: без ЕБС, биометрии и облачных сервисов. В этой модели приватность и защита от подделок не противоречат друг другу. Если проверка возраста становится обязательной, можно сделать так, чтобы она не привела к тотальному нарушению прав человека, утечкам персональных данных и незаконной деанонимизации.
Что касается вашего третьего пункта, то это в первую очередь вопрос доверия к самой платформе. Наш код уже много лет работает в системах крупнейших банков, страховых компаний, операторов связи и госорганизаций – в процессах, от которых зависят деньги, доступ к услугам и юридически значимые действия миллионов людей. Использовать наши технологии для обычной проверки возраста или нет – пусть каждый решает сам. Мы лишь показываем, что такая альтернатива существует.
Здесь происходит смешение двух разных вопросов.
Первый вопрос: можно ли реализовать подтверждение возраста без ЕБС, биометрии и передачи персональных данных? – Да, именно на него мы и отвечаем этой статьей, показывая альтернативный способ решения задачи без сбора и передачи данных.
Второй: можно ли такую систему обойти или взломать? – В принципе – можно. Но уже существуют и используются способы защиты, которые минимизируют вероятность взлома. Но это тема для совершенно другой статьи.
Тестировали на INMO Air 2 и RayNeo Х2. А где вышло лучше - думайте сами :)
В каждой шутке есть доля шутки.
Верно, все данные на документах вымышленные!
YOLOv3 вполне базовая модель для real-time детекции, на примере которой мы показали, что БМ сети способны успешно решать подобные задачи.
Вы правы, наносекунды получатся, если оценивать время на пиксель изображения. В Таблице 2 приведено время обработки всего изображения, поэтому правильная единица измерения - миллисекунды. Спасибо, исправили в статье.