Как стать автором
Обновить
241
Карма
83.6
Рейтинг
Alexander Veysov @snakers4

Machine Learning / Data Science

Наши сервисы для бесплатного распознавания речи стали лучше и удобнее

Машинное обучение *Развитие стартапа Звук Natural Language Processing *Голосовые интерфейсы *

image


Сейчас для всех желающих доступны два наших сервиса для распознавания речи:


  • Бот в телеграме для коротких и не очень длинных аудио (мы не стали обходить ограничения телеграма, основная задача бота — распознавать голосовые сообщения);
  • Сервис audio-v-text.silero.ai для более длинных аудио, в котором можно скачать отчет в виде эксельки.

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


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

Читать дальше →
Всего голосов 28: ↑27 и ↓1 +26
Просмотры 5.6K
Комментарии 15

Парсим ГАР БД ФИАС в удобный формат в питоне. Бесплатно, без регистрации и СМС

OpenStreetMap *Геоинформационные сервисы *Big Data *Открытые данные *Data Engineering *
Tutorial

20160419_182146


Если вам зачем-то понадобилась полная адресная база России, то самый простой и дешевый способ ее заполучить — это скачать на сайте налоговой. Да, вот так вот просто все. Ну почти.


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


"В чем же подвох?", — спросите вы, прищурившись.


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

Читать дальше →
Всего голосов 29: ↑19 и ↓10 +9
Просмотры 8.9K
Комментарии 23

Нормализация текста в задачах распознавания речи

Open source *Машинное обучение *Звук Natural Language Processing *
Из песочницы

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


Другими словами, текст нужно провести через несколько этапов:


  • Замена числа прописью: 1984 год -> тысяча девятьсот восемьдесят четвёртый год;
  • Расшифровка сокращений: 2 мин. ненависти -> две минуты ненависти;
  • Транскрипция латиницы: Orwell -> Оруэлл и т.д.

Normalization


В этой статье я коротко расскажу о том, как развивалась нормализация в датасете русской речи Open_STT, какие инструменты использовались и о нашем подходе к задаче.


Как вишенка на торте, мы решили выложить наш нормализатор на базе seq2seq в открытый доступ: ссылка на github. Он максимально прост в использовании и вызывается одним методом:


norm = Normalizer()
result = norm.norm_text('С 9 до 11 котики кушали whiskas')

>>> 'С девяти до одиннадцати котики кушали уискас'
Читать дальше →
Всего голосов 32: ↑32 и ↓0 +32
Просмотры 7.2K
Комментарии 8

Восстановление знаков пунктуации и заглавных букв — теперь и на длинных текстах

Python *Big Data *Машинное обучение *Natural Language Processing *

изображение


Open In Colab


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


изображение


В целом, архитектура и датасеты остались прежними. Что изменилось:


  • обучение теперь производилось не на отдельных предложениях, а на нескольких последовательных предложениях (принимаем во внимание, что конструктивное ограничение модели при обучении — 512 токенов на вход, что позволяет свободно подавать ~150 слов на любом из четырех поддерживаемых языков)
  • для ускорения обучения модели сокращение словаря теперь проводилось не только на инференсе, но и на трейне, что позволило увелить размер батча
Читать дальше →
Всего голосов 20: ↑20 и ↓0 +20
Просмотры 4.6K
Комментарии 21

А ты используешь VAD? Что это такое и зачем он нужен

Python *Машинное обучение *Искусственный интеллект Голосовые интерфейсы *

Очень часто при работе мы обращаем внимание на то, что все люди знают, что такое распознавание речи, но не знают, что такое Voice Activity Detector (VAD) или детектор речи. А ведь именно VAD на самом деле самый важный алгоритм при работе с речью людей в естественной среде обитания.


Как ни странно, если поискать поддерживаемые и высококачественные решения данной задачи в публичном доступе — найдутся буквально пара проектов достаточного уровня. Но вот незадача — академические решения тяжелы (и иногда работают запретительно долго) и зачастую принимают только целые аудио на вход (нельзя использовать потоково). Решение от Google (WebRTC) очень быстрое но плохо отличает речь от шума (но его можно использовать потоково). А некоторые коммерческие решения "привязаны" к личному кабинету и шлют какую-то телеметрию.


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

Читать дальше →
Всего голосов 22: ↑22 и ↓0 +22
Просмотры 4.7K
Комментарии 6

Проблема омографов в задачах G2P и автоматической простановки ударений

Машинное обучение *Natural Language Processing *
Из песочницы

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

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 955
Комментарии 4

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

Python *Обработка изображений *Машинное обучение *
Или как я оказался в команде победителей соревнования Machines Can See 2018 adversarial competition.

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

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

Цель соревнования — изменять лица людей так, что сверточная нейросеть, предоставленная как черный ящик организаторами, не могла различить лицо-источник от лица-цели. Допустимое количество изменений было ограничено SSIM.
Читать дальше →
Всего голосов 32: ↑28 и ↓4 +24
Просмотры 12K
Комментарии 6

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

Python *Data Mining *Обработка изображений *Машинное обучение *

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


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



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

Читать дальше →
Всего голосов 31: ↑29 и ↓2 +27
Просмотры 7.4K
Комментарии 0

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

Open source *Python *Data Mining *Машинное обучение *
Tutorial
image
Большой брат следит за тобой, птица!


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

Читать дальше →
Всего голосов 45: ↑40 и ↓5 +35
Просмотры 25K
Комментарии 32

Информация

В рейтинге
39-й
Зарегистрирован
Активность