Я проводил некоторое исследование возможности создания мобильного / веб-приложения, которое позволяет пользователям произносить фразу и определять акцент пользователя (Бостон, Нью-Йорк, Канадский и т. Д.). Пользователь может произнести от 5 до 10 заранее определенных фраз. Я знаком с некоторыми доступными API преобразования текста в текст (Nuance, Bing, Google и т. Д.), Но, похоже, ни один из них не предлагает эту дополнительную функцию. Ближайшие примеры, которые я нашел, - это Google Now или Microsoft Speaker Recognition API:

http://www.androidauthority.com/google-now-accents-515684/

https://www.microsoft.com/cognitive-services/en-us/speaker-recognition-api

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

2
user1034642 26 Ноя 2016 в 22:20

2 ответа

Лучший ответ

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

3
Luis Leal 26 Ноя 2016 в 20:01

Для такой редкой задачи нет общедоступного API.

Обнаружение акцента как определение языка обычно реализуется с помощью i-векторов. Учебное пособие находится здесь. Реализация доступна в Kaldi.

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

Сквозная реализация тензорного потока также возможна, но, вероятно, потребует слишком много данных, поскольку вам нужно отделить вещи, связанные с говорящим, от вещей с акцентом (в основном выполнять факторизацию, как это делает i-vector). Вы можете найти описания похожих работ, например и этот.

4
Nikolay Shmyrev 26 Ноя 2016 в 20:03