Модуль объединения модальностей
Команда для запуска модуля объединения модальностей:
openav_train_audiovisual --config <путь_к_вашему_конфигурационному_файлу>.yaml
Important
Для запуска команды необходимо обязательно указать путь к конфигурационному файлу. Запускать программу необходимо из директории, где она расположена.
Конфигурационный файл
Конфигурационный файл включает в себя следующие настройки:
Отображение процесса выполнения программы в терминале (командной строке)
Работа с файловой системой
Параметры процесса обучения аудиовизуальных нейросетевых моделей
Пример конфигурационного файла
Important
Для обучения на видеоадапторе потребуется вручную установить библиотеку для машинного обучения PyTorch с использованием GPU.
Отображение процесса выполнения команды в терминале
Параметр |
Тип |
Значение по умолчанию |
Описание |
|---|---|---|---|
hide_metadata |
bool |
|
Включение отображения метаданных |
hide_libs_vers |
bool |
|
Включение отображения версий установленных библиотек в командной строке |
Работа с файловой системой
Параметр |
Тип |
Значение по умолчанию |
Описание |
|---|---|---|---|
path_to_dataset |
str |
|
Директория, где размещается подготовленный набор данных для обучения нейросетевых моделей |
subfolders |
str |
|
Директории с обучающей, тестовой и валидационной выборками |
path_to_model_fa |
str |
|
Путь к предобученной модели , которая используются для извлечения акустических признаков. Предобученную модель можно скачать по ссылке |
path_to_model_fv |
str |
|
Путь к предобученной модели, которая используются для извлечения визуальных признаков. Предобученную модель можно скачать по ссылке |
path_to_save_models |
str |
|
Путь, по которому будут храниться обученные нейросетевые модели |
Параметры процесса обучения аудиовизуальных нейросетевых моделей
Параметр |
Тип |
Значение по умолчанию |
Описание |
|---|---|---|---|
n_classes |
int |
|
Количество классов для задачи классификации. Соответствуют количеству фраз из базы данных |
classes |
list |
|
Список названий классов, которые представлены в базе данных |
seed |
int |
|
Параметр, задающий начальное значение генератора псевдослучайных чисел в PyTorch. Установка фиксированного |
max_segment |
int |
|
Гиперпараметр, определяющий максимальное количество перекрывающихся сегментов, на которые разбиваются длинные последовательности аудио и видео данных перед подачей их на вход нейронной сети для обучения или вывода |
epochs |
int |
|
Количество эпох обучения модели. Проход одной эпохи значит, что весь датасет прошел через нейронную сеть в прямом и обратном направлении только один раз. Параметр |
patience |
int |
|
Количество эпох, в течении которых модель не прогрессирует в обучении. Т.е. если по прошествии, например, |
batch_size |
int |
|
Размер батча. Общее число тренировочных объектов, представленных в одном батче. Устанавливается в зависимости от возможности вашего оборудования |
leaning_rate |
float |
|
Коэффициент скорости обучения. Чем меньше значение, тем дольше будет идти обучение модели. Однако, стоит помнить, что может наступить переобучение модели. Данный коэффициент подбирается эмпирическим путем |
weight_decay |
float |
|
Параметр, используемый для регуляризации весов нейронной сети путем добавления L2-регуляризации к функции потерь во время обучения. Позволяет предотвратить переобучение и подбирается экспериментальным путем |
hidden_units |
int |
|
Количество скрытых единиц (hidden units) в декодере нейронной сети. Этот параметр определяет размерность внутреннего представления данных в декодере, что влияет на емкость (expressive capacity) и способность декодера извлекать и обобщать сложные зависимости в данных. Подбирается эмипирическим путем |
hidden_features |
int |
|
Количество скрытых признаков (hidden features) или временных шагов, используемых в нейросетевые модели. Этот гиперпараметр связан с тем, как модель обрабатывает последовательные данные, такие как аудио и видео. Увеличение этого параметра позволяет модели обрабатывать более длинные входные последовательности, но также увеличивает вычислительную сложность и требования к памяти, уменьшение может ускорить обучение, но при этом модель будет видеть только более короткие временные зависимости. Подбирается эмпирически |
input_dim |
int |
|
Размерность входных векторов признаков для аудио и видео данных, подаваемых в модель. Например, параметр |
shape_audio |
int |
|
Здесь определяется размерность входных тензоров аудиоданных, ожидаемые моделью. Это форма задается тремя числами |
shape_video |
int |
|
Здесь определяется размерность входных тензоров видеоданных, ожидаемые моделью. |
encoder_decoder |
int |
|
Количество блоков энкодера и декодера в архитектуре трансформера, который используется в этой модели. Доступные значения от |
optimizer |
str |
|
Выбор оптимизатора обучения нейросетевой модели. Может существенно оказывать влияние на скорость сходимости, стабильность и окончательную точность модели. Разные оптимизаторы имеют свои преимущества и недостатки, подходящие для определенных задач и архитектур моделей. Доступные варианты |
requires_grad |
str |
|
Этот параметр предоставляет гибкий способ настройки режима обучения сложных моделей, позволяя либо полностью зафиксировать предобученные компоненты, либо обучать их совместно с основной частью модели. |