Overview:
This week, I read a paper ‘MACHINE LEARNING BASED RATE ADAPTATION WITH ELASTIC FEATURE SELECTION FOR HTTP-BASED STREAMING’, which is published on 2017 IEEE ICME by Yu-Lin Chien, Kate Ching-Ju Lin and Ming-Syan Chen.
First of all, DASH provides the flexibility of video rate adaptation, but how to select an appropriate rate for each video segment is still a challenging problem to ensure a good quality of experience. The problem is especially difficult because the video quality experienced by a client is determined by many conflicting performance metrics.
Even regardless of the difficulty of optimizing different metrics, existing rate adaptation algorithms still experience some common deficiencies. First, most of the previous works rely on the information about the available bandwidth. The efficiency of these algorithms is closely determined by the accuracy of bandwidth estimation. However, it is inherently hard to forecast the future bandwidth based on the historical bandwidth measurements. Second, in general, network conditions can be evaluated by many different factors, such as current bandwidth, average bandwidth, latency, variation, playback buffer size, etc. However, existing algorithms usually select the video rate based on some conditional expressions.
Since these expressions are derived according to high-level intuition, they do not take all those comprehensive factors into account, yet only use one or a few information as their input.
This paper presents Machine Learning-based Adaptive Streaming over HTTP (MLASH), an elastic framework that exploits a wide range of useful network-related features to train a rate classification model. (incorporated with any existing adaptation algorithm and utilize big data characteristics to improve prediction accuracy)
Method:
MLASH’s design consists of two main components: a) model training and b) video rate prediction.
Two things are worth noting here. First, this classification model can be offline trained using a number of previous requests, or online updated using streaming data to improve prediction accuracy over time. The model hence benefits from big data characteristics. Second, enable any service provider to use its preferable rate labeling algorithm.
Feature Selection
a) Bandwidth: Last segment bandwidth (LSB), Session average bandwidth (SAB), Moving window average bandwidth (WAB), Variation.
b) Buffer size: Current buffer length, Maximal buffer length.
c) Round-trip time (RTT)
d) Current video rate
Model Training:
decision-tree-based random forest classification
Scikit-learn package
the number of trees in the forest as 200 and maximum depth of the trees as 50
train a distinct model for different content delivery networks (CDNs) —— video servers
How can we find its corresponding label for model training?
Fortunately, many previous works have proposed different rate adaptation algorithms, each of which targets to optimize one or a few performance metrics. Instead of using those algorithms to predict the rate, we alternatively incorporate them with our machine learning-based framework and utilize them to “label the best rate” of a feature set.
a) Bandwidth-based rate adaptation
b) Buffer-considered rate adaptation
c) Smooth rate adaptation
TRACE-BASED EVALUATION
Use the trace of HTTP streaming to check the performance of MLASH. The trace records the results of 10,000 tests everyday. The requests are from more than 1,000 hosts (IP addresses), which locate in about 100 different countries and 1,000 autonomous systems. Each test lasts for 30 seconds, in which the client periodically requests for a video segment with a constant video bitrate of two seconds.
LSB & The trace logs the information, including the video rate of each segment, time required for downloading a segment, and monitored RTT.
The available video encoding rates used in simulations include 100, 150, 200, 250,300, 400, 500, 700, 900, 1200, 1500, 2000, 2500, 3000, 4000, 5000, 6000, 7000, 10000, 20000 kb/s.
Compare MLASH design with the following schemes:
• Bandwidth-based adaptation
• Buffer-considered adaptation
• Rate smoothness-based adaptation
• Buffer-based adaptation (d sec)
Estimate bandwidth by using three different measures, SAB, LSB and WAB
MLASH with bandwidth-based rate labeling
MLASH with buffer-considered rate labeling
MLASH with smoothness-based rate labeling
Convergence of Model Training, the accuracy becomes quite stable when the classifier is trained by using about 100,000 records of training data.
I think this is a better work for us to use machine learning method for HTTP streaming.