Livepeer - это протокол для перекодирования видео. Транскодирование - это трудоемкий процесс, который традиционно требует высоких технических и денежных затрат. Livepeer стремится снизить стоимость транскодирования с помощью открытой сети, которая стимулирует прозрачную конкуренцию между поставщиками возможностей транскодирования. Правила протокола Livepeer поддерживаются смарт-контрактами на блокчейне Ethereum, неизменной бухгалтерской книге. Сочетание открытой сети без разрешений и неизменной необратимости привлекает византийское (состязательное) поведение: любой участник может попытаться «взломать протокол» без немедленных последствий изнутри сети Livepeer. Механизм проверки необходим, чтобы решить, правильно ли была проведена работа по перекодированию.

Контекст

Это пятая статья из серии, в которой мы пытаемся опубликовать совместное исследование, проведенное Livepeer и Epic Labs. На данный момент мы опубликовали:

  • Статья 1: где мы обсуждали (полную ссылку) метрики видео - PSNR, VMAF, SSIM и MS-SSIM - для обнаружения фальсификации видео.
  • Статья 2: где мы старались изо всех сил и добивались лучших результатов с агрегаторами временных рядов.
  • Статья 3: где мы, наконец, представили пять показателей видео, которые будут определять конкретные характеристики видеокадров для обнаружения фальсификации видео и оценки качества.
  • Статья 4: где мы уже представили методологию машинного обучения для обнаружения фальсификации видео и оценки качества.

… Итак, в этом мы повторно рассмотрим часть статьи 1 «выводы и дальнейшая работа», в которой мы ее оставили, и представим нашу машину с вектором поддержки одного класса (OC-SVM) для обнаружения взлома.

Определение модели классификации с метриками QoE

Уже в первой статье предыдущей серии мы показали некоторые попытки определения классификатора с использованием порогов приема по метрикам QoE (SSIM, PSNR, VMAF, MS-SSIM,…). Результаты не были полностью удовлетворительными, поскольку точность такой модели была слишком низкой для наших целей.

Форма визуализации модели классификации QoE показана на следующем рисунке. В качестве примера мы использовали SSIM, но это будет то же самое с любой другой метрикой. Красные точки - это истинные негативы (искаженные изображения), а зеленые точки - истинные позитивы (хорошая транскодификация). Любая горизонтальная плоскость, которую мы устанавливаем на любой высоте (значение SSIM), будет границей нашего решения. Независимо от того, насколько оптимально мы пытаемся найти такую ​​плоскость, способ, которым красные и зеленые точки падают выше или ниже плоскости, слишком перемешан, что дает очень низкую точность классификатора (слишком много ложных срабатываний или ложных отрицаний).

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

Представляем One Class Support Vector Machine (сокращенно OC-SVM)

Как и в случае с показателями и функциями, представленными в первой серии публикаций, в нашей предыдущей статье были представлены методы контролируемого и неконтролируемого машинного обучения. Мы протестировали набор методов с разными результатами (Adaboost, Support Vector Machine, XGBoost, Isolation Forest,…).

Хотя методы контролируемого обучения обеспечивают очень хорошие двоичные классификаторы, которые обеспечивают высокую точность, невозможно заранее создать маркированные обучающие образцы для всех возможных атак: человеческое творчество, когда дело доходит до читерства, оказалось непостижимым. Однако мы можем установить контроль над тем, что мы сочтем хорошей интерпретацией, не так ли?

Итак, мы выбрали неконтролируемый классификатор, который является лучшим из наших реализаций OC-SVM. В подобной модели мы в основном вычисляем функцию принятия решения, минимизируя «объем» вокруг выбранных функций, измеренный по набору целевых выборок. В нашем случае эти образцы являются хорошо транскодированными активами.

Подробное и математически обоснованное объяснение того, как работают OC-SVM, дано здесь.

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

Как объяснялось в нашей предыдущей статье, мы взяли большое количество образцов (~ 75 тыс. Транскодификаций) с разными разрешениями для обучения нашей модели, все они были правильно перекодированы, чтобы наш классификатор мог изучить что сделано хорошо. Все остальное (~ 75 тыс. Транскодификаций) - это атаки различных форм, созданные нами на основе набора данных YT8M.

