Skip to content

efanov/pyara

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyAra - synthesized speech recognition system

Русскоязычный датасет для обучения нейронной сети на Kaggle: https://www.kaggle.com/datasets/alep079/pyara

Для дальнейшего развития датасета разработан телеграмм-бот, который позволяет волонтёрам собирать дополнительные аудиозаписи: https://t.me/PyAraSpeech_bot

Документация и инструкции по работе с библиотекой с примерами использования различных функций:


1 Перечень направлений прикладного использования

Библиотека PyAra может быть использована при создании следующих информационных систем:

  • Системы голосовой аутентификации (call-центры, программное обеспечение банкоматов, системы «умный дом»).
  • Системы проверки аудиопотока для выявления злонамеренных попыток компрометации выступающего (публичного должностного лица).
  • Системы расследования инцидентов, связанных с обманом (фродом) физических лиц мошенниками с использованием звонков по телефону или через популярные мессенджеры.
  • Системы предотвращения мошенничества в мессенджерах и социальных сетях, содержащих функции голосового общения.
  • Индивидуальные помощники (т.н. умные колонки), воспринимающие голосовые команды (покупки, оплата счетов, банковские переводы).

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


2 Зависимости и минимальные технические требования

Библиотека PyAra имеет следующие зависимости, которые будут установлены вместе с самой библиотекой, либо должны быть установлены заранее:

  • torch >= 1.13.1
  • torchaudio >= 0.13.1
  • soundfile == 0.12.1
  • numpy
  • librosa

Минимальные технические требования для запуска и использования библиотеки PyAra:

  • Операционная система: Linux, Windows, MacOS.
  • Версия Python >= 3.7
  • Для работы с библиотекой необходимо как минимум 100 Мбайт оперативной памяти.

3 Установка библиотеки

Установка библиотеки PyAra выполняется с помощью следующей команды:

pip install Pyara

4 Характеристика библиотеки

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

Представленная модель достигает точности более 95% на собранном датасете. Тем самым данная модель показывает очень высокие результаты в детектировании поддельной речи и может быть встроена в различные системы.

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


5 Результаты тестирования

В таблице представлены характеристики библиотеки, полученные на наборе для тестирования:

Метрика EER t-DCF Accuracy ROC-AUC MCC
Результат 2,85 % 0,21 % 97,00 % 99,65 % 93,39 %

Научные публикации

About

Synthesized speech recognition

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages