Интенсивное чтение статьи: "Мультимодальный конвертер для поиска видео"

компьютерное зрение

image.png

Адрес бумаги:АР Вест V.org/ABS/2007.10…

Код диссертации:github.com/gabeur/mmt

1. Точка инноваций

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

2. Заключение

Автор вводит мультимодальный преобразователь, которыйВозможность обработки нескольких функций, извлеченных в разное время,а такжеНесколько функций, извлеченных из разных модальностей в видео. Кроме того, авторы также передают видеокодер и кодировщик субтитров в мультимодальную структуру слияния для сопоставления видео-субтитров.

3. Решение проблем

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

4. Метод реализации

image.pngОбщий подход этой статьи можно резюмировать как функцию обучения при первом использовании.ssВычислите сходство между видео и текстами, затем ранжируйте все видео (или тексты) в наборе данных на основе сходства поиска текста с видео (или видео с текстом) с текстом запроса (или видео). то есть для заданных n пар видео-текст{(v1,c1),(v2,c2),...,(vn,cn)}\{(v_1,c_1),(v_2,c_2),...,(v_n,c_n)\}, цель состоит в том, чтобы узнать функцию подобия между видео и текстомs(vi,cj)s(v_i,c_j).какi=ji=j, то возвращается высокое значение сходства, в противном случае возвращается низкое значение сходства.

4.1 Video representation

Представление видеоуровня вычисляется мультимодальным преобразователем (MMT), предложенным в этой статье. Он состоит из сложенных слоев внутреннего внимания и полностью связанных слоев. Все вложения имеют одинаковую размерностьdmodeld_{model}, каждая функция одновременно включает семантику функции. Модальная и временная информация. Это может быть выражено как:

Ω(v)=F(v)+E(v)+T(v)\Omega (v) = F(v) + E(v) + T(v)

Feature F

Для получения из видео информации разной модальности автор готовит n предварительно обученных «экспертов».{Fn}n=1N\{F^n\}^N_{n=1}. (По сути, это n предварительно обученных сетей извлечения признаков.), каждый эксперт представляет собой модель, обученную для конкретной задачи, а затем используемую для извлечения признаков из видео. Для видео v каждый эксперт извлекает последовательность из K признаков.Fn(v)=[F1n,F2n,...,FKn]F^n(v)=[F^n_1,F^n_2,...,F^n_K], каждый "эксперт"FnF^nРазмеры выходаRdn\R^{d_n}, дабы унифицировать автора через N слоев ФКRdn\R^{d_n}Проецировать в общий размерdmodeld_{model}середина.
Для «экспертной» сети из видео извлекается несколько «встраиваний». Для получения уникального «встраивания» и контекстуализации видео автор использует агрегацию max-pooling (агрегация max-pooling), получаяFaggn=maxpool({Fkn}k=1K)F^n_{agg}=maxpool(\{F^n_k\}^K_{k=1})Затем входная последовательность признаков для видеокодера принимает вид:F(v)=[Fagg1,F11,...FK1,...FaggN,F1N,..,FKN]F(v)=[F^1_{agg},F^1_1,...F^1_K,...F^N_{agg},F^N_1,..,F^N_K]

Expert embedding E

Для обработки кросс-модальной информации авторы используют ndmodeld_{model}встроенный{E1,E2,...,En}\{E_1,E_2,...,E_n\}Вложения используются для различения разных экспертов. Выражается в следующем виде:
E(v)=[E1,E1,...,E1,...,En,En,...,En]E(v)=[E^1,E^1,...,E^1,...,E^n,E^n,...,E^n]
Короче говоря, E используется для разграничения того, какой F принадлежит к одному и тому же модусу.

Temporal embeddings T

Учитывайте максимальную продолжительностьtmaxt_{max}Секунды видео, автор узналD=tmaxD=|t_{max}|размерностьdmodeld_{model}Встраивание функций{T1,T2,,...,TD}\{T_1,T_2,,...,T_D\}. во временных рамках[t,t+1)[t,t+1)Каждая экспертная функция, извлеченная внутри, будет встроенаT_{t+1}. Кроме того, авторы также изучают два других темпоральных вложенияTaggиTunkT_{agg} и T_{unk}, используемый для кодирования агрегированных признаков и признаков неизвестной временной информации. Временная последовательность встраивания видеокодера принимает форму:T(v)=[Tagg,T1,...,TD,...Tagg,T1,...,TD]T(v)=[T_{agg},T_1,...,T_D,...T_{agg},T_1,...,T_D] image.pngКак показано на изображении выше, видео встроеноΩ(v)\Omega(v)Сумма вложений для функции E и T, которая также является входной функцией MMT, а именно:

image.pngЭтот подход имеет два преимущества по сравнению с агрегированным пороговым механизмом:

  1. Внедрение входных данных не просто настраивается за один шаг, а итеративно оптимизируется через несколько уровней нескольких головок внимания.
  2. Авторы предоставляют извлеченные признаки для всех моментов, а также временной код, описывающий извлеченные признаки из видео.. Благодаря своему модулю самоконтроля каждый уровень нашего мультимодального Transformer способен обрабатывать все входные вложения, тем самым извлекая семантику событий, происходящих в видео, в нескольких модальностях.

4.2 Caption representation

Авторы делят его на два этапа для вычисления текстовых представлений.Φ(c)\Phi (c):

  1. получить встраивание текстаh(c)h(c)
  2. Затем спроецируйте его в другое пространство. которыйΦ=gh\Phi=g \circ h , для функции встраивания h автор использует предварительно обученную модель BERT.

В частности, авторы извлекают вложения текста из вывода [CLS] BERT.h(c)h(c), чтобы сопоставить размер текстового представления с размером видео, изученную функцию g можно использовать в качестве нескольких вентилируемых модулей встраивания для соответствия различным видеоэкспертам. Таким образом, вложение текста может быть выражено какΦ(c)={ϕi}i=1N\Phi (c) = \{ {\phi ^i}\} _{i = 1}^N

Окончательное сходство текста видеоssСходство видеотекста для каждого экспертаϕi,ψaggi\langle {\phi ^{\text{i}}},\psi _{agg}^i\rangle Взвешенная сумма , как показано ниже:s(v,c)=i=1Nwi(c)ϕi,ψaggis(v,c) = \sum\limits_{i = 1}^N {{w_i}(c)\langle {\phi ^{\text{i}}},\psi _{agg}^i\rangle } вwi(c)w_i(c)представляет вес I-го эксперта. Этот вес представлен текстом вh(c)h(c)Нанесите линейный слой сверху и реализуйте его со Softmax:
wi(c)=eh(c)Tαij=1Neh(c)Tαj{w_i}(c) = \frac{{{e^{h(c)^T}}{\alpha _i}}}{{\sum\nolimits_{j = 1}^N {{e^{h(c)^T}}{\alpha _j}} }}
в(a1,a2,...,aN)(a_1,a_2,...,a_N)представляет вес линейного слоя. Причина использования взвешенной суммы заключается в том, что текст может не единообразно описывать все модальности в видео. Например, в видео, где мужчина в красном поет оперу, текст «Человек в красном» не содержит никакой информации, относящейся к звуку. Вместо этого текст «кто-то поет» должен сосредоточиться на вычислении сходства со звуковой модальностью.

4.3 Training

image.png