35 Hình 3.5: Tần suất chuẩn hóa của các quyết định tìm nạp trước được thực hiện trong mỗi phiên phát lại video .... Sau đó, nó xác định bitrate tối ưu cho đoạn tiếp theo và bắt đầu tải x
Trang 1UBND TỈNH BÌNH DƯƠNG TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
Trang 2UBND TỈNH BÌNH DƯƠNG TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
BÌNH DƯƠNG - 2020
Trang 3i
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi Các số liệu, kết quả nêu trong Luận văn là trung thực và chƣa từng đƣợc ai công bố trong bất
Trang 4ii
LỜI CẢM ƠN
Để có thể hoàn thành Luận văn này, tôi xin gửi lời cảm ơn chân thành tới PGS.TS Lê Tuấn Anh Thầy đã tận tình giảng dạy, hỗ trợ các bài báo và hướng dẫn giúp tôi tiếp cận việc nghiên cứu của mình Thầy đã luôn tận tâm động viên, khuyến khích và chỉ dẫn giúp tôi hoàn thành được luận văn này
Bên cạnh đó, tôi cũng xin gửi lời cám ơn đến gia đình đã tạo điều kiện cho tôi có thời gian học hỏi và nghiên cứu Xin cảm ơn đến các bạn cùng lớp đã đưa những ý kiến đóng góp để đề tài này được thực hiện hoàn chỉnh hơn
Và đặc biệt, tôi xin cảm ơn Viện Sau đại học - trường Đại học Thủ Dầu Một đã tạo môi trường cho tôi có điều kiện để học hỏi những kiến thức mới, những hướng nghiên cứu thật hay và ý nghĩa
Học viên thực hiện đề tài
Trang 5iii
MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
MỤC LỤC iii
DANH MỤC CHỮ VIẾT TẮT iv
DANH MỤC BẢNG v
DANH MỤC HÌNH, ĐỒ THỊ vi
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN 3
1.1 Giới thiệu tổng quan về nền tảng phát trực tuyến video bằng DASH 3
1.2 Học tăng cường 5
1.3 Học tăng cường sâu 8
1.4 Mục tiêu của đề tài 12
1.5 Phạm vi nghiên cứu 12
CHƯƠNG 2 CÁC NGHIÊN CỨU LIÊN QUAN 14
2.1 Các thuật toán ABR cơ bản 14
2.2 HotDASH 16
CHƯƠNG 3 ĐỀ XUẤT GIẢI PHÁP VÀ ĐÁNH GIÁ HIỆU NĂNG 28
3.1 Đề xuất giải pháp 28
3.2 Thực nghiệm và kết quả 29
3.3 Phương pháp luận 33
3.4 Đánh giá kết quả 34
KẾT LUẬN 39
TÀI LIỆU THAM KHẢO 41
Trang 6iv
DANH MỤC CHỮ VIẾT TẮT ABR: Adaptive Bitrate Streaming
DASH: Dynamic Adaptive Streaming over HTTP
DL: Deep Learning
DRL: Deep Reinforcement Learning
ML: Machine Learning
NN: Neural Network
pHotDASH: Prioritized HotDASH
QoE: Quality of Experience
RL: Reinforcement Learning
Trang 7v
DANH MỤC BẢNG
Bảng 1.1 - Sự khác biệt giữa 2 giao thức HTTP và RTMP 4 Bảng 2.1 - Trạng thái các tham số của Cơ chế quyết định HotDASH 19
Trang 8vi
DANH MỤC HÌNH, ĐỒ THỊ
Hình 1.1: Truyền phát bit thích ứng bằng DASH theo các cách tiếp cận hiện đại 3
Hình 1.2: Mô hình sự tương tác của Tác nhân – Môi trường trong RL 6
Hình 1.3: Minh họa MDP [41] 7
Hình 1.4: Lược đồ chung của các phương pháp học tăng cường sâu 8
Hình 1.5: Mô hình Học sâu 8
Hình 1.6: Lược đồ chung của các phương pháp khác nhau cho RL [41] 10
Hình 1.7: Bảng phác thảo thuật toán DQN [45] 12
Hình 2.1: HotDASH tổng quan 16
Hình 2.2: Cơ chế quyết định HotDASH [42] 18
Hình 2.3: Mô hình RL quyết định tìm nạp trước [42] 23
Hình 2.4: Luồng điều khiển trong hotdash.js 25
Hình 3.1: Hàm phần thưởng sau khi thực hiện huấn luyện với 60,000 bước 31
Hình 3.2: Quản lý bộ đệm trong hotdash.js 31
Hình 3.3: Quản lý bộ đệm với cải tiến hotdash.js của đề tài 32
Hình 3.4: Sự cải thiện bitrate 35
Hình 3.5: Tần suất (chuẩn hóa) của các quyết định tìm nạp trước được thực hiện trong mỗi phiên phát lại video 36
Hình 3.6: CDF của QoEhotspot thu được cho mỗi thuật toán được thể hiện 37
Hình 3.7: Chuẩn hóa QoEhotspot (wrt FESTIVE) thu được cho mỗi thuật toán 37
Hình 3.8: So sánh các QoE riêng lẻ và tổng QoE giữa pHotDASH với HotDASH và Pensieve 38
Trang 91
MỞ ĐẦU
Lưu lượng truy cập từ các ứng dụng phát trực tuyến video dựa trên HTTP chiếm tỷ trọng lớn nhất trong tổng lưu lượng Internet toàn cầu trong những năm gần đây Đồng thời, nhu cầu của người dùng về nội dung video với Chất lượng trải nghiệm cao (QoE) đã tăng lên nhanh chóng Việc không thể cung cấp QoE thỏa đáng cho người dùng chuyển thành tổn thất nặng nề cho các nhà cung cấp dịch vụ Tuy nhiên, các biến chứng phát sinh từ việc người dùng khác nhau trải nghiệm cùng một video khác nhau
Với sự bùng nổ về dân số và sự phát triển ngày càng cao của công nghệ, thì sự khao khát về lượng thông tin của con người ngày một lớn hơn Các thông tin video được lấy từ nhiều nguồn khác nhau như youtube, facebook, tiktok… Trong khi môi trường sống càng phát triển thì đời sống tinh thần của con người cũng phải cải thiện theo, các thông tin video ngoài mang tính thông tin, nghiên cứu mà còn mang tính giải trí
Và cùng với việc phát triển hàng ngày của công nghệ, việc truyền tải video ngày càng thách thức cho các nhà đầu tư khi phải nâng cấp chất lượng trải nghiệm của người dùng Việc không thể cung cấp QoE thỏa đáng cho người dùng chuyển thành tổn thất nặng nề cho các nhà cung cấp dịch vụ Nhiều nghiên cứu đã chỉ ra rằng chất lượng trải nghiệm video cho người dùng có thể phụ thuộc vào nhiều yếu tố khác nhau, bao gồm giới tính, tuổi tác, cộng đồng, nội dung, … Dẫn đến nhu cầu trải nghiệm thông tin trải nghiệm video của người dùng được cá nhân hóa
Các nhà cung cấp dịch vụ video chủ yếu sử dụng Truyền phát thích ứng động qua HTTP (DASH), để phục vụ nội dung cho các thuê bao của họ Video mục tiêu thường được chia thành các đoạn thời gian phát cố định, với mỗi đoạn được lưu trữ chất lượng khác nhau Trình phát video phía máy khách cố gắng ước tính băng thông khả dụng, dựa trên các điều kiện phát hiện tại (về thông lượng, trạng thái bộ đệm, v.v.) và sử dụng thuật toán bit thích ứng (ABR) để chọn chất lượng tối ưu cho đoạn tiếp theo Tuy nhiên, các vấn đề phát sinh khi ước lượng là không chính xác; nếu máy khách chất lượng cao được khách hàng
Trang 102
yêu cầu khi không đủ băng thông, thì bộ phát lại bị trì hoãn trong vài giây (cho đến khi đoạn được tải xuống hoàn toàn), một hiện tượng được gọi là tải lại Bên cạnh việc phát lại, thay đổi đột ngột về chất lượng của các đoạn liên tiếp cũng cản trở QoE; các thuật toán phát trực tuyến cố gắng làm giảm mức độ thay đổi đột ngột, và làm tăng độ mượt khi phát lại Phải kể đến các thuật toán ABR tiên tiến, ví dụ: MPC và Pensieve, được tối ưu hóa cho chức năng mục tiêu (hoặc phần thưởng), bao gồm ba thành phần cạnh tranh: (1) bit cao, (2) ít xáo trộn và (3) độ mịn cao
Mặc dù kịch bản đã nói ở trên là tối ưu nhất về mặt sử dụng băng thông, nhưng đối với người dùng, sự biến đổi chất lượng có vẻ ngẫu nhiên và không thỏa đáng Do đó, yêu cầu phải có chiến lược truyền phát video có tính đến nội dung tùy chọn của người dùng, bên cạnh việc sử dụng băng thông tối ưu Cụ thể hơn, thuật toán phát trực tuyến phải nhận thức được thời gian ưu tiên cao các phân đoạn trong video - mà chúng tôi gọi là các hotspot trong đề tài này - và tối
ưu hóa phân phối video tương ứng
Trong đề tài này, chúng tôi sử dụng học tăng cường sâu trong truyền phát video thích ứng, cụ thể, chúng tôi đề xuất hệ thống pHotDASH, một cải tiến nhỏ trên nền tảng của hệ thống HotDASH khi cho thêm các mức hot tại các đoạn hotspot, để tùy chọn nội dung của người dùng trong quá trình truyền phát video thích ứng qua HTTP phù hợp với điều kiện môi trường truyền và nâng cao trải nghiệm người dùng ở mức cao nhất có thể
Luận văn này được chia làm 3 Chương: Chương 1 – Giới thiệu tổng quan
về nền tảng phát trực tuyến video bằng DASH; phương pháp Học tăng cường và Học tăng cường sâu; Mục tiêu và phạm vi nghiên cứu Chương 2 – Giới thiệu các thuật toán ABR cơ bản; và HotDASH Chương 3 – Đề xuất giải pháp và đánh giá hiệu năng
Trang 113
CHƯƠNG 1 TỔNG QUAN
1.1 Giới thiệu tổng quan về nền tảng phát trực tuyến video bằng
DASH
Truyền phát video thích ứng dựa trên HTTP (được chuẩn hóa là DASH)
là một kỹ thuật streaming cho phép truyền tải các nội dung media chất lượng cao qua Internet Tương tự như giải pháp HTTP Live Streaming (HLS) của Apple, MPEG-DASH hoạt động bằng cách chia nhỏ nội dung thành một chuỗi các phân đoạn tệp dựa trên HTTP, mỗi phân đoạn chứa một khoảng thời gian phát khác nhau
DASH là giải pháp phân phối được lựa chọn cho hầu hết các nhà cung cấp dịch vụ video trong thời gian gần đây Hình 1 minh họa hoạt động của trình phát DASH khách: bộ điều khiển ABR trong trình phát nhận các điều kiện phát
về thông lượng (từ trình ước lượng thông lượng) và kích thước bộ đệm (từ bộ điều khiển bộ đệm) Sau đó, nó xác định bitrate tối ưu cho đoạn tiếp theo và bắt đầu tải xuống từ CDN (hoặc máy chủ nội dung) tương ứng
Hình 1.1: Truyền phát bit thích ứng bằng DASH theo các cách tiếp cận hiện đại: Bộ điều khiển ABR trong trình phát máy khách chuyển tiếp các điều kiện phát lại (thông lượng, bộ đệm bị chiếm, v.v.) đến máy chủ ABR bên ngoài, đáp ứng với bitrate tối ưu cho đoạn tiếp theo
Trang 124
Bảng 1.1 - Sự khác biệt giữa 2 giao thức HTTP và RTMP
Giao thức HTTP Giao thức RTMP
Web server (Apache, Lighttpd, Nginx…) Messaging server (Adobe Flash Media
Server, Wowza Media Server, Red5…)
Sử dụng Web Browser Sử dụng Flash player
Truyền văn bản thời gian ngắn (Phù hợp với
web truyền thống)
Truyền dữ liệu thời gian thực/dài (Phù hợp với các file Media: Nhạc, Phim)
File html, js File swf, as, flv, mp3
MPEG DASH là tên viết tắt của: Dynamic Adaptive Streaming Over HTTP, đây là 1 tiêu chuẩn được định nghĩa bởi ISO (ISO/IEC 23009-1)
MPEG-DASH hoạt động bằng cách chia nhỏ nội dung thành một chuỗi các phân đoạn nhỏ, được phát qua HTTP Mỗi phân đoạn chứa một khoảng thời gian ngắn của nội dung có thể có thời lượng nhiều giờ chẳng hạn như một bộ phim hoặc một chương trình truyền hình thực tế phát sóng trực tiếp Nội dung được cung cấp ở nhiều bitrate khác nhau, tức là các phân đoạn thay thế được mã hóa ở các bitrate khác nhau bao gồm các khoảng thời gian phát lại ngắn được căn chỉnh Trong lúc nội dung đang được phát lại phát lại bởi máy khách MPEG-DASH, máy khách sẽ sử dụng thuật toán bit thích ứng (ABR) để tự động chọn phân đoạn có bitrate cao nhất có thể để tải xuống phát kịp thời mà không gây ngừng hoặc tải lại cho các đoạn khi đang phát Một máy khách MPEG-DASH có thể thích ứng với các điều kiện mạng không ổn địh và cung cấp đoạn phát có chất lượng cao với một số lỗi hoặc sự cố sẽ lưu vào bộ đệm tải lại
MPEG-DASH sử dụng cơ sở hạ tầng máy chủ web HTTP hiện có để phân phối một cách sơ bộ nhất nội dung world wide web Cho phép các thiết bị
Trang 135
có kết nối Internet phát nội dung đa phương tiện được phân phối qua Internet trong bối cảnh tình trạng/ điều kiện mạng không ổn định DASH là một tiêu chuẩn dành cho việc điều phối linh hoạt các bit video được phát thông qua giao thức HTTP, nó có khả năng thay thế các công nghệ hiện tại như Microsoft Smooth Streaming, Adobe Dynamic Streaming, Apply HTTP Live Streaming (HLS) DASH chính là một hình thức thống nhất của các công nghệ này
1.2 Học tăng cường
Học máy (Machine learning) là một lĩnh vực con của Trí tuệ nhân tạo (Artificial Intelligence) sử dụng các thuật toán cho phép máy tính có thể học từ
dữ liệu để thực hiện các công việc thay vì được lập trình một cách rõ ràng
Học tăng cường là một trong ba nhánh mà các kỹ thuật học máy thường được phân loại:
Học có giám sát (supervised learning) là nhiệm vụ suy ra một phân loại hoặc hồi quy từ dữ liệu huấn luyện được gắn nhãn
Học không giám sát (unsupervised learning) là nhiệm vụ rút ra các suy luận từ các tập dữ liệu bao gồm dữ liệu đầu vào mà không được gắn nhãn
Học tăng cường (RL) là nhiệm vụ học cách các tác nhân phải thực hiện các chuỗi hành động trong một môi trường để tối đa hóa phần thưởng tích lũy
Mô hình học tăng cường thường bao gồm:
- Các tác nhân (agents)
- Môi trường (environments)
RL tập trung giải quyết vấn đề hành động (acting, decision making) ở mỗi thời điểm để thay đổi trạng thái (state) của môi trường, từ đó đạt được kết quả tối ưu khi kết thúc
Trang 146
TÍNH MARKOV
Chúng ta sẽ xem xét mô hình về quy trình kiểm soát ngẫu nhiên của Markovian
Hình 1.2: Mô hình sự tương tác của Tác nhân – Môi trường trong RL
Hình 1.2: Quy trình kiểm soát ngẫu nhiên có tính Markov nếu:
T: S ×A×S → [0, 1] là hàm chuyển đổi (tập hợp các xác suất
chuyển đổi có điều kiện giữa các trạng thái),
R: S×A×S → R là hàm phần thưởng, trong đó R là tập hợp liên tục các phần thưởng có thể có trong một phạm vi Rmax ∈ R+ (ví dụ [0, Rmax]),
∈ [0, 1) là hệ số giảm trừ
Trang 157
Tại mỗi thời điểm bước t, xác suất chuyển đến st+1 được cung cấp bởi hàm chuyển đổi trạng thái T(st,at,st+1) và phần thưởng được đưa ra bởi hàm phần thưởng giới hạn R(st,at,st+1)∈R
Hình 1.3: Minh họa MDP [41]
Trong thiết lập trực tuyến, vấn đề huấn luyện phức tạp hơn mà không yêu cầu một lượng lớn dữ liệu (hiệu suất mẫu) ở khả năng khái quát hóa tốt của thuật toán huấn luyện từ kinh nghiệm hạn chế Tác nhân có khả năng thu thập kinh nghiệm thông qua chiến lược thăm dò/khai thác Ngoài ra, tác nhân có thể
sử dụng bộ nhớ phát (tải) lại để lưu trữ trải nghiệm của mình để có thể xử lý lại sau Trong cả cài đặt theo ngoại tuyến và cài đặt trực tuyến, một điều cần cân nhắc cần bổ sung là hiệu suất tính toán, phụ thuộc vào hiệu suất của một bước giảm độ dốc nhất định Một lược đồ tổng quát của các phần tử khác nhau có thể được tìm thấy trong hầu hết các thuật toán DRL được cung cấp trong Hình 1.4 [41]
Trang 16Hình 1.5: Mô hình Học sâu
Trang 179
Học sâu có thể giải quyết các vấn đề bằng cách sử dụng nhiều phương pháp và kỹ thuật học máy khác nhau, từ cây quyết định đến SVM, hay mạng nơ-ron Tuy nhiên, chúng ta chỉ sử dụng mạng nơ-ron; đây là phần "sâu" mà học tăng cường sâu đề cập đến Tuy nhiên, mạng nơ-ron không hẳn là giải pháp tốt nhất cho mọi vấn đề, ví dụ, mạng nơ-ron rất ngốn dữ liệu và khó diễn giải, nhưng mạng nơ-ron tại thời điểm này là một trong những kỹ thuật mạnh nhất hiện có và hiệu suất là tốt nhất
Sau đây là nội dung về một trong những thuật toán dựa trên giá trị đơn giản và phổ biến nhất, thuật toán Q-learning [43] và biến thể của nó, Fitted Q-Learning, sử dụng hàm xấp xỉ được tham số hóa [44] Đồng thời đi vào cụ thể về các yếu tố chính của thuật toán mạng Q-Learning học sâu (DQN) [45] đã đạt được khả năng kiểm soát siêu phàm khi chơi trò chơi ATARI từ các pixel bằng cách sử dụng mạng nơ-ron làm hàm xấp xỉ [41]
a Q-Learning
Phiên bản cơ bản của Q-learning lưu giữ một bảng tra cứu các giá trị Q(s,a) (Phương trình trong Hình 1.6) với một mục nhập cho mỗi cặp hành động-trạng thái Để tìm hiểu hàm giá trị Q-values tối ưu, thuật toán Q-learning sử dụng phương trình Bellman cho hàm giá trị Q-values [46] có nghiệm duy nhất là
Q*(s,a):
Q*(s, a) = ( Q*)(s, a), (1) Trong đó, là toán tử Bellman ánh xạ từ hàm bất kỳ: K : thành một hàm khác và được định nghĩa như sau:
( )( ) ∑ ( )( ( ) ∈ ( ))
Theo định lý Banach, điểm cố định của toán tử Bellman tồn tại vì nó
là một ánh xạ Trên thực tế, một bằng chứng chung về sự hội tụ với hàm giá trị tối ưu có sẵn [43] với các điều kiện:
• Các cặp trạng thái-hành động được biểu diễn một cách riêng biệt và
Trang 18∈ ( ) (3) Trong đó θk đề cập đến một số tham số xác định giá trị Q-values ở lần lặp thứ kth
Trong Q-learning (NFQ) [5] trạng thái có thể đƣợc cung cấp nhƣ một đầu vào cho mạng Q-network và một đầu ra khác nhau đƣợc đƣa ra cho mỗi hành động có thể Điều này cung cấp một cấu trúc hiệu quả, có lợi thế là thu đƣợc phép tính ∈ ( ) trong một chuyển tiếp duy nhất trong mạng nơ-ron a đƣợc đƣa ra từ s‟ Các giá trị Q-values đƣợc tham số hóa với mạng nơron
Trang 19Q*(s,a) sau nhiều lần lặp lại với giả sử mạng nơ ron phù hợp với nhiệm vụ và bộ
dữ liệu các trải nghiệm D là đủ
Khi cập nhật các trọng số, người ta cũng thay đổi mục tiêu Do khả năng tổng quát hóa và ngoại suy của mạng nơron, cách tiếp cận này có thể tạo ra các lỗi lớn ở những nơi khác nhau trong không gian trạng thái-hành động Do đó, thuộc tính ánh xạ của toán tử Bellman trong phương trình (2) không đủ để đảm bảo sự hội tụ như hội tụ chậm hoặc không ổn định khi tiến hành thực nghiệm Mặt khác, hàm xấp xỉ khi được sử dụng thì các giá trị Q-values có xu hướng được đánh giá cao với toán tử max
c Mạng học sâu Q-network
Tận dụng ý tưởng từ NFQ, thuật toán mạng học sâu Q-network (DQN) được giới thiệu bởi Mnih et al [45] có thể đạt được hiệu suất mạnh mẽ trong cài đặt trực tuyến cho nhiều trò chơi ATARI, bằng cách học hỏi từ các pixel Nó sử dụng hai phương pháp heuristics để hạn chế những bất ổn:
Mục tiêu của mạng Q-network trong công thức (3) được thay thế ( ) trong đó các tham số chỉ được cập nhật tại lần lặp C∈ với nhiệm vụ sau: Nó ngăn chặn sự bất ổn lan truyền nhanh chóng và làm giảm nguy cơ phân kỳ do các giá trị mục tiêu được giữ nguyên cho C lần lặp
Trang 2012
Ý tưởng về mạng mục tiêu có thể được coi là sự khởi tạo của Fitted learning, trong đó mỗi khoảng thời gian giữa các lần cập nhật mạng mục tiêu tương ứng với một lần lặp Q-iteration duy nhất
Q- Trong cài đặt trực tuyến, bộ nhớ phát (tải) lại [6] lưu giữ tất cả các thông tin cho các bước cuối Nreplay ∈ N, tại đây trải nghiệm được thu thập theo chính sách -greedy Các cập nhật sau được thực hiện trên tập hợp <s, a, r, s‟> (được gọi là mini-batch) được chọn ngẫu nhiên trong bộ nhớ phát lại
Kỹ thuật này cho phép các bản cập nhật bao gồm một loạt các không gian trạng thái-hành động Ngoài ra, một bản cập nhật theo mini-batch có ít phương sai hơn so với một bản cập nhật nhiều đợt Do đó, nó cung cấp khả năng cập nhật các tham số lớn hơn, đồng thời có khả năng song song hóa thuật toán
Hình 1.7: Bảng phác thảo thuật toán DQN [45]
1.4 Mục tiêu của đề tài
Áp dụng DRL vào trong việc thiết kế cơ chế lựa chọn phiên bản của pHotDASH phù hợp với điều kiện môi trường truyền và nâng cao trải nghiệm người dùng ở mức cao nhất có thể
1.5 Phạm vi nghiên cứu
Chỉ áp dụng DRL để thiết kế thuật toán lựa chọn phiên bản của pHotDASH phù hợp với điều kiện môi trường truyền tại tầng ứng dụng để đến người dùng với chất lượng trải nghiệm cao nhất
Trang 2113
Tóm lại, việc thực hiện truyền phát video với thông lượng đường truyền cũng như thiết bị trình phát, và bộ đệm tại thời điểm phát là những biến số, dẫn đến rất khó cho việc đáp ứng nhu cầu về trải nghiệm của người dùng luôn mức cao Chính vì thế, đề tài sử dụng học tăng cường sâu để học nhiều điều kiện mạng, các yếu tố của môi trường có thể ảnh hưởng đến việc trình phát video và học hỏi từ các quyết định được đưa ra trong quá khứ để từ đó, xây dựng mô hình tùy chọn tải nội dung phát và bitrate phù hợp để nâng cao chất lượng trải nghiệm của người dùng
Trang 2214
CHƯƠNG 2 CÁC NGHIÊN CỨU LIÊN QUAN
Ở phần chương 2 này trình bày một số khái niệm về các thuật toán bitrate thích ứng (ABR) cơ bản, giới thiệu về HotDASH [42] với cấu trúc và cách xử lý trong việc truyền tải video thích ứng qua HTTP
2.1 Các thuật toán ABR cơ bản
Thuật toán bitrate thích ứng (ABR) là một phương pháp truyền video qua HTTP trong đó nội dung nguồn được mã hóa ở nhiều bitrate Mỗi luồng bitrate khác nhau được phân đoạn thành các phần nhỏ nhiều giây Kích thước phân đoạn có thể thay đổi tùy thuộc vào việc triển khai cụ thể, nhưng chúng thường từ hai (2) đến mười (10) giây Một thuật toán bitrate thích ứng (ABR) trong máy khách thực hiện chức năng chính là quyết định tải các phân đoạn bitrate nào, dựa trên trạng thái hiện tại của mạng Một số loại thuật toán ABR đang được sử dụng: thuật toán dựa trên thông lượng sử dụng, thông lượng đạt được trong các lần tải xuống trước đó để ra quyết định, các thuật toán dựa trên bộ đệm chỉ sử dụng bộ đệm hiện tại của máy khách
2.1.1 Dựa trên bộ đệm
Huang et al [17] kiểm tra khả năng tồn tại của phương pháp này thông qua một loạt thử nghiệm trên hàng triệu người dùng thực trong một dịch vụ thương mại Huang et al bắt đầu với một thiết kế đơn giản là chọn trực tiếp tốc
độ video dựa trên dung lượng bộ đệm hiện tại Làm rõ hơn việc trên, cho thấy rằng ước tính công suất là không cần thiết ở trạng thái ổn định; tuy nhiên, sử dụng ước tính dung lượng đơn giản (dựa trên thông lượng trước đây) là quan trọng trong giai đoạn khởi động, khi bản thân bộ kích hoạt đang phát triển từ chỗ trống Phương pháp này cho phép giảm 10 - 20% tỷ lệ người phản đối so với thuật toán ABR mặc định khi đó của Netflix, đồng thời cung cấp tốc độ video trung bình tương tự và tốc độ video cao hơn ở trạng thái ổn định
Thuật toán này cố gắng chọn bit sao cho chiếm chỗ bộ đệm luôn được duy trì trên 5 giây Bitrate khả dụng cao nhất được chọn nếu có 15 giây bộ đệm
Trang 2315
2.1.2 Dựa trên tỉ lệ
Băng thông trải qua trong quá trình tải xuống đoạn cuối được ước tính là thông lượng hiện tại Bitrate cao nhất được hỗ trợ bởi thông lượng này được chọn
2.1.3 Festive
Festive [18] là một thuật toán dựa trên tỷ lệ phức tạp hơn, trong đó dự đoán thông lượng được thực hiện bằng cách sử dụng giá trị trung bình hài hòa của các giá trị thông lượng quan sát được trong 5 lần tải xuống gần nhất Bitrate cao nhất dưới mức ước tính thông lượng này được chọn
2.1.6 Pensieve
Trình phát video phía máy khách sử dụng thuật toán thích ứng bitrate để phục vụ các yêu cầu QoE ngày càng tăng của người dùng Các thuật toán ABR phải cân bằng nhiều yếu tố QoE, chẳng hạn như tối đa hóa bitrate cho video và giảm thiểu thời gian phát lại Bất chấp sự phong phú của các thuật toán ABR gần đây đề xuất, các đề án tân tiến bị hai thách thức thực hiện: (1) thông lượng dự đoán là khó khăn và tỷ lệ dự đoán không chính xác có thể dẫn đến giảm hiệu năng; (2) các thuật toán hiện có sử dụng phương pháp phỏng đoán cố định đã được tinh chỉnh theo các giả định nghiêm ngặt về môi trường triển khai, như điều chỉnh ngăn cản việc khái quát hóa qua các điều kiện mạng và các mục tiêu QoE
Pensieve [7], một hệ thống tạo ra các thuật toán ABR hoàn toàn bằng cách sử dụng Học tăng cường (RL) Pensieve sử dụng RL để huấn luyện một mô
Trang 242.2 HotDASH
2.2.1 Tổng quan về HotDASH
HotDASH bao gồm hai thành phần chính (như trong Hình 2.1): (1) hotdash.js , đây là phiên bản hỗ trợ tìm nạp trước của trình phát DASH mã nguồn mở dash.js [1] và (2) Cơ chế quyết định HotDASH, hoạt động như máy chủ ABR Sau khi quá trình tải xuống đoạn video hoàn tất, hotdash.js chuẩn bị một bộ tham số (ví dụ: bitrate cuối cùng, thông lượng, bộ đệm bị chiếm, hotspot tiếp theo và kích thước đoạn thường, v.v.), kết hợp với nhau để tạo thành thông tin trạng thái phát lại Thông tin này sau đó được gửi đến Cơ chế quyết định HotDASH của máy chủ ABR bên ngoài, dưới dạng yêu cầu HTTP Cơ chế quyết định đáp ứng với hai đầu ra, nghĩa là quyết định tìm nạp trước (có/ không) và bitrate tối ưu cho đoạn tiếp theo, hotdash.js bắt đầu tải xuống đoạn tương ứng Trong phần sau, chúng ta đi sâu hơn vào thiết kế của Cơ chế quyết định HotDASH
Hình 2.1: HotDASH tổng quan
Trang 2517
2.2.2 Cơ chế quyết định HotDASH
Trong phần này, bài báo mô tả các cân nhắc thiết kế ảnh hưởng đến thiết
kế của Cơ chế quyết định HotDASH và mô hình học tăng cường được sử dụng
để cho phép các quyết định tìm nạp trước và bit tối ưu (Hình 2.2)[ 42] Cơ chế quyết định được giao các trách nhiệm sau trong việc tải xuống: (i) quyết định có nên tìm nạp trước phần hotspot tiếp theo hay không, (ii) quyết định bitrate của phần hotspot tiếp theo nếu quyết định tìm nạp trước là có và (iii) quyết định bitrate của đoạn thường tiếp theo nếu quyết định tìm nạp trước là không
2.2.3 Quá trình xây dựng HotDash
Quyết định tìm nạp trước
Quyết định liên quan đến tìm nạp trước là không dễ dàng, vì tìm nạp trước bừa bãi có thể dẫn đến thời gian tải lại cao bất thường Một tìm nạp trước sai lệch có thể làm cho trình phát phải chờ hai đoạn - các đoạn tìm nạp trước và đoạn tiếp theo - trước khi phát lại Do đó, nếu việc tìm nạp trước xảy ra khi băng thông thấp, các đoạn hotspot cuối cùng sẽ nhận được bitrate thấp hơn, điều này trái với mục đích của hệ thống HotDASH Bitrate tại đó có thể tìm nạp trước trong trường hợp hiện tại cũng rất quan trọng (nếu bit thấp, thì việc tìm nạp trước
sẽ không mang lại lợi ích bổ sung nào) Tóm lại, việc ra quyết định tại một thời điểm cụ thể phụ thuộc vào các yếu tố sau: (1) môi trường hiện tại mà trình phát đang hoạt động, bao gồm các điều kiện băng thông và bộ đệm, (2) kiến thức chi tiết về các đoạn video sắp tới (về kích thước và vị trí của đoạn trong video), đối với cả hotspot và đoạn thường và (3) bitrate sẽ xảy ra việc tìm nạp trước (nếu xảy ra) và bitrate mà đoạn thường tiếp theo sẽ được tải xuống (nếu tìm nạp trước bây giờ được coi là một lựa chọn kém)
Do đó, với mục tiêu cho phép các quyết định tìm nạp cẩn thận, bài báo xác định các trạng thái sau nắm bắt tất cả thông tin cần thiết để tạo ra quyết định tìm nạp tối ưu:
1) Môi trường trình phát (giả sử S1), trong đó thể hiện các thông tin liên quan đến băng thông và điều kiện bộ đệm của trình phát máy khách hiện có;
Trang 26Các thảo luận ở trên dẫn đến một quan sát thú vị: không đủ để tạo ra các quyết định tìm nạp trước và quyết định bitrate cho việc tải về cùng một lúc kể từ khi quyết định tìm nạp trước là có, việc này phụ thuộc vào giả thuyết quyết định bitrate (cho một hotspot nếu tìm nạp trước đã diễn ra, và cho một đoạn thường, nếu không) Sự phụ thuộc này dẫn đến một thiết kế xếp tầng cho Cơ chế quyết định HotDASH, trong đó bitrate giả định được tạo trước bằng mô hình lựa chọn bitrate và được đưa vào như một phần của đầu vào cho mô hình quyết định tìm nạp trước
Hình 2.2: Cơ chế quyết định HotDASH [42]
Trang 27Bây giờ tất cả bốn yêu cầu của bộ trạng thái đã được tạo ra, sự kết hợp của những hành động này là đầu vào của Mô hình quyết định tìm nạp trước (các thông số chính xác sử dụng đã được tóm tắt trong Bảng 2.1) Đầu ra là một quyết định tìm nạp trước nhị phân (có / không); nếu không được chọn, thì bitrate trước được chọn và nếu có được chọn, thì bitrate sau được chọn Quyết định tìm nạp trước và bitrate tương ứng, cùng tạo thành đầu ra của Cơ chế quyết định HotDASH và được gửi lại cho ABR Controller trong hotdash.js, khởi tạo quá trình tải xuống tương ứng, khi này đã hoàn thành vòng thực thi
Bảng 2.1 - Trạng thái các tham số của Cơ chế quyết định HotDASH
(S2)
⃗⃗⃗ m kích thước có sẵn cho đoạn thường tiếp theo
Số đoạn còn lại trong video Trạng thái đoạn
Hotspot (S3) Tổng dung lượng bộ đệm (bao gồm tìm nạp trước)
⃗⃗⃗⃗ m kích thước có sẵn cho đoạn hotspot tiếp theo
Trang 2820
Số đoạn hotspot còn lại trong video
Số đoạn cho đến khi phát lại đoạn hotspot tiếp theo
⃗⃗⃗ Khoảng cách (tính theo đoạn) từ mỗi đoạn hotspot,
| ⃗⃗⃗ | Bit của đoạn hotspot được tải xuống lần cuối Quyết định bit (S4)
Bitrate được trả về nếu đoạn tiếp theo là thường Bitrate được trả về nếu đoạn tiếp theo là hotspot
Thuật toán RL hoạt động trong môi trường E, nhận đầu vào là trạng thái
S, thực hiện hành động A và nhận phần thưởng R tương ứng với hành động của
nó Khi thuật toán lặp lại trên một lượng lớn các đoạn thì trạng thái và phần thưởng sẽ nhận được cho tất cả các hành động mà nó thực hiện, nó sẽ học được hành động tối ưu nhất cho một trạng thái cụ thể, sao cho phần thưởng được tối đa hóa Trong trường hợp mô hình chọn bitrate, trình phát video là môi trường E, S1 + S2 và S1 + S3 tạo thành trạng thái đầu vào S trong hai lần thực hiện khác nhau,
độ đo QoE được sử dụng để tối ưu hóa mô hình là phần thưởng R và quyết định bitrate tương ứng là hành động A Trong Cơ chế quyết định HotDASH, môi trường E vẫn giữ nguyên, S1 đến S4 kết hợp để tạo thành trạng thái đầu vào S,
độ đo QoE được thiết kế đặc biệt để huấn luyện là phần thưởng R và quyết định tìm nạp trước nhị phân là hành động A
Học tăng cường cho các quyết định tối ưu
Các thông tin thảo luận ở trên về thiết kế xếp tầng cho HotDASH đã đưa đến hai mô hình quyết định khác nhau, mô hình lựa chọn bitrate và mô hình quyết định tìm nạp trước Do các tham số đầu vào có sự thay đổi liên tục trong quyết định tìm nạp trước và lựa chọn bitrate, bài báo nhận ra rằng việc đưa ra một hàm tối ưu hóa mà bao gồm tất cả những yếu tố này vào xem xét là rất khó khăn Hơn nữa, rất khó để dự đoán trước về băng thông khi kết nối với mạng WiFi ngoài tự nhiên, dẫn đến việc phải có một quy tắc điều khiển cố định tối
ưu Do đó, bài báo dựa vào khả năng của thuật toán học tăng cường, để trải
Trang 292.2.4 Phương pháp RL
Trong mục này, bài báo mô tả phương pháp được áp dụng để huấn luyện từng mô hình học tăng cường: mô hình lựa chọn bitrate và mô hình quyết định tìm nạp trước
Cơ chế huấn luyện :
Trong giai đoạn huấn luyện, tác nhân RL HotDASH khám phá môi trường truyền phát video E Trong một trường hợp thực tế, việc huấn luyện diễn
ra bằng cách thực thi việc tải lại một video thực Tuy nhiên, việc triển khai như vậy đòi hỏi rằng đối với mỗi điểm dữ liệu huấn luyện, tác nhân sẽ đợi cho đến khi một đoạn video được tải xuống nội dung từ máy chủ qua Internet sau đó mới chuyển sang điểm dữ liệu tiếp theo Điều này sẽ dẫn đến lãng phí thời gian huấn luyện không cần thiết
Để khắc phục vấn đề này, bài báo triển khai môi trường mô phỏng việc phát lại để huấn luyện mô hình RL Các mô phỏng thực hiện việc tái tạo một bản truyền phát video trực tuyến, bằng cách duy trì một bộ đệm, tương tự như bộ đệm phát của video khách Trong ngữ cảnh này, bài báo xác định hai tham số bộ đệm: (1) Tổng bộ đệm, duy trì tổng công suất của bộ đệm máy khách (bao gồm