![]() |
![]() |
![]() |
![]() |
Как использовать ИИ и Python для распознавания речи |
|
МЕНЮ Главная страница Поиск Регистрация на сайте Помощь проекту Архив новостей ТЕМЫ Новости ИИ Голосовой помощник Разработка ИИГородские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Искусственный интеллект Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Психология ИИ Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Творчество ИИ Техническое зрение Чат-боты Авторизация |
2022-03-12 09:43 разработка по, алгоритмы распознавания речи, распознавание образов ![]() Человеческий слух легко приспосабливается к любому разговору с другими людьми, распознавая разные по тональности и акцентам манеры речи. Но машинное распознавание особенностей человеческого голоса реализовать не так просто. Точное описание речевого сигнала считается довольно сложной задачей для машин. Такая проблема существовала и до появления систем искусственного интеллекта, которые теперь выполняют функции распознавания речи и обработки естественного языка. Рассмотрим, как разработать с помощью Python и платформы AssemblyAI высокопроизводительную систему, распознающую речь в режиме реального времени. Произносимая пользователем в микрофон информация будет одновременно отображаться для него в виде текста. Помимо транскрибирования, ИИ также попытается разбить речь на предложения, разобраться в особенностях лингвистики и расставить знаки препинания. В данной статье не рассматриваются особенности написания с помощью Python веб-приложения для преобразования речи (аналогового сигнала) в текст (цифровые данные). Создание такой программы — это отдельная тема. Система распознавания речи в режиме реального времени Целью проекта является транскрибирование звука в режиме реального времени с максимально высоким качеством. Каждую секунду микрофон будет передавать результаты пословно, распознавая речь с помощью платформы AssemblyAI. Для оптимизации распознавания ИИ попытается по завершении предложения понять его смысл, добавив знаки препинания и заглавные буквы. Приступим к добавлению всех необходимых пакетов и библиотек. Установка необходимых компонентов Для чтения информации через микрофон в этом проекте используется библиотека pyAudio. Также нужно установить библиотеку веб-сокетов для создания с помощью Python надежных и высокопроизводительных веб-сокетов серверов и клиентов. Установка на MAC относительно проще, поскольку с помощью команды «brew install portaudio» можно получить все необходимые зависимости, настроенные соответствующим образом. Для Windows нужно посетить неофициальный сайт библиотек Python и загрузить нужную версию pyAudio. Загруженный файл уже содержит важные детали для непосредственной установки библиотеки. Загрузите его в нужную папку и запустите установку в этом каталоге следующим образом. ![]() В завершение импортируем все необходимые компоненты, как показано в приведенном ниже блоке кода. Asyncio — это стандартная среда асинхронного ввода-вывода Python, которая включает элегантный API на основе сопрограмм. Также мы будем использовать библиотеку base64 для декодирования запросов, библиотеку JSON для подготовки файлов и импорт конфигурации, в которой будет храниться ключ API. После импорта всех необходимых библиотек переходим к следующему этапу — к настройке файла конфигурации для установки соединения с платформой AssemblyAI. Настройка конфигурации Файл конфигурации должен называться После установки файла конфигурации с ключом аутентификации продолжим работу с основным файлом Python, где завершим оставшуюся часть скриптов для декодирования произносимой в микрофон речи. Настройка параметров Сначала импортируем все основные параметры, чтобы получать с микрофона входные сигналы наилучшего качества. Для pyAudio могут быть установлены: кадры, формат, каналы и скорость, как показано в приведенном ниже фрагменте кода. После установки параметров в соответствии с требованиями можно также задать URL-адрес конечной точки, ссылающийся на сайт assemblyAI. Следует заметить, что частота дискретизации, указанная в конечной точке Assembly AI, также равна 16000, что синхронизируется с частотой в библиотеке pyAudio. Определив эти основные параметры, можно создать функцию, которая позволит отправлять входные аудиоданные и получать по ним транскрибированные текстовые данные. Создаем функцию отправки и приема Разработаем полный код для отправки информации от микрофона в конечную точку AssemblyAI (там аудио данные преобразуются в текст) и получения обратно в режиме реального времени. Для транскрибирования аудио данных в таком режиме понадобится несколько асинхронных функций. В следующем фрагменте реализуем основную функцию, позволяющую создать асинхронное соединение из локальной системы с конечной точкой AssemblyAI. Используя ранее импортированную библиотеку WebSockets можно установить соединение с сайтом AssemblyAI, где информация от микрофона будет каждую секунду транскрибироваться и сразу отправляться обратно. После написания основной функции можно приступить к созданию пары асинхронных функций для отправки и получения данных. Первая функция В завершение определим функцию По завершении этих этапов переходим к последнему, где рассмотрим результаты и полный код для распознавания речи в режиме реального времени. Окончательный код ![]() Каждое произносимое слово ежесекундно транскрибируется конечной точкой Assembly AI с выдачей соответствующего результата. Но по завершении предложения ИИ автоматически начнет его с заглавной буквы, сформулирует грамматически правильно, расставит знаки препинания и добавит необходимые изменения, как в последнем предложении на скриншоте выше. Ниже приведен финальный вариант кода программы. Ее можно запустить с командного терминала с помощью команды Заключение С развитием технологии ИИ значительно упростилось создание качественных и производительных систем распознавания речи на основе компьютеров. В этой статье мы разобрали особенности программирования такой системы на языке Python с использованием сетевой платформы AssemblyAI для транскрибирования речевого сигнала в режиме реального времени. Источник: nuancesprog.ru Комментарии: |
|