• Modern Google-level STT Models Released


      We are proud to announce that we have built from ground up and released our high-quality (i.e. on par with premium Google models) speech-to-text Models for the following languages:


      • English;
      • German;
      • Spanish;

      You can find all of our models in our repository together with examples, quality and performance benchmarks. Also we invested some time into making our models as accessible as possible — you can try our examples as well as PyTorch, ONNX, TensorFlow checkpoints. You can also load our model via TorchHub.


      PyTorch ONNX TensorFlow Quality Colab
      English (en_v1) link Open In Colab
      German (de_v1) link Open In Colab
      Spanish (es_v1) link Open In Colab
      Read more →
    • Мы опубликовали современные STT модели сравнимые по качеству с Google


      Мы наконец опубликовали наш набор высококачественных пре-тренированных моделей для распознавания речи (т.е. сравнимых по качеству с премиум-моделями Google) для следующих языков:


      • Английский;
      • Немецкий;
      • Испанский;

      Вы можете найти наши модели в нашем репозитории вместе с примерами и метриками качества и скорости. Мы также постарались сделать начало работы с нашими моделями как можно более простым — выложили примеры на Collab и чекпойнты для PyTorch, ONNX и TensorFlow. Модели также можно загружать через TorchHub.


      PyTorch ONNX TensorFlow Качество Colab
      Английский (en_v1) ссылка Открыть в Colab
      Немецкий (de_v1) ссылка Открыть в Colab
      Испанский (es_v1) ссылка Открыть в Colab
      Читать дальше →
    • Понижаем барьеры на вход в распознавание речи

      image


      Автоматическое распознавание речи (STT или ASR) прошло долгий путь совершенствования и имеет довольно обширную историю. Расхожим мнением является то, что лишь огромные корпорации способны на создание более-менее работающих "общих" решений, которые будут показывать вменяемые метрики качества вне зависимости от источника данных (разные голоса, акценты, домены). Вот несколько основных причин данного заблуждения:


      • Высокие требования к вычислительным мощностям;
      • Большое количество данных, необходимых для обучения;
      • В публикациях обычно пишут только про так называемые state-of-the-art решения, имеющие высокие показатели качества, но абсолютно непрактичные.

      В данной статье мы развеем некоторые заблуждения и попробуем немного приблизить точку "сингулярности" для распознавания речи. А именно:


      • Расскажем, что можно достигнуть отличного результата в рамках разумного времени, используя лишь две видеокарты NVIDIA GeForce 1080 Ti;
      • На всякий случай еще раз представим датасет Open STT для русского языка на 20 000 часов;
      • Опишем различные подходы, позволяющие ускорить процесс тренировки STT на порядок.

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

      Читать дальше →
    • Огромный открытый датасет русской речи версия 1.0

        image


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


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

        Читать дальше →
      • Building client routing / semantic search at Profi.ru

          Building client routing / semantic search and clustering arbitrary external corpuses at Profi.ru


          TLDR


          This is a very short executive summary (or a teaser) about what we managed to do in approximately 2 months in the Profi.ru DS department (I was there for a bit longer, but onboarding myself and my team was a separate thing to be done at first).

          Читать дальше →
        • Парсим Википедию для задач NLP в 4 команды

          • Tutorial

          Суть


          Оказывается для этого достаточно запуcтить всего лишь такой набор команд:


          git clone https://github.com/attardi/wikiextractor.git
          cd wikiextractor
          wget http://dumps.wikimedia.org/ruwiki/latest/ruwiki-latest-pages-articles.xml.bz2
          python3 WikiExtractor.py -o ../data/wiki/ --no-templates --processes 8 ../data/ruwiki-latest-pages-articles.xml.bz2

          и потом немного отполировать скриптом для пост-процессинга


          python3 process_wikipedia.py

          Результат — готовый .csv файл с вашим корпусом.

          Читать дальше →
        • Состязательные атаки (adversarial attacks) в соревновании Machines Can See 2018

            Или как я оказался в команде победителей соревнования Machines Can See 2018 adversarial competition.

            image
            Суть любых состязательных атак на примере.

            Так уж получилось, что мне довелось поучаствовать в соревновании Machines Can See 2018. Я присоединился к соревнованию я поздновато (примерно за неделю до окончания), но в конечном итоге оказался в команде из 4 человек, где вклад троих из нас (включая меня) был необходим для победы (убрать одну составляющую — и мы бы оказались в аутсайдерах).

            Цель соревнования — изменять лица людей так, что сверточная нейросеть, предоставленная как черный ящик организаторами, не могла различить лицо-источник от лица-цели. Допустимое количество изменений было ограничено SSIM.
            Читать дальше →
            • +24
            • 9,9k
            • 6
          • Применяем Deep Watershed Transform в соревновании Kaggle Data Science Bowl 2018

              Применяем Deep Watershed Transform в соревновании Kaggle Data Science Bowl 2018


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



              описание пайплайна решения

              Читать дальше →
            • Из спутниковых снимков в графы (cоревнование SpaceNet Road Detector) — попадание топ-10 и код (перевод)

                Привет, Хабр! Представляю вам перевод статьи.



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


                0. TLDR


                Ссылка на соревнование и подробное описание.


                Быстрая картинка сайта, кому лень ходить.


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


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


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


                Суть соревнования
                Суть соревнования на 1 картинке

                Читать дальше →
                • +32
                • 7,8k
                • 4
              • Соревнование Pri-matrix Factorization на DrivenData с 1ТБ данных — как мы заняли 3 место (перевод)

                Привет, Хабр! Представляю вашему вниманию перевод статьи "Animal detection in the jungle — 1TB+ of data, 90%+ accuracy and 3rd place in the competition".


                Или чему мы научились, как выигрывать призы в таких соревнованиях, полезные советы + некоторые мелочи


                TLDR



                Суть соревнования — например, вот это случайное видео с леопардом. Все видеоролики длятся 15 секунд, а их 400 тысяч...



                Заключительные результаты в 3 часа ночи, когда конкурс закончился — я был в поезде, но мой коллега засабмитил заявку за 10 минут до окончания конкурса


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

                Читать дальше →
                • +40
                • 7,1k
                • 5
              • Очень грубый подход к определению языка человека (или как понять язык человека по обычной корпоративной базе)

                  image

                  Что общего у этой картинки, Excel и прикладной работы с базами данных? Правильно — байесовский подход к анализу данных.

                  Если я не заинтриговал вас картинкой выше, то давайте я расскажу вам самую малость про байесовы сети и как использовать их на коленке (и почему их мало используют на практике). Этот предмет довольно технический (вот условно бесплатный курс от Стенфорда, он немного скучноват и очень технический, но зато в тему. Там еще есть странность — пройти курс и все понять можно за 10 часов, а чтобы решить задачи в матлабе, нужно часов 50 — такое ощущение, что задачи — это PhD автора курса...).
                  Читать дальше →
                • Нейрокурятник: часть 4 — итоговая модель и код на прод

                  • Tutorial
                  image

                  Типичный день в нейрокурятнике — куры часто еще и крутятся в гнезде

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

                  • Точность предсказаний не менее 70-90%;
                  • Raspberry pi в самом курятнике в идеале мог бы определять принадлежности фотографий к классам;
                  • Нужно как минимум научиться отличать всех кур друг от друга. Программа максимум — также научиться считать яйца;

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

                  Статьи про нейрокурятник

                  Заголовок спойлера
                  1. Вступление про обучение себя нейросетям
                  2. Железо, софт и конфиг для наблюдения за курами
                  3. Бот, который постит события из жизни кур — без нейросети
                  4. Разметка датасетов
                  5. Работающая модель для распознавания кур в курятнике
                  6. Итог — работающий бот, распознающий кур в курятнике
                  Читать дальше →
                  • +38
                  • 11,5k
                  • 6
                • Нейрокурятник часть 3. Про разметку кур

                    И про то, что у кур тоже бывают психи.

                    image
                    Птица beauty в гнезде

                    Одна не сильно впечатляющая статья про разметку изображений кур.


                    Статьи про нейрокурятник

                    Заголовок спойлера
                    1. Вступление про обучение себя нейросетям
                    2. Железо, софт и конфиг для наблюдения за курами
                    3. Бот, который постит события из жизни кур — без нейросети
                    4. Разметка датасетов
                    5. Работающая модель для распознавания кур в курятнике
                    6. Итог — работающий бот, распознающий кур в курятнике
                    Читать дальше →
                    • +23
                    • 7,9k
                    • 8
                  • Карта артистов, неуклюжий поиск связей в данных и как можно изобрести велосипед

                      Недавно смотрел серию видео популяризатора математики. Там он пытается рассказывать про математический анализ и линейную алгебру немного с позиции человека, который «как бы» изобрел бы ее с нуля. То есть пытается делать доступными простые и понятые визуализации относительно сложных концепций, как бы объясняя их с позиции человека, который как будто бы придумал это впервые. Относительно недавно читал статью на Хабре про unsupervised learning и увидел там раздел про Affinity Propagation. Как оказалось, мы использовали именно этот метод кластерного анализа чисто интуитивно, сами того не ведая.

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

                      image
                      Читать дальше →
                      • +10
                      • 4,1k
                      • 6
                    • Нейрокурятник часть 2: про бота, который постит фотографии

                      • Tutorial
                      image

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

                      Статьи про нейрокурятник
                      Заголовок спойлера
                      1. Вступление про обучение себя нейросетям
                      2. Железо, софт и конфиг для наблюдения за курами
                      3. Бот, который постит события из жизни кур — без нейросети
                      4. Разметка датасетов
                      5. Работающая модель для распознавания кур в курятнике
                      6. Итог — работающий бот, распознающий кур в курятнике

                      Читать дальше →
                      • +18
                      • 9,9k
                      • 2
                    • Платежные странички и решения (или через тернии к звездам — и через много картинок)

                      • Tutorial
                      image
                      TLDR для нетерпеливых — в принципе можно закрывать статью

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

                      Я больше на работаю в этой сфере, но я хочу поделиться тремя аспектами онлайн платежей: i) бизнес и ситуация на рынке на 2016-2017 год (гайд для менеджера) ii) детали технической интеграции (CTO) iii) поведение клиента / дизайн / верстка платежной странички (дизайн, верстка, тестирование).

                      Весь этот опыт набран не сразу — примерно за 1.5 — 2 года активного ковыряния в этой сфере. Если вас не интересует бизнес опыт, а интересуют только материалы по дизайну — смело пропускайте первые спойлеры.
                      Читать дальше →
                    • Нейрокурятник ч.0. Или нейро- без курятника

                      • Tutorial

                      Или как правильно закоптиться в нейросети


                      image
                      Курочка снесла яичко. Сам процесс выглядит ужасно. Результат — съедобно. Массовый геноцид кур.

                      В этой статье будет описано:

                      1. Где, как и почему можно получить небольшое качественное самообразование в сфере работы с нейросетями БЕСПЛАТНО, СЕЙЧАС и СОВСЕМ НЕ БЫСТРО;
                      2. Будет описана логика рекурсии и будут порекомендованы книги по теме;
                      3. Будет описан список основных терминов, которые нужно разобрать на 2-3 уровня абстракции вниз;
                      4. Будет приведен ipynb-notebook, который содержит необходимые ссылки и базовые подходы;
                      5. Будет немного своеобразного саркастичного юмора;
                      6. Будут описаны некоторые простые закономерности, с которыми вы столкнетесь при работе с нейросетями;


                      Статьи про нейрокурятник
                      Заголовок спойлера
                      1. Вступление про обучение себя нейросетям
                      2. Железо, софт и конфиг для наблюдения за курами
                      3. Бот, который постит события из жизни кур — без нейросети
                      4. Разметка датасетов
                      5. Работающая модель для распознавания кур в курятнике
                      6. Итог — работающий бот, распознающий кур в курятнике

                      Читать дальше →
                    • Нейрокурятник: часть 1. Установка Raspberry Pi и камеры в курятник и их настройка

                      • Tutorial
                      image
                      Большой брат следит за тобой, птица!


                      Статьи про нейрокурятник
                      Заголовок спойлера
                      1. Вступление про обучение себя нейросетям
                      2. Железо, софт и конфиг для наблюдения за курами
                      3. Бот, который постит события из жизни кур — без нейросети
                      4. Разметка датасетов
                      5. Работающая модель для распознавания кур в курятнике
                      6. Итог — работающий бот, распознающий кур в курятнике

                      Читать дальше →
                    • Прототип простого сервиса для здорового питания

                      image


                      В контексте статьи картинка обретает двойной смысл.


                      Дисклеймер


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


                      И так получилось, что при выборе инструмента планирования такого питания взор пал на PostgreSQL, который стоит на домашнем сервере. Аналогично можно легко сделать и в Excel или Гугл-таблицах, но в нашем случае SQL оказался более быстрым + есть открытые базы с готовыми данными. Данная статья может рассматриваться вами как "заготовка" для аналогичного SQL сервиса или просто как идея, которую вы можете взять и применить для себя.
                      Также обратите внимание — чтобы пользоваться этим в полной мере, вы должны хотя бы чуточку уметь в табличные процессоры (Excel).

                      Читать дальше →