張曉穎,郭一凡
(長春大學 理學院,長春 130022)

圖1 隨機選取部分數據流程圖
使用MATLAB軟件從數據集中隨機選取部分數據進行實驗,對于網絡側估計終端用戶視頻體驗能夠提高計算效率進行準確建模,滿足應用需求。
Step 1 使用MATLAB的Size函數
使用Size函數獲取數據轉換成矩陣的行列數目,以實現賦值、計算等操作。采取了size(A,1)用法獲得矩陣的行數。
Step 2 使用MATLAB的Randperm函數
使用Randperm函數返回一個向量,將獲取到的行數隨機打亂成一個無重復數字序列,彼此無重復且順序隨機。
Step 3 提取部分數據
在數據矩陣中按照返回向量提取n個隨機數據,產生相應的矩陣。
主要因素均會受到諸多因素的影響,例如初始視頻緩沖峰值速率會受到存在干擾(SINR)、空口負載過大、系統規格的不同等諸多情況的影響,故需要對原始數據進行初步處理,減少在接下來的相關性檢驗以及神經網絡模型處理數據中所產生的誤差。

圖2 處理異常點前后,初始緩沖峰值速率與初始緩沖時延的關系

圖3 剔除異常點流程圖
使用拉依達準則進行異常點處理,若在主要數據中的某個測量值的殘余誤差的絕對值Vi>3σ,則將該測量值視為壞值并處理。其中:
Vi=Xi-μi=1,2,…,n,
(1)
(2)
在判斷函數關系前,對兩兩因素做相關性分析。若兩個因素具有相關性,才能建立函數關系。假設初始緩沖峰值速率(kbps)與E2E RTT(ms)這兩個因素與初始緩沖時延(ms)有關系的可能性較大,播放階段平均速率(kbps)與卡頓占比有關系的可能性較大。從而可以建立相關性模型并對假設進行驗證。用協方差來度量兩個隨機變量之間的關系,假設xi,yi為樣本點數值,則其表達式為:
(3)
五個變量之間的相關系數矩陣R1:

(4)
考慮到除了三個主要的網絡側變量以外,視頻全程感知速率(kbps)對用戶體驗評價變量可能有較大影響,故求得視頻全程感知速率(kbps)與主要變量之間的相關系數矩陣R2為:

(5)
相關系數標準:選用±0.3為界線,若相關度小于|±0.3|,則認為兩變量相關性不大。

圖4 五個主要變量之間的相關性

圖5 視頻全程感知速率(kbps)與主要變量之間的相關性
從圖4及其系數矩陣R1可以分析出,初始緩沖時延(ms)與初始緩沖峰值速率(kbps)、E2E RTT(ms)有較高相關性,與播放階段平均速率(kbps)的相關性不高;卡頓占比與播放階段平均速率(kbps)有較高相關性,與初始緩沖峰值速率(kbps)、E2E RTT(ms)的相關性不高;從圖5及其系數矩陣R2可以分析出,視頻全程感知速率(kbps)與播放階段平均速率(kbps)、初始緩沖時延(ms)、卡頓占比均具有較高相關性。所以,我們針對初始緩沖時延(ms)與初始緩沖峰值速率(kbps)、E2E RTT(ms),卡頓占比與播放階段平均速率(kbps)的五個主要因素之間的影響關系以及影響視頻全程感知速率(kbps)的主要因素構造函數。
將網絡側變量(初始緩沖峰值速率,播放階段平均下載速率,E2E RTT)視為自變量,用戶體驗評價變量(初始緩沖時延,卡頓時長占比)視為因變量。建立BP單節點神經網絡模型。
Step 1 進行原始數據離差標準化
通過對原始數據進行離差標準化,使結果映射到小范圍內,其公式為:
(6)
Step 2 確定輸入層,輸出層
將自變量(網絡側變量)作為一維輸入變量,因變量(用戶體驗評價變量)作為一維輸出變量,即采用僅有一個神經元的輸出層的BP網絡模型。
Step 3 對激活函數進行選取
激活函數決定了神經元的連接方式,一般選取Sigmoid型函數,我們選取雙曲線正切函數

