Использование алгоритмов обучения с учителем для более точного прогнозирования адаптивных решений по битрейту

В связи с массовым увеличением видеотрафика через Интернет адаптивная потоковая передача HTTP стала основным способом доставки информационно-развлекательных материалов. Достижение хорошего качества обслуживания пользователей (QoE) стало важнее, чем когда-либо, и, хотя было предложено множество решений, потоковая передача с адаптивным битрейтом (ABR) показала себя как лучший метод доставки видео через Интернет.

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

В этой статье мы делимся результатами нашего недавнего кандидата наук Хибы Юсеф, частью ее докторской исследовательской работы для Докторской школы политехнического института Парижа (Жан-Клод Дюфур и Жан Ле Февр) и Lumen, защита опубликована в 2021 году.

Вначале Хиба Юсеф рассмотрел и проанализировал основные проблемы, возникающие при использовании существующих алгоритмов адаптивной потоковой передачи HTTP в контексте одноранговых сетей. На первом этапе исследования мы предложили две методологии повышения эффективности ABR в P2P-сетях вне зависимости от используемого алгоритма (опубликовано здесь). Впоследствии мы расширили исследование на прогнозирование с использованием алгоритмов обучения с учителем (первая публикация от сентября 2020 г. здесь).

В этой статье Хиба Юсеф показывает, что методы машинного обучения и, в частности, контролируемая классификация могут предсказывать класс алгоритмов ABR, предсказывая наиболее важные функции (важность функций на основе среднего уменьшения примеси). Более того, они способны предсказывать решения о битрейте любого алгоритма ABR, предоставляя набор входных функций, которые можно увидеть на уровне приложения.

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

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

Результаты показывают, что как Random Forest, так и Gradient Boosting обеспечивают очень высокую точность прогнозирования среди классификаторов ML.

Введение в АБР

В ABR медиафайлы (видео, аудио) делятся на небольшие части примерно постоянной продолжительности, называемые сегментами, и каждый сегмент кодируется в различных качествах. Затем используется адаптивный алгоритм битрейта на стороне клиента для выбора наиболее подходящего качества с учетом условий сети.

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

Машинное обучение (ML) и другие методы управления продемонстрировали многообещающие результаты во многих областях исследований, и потоковое видео не является исключением. Обучение с учителем (SL) состоит в изучении связи между входом и выходом на основе предыдущих примеров пар вход-выход. SL позволяет учиться на прошлых наблюдениях, чтобы предсказывать будущие события, что является основной задачей ABR. Поэтому смешение этих двух подходов является логичным выбором.

Прогнозирование поведения ABR важно для систем на основе предварительной выборки и кэширования. В этом направлении были предприняты некоторые попытки улучшить предварительную выборку CDN путем информирования CDN о следующем запрашиваемом сегменте, как описано в появляющейся спецификации Common Media Client Data (CMCD). Однако в текущих реализациях ABR видеопроигрыватель запрашивает сегменты последовательно, и в CMCD не указано, следует ли предварительная выборка следующего сегмента за последними решениями ABR или ABR будет изменен для выбора скорости передачи для следующих сегментов для предварительной выборки. из CDN.

Кроме того, в конкретном случае использования Lumen — гибридной потоковой передаче HTTP / однорангового видео (P2P) — предварительная выборка обычно загружает сегменты видео перед запросами проигрывателя. Текущие методы предварительной выборки полагаются на последнее запрошенное качество для выборки предстоящих сегментов; поэтому в случае переключения качества предварительно выбранные сегменты предыдущего качества игнорируются и запрашиваются новые сегменты.

Знание решений ABR заранее помогло бы предвидеть переключения дорожек и позволило бы нам получать следующие сегменты с прогнозируемым качеством. В текущих реализациях потоковой передачи P2P видеопроигрыватель интегрирован поверх стека P2P, который заменяет стек HTTP для P2P в качестве транспортного уровня. ABR в веб- и нативных проигрывателях совершенно неизвестен стеку P2P, что делает интеграцию P2P-ABR более проблематичной.

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

Классификация на основе машинного обучения в адаптивной потоковой передаче

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

Алгоритмы адаптивного битрейта обычно классифицируются по их требуемым входным данным на три основных класса: основанные на буфере (BBA и BOLA), основанные на пропускной способности (PANDA и ОБЫЧНЫЕ) и основанные на пропускной способности гибридного буфера. В последнее время в ABR широко используются методы машинного обучения и управления, что привело к появлению класса, основанного на машинном обучении и управлении (RobustMPC).

Модели в SL обучаются на помеченных наборах данных с перспективой использования моделей на еще неизвестных данных. SL включает в себя классификацию, регрессию, а также структурные прогнозы вывода. В этом исследовании мы фокусируемся на проблемах классификации и используем известные классификаторы, такие как наивный байесовский алгоритм, деревья решений, случайный лес, Adaboost и Gradient Boost, K-ближайшие соседи и метод опорных векторов (SVM).

Проблема классификации выбора битрейта

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

1) Уровень (уровни) буфера: заполняемость буфера при запросе сегмента, который доступен через общедоступные API большинства видеоплееров.