После обучения модели для получения классификации нам нужно только наблюдать выходные данные OC-SVM: если выходные данные больше нуля, то мы находимся в пределах того, что было изучено как «хорошее» воспроизведение. В противном случае ввод должен соответствовать чему-то другому. Так просто. Актив классифицирован.

В таблице ниже представлены значения точности различных моделей с использованием показателей QoE (SSIM, MSE, PSNR) и нашего OC-SVM. OC-SVM выделяется большим преимуществом.

Для нашей конкретной проблемы мы можем достичь более чем приличной точности F20, равной 96,9%. С истинно положительным коэффициентом (TPR) до 98,3% он оставляет очень мало места для несправедливого обвинения во фальсификации оркестратора в сети Livepeer. Однако истинная отрицательная ставка (TNR) не так высока - 86,2%, что оставляет место для нежелательных подделанных активов, которые могут испортить наш пул хороших рабочих мест, но мы разберемся с этой проблемой позже.

Мы специально выбрали метрику точности, такую ​​как f beta, с beta = 20, чтобы придать больший вес истинным положительным результатам в ущерб истинным отрицаниям (т.е.дать больший вес отзыву). Это сделано для того, чтобы избежать ненужной утечки ценных LPT из-за резки.

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

Как упоминалось ранее, ложноотрицательный результат - это задание по транскодированию, которое наш классификатор посчитал несанкционированным. Это может произойти как минимум в 1,7% заданий (поскольку наш тестовый TPR составляет 98,3%) и может привести к произвольному уничтожению некоторых ценных LPT (токенов Livepeer).

Разумный подход к решению этой проблемы - сказать вещательным компаниям (B) открыть задание перекодирования нескольким оркестраторам (O) и установить проверку на основе политик.

Если [вещатель] B использует все P.attempts, не достигнув своей P.score цели, то более вероятно, что этот сегмент является ложноположительным [отрицательным] от верификатора. В этом случае Б может просто использовать сегмент с лучшим результатом из всех попыток. Если есть какое-либо вмешательство, все выбранные оркестраторы должны будут вмешаться. В противном случае в наборе должен быть только один честный оркестратор, поскольку мы используем тот, у которого больше всего очков [...].

Расстояние до решающей функции

Для определения оценки интуитивно понятно, что чем больше отрицательное расстояние до границы, определенной OC-SVM, тем хуже должно быть искажение, т. Е. Более выброс является выбросом.

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

Отображение в случае положительных значений не так однозначно, как для отрицательных. Учитывая характер наших функций сравнения, они по своей сути лучше, чем ближе они к нулю, потому что они являются мерой искажения, разницы между кадрами. Проблема в том, что наш классификатор узнает, что нормальные ресурсы имеют такое поведение, и сопоставляет очень хорошие представления (с очень небольшим отличием от источника) как имеющие почти нулевое значение. Это нелогично, потому что можно было бы ожидать, что вставки будут иметь более высокие положительные значения, чем больше они вставки, не так ли?

Но подождите, это еще не конец. Кроме того, интуиция об отрицательных значениях не выдерживает критики, глядя на результаты.

Поскольку значения признаков нормализуются до обучения модели, крайние отрицательные значения в конечном итоге отображаются в то же или почти такое же значение функции принятия решения. Теоретически функции принятия решений OC-SVM варьируются от -infinity до + infinity, но в нашем случае нижняя граница создается искусственно из-за нормализации функций. Это устанавливает искусственную границу в максимальном отрицательном значении, которая сжимает все чрезвычайно искаженные представления вокруг одного и того же значения.

Наконец, давайте посмотрим на рисунок ниже. Он представляет собой диаграмму разброса значений SSIM в зависимости от расстояния до решающей функции OC-SVM. Кажется, что нет никакой корреляции между правильной метрикой искажения (SSIM) и расстоянием до функции принятия решения.

Итак, расстояние до границы принятия решения недостаточно для принятия такого рода решения (каламбур). Что же тогда делать? Как выбрать лучший оркестратор?

Прогнозирование значений QoE на основе функций видео

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

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

Это должно помочь решить поставленную ранее проблему: как сделать правильный выбор в отношении оркестраторов?

Лучшим оркестратором будет тот, который получит самые высокие показатели QoE.

