Yandex.Cloud
  • Сервисы
  • Почему Yandex.Cloud
  • Сообщество
  • Решения
  • Тарифы
  • Документация
  • Связаться с нами
Подключиться
Yandex DataSphere
  • Начало работы
  • Пошаговые инструкции
    • Все инструкции
    • Создание проекта
    • Установка зависимостей
    • Запуск примеров кода в ноутбуке
    • Версионирование. Работа с контрольными точками
    • Управление вычислительными ресурсами
    • Очистка состояния интерпретатора
    • Поделиться ноутбуком
      • Публикация ноутбука
      • Экспорт проекта
    • Изменение имени или описания
    • Удаление проекта
    • Работа с Git
    • Настройка интеграции с Data Proc
  • Концепции
    • Обзор
    • Проект
    • Список предустановленного ПО
    • Доступные команды
    • Конфигурации вычислительных ресурсов
    • Интеграция с системами контроля версий и данных
    • Интеграция с Data Proc
    • Фоновые операции
    • Использование TensorBoard в DataSphere
    • Квоты и лимиты
  • Сценарии использования
    • Распознавание голоса
  • Управление доступом
  • Правила тарификации
  • Вопросы и ответы
  1. Сценарии использования
  2. Распознавание голоса

Распознавание голоса

  • Перед началом работы
  • Установите зависимости
  • Загрузите набор данных из звуковых файлов
  • Обучите модель на голосовых данных
  • Получите результаты предсказания признаков на тестовых данных

Yandex DataSphere позволяет строить модели машинного обучения, используя интерфейс Jupyter Notebook. Познакомьтесь с решением задачи распознавания спикера по голосу с помощью моделирования речевых сигналов числовыми признаками:

  1. Установите зависимости.
  2. Выполните загрузку данных и извлечение признаков.
  3. Обучите модель на голосовых данных.
  4. Получите результаты предсказания признаков на тестовых данных.

Перед началом работы

  1. Создайте проект в DataSphere и откройте его.

  2. Склонируйте Git-репозиторий, в котором находится подготовленный ноутбук с набором данных:

    https://github.com/donkrasnov/webinar0813_gbc_yandex
    

    Дождитесь, когда клонирование завершится, это может занять некоторое время. После завершения операции в блоке File Browser появится каталог склонированного репозитория.

  3. Откройте каталог webinar0813_gbc_yandex и ознакомьтесь с содержимым ноутбука webinar-yandex-gbc.ipynb. В начале ноутбука кратко изложены основные принципы моделирования речевого сигнала аудио-признаками.

    Примечание

    Если вы обновите вкладку браузера, на которой запущен ноутбук, или закроете ее, то состояние ноутбука сохранится. Переменные и результаты уже сделанных вычислений при этих действиях не сбрасываются.

Установите зависимости

  1. Выделите все ячейки с кодом в разделе Установка и импорт необходимых пакетов, удерживая Shift и нажимая слева от нужных ячеек:

    %pip install numba==0.48.0
    %pip install librosa
    %pip install cffi==1.14.2
    %pip show numba
    import time
    import os
    from tqdm import tqdm
    ...
    
  2. Запустите выделенные ячейки, выбрав в меню Run → Run Selected Cells (также можно использовать сочетание клавиш Shift+Enter).

  3. Дождитесь завершения операции.

Часть пакетов уже установлена и импортируется с помощью команды import, часть устанавливается с помощью команды %pip install и затем импортируется. Полный список предустановленных в DataSphere пакетов см. в разделе Список предустановленного ПО.

Загрузите набор данных из звуковых файлов

Перейдите к разделу Генерация аудио-признаков. В нем выполняются следующие операции:

  1. Определяется функция для извлечения аудио-признаков из набора данных (используется библиотека librosa).
  2. Загружается тестовый набор коротких десятисекундных аудио-фрагментов. С помощью этой функции извлекаются аудио-признаки. Так как данные распределены по папкам, относящимся к разным спикерам, можно однозначно сопоставить набору признаков конкретного спикера.
  3. Полученный массив признаков нормируется.

Чтобы выполнить загрузку и обработку данных:

  1. Выделите все ячейки с кодом в разделе Генерация аудио-признаков и запустите их.
  2. Дождитесь завершения операции.

Обучите модель на голосовых данных

Перейдите к ячейке с кодом обучения моделей в разделе Обучение моделей. В данной ячейке в цикле по каждому спикеру выполняются следующие операции:

  1. Модель обучается на фрагментах его речи.
  2. Модуль pickle выполняет сохранение объекта обученной модели в файл в папке ./speaker-models.

Чтобы обучить модель:

  1. Добавьте !#M в начало ячейки для изменения конфигурации ресурсов, так как обучение модели — это ресурсоемкая операция:

    #!M
    
    start = time.time()
    
    features_smpl = pd.DataFrame()
    count = 1
    ...
    
  2. Запустите ячейку.

  3. Дождитесь завершения операции.

Получите результаты предсказания признаков на тестовых данных

Перейдите к разделу Тестирование на тестовом семпле. В нем выполняются следующие операции:

  1. Загружаются обученные модели из файлов pickle.
  2. Выполняется загрузка и обработка аудио-файлов из тестового датасета подобно тому, как это делалось для обучающего набора.
  3. Каждая модель предсказывает спикера по признакам.
  4. Наилучший результат предсказания определяет выбор спикера.
  5. Отображается точность определения выбранного в тесте спикера.

Чтобы получить результаты тестирования:

  1. Выделите ячейку в разделе Тестирование на тестовом семпле.
  2. Запустите ячейку.
  3. Дождитесь завершения операции.
  4. Убедитесь, что полученная точность определения спикера не менее 98%.

Примечание

Вы можете поделиться готовым ноутбуком с расчетами или экспортировать проект целиком.

В этой статье:
  • Перед началом работы
  • Установите зависимости
  • Загрузите набор данных из звуковых файлов
  • Обучите модель на голосовых данных
  • Получите результаты предсказания признаков на тестовых данных
Language
Вакансии
Политика конфиденциальности
Условия использования
© 2021 ООО «Яндекс.Облако»