# Personalized Online Live Video Streaming Using Softmax-Based Multinomial Classification
## 3 System Model and the Proposed Algorithm
### Details of the Personalized UAS Method  
The UAS method prioritizes the video chunks being transmitted by predicting user viewing patterns. That is, in order to provide a high QoE to individual users based on personalized differentiated requirements, the UAS method collects users' viewing patterns and classifies the priority of video chunks to be watched by a user based on the collected viewing patterns. This means that the chunk with the highest priority will be served before all other chunks. The pseudo code in Algorithm 1 shows the process used in the UAS method. The UAS method uses the softmax algorithm [22], which is widely used for multinomial classification in the machine learning research community [23; 24]. Based on the softmax-based multinomial classification with \(N\) classes, it is appropriate to assign decision probability values \(p_{i},\forall i\in\{1,\cdots,N\}\) for classes \(c_{i},\forall i\in\{1,\cdots,N\}\) (note that \(\sum_{\forall i}p_{i}=1\)). Therefore, our proposed UAS method uses the softmax to classify the priority of chunks based on user viewing patterns. In order  
Figure 4: Overall process of user-based adaptive streaming (UAS) method. HAS: HTTP-based adaptive streaming. Figure 5: Structure of the personalized user-based adaptive streaming (UAS) method. to compute the softmax-based classification, multiple binary classification (or logistic regression) is used. ```
1:\(e\gets 0\)
2:while\(e=0\)do
3:for\(c\gets 0\) to n do
4: progressive download on \(c\)
5:endfor
6:endwhile
7:\(r\gets softmax(n,t)\)
8:for all result \(r\) in \(R\)do
9:\(r\gets sort(r)\)
10: Streaming request of \(r\) to server
11:endfor
```  
**Algorithm 1** Pseudo code of the UAS method. If we judge class A or not in a binomial classification, then the multinomial classification [25; 26] will determine whether the class is A, B, or C. In this case, if classes A to C in multinomial classification are assumed to be the same as the video chunks, we can obtain probability values using the softmax for each chunk as shown below. Before describing the detailed softmax application process step-by-step, for the basic formula for softmax regression, we have:  
\[f_{j}(z)=\frac{e^{z_{j}}}{\sum_{k}e^{z_{k}}}. \tag{1}\]  
The probability of Equation (1) is statistically equivalented as:  
\[p(y_{i}|x_{i};W)=\frac{e^{f_{y_{j}}}}{\sum_{j}e^{f_{j}}}, \tag{2}\]  
where \(y_{i}\) is set as the probability of clicking chunks obtained through the action, and \(x_{i}\) is the action of the user who uses video streaming services. In practice, given \(x_{i}\) and the condition of \(W\), (2) means a normalized probability of the \(y_{i}\) label. Applying Equation (2) to the UAS algorithm, an array of \(Y\) values obtained through the softmax \"\(W\)\" of each chunk is the probability that the user will click on each chunk. For example, if the result value \"\(Y\)\" is \((0.2,0.7,0.1)\), then the loading order of the chunks is \(chunk\#2\)\(\rightarrow\)\(chunk\#1\)\(\rightarrow\)\(chunk\#3\). We apply the above example to Equation (2), which we will explain in more detail in the following.