Вычисление необходимых показателей QoE (SSIM, PSNR, MS-SSIM, VMAF,…) может быть выполнено после прохождения этапа проверки. Однако это повлечет за собой некоторые накладные расходы и ненужное потребление циклов. Итак, как насчет того, чтобы вывести их значения из предварительно обученной модели, которая использует уже вычисленные функции для проверки? Это было бы значительно дешевле с вычислительной точки зрения, вместо того, чтобы повторять кадр за кадром, извлекая любую метрику, о которой мы можем думать.

В этой статье мы представим результаты только для SSIM, так как это данные, которые у нас были для обучения на момент публикации, но другие метрики, такие как VMAF и MS-SSIM, еще более интересно предсказать, поскольку они известны. еще более затратный в вычислительном отношении.

Помеченный набор данных, используемый для обучения этой модели, содержит ~ 40 тыс. Образцов, полученных из ~ 1 тыс. Исходных ресурсов. Мы вычислили 7 воспроизведений при разных CRF (постоянный коэффициент скорости) для 6 различных разрешений и извлекли SSIM вместе с нашим набором функций для каждого из них.

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

  • MAE = MAPE: 0,0215
  • RMSE: 0,0382

Для лучшей интерпретации MAE и RMSE обратитесь к этой статье, где объясняются плюсы и минусы обоих показателей. В нашем случае MAE была выбрана в качестве функции потерь для обучения, поскольку она имеет более прямую интерпретацию, и мы не заинтересованы в наказании за очень большие ошибки.

На приведенной ниже диаграмме отображаются прогнозируемые и измеренные средние SSIM для подмножества выборок.

Как и ожидалось, большие ошибки в прогнозировании происходят там, где степень сжатия велика (очень маленькое соотношение размер / размер), что приводит к большей дисперсии к меньшим разрешениям (144p).

Обнаружение ложных срабатываний: метамодель

Воодушевленные успехом нашей контролируемой модели QoE, мы решили двигаться вперед и разработали метамодель, которая еще больше снизит нашу ложноположительную скорость (FPR). Как объяснялось выше, у нашего OC-SVM были некоторые трудности с распознаванием определенного типа атак. С другой стороны, контролируемые модели очень хорошо справлялись с обнаружением всех видов атак, которым они были обучены.

Тщательное изучение нашего набора данных показывает, что в основном водяные знаки - это тип атак, которые проходят незамеченными. Итак, мы обучили еще одну модель CatBoost. На этот раз классификатор.

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

С помощью этой метамодели мы можем достичь еще большей точности по шкале F20 - 98,7%. При истинно положительном уровне (TPR) 98,7% это оставляет еще более узкое место для несправедливого обвинения во фальсификации. Но что еще лучше, истинная отрицательная ставка (TNR) сейчас достигает 98,8%. Это можно назвать успехом.

Выводы

OC-SVM позволяет агрегировать несколько точек зрения (то есть функций) в одно двоичное значение. Непрерывные значения, извлеченные из функции принятия решения, не соответствуют метрикам QoE.

Однако функции, используемые для вычисления функции принятия решения, можно использовать для обучения контролируемой модели, которая прогнозирует показатели QoE (по крайней мере, средний SSIM).

Для показателей QoE недостаточно данных, чтобы принимать правильные решения о вмешательстве. Однако они полезны для принятия дальнейших решений после проверки отсутствия вмешательства.

Модели контролируемого обучения очень уязвимы для изменений в форме атак, однако их можно использовать для повышения точности по сравнению с известными атаками, которые считаются ложноположительными.

Об авторах

Рабиндранат является доктором вычислительной физики исследователем UPC и AI / ML.

Игнасио - инженер по телекоммуникациям UPM с дипломом MSC в области обработки сигналов и машинного обучения.

Дионисио - инженер по информатике в UPM, специализирующийся на СМИ.

Крутые вещи делают в LightFlow Media Technologies, входящей в семейство Haivision и продукте Epic Labs.

Livepeer спонсирует этот проект с LightFlow для исследования способов оценки качества транскодирования видео в сети Livepeer. Эта серия статей помогает подвести итоги наших исследований.

Чтобы узнать больше о Epic, посетите www.epiclabs.io или @epiclabs_io в Twitter.