2) Пропускная способность (бит/с): пропускная способность TCP, видимая на прикладном уровне после загрузки сегмента, которая просто измеряется путем вычисления загруженных данных (здесь размер сегмента) за время загрузки.

3) Предыдущая пропускная способность (бит/с): пропускная способность, измеренная при загрузке предыдущего сегмента; эта информация используется для сглаживания оценки пропускной способности или когда текущая оценка недоступна, как в некоторых алгоритмах на основе буфера.

4) Время загрузки (с): время загрузки сегмента.

5) Предыдущий битрейт (бит/с): битрейт ранее выбранного сегмента, используемый большинством алгоритмов ABR для учета гладкости битрейта.

Поскольку они имеют широкий диапазон значений, мы масштабируем эти функции с помощью масштабатора Min-Max, где все функции будут преобразованы в диапазон [0,1]. Затем мы строим матрицу набора данных из пар M входных данных (функций) и выходных данных (меток) для N экземпляров (видеосегментов в нашей задаче). Для обучения и тестирования мы выполняем стратифицированную перекрестную проверку K-фолдов с K = 10, где данные далее разбиваются на K различных подмножеств (или складок). Складки сделаны с сохранением процентного соотношения образцов для каждого класса. Затем для обучения модели используется k - 1 раз, тогда как подмножество k остается в качестве тестовых данных. Затем результаты модели усредняются по каждой из складок и затем проверяются на тестовом наборе.

Результаты и обсуждение

Для любой проблемы ML важно оценить полезность функций, т. Е. Важность функций. В нашей проблеме прогнозирования ABR важность признаков еще более важна, поскольку она несет информацию о характере или классе используемого ABR.

Глядя на рис. 1, мы видим, что предыдущий битрейт заметно доминирует в решении выбранных алгоритмов ABR, подтверждая важность плавности в этих алгоритмах. Кроме того, алгоритмы на основе буфера (BBA и BOLA) демонстрируют высокую важность уровня буфера в сети, в то время как алгоритмы на основе пропускной способности (CONVENTIONAL, PANDA и FESTIVE) придают большее значение характеристикам пропускной способности и времени загрузки. Наконец, мы видим, что R-MPC — гибридный алгоритм на основе управления — опирается на все выбранные функции (буфер и сеть) с разными, но близкими процентными значениями.

Теперь давайте перейдем к некоторым числовым показателям.

В задачах классификации обычно используются известные показатели (например, точность, воспроизводимость, полнота) для оценки моделей.

Точность. Точность прогнозирования показывает, сколько классов правильно прогнозируется из общего числа выборок прогнозов.

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

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

Точность прогнозирования различных классификаторов машинного обучения показана в таблице I. Среди выбранных классификаторов машинного обучения Random Forest (RF) и Gradient Boost (GrdBst) обеспечивают наивысшую точность прогнозирования для всех выбранных алгоритмов ABR с общей точностью более 96. %.

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

С другой стороны, если цель состоит в том, чтобы гарантировать, что фактические классы действительно предсказаны, то полнота является предпочтительной метрикой. Таблица II ниже показывает, что RF и GrdBst обеспечивают высокую точность и полноту более чем 96%.

Анализ коммерческих ABR «черный ящик»

Три коммерческих поставщика услуг, называемые S1, S2, S3, были выбраны случайным образом, и для каждого данные были собраны из общего диапазона от 5 до 10 тысяч одновременных одноранговых узлов. Поставщик услуг использовал разные прямые трансляции и видео по запросу, поэтому мы создали два набора данных: один для видео по запросу и один для

Живые сеансы, каждый до 40000 экземпляров. Мы провели наши эксперименты над алгоритмами ML, представленными выше.

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

В приведенной выше таблице показано, что RF, DT и GrdBst работают лучше всего среди протестированных алгоритмов ML. Для S1 (как Live, так и VOD) эти три алгоритма обеспечивают очень высокую точность, чуть выше 99%. Для S2 RF и GrdBst работают даже лучше, чем DT с точностью около 98% и 99% для Live и VOD соответственно. Наконец, S3, который имеет наибольшее количество уровней качества (семь качеств), для Live мы замечаем, что RF и GrdBst снова достигают высокой точности, а GrdBst достигает немного более высокой точности. Тем не менее, с VoD лучше всего работает RF с точностью 98,5%, что почти на 1% лучше, чем у DT и GrdBst.

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

Идти дальше

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

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

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

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

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

Если вам интересно работать над подобными задачами, ознакомьтесь с нашими открытыми вакансиями!

Это содержимое предоставляется только в информационных целях и может потребовать дополнительных исследований и обоснования со стороны конечного пользователя. Кроме того, информация предоставляется «как есть» без каких-либо гарантий или условий любого рода, явных или подразумеваемых. Конечный пользователь использует эту информацию на свой страх и риск. Lumen не гарантирует, что информация будет соответствовать требованиям конечного пользователя или что реализация или использование этой информации приведет к желаемому результату для конечного пользователя. В этом документе представлены продукты и предложения Lumen на дату выпуска. Услуги доступны не везде. Только бизнес-клиенты. Lumen может изменить или отменить продукты и услуги или заменить аналогичные продукты и услуги по своему усмотрению без предварительного уведомления. © 2021 Люмен Технологии. Все права защищены.