Không chỉ vậy, với sự phát triển nhanh chóng và mạnh mẽ của Trí tuệ Nhân tạo AT đã làm cho quá trình kiểm thử trở nên khó khăn hơn khi nó có thể được sử dụng để thực hiện huấn luyện máy
Trang 1KHOA LUAN TOT NGHIEP
TU DONG HOA QUA TRINH HAU KHAI THAC SU
DUNG HOC TANG CUGNG TRONG DANH GIA
BAO MAT HE THONG MANG
AUTOMATING THE PHASE OF POST-EXPLOITATION BY REINFORCEMENT LEARNING IN SECURITY ASSESSMENT
OF NETWORK SYSTEMS
KY SU NGANH AN TOAN THONG TIN
PHAN THANH TRUNG - 19520321
VAN DINH QUOC - 19520240
GIANG VIEN HUGNG DAN:
ThS Dé Thi Thu Hién
TP.H6 Chi Minh - 2023
Trang 2LỜI CẢM ƠN
Trong quá trình thực hiện nghiên cứu và hoàn thành đồ án chuyên ngành,
nhóm đã nhận được sự định hướng, giúp đỡ, các ý kiến đóng góp quý báu và
những lời động viên của các giáo viên hướng dẫn và giáo viên bộ môn Nhóm
xin bày tỏ lời cảm ơn tới cô Đỗ Thị Thu Hiền đã tận tình hướng dẫn và giúp đỡ
chúng em trong quá trình nghiên cứu.
Nhóm xin gửi lời cảm ơn đến gia đình và những người bạn thân thiết đã đã
luôn đồng hành, động viên và đóng góp ý kiến cho nhóm trong quá trình thực
hiện nghiên cứu khóa luận.
Nhóm cũng chân thành cảm ơn các quý thầy cô trường Đại học Công nghệ
Thông tin - DHQG TP.HCM, đặc biệt là các thầy cô khoa Mạng máy tính và
Truyền thông, các thầy cô thuộc bộ môn An toàn Thông tin đã giúp đỡ nhóm
PHAN THÀNH TRUNG VĂN ĐÌNH QUỐC
Trang 3CHƯƠNG 1 TONG QUAN 3
11 Giới thiệu van dé 2.0 Quy 3
1.2 Giới thiệu những nghiên cứu liên quan - 4
1.2.1 Công trình nghiên cứu Automating post-exploitation with
deep reinforcement learning [9]} 4
1.2.2 Công trình nghiên cứu Automating Privilege Escalation
with Deep Reinforcement Learning[8] 6
1.3 Nhận định và đánh giá các nghiên cứu liên quan 7
13.1 Uudiem so 2.0.0.0 202 7
1.3.2 Hanché 00000000.000000 000004 7
1.4 Định hướng phát triển của nhóm từ các nghiên cứu liên quan 8
1.5 Mục tiêu, đối tượng, và phạm vi nghiên cứu - 9
15.1 Mục tiêu nghiên ctu 0040 9
1.5.2 Đối tượng nghiên cứu 101.5.3 Cau trúc khóa luận tốt nghiệp 10
CHƯƠNG 2 CƠ SỞ LY THUYET 11
2.1 Hậu khai thác (Post Exploitation) 11
2.2 Trí tuệ nhân tạo (Artificial Intelligence- AI) 12
Trang 42.2.1 Tổng quan về Artificial Intelligenee 12
2.2.2 Tổng quan về machine learning 13
2.3 Học sâu (Deep Learning) .0.0000 14 2.3.1 Tổng quan về Deep Learning 14
2.3.2 Deep Learning hoạt động như thế nào? 14
2.4 Học tăng cường(Reinforcement Learning) 15
2.4.1 Tổng quan về Reinforcement Learning 15
2.4.2 Các thuật ngữ thong dung trong Reinforcement Learning 16 2.4.3 Cách thức hoạt động cia Reinforcement Learning 17
2.4.4 Quy trình quyết định Markov (Markov Decision Process -MDP) peer - - - @œ -. .- 20
2.4.5 Q-Learnff⁄⁄Z2 ge ` ” Àè 23
2.5 Deep Reinforcement Learning 23
2.5.1 Tong quan Deep Reinforcement Learning 23
2.5.2 Mô hình Deep Reinforcement Learning 24
2.5.3 Lợi it của Deep Reinforcement Learning 25
2.6 Các thuật toán Deep Reinforcement Learning 26
2.6.1 Value-based và Poliey-based 26
2.6.2 Actor và Critic 2 2 27
2.6.3 Lý thuyết về thuật toán A2C 29
2.6.4 Lý thuyết về thuật toán PPO (Proximal Policy Optimiza-tion) 2 31 2.6.5 So sánh giữa hai thuật toán A2C vaPPO 42
CHƯƠNG 3 MÔ HÌNH THỰC NGHIỆM 45 3.1 Ý tưởng chung 0.000 ee 45 3.2 Xác định các thuộc tinh của state 2 en 46 3.2.1 Các thuộc tính trong state 2 2.2220 22200 46
3.2.2 Cách xác định các thuộc tính của state và biểu thị giá trị
cho ag@nE Qua AT
Trang 53.3 Dinh nghĩa action của agenE ch he 48 3.4 Định nghĩa reward chaagent 0.0 49
CHƯƠNG 4 THÍ NGHIỆM VÀ ĐÁNH GIÁ 50
4.1 Thiết lập thí nghiệm Ặ 50
4.1.1 Tổng quan môi trường thinghiém - 90
4.1.2 Ý tưởng cho việc tăng tốc quá trình huấn luyện 51
4.13 Chi tiết quá trình huấn luyện 53
4.2 Kết quả quá trình thực nghiệm - 57
4.2.1 Tổng quan quá trình huấn luyện 57
4.2.2 Thời gian huấn luyện của A2C va PPO 59
4.2.3 Kết quả thử nghiệm trên các môi trường kiểm tra 60
4.2.4 Kết luận việc so sánh giữa hai thuật toán A2C va PPO từ kết quả của quá trình thực nghiệm 67
CHƯƠNG 5 KET LUẬN 69 51 Kết luận 2 v1 và xxx vv 69 5.11 Những mặt làm được 70
5.1.2 Những mặt chưa làm được 70
9.1.3 Khó khăn và thách thức 71
5.1.4 Định hướng đề tài 000 71
TAI LIEU THAM KHAO 73
Trang 6DANH MỤC CÁC KÝ HIỆU, CÁC CHU VIET TAT
) Không gian các trạng thái mà tac tử
St Trang thái môi trường tai lượt t
Q Hàm giá trị cho trạng thái - hành động
6 Trọng số cho mạng nơ-ron
L(0) Ham mat mát
PPO_ Proximal Policy Optimization A2C Advantage Actor Critic
Trang 7Hình 1.1
Hình 1.2
Hình 1.3
Hình 1.4
Hình 2.1
Hình 2.2
Hình 2.3
Hình 2.4
Hình 2.5
Hình 2.6
Hình 2.7
Hình 2.8
Hình 2.9
Hình 2.10
Hình 2.11
Hình 2.12
Hình 3.1
Hình 4.1
Hình 4.2
Hình 4.3
vì
DANH MỤC CÁC HINH VE
Mo hình huấn luyện của của công trình [9} 4
Mô hình thực nghiệm công trình [9]_ 5
Thống kê kết quả huấn luyện của công trình [9] 5
Thống kê kết quả huấn luyện của công trình [8] ĩ Post Exploittable (hậu khai thác) diễn ra ở giai đoạn6 11
Mô ta cách thức hoạt động của deep learning 15
Mô tả cách thức hoạt động của Reinforcement Learning 18
Mô tả cách thức tìm đường cla robot 19
Mô tả xác xuất tác tử chọn ngẫu nhiên 21
Mô hình Deep Reinforcement Learning 25
Công thức update chính sách 28
Công thức update thông số trong Critic network 28
Hình anh mô tả ý tưởng của phương pháp Actor-Citric 29
Biểu đồ hiển thị một điểm (tại một thời gian) của hàm U€?!” 38 Biểu đồ hiển thị mục tiêu thay thế cập nhập chính sách 39
So sánh hai thuật toán A2ZC và PPO 43
Mô tả tổng quan về mô hình thực nghiệm 46
Biểu đồ quá trình huấn luyện A2C và PPO với 2000 episode 58
Biểu đồ quá trình huấn luyện A2C và PPO với 4000 episode 58
Biểu đồ quá trình huấn luyện A2C và PPO với 8000 episode 59
Trang 8DANH MUC CAC BANG BIEU
Bảng 1.1 Hướng phat triển của nhóm so với các nghiên cứu liên quan 9
Bang 3.1 Bảng danh sách các module 48
Bảng 4.1 Bảng môi trường huấn luyện 53
Bảng 4.2 Bảng môi trường kiểm tra đánh giá 54
Bang 4.3 Bang mức độ reward thử nghiệm 57
Bang 4.4 Thời gian huấn luyện của hai thuật toán A2C và PPO 59
Bảng 4.5 Bảng kết quả của thuật toán A2C với 2000 episode 62
Bảng 4.6 Bảng kết quả của thuật toán PPO với 2000 episode 62
Bảng 4.7 Bang kết quả của thuật toán A2C với 4000 episode 64
Bang 4.8 Bảng kết quả của thuật toán PPO với 4000 episode 64
Bảng 4.9 Bảng kết quả của thuật toán A2C với 8000 episode 65
Bảng 4.10 Bang kết quả của thuật toán PPO với 8000 episode 65
Bảng 4.11 Thuật toán A2C, PPO và Random Agent thực hiện 4000 thao 2 66
Trang 9TÓM TẮT KHÓA LUẬN
Dự đoán các cuộc tấn công mạng là một quá trình khó khăn và thách thức
lớn trong lĩnh vực Cybersecurity Việc kiểm tra xâm nhập (pentest) đã lâu trở
thành một cách để ngăn chặn việc xâm nhập bảo mật bằng cách mô phỏng các
hacker nguy hiểm để tiếp cận các lỗ hồng và điểm yếu có thể xảy ra Tuy nhiên,
các kiến trúc hạ tầng của hệ thống ngày càng phức tạp và không ngừng mở rộngcộng với việc các kỹ thuật tấn công của tin tặt đang ngày càng trở nên tỉnh vi
và đa dạng hơn dẫn đến việc pentest thủ công dan trở nên khó khăn hon trong
việc bắt kịp với tốc độ tấn công và phát triển hệ thống cũng như kịp thời phát
hiện và khắc phục các rủi ro trước khả năng bị nhắm đến Không chỉ vậy, với sự
phát triển nhanh chóng và mạnh mẽ của Trí tuệ Nhân tạo (AT) đã làm cho quá trình kiểm thử trở nên khó khăn hơn khi nó có thể được sử dụng để thực hiện huấn luyện máy móc có thể thực hiện tấn công và khai thác các hệ thống này một cách tự động và có thể tự vạch ra các chiến lược tấn công tương đối chính
xác mà không cần đòi hỏi quá nhiều công sức cũng như trình độ hiểu biết và
kỹ năng của ké tấn công Vì vậy, việc áp dung học máy vào công việc pentest làmột hướng rất được quan quan tâm với nhiều nghiên cứu như [12], [2], [4], [10],
[8], [9], [3], [6] bởi khả năng ưu việt có thể làm việc nhanh chóng và liên tục của các máy học có thể kịp thời hỗ trợ trong việc phát hiện các rủi ro cũng như tiết
kiệm được rất nhiều công sức và thời gian cho vấn đề pentest hệ thống mạng
Có nhiều công đoạn khác nhau trong quá trình pentest hệ thống mạng, trong đógiai đoạn pentest quá trình hậu khai thác là một giai đoạn rất cần được quantâm bởi nó giúp đánh giá được mức độ an toàn của hệ thống mạng bên trong
nếu chang may bị kẻ tấn công xâm thành công vào một số host trong mang
hoặc thậm chí là rủi ro bắt nguồn từ chính bên trong nội bộ Và như đã đề cập
ở trên, việc ứng dụng Trí tuệ nhân để huấn luyện máy móc nhằm tự động hoá
Trang 10quá trình hậu khai thác là hoàn toàn có thể và một hướng đi hỗ trợ đắc lực
cho công cuộc đảm bảo an toàn cho các hệ thống mạng Vì thế trong khóa luậnnày chúng tôi đề xuất sử dụng phương pháp Deep Reinforcement Learning là
phân nhánh trong lịch vực Trí tuệ nhân tạo với sự kết của Deep Learning và
Reinforcement Learning nhằm đánh giá mức độ bảo mật của hệ thống mạng ởmức độ leo thang đặc quyền (privilege escalation) và tấn công lan rộng (lateralmovement) trên hệ thống mạng
Trang 11CHƯƠNG 1 TONG QUAN
Chương này giới thiệu về van đề và các nghiên cứu liên quan Đồng thời,
trong chương này chúng tôi cũng trình bày phạm vi và cấu trúc của khóa luận.
1.1 Giới thiệu vẫn đề
Hiện nay, các phương pháp truyền thống để đánh giá bảo mật mạng chủ yếu dựa trên việc phân tích thủ công, kiểm tra các lỗ hổng và mô phỏng các kịch
bản tấn công tiềm năng của quá trình hậu khai thác Tuy nhiên, các phương
pháp này thường tốn nhiều thời gian và nguồn lực, không thể đáp ứng được tốc
độ và quy mô ngày càng lớn của các mạng hiện đại Mặc dù đã có một số công
cụ hỗ trợ đắc lực cho quá trình hậu khai thác với khả năng thực hiện tự động
các thao tác tấn công như Metasploit, PowerShell Empire, PowerSploit, Cobalt
Strike nhưng chúng vẫn đòi hỏi người sử dụng phải có những sự hiểu biết nhất
định để vạch ra các chiến lược tấn công và thao tác trên các công cụ để chúng
thực hiện công việc nên vẫn đòi hỏi về mặt thời gian và nhân lực Vì vậy, việctăng cường khả năng tự động hoá cho quá trình này là rất cần thiết Song songvới điều đó, việc áp dụng Trí tuệ nhân tạo vào tự động hoá đang là một hướng
đi rất được chú trọng nghiên cứu và phát triển Theo khảo sát của chúng tôi,
việc áp dung Deep Reinforcement Learning (một nhánh của Trí tuệ nhân tạo)đang được quan tâm với một số công trình nghiên cứu và đã đạt được nhữngkết quả tích cực đối với tự động hoá quá trình hậu khai thác
Trang 121.2 Giới thiệu những nghiên cứu liên quan
Trong quá trình khảo sát, chúng tôi đã tìm hiểu được một số công trình
nghiên cứu như sau:
1.2.1 Công trinh nghiên cứu Automating post-exploitation with deep
reinforcement learning [9]
Công trình nghiên cứu [9] sử dung các thuật toán Deep Reinforcement
learn-ing gồm A2C, Q-Learnlearn-ing, and SARSA kết hợp với công cụ PowerShell Empire
nhằm mục đích tự động hoá việc tấn công lan rộng (lateral movement) trênmột Windows domain network với mục tiêu lan rộng rộng đến khi chiếm được
Hình 1.1: Mô hành huấn luyện của của công trình [9]
Kết quả thu lại được của công trình được đánh giá theo tiêu chí số lượng thao
tác thực hiện (step) để đạt được mục tiêu của từng thuật toán kể trên trong một
khoảng thời gian giới hạn là 1 tiếng trên một Windows domain network khác và
có so sánh với hai phương pháp khác là Random (chọn ngẫu nhiên các thao) vàBrute Force (chạy tất cả các thao tác có thé áp dụng được).
Trang 13Windows Domain Network
Trang 14Từ kết quả thống kê chúng ta thấy được rằng mô hình huấn luyện có thể
hoàn thành mục tiệu chỉ với 15 step hay 15 thao tác trong khoảng thời gian là
11 phút 35 giây Trong khi phương pháp Random và Brute Eorce thực hiên được
91 và 80 thao tác trong khoảng thời gian giới 1 tiếng nhưng vẫn chưa hoàn được
mục tiêu.
1.2.2 Công trinh nghiên cứu Automating Privilege Escalation with
Deep Reinforcement Learning/8]
Công trình nghiên cứu [8] sử dung các thuật toán A2C kết hợp với công cụPowerShell Empire với mục tiêu leo thang đặc quyền (privilege escalation) trênmột máy chạy hệ điều hành Windows 7 Kết quả thu lại được đánh giá theo tiêu
chí số lượng thao tác thực hiện đến khi leo thang đặc quyền thành công trên
một máy Windows 7 với số lượng các lỗ hổng khác nhau Các tác giả thực hiện
thống kê với các agent đươc liệt kê như sau:
e Oracle agent: là agent có toàn bộ hiểu biết về môi trường bao gồm các lỗ
hổng tồn tại trên đó.
e Expert agent (optimal policy): là agent với policy được chuyên gia định
nghĩa tức là sé định trước thao tác sẽ thực hiện có được các thông tin từ
môi trường.
e Deterministic RL: là agent sẽ lựa chon các thao tác có tỉ lệ thành công cao
nhất tức là có policy đã được định nghĩa sẵn
e Stochastic RL: là agent sẽ lựa chọn các hành động dựa trên kết quả trả
về từ policy network và cũng là mô hình được huấn luyện dựa trên Deep
Reinforcement Learning và sẽ được thống bằng trung bình các thao tác thực
hiện qua nhiều lần test
e Random agent: là agent sẽ chọn các hành động một cách ngẫu nhiên.
Trang 15Vulnerability Oracle Expert Deterministic Stochastic Random
(full knowledge) (+ optimal policy) RL RL
Hình 1.4: Thống kê kết qua huấn luyện của công trình [8]
Kết quả từ bảng thống kê cho thấy Stochastic RL tức mô hình được huấn luyện
có các thông số trung bình khá sát với các mô hình được định sẵn và vượt trội
hoàn toàn so với Random agent.
1.3 Nhận định và đánh giá các nghiên cứu liên quan
1.3.1 Ưu điểm,
Từ các công trình nghiên cứu kể trên, chúng tôi nhận thấy rằng các công
trình nghiên cứu đã chỉ ra được tiềm năng của Deep Reinforcement Learning
khi được ứng dụng vào tự động quá trình hậu khai thác khi có thể tự động thực
hiện thao tác tan công lan rộng (lateral movement) trong mang và leo thang đặcquyền (privilege escalation) trên một máy
1.3.2 Hạn chế
Điểm hạn chế từ hai công trình nghiên cứu [9] và [8] chỉ tập trung vào môi
trường platform là Windows trong khi Linux cũng là một platform được sử dụng
rất phổ biến trong các hệ thống mạng hiện nay Thêm vào đó, PowerShell Empire
Trang 16- công cụ được sử dụng để huấn luyện đã ngừng được phát triển và hỗ trợ từ
năm 2021 nên sẽ gặp khó khăn cho việc phát triển và mở rộng về sau Ngoài ra,việc các nghiên cứu còn đang tập trung vào các khía cạnh đơn lẻ của hậu khai
thác và chưa có sự liên kết với nhau nên tính linh động sẽ không cao
1.4 Định hướng phát triển của nhóm từ các nghiên cứu
liên quan
Từ những ưu điểm và hạn chế của của các nghiên cứu liên quan kể trên, chúng tôi đã định hướng để phát triển thành đề tài nghiên Tự động hóa quá trình
hậu khai thác sử dụng học tăng cường trong đánh giá bảo mật hệ
thống mạng với mục tiêu liên kết được hai quá trình leo thang đặc quyền và
tấn công lan rộng đồng thời có thể thực hiện trên cả hai platform là Windows và
Linux Đồng thời công cụ được sử dụng sẽ là Metasploit thay thế cho PowerShell
Empire bởi Metasploit hiện tại vẫn đang được cộng đồng tích cực đóng góp và
phát triển cộng với việc các module của Metasploit có thể áp dụng đa dang cho
nhiều platform chứ không chỉ tập trung vào nền tảng Windows như PowerShell
Empire Ngoài ra, các nghiên cứu liên quan đang tách từng công việc (leo thang
đặc quyện và tấn công lan rộng) đề train thành những mô hình riêng biệt chỉ
thực hiện riêng biệt một công việc nên nhóm cũng sẽ tìm hiểu và phát triển khả
năng liên kết các công việc này thành một chuỗi và được thực hiện bởi một môhình duy nhất
Trang 17Nghiên cttu[9] | Nghiên cttu[8] | Our
Mục tiêu Privilege escalation X X
Lateral movement X X
Mô hình A2C xX X X
Q-learning X SARSA X
Bang 1.1: Hướng phát triển của nhóm so uới các nghiên cứu liên quan
1.5 Mục tiêu, đối tượng, và phạm vi nghiên cứu
1.5.1 Mục tiêu nghiên cứu
Ứng dung Deep Reinforcement Learning vào tự động hoá hậu khai thác để
đánh giá bảo mật mạng với mục tiêu huấn luyện mô hình có thể thực hiện leo
thang đặc quyền trên máy chiếm được và tấn công lan ra các máy cận kề trongmạng trên môi trường bao gồm các máy chạy cả Windows và Linux với hai thuật
toán:
e A2C (Advantage Actor-Critic) - là thuật toán đạt hiệu quả cao nhất ở
nghiên cứu [9] và được ứng dụng vào nghiên cứu [8] Ngoài ra thuật toáncũng được sử dung trong một số nghiên cứu khác về penstest như [7]
e PPO (Proximal Policy Optimization) được giới thiệu vào năm 2017 trong
nghiên cứu [11] và được sử dụng trong nhiều lĩnh vực nghiên cứu như [1],[5] và có cả pentest trong nghiên cứu [7]
Trang 181.5.2 Đối tượng nghiên cứu
Đối tượng nghiên cứu:
e Hậu khai thác (Post exploitation).
e Mô hình học tăng cường.
e Công cụ Metasploit.
e Các thuật toán học tăng cường trong hậu khai khác A2C (Advantage
Actor-Critic) và PPO (Proximal Policy Optimization).
1.5.3 Cấu trúc khóa luận tốt nghiệp
Chúng tôi xin trình bày nội dung của đồ án theo cấu trúc như sau:
e Chương 1: Giới thiệu tổng quan về đề tài của đồ án và những nghiên cứu
liên quan.
e Chương 2: Trình bày cơ sở lý thuyết và kiến thức nền tảng liên quan đến
đề tài
e Chương 3: Trình bày mô hình thực nghiệm
e Chương 4: Trình bày thực nghiệm và đánh giá.
e Chương 5: Kết luận và hướng phát triển của đề tài.
Trang 19CHƯƠNG 2 CƠ SỞ LÝ THUYET
Chương này trình bày cơ sở lý thuyết của nghiên cứu: Bao gồm hậu khai thác,
mô hình học tăng cường, các thuật toán học tăng cường trong hậu khai thác( PPO, A2C)
2.1 Hậu khai thác (Post Exploitation)
Hậu khai thác (post-exploitation) là giai đoạn trong quá trình tấn công hệthống mạng hoặc hệ thống máy tính, sau khi kẻ tấn công đã thành công trong
việc khai thác một lỗ hổng hay tìm được một cách để xâm nhập vào hệ thống.
Trong giai đoạn này, mục tiêu của kẻ tấn công là duy trì và mở rộng quyền truycập vào hệ thống đã bị xâm nhập, thu thập thông tin nhạy cảm, tiếp tục khai
thác các lỗ hồng khác hoặc thực hiện các hoạt động độc hại khác trên hệ thống.
Hình 2.1: Post Exploittable (hậu khai thác) diễn ra ở giai đoạn 6
Trong quá trình hậu khai thác, kẻ tấn công thường sử dụng các công cụ và
phương pháp để truy cập và kiểm soát hệ thống mà không bị phát hiện Điều
này bao gồm việc tìm kiếm các thông tin quan trọng như tên người dùng, mật
khẩu, các tệp tin quan trọng, truy cập vào các máy chủ khác trong mạng nội
bộ, tăng quyền hạn truy cập, cài đặt backdoor để duy trì quyền truy cập sau
Trang 20này, hoặc thực hiện các cuộc tấn công tiếp theo như tấn công theo chuỗi (lateralmovement), leo thang đặc quyền (privilege escalation), lừa đảo (phishing) nội
bộ và lây lan malware.
Quá trình hậu khai thác là một phần quan trọng trong kiểm thử xâm nhập
(penetration testing) và nghiên cứu bảo mật mạng được diễn ra sau quá trình
quá trình kiểm thử xâm nhập và trước khi viết báo cáo cuối cùng về quá trình kiểm thử Hiểu và tìm hiểu về cách kẻ tấn công hoạt động trong giai đoạn này
giúp các chuyên gia bảo mật và nhà quản lý hệ thống xác định các biện pháp
phòng ngừa và bảo vệ hiệu quả để ngăn chặn và phát hiện sự xâm nhập và sử
dụng lại hệ thống một cách an toàn
Ỏ đây chúng tôi sẽ 4p dụng phương pháp tự động hóa bước hậu khai thác bằng phương pháp học sâu tăng cường (Deep Reinforcement Learning) để tiến hành kiểm tra ảnh hưởng của hệ thống khi bị tin tặc tấn công Từ đó giúp
Pentester dé dang hơn trong việc bảo mật hệ thống
2.2 Trí tuệ nhân tao (Artificial Intelligence - AT)
2.2.1 Tổng quan vé Artificial Intelligence
Trí tuệ nhân tạo là lĩnh vực nghiên cứu va phát triển các máy tính hoặc hệ
thống có khả năng thực hiện các tác vụ thông minh mà trước đây chỉ có con
người mới có thể thực hiện được Mục tiêu của trí tuệ nhân tạo là xây dựng các
hệ thống hoặc chương trình máy tính có khả năng học hỏi, lý luận, phan tích,
nhận biết, và tự động hóa các tác vụ
Các phương pháp và kỹ thuật trong trí tuệ nhân tạo bao gồm học máy(machine learning), mạng nơ-ron (neural networks), xử lý ngôn ngữ tự nhiên (natural language processing), thị giác máy tính (computer vision), học sau (deeplearning), học tăng cường (reinforcement learning), và nhiều lĩnh vực khác Trítuệ nhân tạo có ứng dụng rộng rãi trong nhiều lĩnh vực như công nghiệp, y
tế, giao thông vận tải, tài chính, giải trí và nhiều lĩnh vực khác Trong khóa
Trang 21luận nhóm sẽ trình bày cơ bản khái niệm của học máy và đi sâu vào deep
reinforcement learning (một khái niệm từ sự kết hợp giữa deep learning và deep
reinforcement learning) nhằm hiểu rõ hơn mục tiêu nghiên cứu như đã nêu ở
mục 1.5.1
2.2.2 Tổng quan vé machine learning
Machine learning là một phần trong lĩnh vực trí tuệ nhân tạo, nghiên cứu về
việc phát triển các thuật toán và mô hình để máy tính có khả năng học hỏi từ
dữ liệu mà không cần được lập trình một cách rõ ràng
Trong machine learning, các mô hình và thuật toán được xây dựng để phân
tích và hiểu dữ liệu, từ đó tìm ra các mẫu và quy luật ẩn trong dữ liệu đó Dữ liệu được sử dụng để huấn luyện (training) mô hình, và sau đó mô hình được ấp dung để dự đoán hoặc thực hiện các tác vụ trên dit liệu mới mà nó chưa được
huấn luyện trước đó
Có 3 loại thuật toán học máy thường được xử dụng :
e Supervised Learning: là thuật toán học có giám sát Trong đó mô hình
sẽ được huấn luyện trên những dữ liệu đã được gán nhãn, tức là dữ liệuđầu vào được kèm theo đầu ra mong muốn tương ứng Mô hình học từ các
mẫu dữ liệu này và sau đó có thể dự đoán dau ra cho các dữ liệu mới mà
nó chưa nhìn thấy trước đó
e Unsupervised Learninglà thuật toán học không giám sát Hoạt động
ngược với học có giám sát, trong học không giám sát, dữ liệu đầu vào
không có nhãn Mô hình phải tìm ra cấu trúc, mẫu hoặc nhóm trong dit
liệu một cách độc lập.
e Reinforcement Learning là thuật toán học tăng cường Thuật toán nay
tập trung vào việc huấn luyện các tác nhân agent trong một môi trường cụ
thể nhằm thực hiện các hành động sao cho tác nhân có thể nhận về được phần thưởng lớn nhất có thể và tránh bị phạt.
Trang 222.3 Học sâu (Deep Learning)
2.3.1 Tổng quan vé Deep Learning
Deep Learning như đã trình bay ở trên nó là một lĩnh vực của Tri tuệ nhân
tạo Trong học sâu, các máy tính sẽ được huấn luyện phương pháp học và cải
thiện bản thân nó dựa trên các thuật toán Deep Learning tập trung vào việc
xây dựng và huấn luyện các mạng nơ-ron sâu (deep neural networks) để bắt
chước khả năng tư duy và suy nghĩ của bộ não con người.
Mạng nơ-ron sâu (deep neural networks) là một loại mô hình máy học trong
Trí tuệ nhân tạo Nó được lấy cảm hứng từ cách hoạt động của hệ thống than
kinh của não người và được xây dựng dựa trên các nơ-ron nhân tao (artificialneurons) được kết nối với nhau để hình thành một mạng lưới phức tạp Quá
trình huấn luyện mạng nơ-ron sâu thường được thực hiện thông qua quá trìnhgọi là lan truyền ngược (backpropagation), trong đó mô hình tìm cách điều chỉnh
các trọng số để tối ưu hóa kết quả đầu ra so với kết quả mong đợi Sự tiến bộ
trong phần cứng và khả năng tính toán song song đã cho phép huấn luyện các
mang nơ-ron sâu lớn trên dữ liệu khổng lồ, giúp cải thiện đáng kể hiệu suất của
Deep Learning.
2.3.2 Deep Learning hoạt động như thé nào?
Bằng cách xử dụng mạng nơ-ron, Deep Learning có thể tự học và trích xuất
những đặc trưng (features) thông qua dữ liệu đầu vào của nó
Mạng nơ-ron là mô hình toán học mô phỏng hệ thống thần kinh trong não
người Nó gồm nhiều lớp (hidden layers) của các nơ-ron kết nối với nhau thông
qua trọng số và số lượng layer càng nhiều thì mạng sẽ càng “sâu” Mạng nơ-ron
có khả năng tự điều chỉnh các trọng số này trong quá trình học Trọng số càngcao thi khả năng và hiệu suất của mạng no-ron sẽ càng lớn
Mỗi một lớp mạng sẽ có một ham dùng để kích hoạt Nó thực hiện cho việc
Trang 23"chuẩn hóa" quá trình đầu ra của mang, Các dữ liệu khi đưa vào mạng sẽ phải
thực hiện đi qua các layer rồi gửi về kết quả cho layer cuối Hình 2.2 mô tả cách
thức hoạt động của deep learning :
Input Feature extraction + Classification Output
Hình 2.2: Mô tả cách thức hoạt động cua deep learning
Tóm lại, Deep Learning là một phương pháp mạnh mẽ cho việc xử lý dữ liệu
phức tap và giải quyết các bài toán có tính phức tap cao, Thông qua việc huấn
luyện các mô hình mạng sâu, Deep Learning có thể thay đổi các trọng số sao
cho trọng số cao nhất sẽ là phán đoán tốt nhất
2.4 Học tăng cường(Reinforcement Learning)
2.4.1 Tổng quan vé Reinforcement Learning
Reinforcement learning là một phương pháp học máy trong đó một hệ thống
học tập tương tác với môi trường và nhận phần thưởng (rewards) để tối đa hóa
mục tiêu hoặc hiệu suất Day là một hình thức hoc máy tự động, trong đó hệ
thống tự động tìm hiểu cách đưa ra các hành động phù hợp dựa trên việc thử
và sai và khám phá môi trường.
Trang 242.4.2 Các thuật ngữ thông dung trong Reinforcement Learning
2.4.2.1 Agent
Trong reinforcement learning hệ thống hay còn gọi là tác tử "agent" - là một
đối tượng có thể học tập và đưa ra hành động để giải quyết những vấn đề phức
tạp dựa trên mục tiêu đã được định nghĩa trước đó.
La các hành động của tác tử có thể thực hiện nhằm tương tác với môi trường
Dựa trên trạng thái môi trường mà tác tử sẽ thực hiện các hành động tươngứng Hành động này có thể là di chuyển, tương tác với môi trường, thực hiện
các hành vi cụ thể, vv.
2.4.2.4 State
La trạng thái hiện tại của môi trường mà tác tử quan sát được.
2.4.2.5 Policy
La cách tác tử chọn hành động dựa trên trang thái hiện tai của môi trường.
Mục tiêu của học tăng cường là tìm ra chính sách tối ưu giúp tác tử đạt được
phần thưởng cao nhất trong môi trường đã cho
Trang 252.4.2.6 Reward
La phan thưởng trả về khi tác tử tương tác với môi trường Dùng để đánh
giá mức độ thành công của tác tử khi thực hiện 1 hành động Tác tử cần tối đa
hóa tổng lượng phần thưởng tích lũy trong thời gian dài để đạt được mục tiêu
của nó Tuy thuộc vào hành động của tác tử lên môi trường sẽ nhận được mức
phần thưởng tương ứng hoặc hành động sai có thể sẽ bị phạt.
2.4.2.7 bpisode
Là tổng hợp 1 quá trình diễn ra từ khi tác tử tương tác với môi trường đến
khi kết thúc.
2.4.2.8 Khai thác va khám phá:
Trong học tăng cường, một trong những thách thức quan trọng là tìm cân
bằng giữa khai thác và khám phá Khai thác là khi tác tử dựa vào kinh nghiệm
đã có để ưu tiên lựa chọn các hành động mang lại phần thưởng cao Tác tử xem
xét các hành động đã thử trong quá khứ và chọn hành động tối ưu dựa trên giá
trị của chúng Ngược lại, khám phá là khi tác tử thử các hành động ngẫu nhiên
để khám phá những trang thái mới và tối ưu hóa quyết định trong tương lai.
Tóm lại, để đạt được nhiều phần thưởng, tác tử cần cân nhắc giữa việc khai thác những gì đã biết và khám phá để tìm ra những hành động tốt hơn trong
tương lai Việc tận dụng kinh nghiệm cũng như mở rộng kiến thức mới đều đóng
vai trò quan trọng trong quá trình học tăng cường.
2.4.8 Cách thức hoạt động của Reinforcement Learning
Một môi trường (environment) trong Reinforcement Learning có thể được miêu tả dưới dạng các trạng thái (states), hành động (actions), và sự chuyển đổi(observation) giữa các trạng thái khi nhận được tương tác từ tác nhân Khi tácnhân thực hiện một hành động(action) trong một trạng thái cụ thể, môi trường
Trang 26sẽ thay đổi và trả về cho tác tử thông tin về trạng thái mới và phần thưởng tương ứng Các quy tắc chuyển tiếp sẽ xác định cách môi trường phản ứng với hành động của tác tử và thay đổi trạng thái của nó Tác tử sẽ dựa trên trạng thái mới trên để tiếp tục tương tác với môi trường Hình 2.3 mô tả cách thức
hoạt động của Reinforcement Learning
Reward: feedback that measures the success or failure of the agent's action.
Hinh 2.3: Mô tả cách thúc hoạt động của Reinforcement Learning
2.4.3.1 Ví dụ vé cách thúc hoạt động Reinforcement Learning
Để hiểu rõ hơn về Reinforcement Learning chúng tôi sẽ đưa ra một ví dụ về cách robot tìm đường đi để đến được mục tiêu Hình 2.4 miêu tả cách thức hoạt
động giữa robot đối và môi trường
Trong ví dụ trên, robot (agent) sẽ thực hiện các hành động để đi đến đích
(6 màu xanh), tránh bị phạt khi đi vào 6 mau đỏ và né 6 màu xám được chúng
tôi xem là vật cản không thể đi vào Mục tiêu cuối cùng nhằm huấn luyện robot
có thể phân biệt và chọn được các bước đi chính xác để đến ô màu xanh thông
qua nguyên lý hoạt động của Reinforcement Learning lộ đây robot sẽ thực hiện
tương tác với môi trường (environment) thông qua các hành động (action)bao gồm : trái, phải, lên, xuống Sau mỗi action, environment trả lại cho agentmột trạng thái (State) như ở ví dụ này là vị trí của robot quyết định đi đến
Trang 2719
Trang 28và phần thưởng (Reward) tương ứng với state đó Trong ví dụ trên chúng tôi
định nghĩa rằng robot sẽ được cộng 1 điểm khi đi vào ô màu xanh (như một phần thưởng vì thực hiện đúng mục tiêu), trừ một điểm nếu robot đi vào ô màu
đỏ (phạt) và không thay đổi số điểm khi đi vào các ô màu trắng.Tác tử trong
trò chơi sẽ liên tục thực hiện các hành động và cập nhật trạng thái của nó cho
đến khi nó đi đến một ô màu xanh hoặc màu đỏ, lúc đó trò chơi sẽ kết thúc
Mỗi lần tương tác giữa tác tử và môi trường từ lúc bắt đầu cho đến lúc kết thúc
được gọi là một (episode) Trong mỗi episode, tác tử sẽ cố gắng chọn các hành
động tối ưu để tối đa hóa phần thưởng nhận được sau mỗi lần chơi.
Cách mà tác tử chọn các hành động này được gọi là chính sách (Policy).
Ví dụ về chính sách có thể là "đi ngẫu nhiên", "đi dọc theo rìa" hoặc "hướng
về ô đích" Có nhiều chính sách khác nhau và mục tiêu của Học tăng cường
(Reinforcement Learning) là tìm ra chính sách tốt nhất, tức là chính sách mang
lại phần thưởng cao nhất trong trò chơi
2.4.4 Quy trinh quyét định Markov (Markov Decision Process
-MDP)
Trong hau hết các chủ dé AI, chúng ta thường có các framework về toán học
để giải quyết các van đề Đối với RL, thì framework đó chính là quá trình quyết
định - Markov Decision Process (MDP) Nghe có vẻ phức tạp nhưng nó tạo raframework được xây dựng sẵn để dễ dàng mô hình hóa một vấn đề phức tạp nào đó Một thực thể (Agent) ví dụ như con người sẽ quan sát môi trường và
thực hiện một hành động (Action) nào đó Một phần thưởng hay kết quả của
hành động (Reward) sẽ xảy ra với tần suất có thể là không thường xuyên hoặc
xảy ra thường xuyên trong một khoảng thời gian nào đó Tóm lại MDP là một
framework giúp tác tử có thể đưa ra quyết định từ trạng thái của chúng tại một
thời điểm.
Để sử dung framework này, ta giả định rằng các trạng thái có thuộc tínhMarkov: mỗi trạng thái chỉ phụ thuộc vào trạng thái trước đó thông qua xác
Trang 29suất chuyển đổi giữa hai trạng thái Dù có vẻ hơi phức tạp, thực tế thì rất đơn giản Ban đầu, ta có "xác suất chuyển đổi giữa hai trạng thái" bởi vì trong môi
trường hoàn hảo, nếu ta lặp lại một hành động, ta sẽ nhận được hai kết quả
giống hệt nhau Tuy nhiên, trong thực tế, mọi việc không đơn giản như vậy, vì
hầu hết các sự kiện đều là các quá trình ngẫu nhiên (stochastic process)
Trong hình trên, nếu tác tử quyết định đi lên và môi trường trả về trạng thái
"ô trên" với xác suất 100%, thì không có gì để nói thêm Tuy nhiên, thực tế lại
là kết quả tác tử nhận được là 80% trạng thái "ô trên", 10% trạng thái "ô trái"
và 10% "ô phải" Một ví dụ khác là trong game PUBG; khi bạn chọn hành động
"ra ăn thính", bạn sẽ không bao giờ đạt được 100% trạng thái "đã ăn thính",
mà sẽ nhận được một phân bố xác suất như 70% "bị bắn chết", 20% "trắngtay" và 10% "ăn được thính".
Quay trở lại với tính chất Markov, giả sử tác tử của bạn đang ở vị trí như
hình dưới, việc nó đến đó không quan trọng như thế nào; nó có thể vòng từ trên
bức tường xuống hoặc chui từ dưới lên, hoặc thậm chí chạy sang trái và phải
1000 lần trước khi đến nơi Dù là cách nào thì khi tác tử đã ở đó, xác suất đi
lên, sang trái hoặc sang phải vẫn giống nhau Điều này có thể hiểu đơn giản là
tính "không nhớ" (memoryless) của tính chất Markov.
Hầu hết các bài toán trong học tăng cường được xây dựng trên MDP MDP
Trang 30gôm các tham số:
e S: Tap hợp các trạng thái (States): Không gian các trạng thai mà tác tử
quan sát được khi tương tác với môi trường.
e A: Một tập các hành động(Actions) mà tác tử có thể thực hiện với môi
trường Ví dụ một bước đi trong trò chơi cờ vua hoặc chuyển động của cánh
tay robot.
e 50: Trạng thái ban dau (Starting state)
e P: Hàm biến đối (Transition function) là một phương pháp mô hình hóa
tổng thể Nó sẽ dự đoán trạng thái tiếp theo sau khi một hành động được
thực thi Và nó được gọi là một mô hình, sẽ đóng vai trò quan trọng khi
chúng ta thảo luận về Học sâu tăng cường dựa trên mô hình (Model-basedRL)
e R: Một ham đưa ra phần thưởng Ham này sẽ xác định phần thưởng khi
môi trường chuyển từ một trạng thái sang trạng thái kế tiếp, dưới tác động
của một hành động Ví dụ r=1 nếu robot đi đến vi trí đích -1 nếu di sai
e y:Thanh phần khấu hao (Discount factor) là yếu tố khấu hao, sẽ dan dần
làm giảm giá trị của phần thưởng nếu giá trị của nó nhỏ hơn 1.
oe)
Ge = Rigi + Reet PR + =
» -k=0
e H: Dường giới han (Horizon) là đường dùng để hạn chế hành động của
agent Chúng ta có thể thực hiện các hành động (action) mãi mãi hoặc giới
hạn kinh nghiệm với các khoảng thời gian N
Hoặc đối với việc điều khiển bằng robot, chúng ta sử dụng các cảm biến để
đo các góc, vận tốc và chuyển động của các bộ phận tác động Vì vậy, MDP
thường được định nghĩa như sau: M =< S,A,P,R>
Trang 312.4.5 Q-Learning
Nhu đã nêu trên, hệ thống hoc tăng cường sẽ tối da hóa VTM Điều này đồngnghĩa với việc hệ thống phải tối ưu giá trị Q ở mỗi lượt thực hiện hành động
Để lưu lại các thông tin mà tác tử tương tác với môi trường trong mỗi bước, hệ
thống hoc tăng cường sẽ có một bảng chứa: các giá trị của hàm Q, trạng thái và
hành động tương ứng Trong một bài toán nhỏ với môi trường không quá phức
tạp, ta có thể xây dựng một bảng ở dạng mảng hai chiều để lưu các giá trị này.
Phương pháp này gần giống với quy hoạch động.
2.5 Deep ReInforcement Learning
2.5.1 Tổng quan Deep Reinforcement Learning
Deep Reinforcement Learning (Hoc tăng cường sâu) là một phương phấp hoc
máy kết hợp giữa Deep Learning (Học sâu) và Reinforcement Learning (Học
tăng cường) Nó là sự kết hợp của các mạng nơ-ron sâu (Deep Neural Networks)
với các thuật toán Reinforcement Learning để học các chính sách (policies) tối
ưu trong các môi trường phức tạp.
Deep Reinforcement Learning thường được ấp dụng cho các bài toán mà môi
trường hoặc không gian hành động rất lớn và phức tạp, nơi các phương pháp
truyền thống của Reinforcement Learning gặp khó khăn trong việc đạt được hiệusuất cao Bằng cách sử dụng mạng nơ-ron sâu, Deep Reinforcement Learning có
khả năng học các biểu diễn sâu và phức tạp của môi trường và tìm ra các chính
sách tối ưu dựa trên đó
Trong Deep Reinforcement Learning, các mạng nơ-ron sâu được sử dụng để
học các hàm giá trị (value functions) hoặc hàm chính sách (policy functions).
Hàm giá trị được sử dụng để đánh giá giá trị dự đoán của một trạng thái hoặc
cặp trạng thái-hành động, trong khi hàm chính sách xác định sự ưu tiên của các
hành động trong một trạng thái cụ thể.
Trang 32Một số phương pháp Deep Reinforcement Learning phổ biến bao gồm Deep
Q-Networks (DQN), Proximal Policy Optimization(PPO), và Actor-Critic DQNkết hợp mang no-ron sâu với thuật toán Q-Learning để học hàm giá trị tối ưu.
PPO là một phương pháp tối ưu hóa chính sách trong DRL Nó sử dụng mạng
nơ-ron sâu để biểu diễn hàm chính sách và tối ưu hóa chính sách dựa trên cách
tiếp cận Proximal Policy Optimization PPO cố gắng tối đa hóa hiệu suất chính
sách trong khi duy trì sự ổn định và giảm các biến đổi lớn trong quá trình tối ưu hóa Actor-Critic kết hợp cả mạng nơ-ron để đại diện cho chính sách (Actor) và
ham giá trị (Critic) để cung cấp phản hồi cho chính sách Chúng tôi sẽ trình bay
rõ hơn về phương pháp Proximal Policy Optimization(PPO), và Actor-Critic
trong phần 2.6 Các thuật toán Deep RL khác cũng được phát triển và nghiên cứu để giải quyết các bài toán cụ thể và khó khăn trong học tăng cường Mỗi thuật toán có cách tiếp cận và ưu điểm riêng, nhưng chung quy lại, họ đều sử dụng mạng nơ-ron sâu để biểu diễn và học các chính sách tối ưu trong môi
trường tương tác.
Deep Reinforcement Learning đã dat được những thành tựu đáng kể trong
nhiều lĩnh vực, bao gồm trò chơi điện tử, robot học, quản lý tài nguyên, tự động
lái xe và nhiều ứng dụng tương tác người-máy khác
2.5.2 Mô hành Deep Reinforcement Learning
Để trình bày về mô hình Deep Reinforcement Learning ta xét phương pháp
Deep Q-Networks (DQN) so với phương pháp Q Learning đã trình bày ở mục2.4.6 Việc lưu trữ giá trị Q ở dạng bảng là một giải pháp đơn giản, nhưng đồngthời nó cũng gây hao tốn tài nguyên rất nhanh chóng, đặc biệt là đối với môi
trường sử dụng đữ liệu lớn như hình ảnh Vì vậy, mô hình học sâu được ứng
dụng vào mô hình học tăng cường để giảm thiểu hao tổn tài nguyên Mô hình
kết hợp này được gọi là mô hình học sâu tăng cường.
Thay vì trực tiếp tính tóan giá trị Q và lưu trữ ở dạng bảng thì một mạng
nơ ron với trọng số 9 được dùng để tính toán xấp xi các giá trị Mạng này được
Trang 33huấn luyện để tối thiểu hóa hàm mat mát L(#) qua các lượt với phương pháp
như SGD (stochastic gradient descent) Kích cỡ của đầu ra của mạng này phảibằng số lượng hành động của tác tử Hệ thống này tương tự như hệ thống họcgiám sát, và phần thưởng sẽ tương tự như các nhãn Mạng nơ ron sẽ học cácgiá trị như hành động, trạng thái của môi trường và phần thưởng, từ đó nó sẽ
dự đoán các phần thưởng cho các giá trị khác để giảm tối thiểu hàm mat mát.
Hình 2.5 mô tả mô hình của Deep Reinforcement Learning
‘State-Action Value
k= mm ' - — -
Q Learning
Deep Q Learning
Hành 2.6: Mô hành Deep Reinforcement Learning
2.5.3 Lợi ít của Deep Reinforcement Learning
Việc kết hợp Deep Learning va Reinforcement Learning thành Deep
Rein-forcement Learning mang lại một số lợi ích quan trọng trong việc giải quyết các
bài toán học tăng cường phức tạp:
e Khả năng học biểu diễn sâu: Deep Learning cho phép mạng nơ-ron sâu
học các biểu diễn phức tạp và trừu tượng từ dữ liệu đầu vào Điều này cho phép Deep Reinforcement Learning học được các biểu diễn sâu về môi
trường và tương tác với nó một cách hiệu quả hơn.
e Tự động trích xuất đặc trưng: Deep Learning có khả năng tự động
trích xuất các đặc trưng quan trọng từ dit liệu đầu vào Khi áp dụng vào
Trang 34Reinforcement Learning, Deep Reinforcement Learning có thể tự động tìm hiểu các đặc trưng quan trọng trong môi trường và tạo ra một biểu diễn
sâu về nó
e Xử lý dữ liệu phức tạp: Deep Learning cung cấp khả năng xử lý dữ liệu
phức tạp như ảnh, âm thanh hoặc văn bản Khi kết hợp với Reinforcement
Learning, Deep Reinforcement Learning có thể 4p dụng vào các bài toán
thực tế mà dữ liệu đầu vào là các định dạng phức tạp
e Tính tổng quát hóa: Deep Learning cho phép mạng nơ-ron sâu học các
mô hình tổng quát từ dữ liệu huấn luyện Điều này giúp Deep Reinforcement Learning tổng quát hóa tốt hơn và áp dụng được vào các môi trường mới
mà nó chưa trước đây tương tác.
e Hiệu suất cao: Két hợp Deep Learning va Reinforcement Learning cho
phép học một chính sách tối ưu trong các môi trường phức tạp Deep
Rein-forcement Learning có khả năng học một hàm giá trị hoặc hàm chính sách
tối ưu sử dụng dữ liệu lớn và mạng nơ-ron sâu, giúp đạt được hiệu suất caohơn so với phương pháp truyền thống
2.6 Các thuật toán Deep Reinforcement Learning
2.6.1 Value-based va Policy-based
Value-based: là nhóm phương pháp hoc tăng cường dựa trên giá tri Trong
các phương pháp này, chúng ta sử dụng một hàm giá trị (value funetion) để ước
lượng giá trị kỳ vọng của mỗi cặp state - action trong môi trường nhằm tìm rachính sách tốt nhất bằng cách chọn hành động có giá trị cao nhất cho mỗi trạng
thái.
Policy-based: là nhóm các phương pháp học tăng cường tập trung vào việc tối
ưu hóa trực tiếp chính sách hành động, thay vì ước lượng hàm giá trị như trongphương pháp Value-based Các phương pháp Policy-based sử dụng mạng thần
Trang 35kinh sâu (deep neural networks) hoặc các mô hình khác để tạo ra trực tiếp chính
sách hành động Mạng thần kinh này nhận trạng thái làm đầu vào và trực tiếp
dự đoán xác suất của các hành động trong không gian hành động Mục tiêu làtìm ra chính sách tối ưu bằng cách tối đa hóa các phần thưởng tích lũy hoặc giá
trị đánh giá chính sách.
2.6.2 Actor va Critic
Actor là một policy function có trách nhiệm dua ra các action trong môi
trường Nhiệm vụ chính của Actor là chọn ra các action dựa trên chính sách
action hiện tại của mô hình Actor nhận thông tin về state hiện tại và dự đoán
xác suất của các action khả đĩ và sau đó thực hiện một action cụ thể Mục tiêu
của Actor là tối đa hóa reward tích lũy thu được trong quá trình tương tác (tiếpcận theo hướng Policy-based).
Critic là một value function đánh giá giá trị của chính sách hiện tại bằng cách
ước lượng giá trị của các state Một neural network hoặc một hàm giá trị được
sử dung để dự đoán giá tri state của hệ thống Critic nhận thông tin về state
hiện tại và dự đoán giá trị state đó (tiếp cận theo hướng Value-based)
Actor-Critic là một phương pháp trong học tăng cường (reinforcement learning)
mà kết hợp hai thành phan là Actor neural network và Critic neural networknhằm hỗ trợ nhau trong việc tối ưu hoá mô hình
Sự kết hợp đó có thể được mô tả như sau:
e Bước 1: Tại mỗi thời điểm t, state hiện tại là % của môi trường sẽ được
đưa vào mô hình Actor-Critic.
e Bước 2: Actor nhận vào state S; và đưa ra action A;.
e Bước 3: Critic cũng sé nhận vào action A; va state S; tính toán giá trị thu
được khi thực hiện action A; với state S; cho ra giá tri Q-value: @„(%;, At).
e Bước 4: Actor tiến hành update policy thông qua giá tri Q-value theo công
Trang 36thức:
A0 = œVạ(log7¿(s, a))â„ (3; a)
Change in policy parameters (weights) Action value estimate
Hinh 2.7: Công thúc update chính sách
Trong đó, Change in policy parameters(weights) là kết quả thay đổi các
tham số trong mang neural của Actor va Action value estimate là giá trithu được ước tính dựa trên action a thực hiên khi nhận về state s
Bước 5: Action A; được thực hiện lên môi trường và nhận về state S;.1 và
reward +.
Bước 6: Nhờ vào việc update các thông số trong mạng neural, Actor đưa ra
action Az; cho state S¿+1.
Bước 7: Critic tiến hành update các thông số trong Critic network với công
thức:
Aw = 8(R(s, a) + Yâu(S¡+1, 441) — Gu(St, ¿)) Vuậu (St, a)
Policy and value have TD'EfðP Gradient of our value
different learning rates function
Hình 2.8: Công thúc update thông số trong Critic network
TD error, còn được gọi là Temporal Difference error thể hiện cho sự khác
biệt giữa Q-value ước tính của cặp action - state và giá trị thực tế thu được
khi thực hiện action a với state s đó.
8 là learning rate của Critic network và giá trị này khác với learning rate
của Actor network.
Gradient cho phép đánh giá su thay đổi của ham giá trị khi các tham số thay đổi, từ đó cập nhật các tham số sao cho value function đạt được kết
quả tốt hơn
Trang 37e Bước 8: Lặp lại quá trình trên.
Hình 2.9: Hình anh mô tả y tưởng của phương pháp Actor-Citric
2.6.3 Ly thuyét vé thuật toán A2C
2.6.3.1 Tong quan
Thuật toán Advantage Actor Critic (A2C) là một phương phap trong
Rein-forcement Learning kết hợp hai phương pháp value-based va policy-based xây
dựng một mô hình Actor-Critic gồm Actor network va Critic network Actor
Network chọn một hành động ở mỗi điểm thời gian t, Critic Network đánh giá
chất lượng hoặc giá trị Q của state đầu vào nhất định Khi Critic Network biếtđược trạng thái nào tốt hơn hoặc tệ hơn, Actor Network sử dụng thông tin nay
để dạy agent tìm kiếm state tốt và tránh state xấu.
2.0.0.2 Advantage
Các tác tử học bằng cách đưa ra dự đoán về phần thưởng trong tương lai vàđiều chỉnh action dựa trên Predietion Error
Trang 38Ham TD Error: Dé tinh TD Error, trước tiên cần tinh TD Target
TDTarget =R+7* V(S")
TDrarget =R
TD Target là giá trị dự đoán của tất cả phan thưởng trong tương lai từ trang
thái S hiện tại Ham V(S’) đại diện cho Critic Network, tính toán giá trị của
trạng thái tiếp theo 9’
TD Error bằng TD Target trừ đi giá trị của trạng thái hiện tại S.
T Derror = TDarget — V(S)
Trong A2C, Advahttps://www.overleaf.com/project/647df5b14e4a2ebdbd07bd02ntage
bằng với TD Error Advantage cũng có thể được hiểu là Prediction Error
thưởng ở các mốc thời gian trong tương lai
Không phải lúc nào ham Advantage cũng bằng với ham TD Error.
Hàm Advantage:
Chúng ta có thể thay đổi Q, cho phép chỉ sử dụng một mang dự đoán giá trị
state, không phải giá trị action Nếu không, ta có thể phải cần đến hai mạng để
tính toán advantage (một cho giá trị state, một cho giá tri action).
Hàm Advantage cho chúng ta biết state tốt hơn hay xấu hơn dự kiến Nếu
một action tốt hơn mong đợi (Advantage lớn hơn 0), chúng ta sẽ khuyến khích
thực hiện action đó Nếu một action xấu hơn mong đợi (Advantage nhỏ hơn
0), chúng ta khuyến khích agent thực hiện action ngược lại với action đó Nếu
Advantage bằng 0, agent không học được gì
Trang 392.6.3.8 Actor Network
Actor Network ánh xa mỗi state thành một action tương ứng Giống như với
Critic Network, chúng ta có thể cập nhật các trọng số Actor Network sau mỗi điểm thời gian.
2.6.3.4 Critic Network
Critic Network ánh xa từng state tới giá trị Q tương ứng của nó Giá trị Q
đại điện cho giá trị của một state trong đó Q đại diện cho chất lượng của state.Không giống như Actor Network đưa ra phân phối xác suất của các action,
Critic Network đưa ra TD Target của state đầu vào dưới dạng số dấu phẩy động
(floating point number).
2.6.4 Ly thuyét vé thuật toán PPO (Proximal Policy Optimization)
khi nó dễ dàng hơn nhiều trong việc thực hiện và điều chỉnh."
Theo nghiên cứu [11] tác giả đã đề cập đến nhiều phương pháp cho học tăng
cường với giá trị của hàm xấp xỉ hàm bằng mạng nơ-ron Trong đó kể đến
những phương pháp dẫn đầu như : deep Q-learning, trust region/natural policy
gradient và policy gradient Tuy nhiên, các phương pháp được kể ở trên vần còn hạn chế về tính mở rộng (đối với các mô hình lớn hoặc triển khai song song)
cũng như hiệu quả của của dữ liệu và độ tin cậy.
Phương pháp deep Q-learning gặp vấn đề khó khăn trên các bài toán đơngiản, phương pháp "vanilla" policy gradient có hiệu suất dit liệu kém và không
Trang 40đáng tin cậy còn phương phap trust region policy optimization (TRPO) tương
đối phức tap va khong tương thích với một số kiến trúc mang Dé khắc phục các
tình trạng trên, chúng tôi sẽ giới thiệu phương pháp PPO nhằm cải thiện hiệuquả về dữ liệu và hiệu suất đáng tin cậy của TRPO PPO kết hợp việc lấy mẫu
dữ liệu từ chính sách và tối ưu hóa trên dữ liệu đã lấy mẫu để cải thiện chính sách giúp đảm bảo tính ổn định và khả năng hội tụ tốt trong quá trình tối ưu
hóa chính sách Chúng tôi sẽ nói rõ hơn về các phương pháp này trong các phầntiếp theo
2.6.4.2 Phương pháp deep Q-learning
Deep Q-Learning là một phương pháp hoc tăng cường (reinforcement
learn-ing) được sử dụng để đào tạo một mạng nơ-ron sâu (deep neural network) để học cách chơi trò chơi hoặc thực hiện các nhiệm vụ điều khiển.
Phương phấp này dựa trên thuật toán Q-Learning (được trình bày ở mục
2.4.6) Deep Q-Learning mở rộng Q-Learning bằng cách sử dụng một mạng
nơ-ron sâu dé xấp xỉ hàm giá trị Q, có chức năng đánh giá giá trị của mỗi cặp trạng
thái-hành động.
Thuật toán Deep Q-Learning hoạt động bằng cách thực hiện các bước sau:
e Thu thập dữ liệu: Thực hiện một loạt các hành động tương tac với môi
trường và thu thập các thông tin về trạng thái, hành động và điểm thưởng
của chúng.
e Lưu trữ dữ liệu:Lưu trữ các cặp trạng thái, hành động và điểm thưởng
vào bộ nhớ trạng thái (replay memory).
e Lựa chọn hành động: Thong qua giá trị của trang thái hiện tại,tác nhân
sử dụng mạng nơ-ron nhằm thực hiện dự đoán giá trị Q cho mỗi hành động
có thể thực hiện và chọn hành động có giá trị Q cao nhất hoặc sử dụng chiến lược khám phá (exploration strategy) để khám phá hành động mới.