.. include:: ../../../reuse_content/general.rst
.. |a_config| raw:: html
.. |a_model_fa| raw:: html
.. |a_model_fv| raw:: html
Модуль распознавания аудиовизуальной речи
=========================================
Команда для запуска модуля распознавания аудиовизуальной речи:
.. code-block:: sh
openav_test_audiovisual --config <путь_к_вашему_конфигурационному_файлу>.yaml
.. important:: Для запуска команды необходимо обязательно указать путь к конфигурационному файлу. Запускать программу необходимо из директории, где она расположена.
Конфигурационный файл
~~~~~~~~~~~~~~~~~~~~~
Конфигурационный файл включает в себя следующие настройки:
* Отображение процесса выполнения программы в терминале (командной строке)
* Работа с файловой системой
* Параметры процесса распознавания аудиовизуальных речи
.. rst-class:: config-link
|a_config|
Пример конфигурационного файла
|/a|
Отображение процесса выполнения команды в терминале
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rst-class:: custom-table shell-table
.. csv-table::
:align: center
:header: "Параметр", "Тип", "Значение по умолчанию", "Описание"
:widths: 23, 7, 25, 45
"hide_metadata", "bool", "``false``", "Включение отображения метаданных"
"hide_libs_vers", "bool", "``false``", "Включение отображения версий установленных библиотек в командной строке"
Работа с файловой системой
~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rst-class:: custom-table filesystem-table
.. csv-table::
:align: center
:header: "Параметр", "Тип", "Значение по умолчанию", "Описание"
:widths: 23, 7, 25, 45
"path_to_dataset", "str", "``<путь_к_набору_данных>``", "Директория, где размещается подготовленный набор данных для обучения нейросетевых моделей"
"subfolders", "str","``test: ""test""``", "Директория с тестовой выборкой"
"path_to_model", "str", "``<путь_к_обученной_модели>``", "Путь, по которому находится обученная нейросетевая модель"
"path_to_save_confusion_matrix", "str", "``<путь_сохранения_матриц_спутывания>``", "Путь, по которому будут храниться матрицы спутывания"
Параметры процесса распознавания аудиовизуальной речи
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. rst-class:: custom-table encode-table
.. csv-table::
:align: center
:header: "Параметр", "Тип", "Значение по умолчанию", "Описание"
:widths: 23, 7, 20, 50
"n_classes", "int", "``26``", "Количество классов для задачи классификации. Соответствуют количеству фраз из базы данных"
"classes", "list", "``[""1_Левая"", ""2_Правая"",`` |br| ``...`` |br| ``""26_Калибровка""]``", "Список названий классов, которые представлены в базе данных"
"max_segment", "int", "``2``", "Гиперпараметр, определяющий максимальное количество перекрывающихся сегментов, на которые разбиваются длинные последовательности аудио и видео данных перед подачей их на вход нейронной сети для обучения или вывода"
"hidden_units", "int", "``256``", "Количество скрытых единиц (hidden units) в декодере нейронной сети. Этот параметр определяет размерность внутреннего представления данных в декодере, что влияет на емкость (expressive capacity) и способность декодера извлекать и обобщать сложные зависимости в данных"
"hidden_features", "int", "``128``", "Количество скрытых признаков (hidden features) или временных шагов, используемых в нейросетевые модели. Этот гиперпараметр связан с тем, как модель обрабатывает последовательные данные, такие как аудио и видео. Увеличение этого параметра позволяет модели обрабатывать более длинные входные последовательности, но также увеличивает вычислительную сложность и требования к памяти, уменьшение может ускорить обучение, но при этом модель будет видеть только более короткие временные зависимости"
"input_dim", "int", "``512``", "Размерность входных векторов признаков для аудио и видео данных, подаваемых в модель. Например, параметр ``input_dim=512`` указывает, что на вход нейронной сети будут подаваться векторы признаков размера 512 для каждого временного шага последовательности. Размер входного вектора обычно является результатом предварительной обработки и извлечения низкоуровневых признаков из исходных аудио/видео данных с помощью отдельных моделей или методов обработки сигналов."
"shape_audio", "int","``channels: ""1""`` |br| ``n_mels: ""64""`` |br| ``samples: ""306""``", "Здесь определяется размерность входных тензоров аудиоданных, ожидаемые моделью. Это форма задается тремя числами ``channels`` - количество каналов в аудиоданных, чаще всего аудио является моно, поэтому здесь канал равен ``1``. При стерео он равен ``2``. ``n_mels`` - количество мел-частотных кепстральных коэффициентов (MFCC), используемых для представления аудиоданных. ``samples`` - количество временных выборок или окон, входящих в одно аудио представление. Являются фиксированными параметрами"
"shape_video", "int","``frames: ""29""`` |br| ``channels: ""3""`` |br| ``width: ""88""`` |br| ``height: ""88""``", "Здесь определяется размерность входных тензоров видеоданных, ожидаемые моделью. ``frames`` - это количество видеокадров в одном сегменте. ``channels`` - это количество цветовых каналов (R, G, B) в видеокадре. Для изображения в серых тонах количество каналов равно ``1``. ``width`` - ширина видеокадра в пикселях. ``height`` - высота видеокадра в пикселях. Являются фиксированными параметрами"
"encoder_decoder", "int", "``5``", "Количество блоков энкодера и декодера в архитектуре трансформера, который используется в этой модели. Доступные значения от ``1`` до ``50``. Правильный выбор количества энкодер/декодер блоков является важным гиперпараметром и часто подбирается экспериментально в зависимости от размера данных, доступных вычислительных ресурсов и требуемого качества модели"
"save_confusion_matrix", "bool", "``true``", "Сохранение построенных матриц спутывания"
"figsize_confusion_matrix", "int","``width: ""2600""`` |br| ``height: ""2600""`` |br| ``font_size: ""14""`` |br| ``dpi: ""600""`` |br| ``pad_inches: ""0""``", "Здесь определяются параметры отображения матрицы спутывания. ``width`` и ``height`` - размер изображения матрицы спутывания в пикселях. ``font_size`` - размер шрифта на изображении матрицы. ``dpi`` - влияет на качество изображения. ``pad_inches`` - величина отступов от построенной матрицы спутывания"
Пример построения матрицы спутывания
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. figure:: ../../../_static/img/testing/confusion_matrix.png
:align: center
:alt: Пример построения матрицы спутывания для 26 классов
|br|