scriptum / pyara

Synthesized speech recognition

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

License:MIT License


Languages

Language:Python 100.0%