(7)
Step 4 確定隱含層及其節點數
由文獻[3]知,一個三層BP神經網絡模型就可以解決一般函數的構造、逼近問題。三層網絡中隱含層節點數n2和輸入層個數n1之間有近似關系:n2=2n1+1,根據這個關系式確定隱含層節點數為3個。
隱含層輸出表達式為:

(8)i表示輸入節點,j表示隱含節點,wij表示第i層輸入到隱含層的第j層權值。
(9)
d1j表示第j隱含層到輸出層的權值。
Step5 根據誤差,調整權值
從輸出結點到輸入層進行反向修正,其公式為:
wkjn+1=wkjn+ηδjyj,
(10)
η是大于0的增益,δj是對應節點j的誤差,隱含層節點的學習公式是:
δj=yj(1-yj)∑δkwjk,
(11)
對于輸出層節點的學習公式是:
δj=yj(1-yj)(Y-yj),
(12)
最后,用平方和誤差函數作為誤差函數
(13)
yk是神經元的實際輸出,Yk是對應的期望輸出。
結合MATLAB的神經網絡工具箱,建立BP單節點神經網絡模型:
simy=w(2,3)11×tansig(w(1,2)11×x+b21)
+w2,321×tansig(w1,212×x+b22),
(14)
+w2,331×tansigw1,213×x+b23+b31
其中,w(j,k)ab代表第j層的第a個節點到第k層的第b個節點的權值;byx代表第y層第x個節點的閾值;
通過net.iwj,1提取第j層到第j+1層的權值,通過net.by提取第i+1層的閾值。
(15)
則初始緩沖時延與初始緩沖峰值速率的函數關系式為:
y=0.5556×tansig(-0.9147×x+1.6881)
-0.1522×tansig(3.7679×x+2.2682),
(16)
-5.0390×tansig4.9379×x+5.6855+3.8605

其中,權值及閾值提取結果為:

(17)

(18)

(19)
b3=net.b{2}=3.8605
仿真效果見圖6,其他初始緩沖時延(ms)與E2E RTT(ms)等五組仿真效果見圖7—圖11。

圖8 卡頓占比與播放階段平均速率(kbps)的函數構造結果

圖9 視頻全程感知速率(kbps)與播放階段平均速率(kbps)的函數構造結果

圖10 視頻全程感知速率(kbps)與初始緩沖時延(ms)的函數構造結果

圖11 視頻全程感知速率(kbps)與卡頓占比的函數構造結果

表1 初始緩沖時延(ms)與初始緩沖峰值速率(kbps)的分析

表2 初始緩沖時延(ms)與E2E RTT(ms)的分析

表3 卡頓占比與播放階段平均速率(kbps)的分析
結論:由于二者存在明顯的線性關系,因此二者存在相同的決定因素。

圖12 播放階段平均速率(kbps)與視頻全程感知速率(kbps)的分析

表4 初始緩沖時延(ms)與視頻全程感知速率(kbps)的分析

表5 初始緩沖時延(ms)與視頻全程感知速率(kbps)的分析
將原始數據帶入模型可驗證模型的正確率,圖13為誤差長度為0.1倍的實際函數的條形誤差區域圖,由圖可以看出仿真神經網絡模型對變量之間的關系預測都落在小范圍內,模型的預測準確度較高,比較準確地刻畫了每對變量之間的關系。

圖13 誤差比較圖
本文所建立的模型可以推廣到其他視頻網站以及更加廣泛的互聯網服務平臺的設置或者用于解決類似問題的情境中,也可以用來作網絡直播過程由于各種因素造成畫面延遲等問題的參考,在實際上應用中有較大的通用性和實用性。
參考文獻:
[1] Hsu K,Cupta H V,Sorroshians.Artificial neural net workmodling of the rainfall runoff process[J].Water Resources research,1995,31(10):2517-2530.
[2] 王巖,隋思漣.試驗設計與MATLAB數據分析[M].北京:清華大學出版社,2012.
[3] 明平劍,姜任秋,朱明剛,等.基于PC集群并行CFD算法實現[J].哈爾濱工程大學學報,2007,28(2):155-160.