Hình 4.21: Các phương tiện giao thông được phát hiện với gi Hình 4.22: Các đối tượng được biểu diễn với cơ chế tự chú ý Hình 4.23: Góc chụp về hướng mặt trời nên ảnh bị lóa sáng làm cho
Trang 1ĐẠI HỌC QUOC GIA TP HO CHÍ MINH TRUONG DAI HOC CONG NGHE THONG TIN
@) NGUYEN HOAN MY
TÌM HIỂU KIÊN TRÚC MÔ HÌNH
TRANSFORMER VÀ ; UNG DUNG MÔ HÌNH VÀO PHAT HIEN DOI
TƯỢNG TRONG BO DU LIEU VISDRONE
_ LUẬN VAN THAC SĨ
NGANH KHOA HỌC MAY TÍNH
MA SO: 8.48.01.01
NGƯỜI HƯỚNG DAN KHOA HỌC
TS NGUYEN TAN TRAN MINH KHANG
TP HO CHi MINH, NAM 2022
Trang 2LỜI CẢM ƠN
Dé hoàn thành được luận văn Thạc Sĩ này, bên cạnh những cố gắng và nỗ lựckhông ngừng của ban thân, không thé không ké đến sự hỗ trợ, giúp đỡ của quýThầy Cô, anh chi đang công tác tại Trường Dai học Công nghệ Thông tin ĐHQG-HCM Tôi xin được gửi lời cảm ơn sâu sắc và chân thành nhất đến Tiến Sĩ NguyễnTấn Trần Minh Khang, giảng viên hướng dẫn của tôi Thầy đã tận tình hướng dẫn,chỉ bảo tôi từ những ngày tôi bắt đầu nghiên cứu về máy học, thị giác máy tính và
đã tin tưởng, động viên tôi những lúc khó khăn khi thực hiện luận văn này Tôi
cũng chân thành cảm ơn Thạc Sĩ Võ Duy Nguyên đã hỗ trợ và góp ý cho tôi trong
các thực nghiệm, các bài báo khoa học và báo cáo luận văn Chân thành cảm ơn
trường đã tao điều kiện vé cơ SỞ vật chất, máy tính và tài nguyên để tôi có thé tiếnhành các thực nghiệm Hầu hếu các kết quả thực nghiệm, được tiến hành trên máy
tính của phòng thí nghiệm trường.
Trong quá trình thực hiện, mặc dù đã nỗ lực tìm hiểu, nghiên cứu, thựcnghiệm và bước đầu đã đạt được một số kết quả đáng khích lệ, nhưng do kiến thức
và kinh nghiệm còn nhiều hạn chế, không thẻ tránh khỏi những thiếu sót, tôi rấtmong nhận được sự góp ý từ quý Thầy Cô đề chỉnh sửa và hoàn thiện đề tài
Chân thành cám ơn.
Học viên thực hiện
Nguyễn Hoàn Mỹ
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan đề tài luận văn Thạc Sĩ “Tìm Hiểu Kiến Trúc Mô Hình
Transformers Và Ứng Dụng Mô Hình Vào Phát Hiện Đối Tượng Trong Bộ Dữ Liệu
VisDrone” là công trình nghiên cứu của tôi dưới sự hướng dẫn của TS Nguyễn TanTran Minh Khang Mọi thông tin trích dẫn trong luận văn đều được chú thích và liệt
kê day đủ trong phan tai liệu tham khảo Các số liệu và kết quả nghiên cứu đượctrình bày trong luận văn là trung thực và chưa từng được công bố trong bất cứ công
trình nghiên cứu nào, ngoại trừ các bài báo do tôi làm tác giả và các tư liệu được
trích dẫn trong tài liệu tham khảo.
TP HCM, ngày tháng năm 2022
Học viên thực hiện
Nguyễn Hoàn Mỹ
Trang 41.4 Mục tiêu và phạm vi của luận văn
1.5 Bố cục của luận văn
Chương 2 CÁC NGHIÊN CỨU LIÊN QUAN
2.1 Các phương pháp phát hiện đối tượng trong ảnh dựa trên học sâu
2.1.1 Machine Learning vs Deep Learning
2.1.2 One-stage detector va Two-stage detector:
2.2 Các mô hình dựa trên phương pháp mang hoc sâu (Deep Learning) II 2.2.1 Mạng học sâu
2.2.2 Mạng noron nhân tạo
2.2.3 Mạng noron hồi quy
2.2.4 Mạng noron tích chập - Convolutional Neural Network
2.2.5 Mô hình Encoder-Decoder - Seq2Seq
2.2.6 Soft Attention và Hard Attention _
Chương 3 PHƯƠNG PHÁP PHÁT HIỆN DOI TƯỢNG TRANSFORMERS
-DETR
3.1 Giới thiệu tổng quan về mô hình Transformer:
3.2 Mô hình Transformers và mô hình RNNs
Trang 53.3 Chỉ tiết kiến trúc mô hình Transformers
3.3.1 Biểu diễn cấu trúc dữ liệu thông tin dau vào — Embedding Vector 35
3.3.2 Mã hóa vị trí thông tin — Positional Encoding
3.3.3 Lớp mã hóa — Encoder layer
3.3.4 Lớp giải mã — Decoders
3.3.5 Kiến trúc Transformers trong thị giác máy tinh
Chương 4 THỰC NGHIỆM VÀ ĐÁNH GIÁ
4.1 Bộ dữ liệu thực nghiệm
4.1.1 Bộ dữ liệu VisDrone201
4.1.2 Bộ dữ liệu XDUA
4.2 Phương pháp thực nghiệm
4.3 Khảo sát các hàm chi phí IoU và LI
4.3.1 Mean Average Precision (mAP)
4.3.2 Intersection over Union (IoU)
4.3.3 Generalized loU (GIoU)
4.3.4 Distance loU (DloU)
4.3.5 Complete loU (CloU)
4.3.6 Hàm chi phi Smooth LI
4.3.7 Ham chi phi Balanced L1
44 Két quả thực nghiệm, đánh giá kết quả và bàn luậi
Trang 6DANH MỤC CÁC BẢNG
Bang 3.1: Bảng công thức tương ứng với từng vị trí
Bảng 4.1: Số lượng hộp giới hạn của từng lớp đối tượng trong bộ dữ liệu
'VisDrone2019
Bang 4.2: Số lượng hộp giới hạn của từng lớp đối tượng trong bộ dữ liệu XDUAV
Bảng 4.3: Kết quả AP của phương pháp DETR trên bộ dữ liệu VisDrone2019 88
Bảng 4.4: Kết quả AP (IoU = 0.50) ủa bảy phương pháp SOTA trên bộ dữ liệu
Trang 7DANH MỤC CÁC HÌNH VE VA BO THỊHình 1.1: So sánh mô hình DETR và Faster-RCNN trên tập dữ liệu COCO [10] 3 Hình 1.2: Ví dụ minh họa phương tiện giao thông trong bộ dữ liệu VisDrone2019
[13]
Hình 2.1: Minh họa phân lớp dữ liệu tuyên tinh và phi tuyên
Hình 2.2: Quá trình phân tích xây dựng mô hình [16].
Hình 2.3: Lược đồ giới thiệu các phương pháp phát hiện đi tượng [17]
Hình 2.4: Minh họa kiến trúc cơ bản của mạng nơron nhân tạo
Hình 2.5: Minh họa kiến trúc của mạng nơron nhân tạo với nhiêu lớp ân
Hình 2.6: Mô tả chỉ tiết một node trong mạng noron nhân tạo
Hình 2.7: Ví dụ minh hoa cho một node trong mạng noron nhân tao
Hình 2.8: Mô tả mang noron nhân tạo nhận diện đối tượng trong hình ảnh 14Hình 2.9: Minh họa mạng nơron hỏi quy (RNN)
Hình 2.10: Các mô hình mạng nơron RNN
Hình 2.11: Minh họa chỉ tiết mạng noron RNN
Hình 2.12: Mô tả nhược điểm của RRN Vanishing và Exploring Gradient
Hình 2.13: Mô tả các lớp trong Convolutional Neural Network (CNN)
Hình 2.14: Mô tả phân giải hình ảnh
Hình 2.15: Mô hình chuỗi thời gian một chiều cho thông tin đầu vào một chiều 19Hình 2.16: Mô hình chuỗi thời gian một chiều cho thông tin
Hình 2.17: Mô hình chuỗi thời gian hai chiều cho thông tin đầu vào hai chiều 20Hình 2.18: Mô hình chuỗi thời gian ba chiều cho thông tin đầu vào ba chiều [25] 20
Hình 2.19: Mô tả ma trận sau khi áp dụng bộ lọc
Hình 2.20: Ma trận đầu vào và bộc lọc
Hình 2.21: Mô tả ma trận với một bước nhảy.
Hình 2.22: Mô tả ma trận với hai bước nhảy
Hình 2.23: Mô tả ma trận bước nhảy cùng với đường biên bên ngo:
Hình 2.24: Minh họa ma trận lớp pool
Hình 2.25: Minh họa ma trận được làm phăng của lớp pool
Hình 2.26: Minh họa mô hình mã hóa và giải mã
Hình 2.27: Minh họa mô hình tuần tự
Hình 2.28: Minh họa chuỗi tuần tự và cơ chế tập trung
Hình 2.29: Mô tả kiến trúc cơ chế tập trung [28]
Trang 8Hình 2.30: Minh họa các lớp ở trạng thái an [28]
Hình 2.31: Minh họa tính toán score cho lớp trạng thái ân
Hình 2.32: Minh họa biéu diễn phân bổ của cơ chế tập trung
Hình 2.33: Minh họa phép tinh hidden states
Hình 2.34: Tông các giá tri.
Hình 2.35: Minh họa bước giải mã
Hình 2.36: Hard attention và Soft Attention
Hình 3.1: Mô hình tổng quát của RNNs
Decoder (bên phải) [9]
Hinh 3.3: M6 hinh héa
Hình 3.4: Input Embedding vector trong mô hình Transformer
u trúc từ
Hình 3.5: Mã hóa vị trí của thông tin trong mô hình Transformer
Hình 3.6: Các vector trong ma trận PE được cộng trực tiếp vào WE
Hình 3.7: Mô tả số nguyên dưới định dạng nhị phân
Hình 3.8: Ma trận 128 chiều mã hóa vị trí cho một câu có độ dài tối đa là 50 Mỗi
hàng đại diện cho embedding vector pt [33]
Hình 3.9: Ma trận khoảng cách của các vector biêu diễn vị trí của từ [33] 41
Hình 3.10: Kiến trúc bộ mã hóa
Hình 3.11: Minh họa về truy vấn thông tin trên giao diện Youtube
Hình 3.12: Quá trình phép tính query, key
Hình 3.13: Input đầu vào được biểu diễn dưới đạng embedding vector X1, thực hiện
phép nhân ma trận WQ với vector X1 cho ra vector query q1cua từ tương ứng trong
câu, tương tự vậy với các vector key k1 va value v1 [34]
Hình 3.14: Bước tính toán self-attention của từ đầu tiên với các từ khác [34] 45
Hình 3.15: Minh họa bước thứ ba và thứ tư [34]
Hình 3.16: Minh họa tính toán tổng vectors của từ dau tiên [34]
Hình 3.17: Mỗi hàng trong ma trận X tương ứng với một từ trong câu đâu vào.Chúng ta lại thay sự khác biệt vê kích thước của vectơ nhúng (512 hoặc 4 6 trong
hình) và vectơ Q / K./ V (64 hoặc 3 6 trong hình) [34] AT
Hinh 3.18: Minh hoa tổng hợp các bước tính toán self-attention [34] 48Hình 3.19: Lược đồ tông quan quá trình tính toán co chế tự chú ý [35] 48Hình 3.20: Mô hình mô ta cơ chế Multi-head Attention [851 49Hình 3.21: Multi-head attentions có nhiều ma trận WQ, WK, WVriêng biệt cho
từng self-attention [34]
Trang 9Hình 3.22: Hình minh họa kết quả tính toán tám lần self-attention [B4]:.‹.: ¿-¿¿:5< 50
Hình 3.23: Minh họa tính toán ra ma trận WO [34]
Hình 3.24: Biểu đồ các bước tính toán ma trận multi-head attention [34] 51Hinh 3.25: Kién tréc Multi-Head Attention được mô tả trong bài báo [9] 51Hình 3.26: Minh họa một kết nối tắt
Hình 3.27: Các kết nói tắt (đường màu đỏ) trong trúc Transformers
Hình 3.2 Minh họa so sánh tốc độ hội tụ của ResNet-56 khi không có và có sử
dụng kết nôi tat [36]
Hình 3.29: Minh họa phân bô dữ liệu trước và khi chuân hóa
Hình 3.30: Mô hình minh họa bản đồ đặc trưng
Hình 3.31: Hình minh họa Batch Normalization
Hình 3.32: Minh họa mô hình Fully Connected
Hình 3.33: Kiến trúc bộ giải mã
Hình 3.34: Cơ chế tập trung đa hướng khi loại bỏ phần kết quả
Hình 3.35: Mô hình tạo sinh của RNNs và Transfomer [38]
Hình 3.36: Minh họa tính toán trong ma trận look ahead masking
Hình 3.37: Chuẩn hóa Softmax ma trận Masked Scores
Hinh 3.38: Minh hoa co ché masking trong thực tế [38]
Hình 3.39: Quá trình xử lý Decoder của cơ chế Transformer [34
Hình 3.40: Minh họa kết nối với bộ dữ liệu từ vựng [34]
Hình 3.41: Quá trình phát hiện đối tượng của mô hình DETR [10]
Hình 3.42: Kiến trúc Transformer trong mô hình DETR [10]
Hình 3.43: Kết quả dau ra sau khi chuyền đổi của lớp tích chập
Hình 3.44: Biểu diễn đặc trưng của đối tượng được truy vấn [10]
Hình 3.45: Đồ thị lưỡng phân
Hình 3.46: Các bước tìm ra phương án tôi ưu của thuật toán Hungarian 73
Hình 4.1: Minh họa bộ dữ liệu VisDrone2019
Hình 4.2: Sự phân bố các đối tượng tron bộ dữ liệu VisDrone2019
Hình 4.3: Minh họa các góc ảnh khác nhau trong bộ dit liệu VisDrone2019.
Hình 4.4: Phân bố các đối tượng trong bộ dữ liệu XDUAV
Hình 4.5: Hình ảnh các đôi tượng trong bộ dữ liệu XDUAV
Hình 4.6: Sơ dé minh họa quá trình diễn giải các bước tính chỉ số mAP 79
Hình 4.7: Minh họa phép tính loU
Trang 10Hình 4.8: 2-nrom, 11-norm giữa hộp dự đoán và hộp ground-truth [42] 80
Hình 4.9: Trường hợp hai hộp không giao nhau
Hình 4.1
(42]
Hình 4.11: Khoảng cách giữa hai diém trung tâm và độ dài đường chéo [44].
: Tương quan giữa GIoU và IOU khi hai hộp giao và không giao nhau
Hình 4.12: Các bước hồi quy hộp giới hạn theo GIoU (hàng dau tiên) và DIoU(hàng thứ hai) Màu xanh lá và màu đen biểu thị hộp ground-truth và hộp anchortương ứng Màu xanh lam và màu đỏ biểu thị các 16p dự đoán GIoU và DIoU.GloU thường làm tăng kích thước của hộp dự đoán để chồng lên hai hộp mục tiêu,
trong khi DIoU trực tiếp giảm thiểu khoảng cách chuẩn hóa của điểm trung tâm
[44]
Hình 4.13: Hình ảnh minh họa t ộ hội tụ s
và DIoU Có thể thấy rằng hàm mat mát IoU có sai số lớn đối với các trường hop
không giao nhau, GIoU có sai số lớn đối với các trường hợp ngang doc, và DIoU có tốc độ hồi quy nhanh [44] 83
84
.84
Hình 4.16: Các hộp được dự đoán sau các lần ip khác nhau được tối ưu hóa theohàm mat mát GloU (hàng đầu tiên) và CloU (hàng thứ hai) Màu xanh lá và màuđen biểu thị hộp mục tiêu và hộp anchor Màu xanh lam và màu đỏ biểu thị GloU
và CloU GloU có xu hướng tăng khi xem xét vùng giao nhau bằng cách mở rộngkích thước của hộp dự đoán Việc chuẩn hóa giảm thiêu khoảng cách giữa hai điểmtrung tâm làm CloU làm tăng nhanh khả năng hội à tính nhất quán của diện tích
giao nhau [43]
Hình 4.14: Trường hợp hai hộp giới hạn giao nhau.
Hình 4.15: Khoảng cách giữa hai điểm trung tâm và độ dài đường chéo
.85
Hình 4.17: Hình ảnh minh họa tốc độ hội tụ sai số của các hàm mắt mát IoU, GIoU,
DIoU và CloU Có thể thấy rằng hàm mat mi ó sai số lớn đối với các trường
hợp không giao nhau, GIoU có sai số lớn đối với các trường hợp ngang dọc, và
CloU có tôc độ hôi tụ nhanh và tôt hơn DIoU [43] 85
Hình 4.18: Su mat cân bằng giữa hai hàm mục tiêu [15]
Hình 4.19: Bié é ắ
Hình 4.20: Biêu
mô hình
Hình 4.21: Các phương tiện giao thông được phát hiện với gi
Hình 4.22: Các đối tượng được biểu diễn với cơ chế tự chú ý
Hình 4.23: Góc chụp về hướng mặt trời nên ảnh bị lóa sáng làm cho các
như bi che bởi một lớp màn đen nên cho hiệu suât phát hiện đôi tượng bị giam 91
Hình 4.24: Phối cảnh phức tạp có các đối tượng bị che khuất gần hết Theo quan sát,
phân mái hiên góc trên cao của ảnh được chú thích là người đang đi bộ (màu xanh
Trang 11lam) nhưng do bị che khuất bởi
tượng
Hình 4.25: Hình ảnh các phương tiện di chuyên bóng mờ
làm ảnh hưởng tới độ chính xác khi phát hiện đôi tượng
Hình 4.26: Một kết quả trực quan hóa kết quả trên mô hình GIoU - Balanced L1 chothấy 05 trường hợp sai Trường hợp (1), (2), (4) là xe mô tô nhưng bị dự đoán thành
xe ô tô Trường hợp (3) là xe ô tô bị dự đoán thành xe đạp, trường hợp (5) không
thấy đối tượng
Hình 4.27: Góc chụp, ánh sáng, ph
trong bộ dữ liệu XDUAV
Trang 12DANH MỤC CÁC TỪ VIET TAT
Natural Language Processing
Artificial Neural Network
Average Precision
Batch normalization Bag of Freebies
Bag of Specials
Convolution Neural Network
Convolution Cross-Stage-Partial Network
Deep learning
Deep Learning Neural Network Fully-conected
Feature Pyramid network
Frame per second Graphics Processing Unit
Intersection over Union
Generalized Intersection over Union
Distance Intersection over Union Complete Intersection over Union
mean Average Precision
Non-maximum suppression
Path Aggregation Network Region-based Convolutional Network
Region-based fully convolutional networks
Rectified Linear Units Region of Interest
Region Proposal Network Spatial Attention Module Spatial pyramid pooling
Trang 14NHỮNG ĐÓNG GÓP CHÍNH
Nội dung luận văn đã tóm tắt và hệ thống lại một số phương pháp rút trích đặctrưng hình ảnh, giới thiệu và phân tích xu hướng phát triển của các phương phápphát hiện đối tượng trong ảnh sử dụng phương pháp học sâu
Trình bày kiến thức liên quan đến kiến trúc Transformer là môt kiến trúc mớiđang được áp dụng trong các mô hình dịch thuật và đã đạt nhiều kết quả tốt tronglinh vực xử lý ngôn ngữ tự nhiên Với việc mô hình DETR áp dụng kiến trúcTransformer vào lĩnh vực xử lý ảnh và thị giác máy tính cho bài toán phát hiện đốitượng đã được kết quả khả quan có thé so sánh với các mô hình tiên tiến hiện nay.Thực hiện huấn luyện mô hình DETR trên hai bộ dữ liệu không ảnh VisDrone2019
va XDUAV, khai phá các hàm chi phí GloU, CloU, Smooth LI và Balanced L1 cho
bài toán phát hiện phương tiện giao thông trong không ảnh Sau đó, đánh giá
phương pháp qua kết quả thực nghiệm, chúng tôi đề xuất một số hướng phát triểnkhác để thử nghiệm, cải thiện và đánh giá kết quả của những đề xuất đó
Kết quả của nghiên cứu đã được chấp nhận trình bày báo cáo trước hội nghị vàbài báo khoa học được đăng trong kỷ yếu của hội nghị khoa học quốc gia về
"Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin" lần thứ 14 (FAIR Fundamental and Applied Information Technology) - FAIR'2021 - Hồ Chi Minh,Vietnam: Nguyễn Hoàn Mỹ, Bùi Cao Doanh, Võ Duy Nguyên, Nguyễn Tấn Trần
-Minh Khang, “Khai Phá Ham Chi Phi Cho Phát Hiện Phương Tiện Giao Thông
Trong Không Ảnh”, 978-604-9988-60-8, DOI: 10.15625/vap.2021.0051
Trang 15MỞ DAU
Phát hiện phương tiện giao thông trong không ảnh là bài toán thiết thực, giảiquyết được nhiều vấn dé về giao thông trong thành phố Tuy nhiên do các bộ dữliệu hiện có được thu thập đa góc quay, khác biệt lớn về nguồn sáng, khoảng thờigian thu thập cả ngày và đêm, hướng chuyền động của máy bay không người lái,các đối tượng ở góc quay cao thường rất nhỏ là các thách thức của bài toán pháthiện đối tượng trong không ảnh Trong nghiên cứu này chúng tôi tiến hành khảo sáthiệu quả của các hàm chi phí IoU và LI trên cùng phương pháp DETR được huấnluyện trên hai bộ dữ liệu VisDrone2019 va XDUAV để quan sát sự cải thiện của mô.hình Qua thực nghiệm, chúng tôi thu được kết quả cao nhất là 4P@50 = 94.9%khi sử dụng hàm mat mát GIoU va Balanced L1 trên bộ dit liệu XDUAV
Từ khóa: Object detection, Drone, Aerial, loU loss, CloU loss, GIoU loss,
Smooth LI loss, Balanced LI loss.
Trang 16Chương 1 TONG QUANNội dung chương này trình bay phan đặt van dé, phát biểu tổng quan về bàitoán, các thách thức gặp phải, mục tiêu - phạm vi của luân văn và cuối cùng là bố
cục của luận văn.
1.1 Đặt vấn đề
Phương pháp phát hiện đối tượng là một nhiệm vụ cơ bản nhưng đầy thử tháchtrong lĩnh vực xử lý hình ảnh và thị giác máy tính Và là một chủ đề nghiên cứuquan trọng trong nhiều thập kỷ qua Tuy nhiên, sự phát triển trong hai thập kỷ gầnđây có thể được coi là một sự bùng nô trong lịch sử thị giác máy tính Vì cácphương pháp này đóng vai trò chính trong việc giúp máy tính hiểu được ngữ nghĩacủa bối cảnh trong hình ảnh, nhờ đó mà máy tính có thể phát hiện các đối tượngkhác nhau Phát hiện đối tượng có nhiều ứng dụng trong thị giác như: robot, lái xe
tự động, tương tác giữa người và máy tính, giám sát video thông minh Công nghệ
học sâu đã mang lại những đột phá đáng kê trong những năm gan đây Đặc biệt, các
kỹ thuật này đã góp phần tạo thêm sự phát triển đáng kể cho việc phát hiện đốitượng Trước đây, các phương pháp chủ yếu hướng vào việc phát hiện đối tượngtrong những danh mục phô biến, tính năng phát hiện đối tượng có thể phát hiện một
đối tượng cụ thể được định nghĩa một cách rõ ràng, ví dụ như là khuôn mặt của diễn
viên nổi tiếng, tháp nghiêng Pisa, Cầu Công Vàng Chicago; hoặc các đối tượngthuộc các danh mục cụ thể như con người, ô tô, xe đạp Trong những năm gần đây,cộng đồng nghiên cứu đã bắt đầu hướng tới các danh mục khác ngoài các danh mục
đã quá phố biến như người, mèo hoặc chó Ngoài ra, một số thách thức phổ biến khi
áp dụng phương pháp phát hiện đối tượng trong không ảnh: góc nhìn, độ chiếusáng, biến thể tỷ lệ, phối cảnh, biến thể lớp đối tượng, độ phân giải thấp và hiệntượng đối tượng bị chia cắt Bài toán phát hiện đối tượng ngày càng nhận được sựquan tâm đáng kể từ cộng đồng nên sự cạnh tranh, thách thức đối với bài toán pháthiện đối tượng ngày càng tăng, ban đầu có thể chỉ là nhận đạng và phân loại đốitượng được thê hiện rõ ràng trong ảnh, cho tới những đối tượng bị che, thiếu ánh
sáng, phát hiện đối tượng vào ban đêm và cho đến những đối tượng nhỏ được chụp
Trang 17từ trên cao như phát hiện người đi bộ hay phương tiện giao thông từ những cảnh
đông đúc với nhiều lớp chồng chéo, tắc nghẽn và hình ảnh có độ phân giải thấp
1.2 Phát biểu bài toán
Bài toán phát hiện đối tượng hiện đã được sử dụng rộng rãi trong nhiều tình
huồng thực tế Tùy vào từng mục đích cụ thể mà ứng dụng phát hiện đối khác nhau,
từ bảo vệ an ninh cá nhân đến nâng cao năng suất tại nơi làm việc Một số nghiêncứu đáng chú ý về phát hiện đối tượng cụ thể như phát hiện khuôn mặt, phát hiệnngười đi bộ và phát hiện phương tiện giao thông Gần đây, cộng đồng nghiên cứu
đã tập trung nhiều vào lĩnh vực học sâu và các ứng dụng của nó đối với các nhiệm
vụ nhận dạng và truy vết đối tượng Trong vài năm qua, mạng nơron tích chập
(Convolutional Neural Network - CNN) đã mang lại những đột phá trong lĩnh vực
AI như xử lý giọng nói, âm thanh, hình ảnh và video CNN đã thúc đây tiến bộ đángchú ý trong nhận dạng hình ảnh và phát hiện đối tượng Nhiều kiến trúc CNN thành
công, ví dụ: R-CNN [1], Fast R-CNN [2], Faster R-CNN [3] và họ các mô hình
YOLO [4] đã thực hiện tốt nhiệm vụ phát hiện đối tượng Trong đó những phương
pháp như YOLOv4 [5] là các mô hình tiên tiến nhất, đạt được nhiều kết quả tốt trêncác tập dữ liệu phổ biến như PASCAL-VOC [6, 7] ImageNet Large Scale VisualRecognition Challenge - ILSVRC [7], MS-COCO [8] Trong những năm gần đây,ngày càng có nhiều sự quan tâm đến máy bay không người lái và các ứng dụng củachúng trong giám sát video, tìm kiếm và cứu nạn Máy bay không người lái hiện làthiết bị phd biến cho phép chúng tôi ghi lại hoặc chụp nhiều cảnh từ trên cao
Năm 2020, Nicolas và các cộng sự đưa ra kiến trúc hoàn toàn khác biệt so vớinhững mô hình đã đề cập, tác giả đã dựa trên kiến trúc Transformers [9] trong lĩnhvực xử lý ngôn ngữ tự nhiên vào trong bài toán phát hiện đối tượng trong ảnh và đãđạt được kết quả tốt hơn khi so sánh với phương pháp hai giai đoạn Faster-RCNN
[3] Detection Transformer (DETR) [10] là phương pháp một giai đoạn nên có ưu
điểm vượt trội hơn về mặt thời gian khi so với Faster-RCNN và hiệu suất phát hiện
đối tượng Ngoài ra, DETR không sử dụng các vùng dé xuất (Region Proposals [1]),
các hộp neo (Anchor Box [11]) và thuật toán Non Maximum Suppression [12].
Trang 18Model GFLOPS/FPS #params AP AP;o AP;; APs APy APL
DETR-DC5-R101 253/10 GOM 44.9 64.7 47.7 237 49.5 62.3 Hình 1.1: So sánh mô hình DETR va Faster-RCNN trên tập dữ liệu COCO [10]
1.43 Các thách thức
Hiện tại, hầu như những phương pháp phát hiện đối tượng ngày nay đều dựatrên mạng nơron tích chập Thông qua mạng noron tích chập dé có thể rút tríchđường nét nổi bật của đối tượng, để có thể tao ra một số hình ảnh trừu tượng ở mức
độ thấp nhất như đường thẳng, hình tròn và sau đó kết hợp lặp đi lặp lại các đường
nét đó đề tạo thành một bản đồ đặc trưng của đối tượng trong ảnh ở mức độ thấp Vìmạng nơron tích chập có tính chất phức tạp với nhiều lớp ân (Hidden Layers) làmgiảm chiều của ma trận của ảnh đầu vào nên các đối tượng nhỏ trong ảnh có thể bị
bỏ qua hoặc mat trong quá trình rút trích đặc trưng của đối tượng
Bên cạnh thách thức về kỹ thuật, là những khó khăn về mặt dir liệu Phát hiệnđối tượng trong không ảnh gặp nhiều thách thức về dữ liệu như: góc quay đa dạngdẫn đến có nhiều kích thước đối tượng khác nhau trong ảnh, đôi khi đối tượng còn
sẽ bị cắt một phần khi di chuyển giữa các khung hình, dẫn đến việc dự đoán trở nên
khó khăn Thêm đó dit liệu như video hoặc hình ảnh được chụp bởi máy bay không
người lái khác nhau đáng ké về quy mô, phối cảnh và điều kiện thời tiết Hình ảnhtrên không thường bị nhiễu và bị mờ do chuyển động của máy bay không người lái
Tỷ lệ giữa kích thước đối tượng và độ phân giải video, đối tượng trong ảnh cũng rất
nhỏ.
Trang 19Trong luận văn này, chúng tôi tập trung tìm hiểu và nghiên cứu mô hình
Transformers, thử nghiệm bài toán phát hiện phương tiện giao thông trong không
ảnh thông qua việc 4p dụng phương pháp DETR [10] và khai phá các hàm mat mátCloU, Smooth L1 va Balanced L1 dé khảo sát sự hiệu quả Dé so sánh các hàm mat
mát chúng tôi thực hiện các thử nghiệm trên hai bộ dữ liệu là Visdrone2019 [13] và
XDUAV [14] Do giới han về thời gian và tài nguyên nên việc lựa chọn phươngpháp cũng như mô hình phù hợp đề giải quyết bài toán là một thách thức của luận
văn.
1.4 Mục tiêu và phạm vi của luận văn
Trong phạm vi một dé tài luận văn Thạc Sĩ, mục tiêu chính của luận văn là:(1) Tìm hiểu và hệ thống lại các kiến thức về Machine Learning và Deep
(4) Thực nghiệm đánh giá các phương pháp phát hiện đối tượng một giai đoạn
cho bài toán phát hiện phương tiện giao thông trong bộ dữ liệu không ảnh.
Đánh giá hiệu suất của các mô hình theo các tiêu chí quan trọng: mean
Trang 20Average Precision (mAP), thời gian phát hiện và các hàm mắt dựa trên
phương pháp Intersection over Union (IoU).
(5) Quá trình thực nghiệm chỉ ra các kết quả hữu ích cho việc cải thiện kếtquả Đề xuất một sô kỹ thuật nhằm nâng cao độ chính xác kết quả pháthiện đối tượng bảng và đánh giá kết quả cải tiến trong tương lai
1.5 Bồ cục của luận văn
Luận văn được bố cục bao gồm 05 chương, nội dung chính của từng chương
như sau:
Chương 1: Tổng quan Giới thiệu tông quan về nội dung đề tài luận văn bao
gồm: đặt vấn đề, phát biểu bài toán, mục tiêu và phạm vi nghiên cứu.
Chương 2: Các nghiên cứu liên quan Trong chương 2, luận văn sẽ trình bày
phần khảo sát và tìm hiểu các nghiên cứu liên quan, các phương pháp học sâu chobài toán phát hiện đối tượng và hướng tiếp cận cho bai toán của đề tài
Chương 3: Phương pháp phát hiện đối tượng Transformer-DETR Trong chươngnày, luận văn sẽ tập trung trình bày kiến trúc Transformers và phương pháp pháthiện đối tượng DETR dựa trên kiến trúc Transformers
Chương 4: Thực nghiệm và đánh giá Chương này sẽ giới thiệu về bộ dữ liệuđược sử dụng trong luận văn Cài đặt và đánh giá phương pháp đã tìm hiểu ởchương 3 dựa trên kết quả thực nghiệm của hai bộ dữ liệu VisDrone2019 và
XDUAV.
Chương 5: Kết luận và hướng phát triển Cuỗi cùng, chương 5 sẽ tong kết lạinhững kết quả đã đạt được của luận văn, bàn luận thêm những ý tưởng và hướngphát triển cho đề tài luận văn
Trang 21Chương 2 CÁC NGHIÊN CỨU LIÊN QUAN
Như đã giới thiệu ở chương 1, luận văn này tập trung vào phương pháp học
sâu cho bài toán phát hiện đối tượng trong dữ liệu dạng ảnh Nội dung chương 2giới thiệu về các phương pháp phát hiện đối tượng trong ảnh dựa trên phương pháphọc sâu, và hướng tiếp cận liên quan đến bài toán
2.1 Các phương pháp phát hiện đối tượng trong anh dựa trên học sâu
Trong lĩnh vực phát hiện đối tượng dựa trên các đặc trưng, có hai phươngpháp chính là rút trích đặc trưng của đối tượng trong ảnh một cách thủ công bằngcác phương pháp truyền thống và đặc trưng được rút trích từ mạng học sâu Trong
đó, các đặc trưng từ mạng học sâu được giới thiệu gần đây cho kết quả tốt hơn sovới các đặc trưng được rút trích bằng phương pháp truyền thống
2.1.1 Machine Learning vs Deep Learning:
Feature Engineering còn được gọi là quá trình chuyền đổi tập dữ liệu thô banđầu thành tập các thuộc tính có thể giúp biêu diễn tập dữ liệu ban đầu tốt hơn, tạođiều kiện dé giải quyết các bài toán dé dang hơn, giúp tương thích với từng mô hình
dự đoán cụ thể, cũng như cải thiện độ chính xác của mô hình dự đoán hiện tại Quátrình chuyên đổi đặc trưng sẽ có gắng biêu diễn tốt nhất tập dữ liệu ban đầu sao cho
tương thích với mô hình dự đoán đang sử dụng Sử dụng các kĩ thuật rút trích đặc
trưng đê chọn ra một số thuộc tính phù hợp hơn Ngoài ra, số thuộc tính đưa vào môhình phân lớp sẽ được giảm đi đáng kể giúp tốc độ huấn luyện nhanh hơn Hơn nữa,nhờ biéu diễn tốt tập dữ liệu ban đầu ma độ chính xác mô hình được cải thiện đáng
kể Vì các thuộc tính trong tập dữ liệu ảnh hưởng trực tiếp đến mô hình dự đoán, do
đó ta cần xác định tốt cầu trúc của các thuộc tính sao cho diễn đạt hiệu quả nhất bảnchất của tập dữ liệu Các thuật toán trong học máy được huấn luyện bằng cách ánh
xạ thông tin từ đầu vào đến thông tin đầu ra Thuật toán sẽ có một mô hình với một
bộ trọng số:
Input > ƒ(W,Ww;, W„) > Output (2.1) Trong do:
e¢ Input: là dữ liệu đầu vào
Trang 22® ƒ: là một ham số dé chuyển đổi tập dữ liệu thô thành các tập
thuộc tính
© Wy, Wo, + wạ: các siêu tham số cho hàm f
© Output: tập thuộc tính sau khi chuyền đổi.
Vi dụ như trong bài toán phân lớp, thuật toán được huấn luyện sẽ cho ra một
mô hình với hàm phân tách thành hai lớp đã được xác định trước, ở giữa hai lớp có
một ranh giới được gọi là ranh giới quyết định Ranh giới quyết định này giúp môhình xác định xem một điểm dữ liệu đã cho thuộc về lớp nào Ví dụ, trong trườnghợp hồi quy Logistic, hàm được huan luyện là một hàm Sigmoid sẽ phân chia thành
hai lớp.
Nhưng thuật toán hồi quy Logistic được huấn luyện chỉ để đưa ra một ranhgiới tuyến tính cho nên thuật toán không thé đưa ra quyết định cho dit liệu nếu dữliệu có dạng phi tuyến Trong quá trình chuyền đổi đặc trưng thì việc áp dụng các
kỹ thuật là một bước quan trong để chọn ra những thuộc tính phù hợp để xây dựng
mô hình.
Data input Feature extraction ‘Model bulding _ Model assessment
~ on Nor A ——
Explicit
programming | "tt |# Handcrafted model building w| Ouput
Shallow Handcrafted ‘Automated machine Input | » #|_ Output
Bông feature engineering model building
Deep Input || Feature learning + automated model building | #] Output
learning
Hình 2.2: Quá trình phân tích xây dựng mô hình [16]
Trang 23e Rut trích đặc trưng
Rút trích đặt trưng là tiến trình quan trọng có thể xác định thủ công hay tự
động mối quan hệ giữa các mẫu và dir liệu đầu vào cần trích xuất, các đặc điểm có
thé được khai thác nhằm mục đích cung cấp một biéu diễn phù hợp dé xây dựng môhình từ dữ liệu ban đầu Việc trích xuất đặc điểm nhằm mục đích duy trì thông tin
và phân biệt các yếu tố biến đổi riêng biệt có liên quan đến nhiệm vụ huấn luyện môhình Học máy chủ yếu dựa vào các tính năng được xác định rõ ràng mà đưa ra cácthuật toán nhằm hỗ trợ tự động trong quá xây dựng mô hình, và do đó hiệu suất của
nó phụ thuộc nhiều vào quá trình trích xuất đặc trưng thủ công Các phương pháphọc sâu khắc phục được hạn chế này của kỹ thuật rút trích đặc trưng thủ công Cáckiến trúc tiên tiến cung cấp cho mô hình khả năng học tự động để trích xuất và biểudiễn đặc trưng, nhờ vào quá trình rút trích tự động nên tốc độ huấn luyện và độ
chính xác dự đoán của các mô hình sẽ tăng lên rõ rệt.
® _ Xây dựng mô hình
Trong quá trình xây dựng mô hình tự động, dữ liệu đầu vào được sử dụngbởi một thuật toán dé xác định mẫu và mối quan hệ có liên quan đến nhiệm vụ huấnluyện tương ứng Các đặc trưng có tầm quan trọng khác nhau, tùy theo từng bàitoán mà có thuộc tính này hữu ích hơn các thuộc tính kia và cần loại bỏ bớt cácthuộc tính không liên quan đến bài toán Quá trình xây dựng mô hình là lựa chọn ra
những đặc trưng tự động hoặc thủ công sao cho các đặc trưng được lựa chọn phù
hợp với bài toán cần giải quyết Học máy có nhiều cách xây dựng mô hình phân tíchkhác nhau, mỗi cách đều có những ưu và nhược điểm riêng tùy thuộc vào dữ liệuđầu vào và các đặc điêm thu được Ngược lại, học sâu có thể hoạt động trực tiếptrên bất kể dữ liệu thô đầu vào để thực hiện nhiệm vụ xây dựng mô hình với khảnăng học đặc trưng tự động của nó Và học sâu chỉ có thé được áp dung để tríchxuất một biểu diễn đặc trưng, sau đó đưa đặc trưng đó vào các hệ thống con khác đểtiếp tục huấn luyện và khai thác các điểm mạnh của các thuật toán học máy
e Huan luyện mô hình đặc trưng
Để đánh giá chất lượng của mô hình, phải tính đến nhiều khía cạnh, chẳnghạn như hiệu suất, tài nguyên tính toán và khả năng học được của mô hình Các sốliệu dựa trên hiệu suất đánh giá mức độ đáp ứng của một mô hình với mục tiêu huấn
Trang 24luyện Hiện tại các mô hình Deep Learning đã hoàn toàn tự động hóa quá trình huấnluyện bằng cách học không giám sát (Unsupervised) hay học bán giám sát (Semi-
supervised), nhờ vậy mà ta có thể biểu diễn các đặc trưng một cách trừu tượng, nhất.
Đây là hướng tiếp cận tiên tiến nhất và đã có nhiều kết quả đáng kể trong nhận dạnggiọng nói, xử lý ảnh, thị giác máy tỉnh và các lĩnh vực khác Tuy nhiên, điểm hạnchế của hướng tiếp cận này đó là ta không hiểu được tại sao các đặc trưng này đượcrút trích hay chọn lọc ra Vì toàn bộ quá trình là một hộp đen nên ta không thê biếtđược chuyện gì đã xảy ra bên trong để có thể hiểu được Các mô hình quan trọngtrong mạng nơron học sâu và hiện nay được sử dung rất phổ biến trong nhiều lĩnh
vực như thị giác máy tính, dich may
e Artificial Neural Networks (ANN)
¢ Convolution Neural Networks (CNN)
e Recurrent Neural Networks (RNN)
2.1.2 One-stage detector va Two-stage detector:
Phát hiện đối tượng là một nhiệm vụ cơ bản nhưng khó khăn trong xử lýhình ảnh và nghiên cứu thị giác máy tính, đây cũng là một chủ đề nghiên cứu quantrọng trong nhiều thập kỷ Sự phát triển của nó trong hai thập kỷ qua có thể được
coi là thành quả vượt trội trong lịch sử thị giác máy tính [17].
Object Detection Milestones + Multiresolution Detection
+ Hard-negative Mining
SSD (W Liu Retina-Net
ab (TY Lin etal-17)
YOLO (J Redmon sưu Ạ ú
et al-16,17)
oom” *SosndineRxesresson
HOG bet (P Felzenszwalb et al-08, 10)
(N Dalal et a-05) One-stage
/Ƒ+AeNet
detector
2014 2015 2016 2017 2018 2019
2014 2015 2016 2017 2018 2019
Traditional Detection — ⁄ RENN Two-stage
Methods / (R Girshick et al-4) _ sppet detector
(K He et al-14)
Wisdom ofthe cold weapon Deep Learning based ast RONN
Detection Methods (R Girshick-15)
‘Technical aesthetics of GPU Faster RCNN Pyramid Networks
(S Ren et al-15) (TY Lin et al-17) /Ƒ_ *iilteernce Detection /Z ›rouuetuen
{anchors Boxes)
Hình 2.3: Lược dé giới thiệu các phương pháp phát hiện đối tượng [17]
Các phương pháp phát hiện đối tượng sử dụng mạng học sâu thường được
phân thành nhóm một giai đoạn (One-stage Object Detector) và nhóm hai giai đoạn
Trang 25(Two-stages Object Detector) Nhóm hai giai đoạn tách việc tìm ra các vùng dé xuất
và phân loại vùng đề xuất thành hai bước riêng trong khi nhóm một giai đoạnxác định và phân lớp đồng thời cho các vùng dé xuất Cách tiếp cận hai giai đoạnlần đầu tiên được giới thiệu và phô biến là R-CNN Các phương pháp phát hiện haigiai đoạn tạo ra một tập hợp các vùng trọng yếu (Region of Interest — Rol [1]) vàphân loại từng vùng trọng yếu bằng một mang noron R-CNN tao Rol bằng thuậttoán đề xuất cấp thấp Selective Search [1] Mỗi vùng sau đó được trích xuất từ hìnhảnh và được xử lý độc lập bởi CNN Sau đó, Fast R-CNN cải tiến R-CNN bằngcách thiết kế một lớp gdp (Pooling layer [2]) đặc biệt, gộp từng vùng từ các bản đồđặc trưng Tuy nhiên, Fast R-CNN vẫn dựa vào thuật toán đề xuất riêng biệt vàkhông được huấn luyện từ đầu đến cuối Faster R-CNN loại bỏ các thuật toán đềxuất cấp thấp bằng cách giới thiệu mạng đề xuất khu vực (Region ProposalNetwork — RPN [3]), tạo ra các đề xuất từ một tập hợp các hộp ứng viên được xácđịnh trước, thường được gọi là hộp neo Điều này không chỉ làm tăng hiệu quả hơn
mà còn cho phép các công cụ phát hiện được huấn luyện từ đầu đến cuối based Fully Convolutional Network (R-FCN) [18] tiép tục cải thiện hiệu qua củaFaster R-CNN bằng cách thay thé mạng noron kết nối đầy đủ với mạng noron tích
Region-chập.
Phương pháp tiếp cận một giai đoạn tiên tiến hiện nay là You Only Look
Once (YOLO) [4] và Single Shot Detector (SSD) [19], các cách tiệp cận này loại bỏ
bước gộp Rol và phát hiện các đối tượng trong một giai đoạn duy nhất SSD đặt cáchộp neo day đặc trên các bản đồ đặc trưng với nhiều tỷ lỆ, trực tiếp phân loại và tỉnhchỉnh từng hộp neo YOLO dự đoán tọa độ hộp giới hạn trực tiếp từ một hình ảnh
và sau đó được cải tiến trong YOLOv2 [20] bằng cách sử dụng một khái niệmtương tự như hộp neo được gọi là Prior-box YOLOv4 [5] với một số cải tiến như
sử dụng hồi quy logistic để phân lớp đa nhãn, sử dụng mạng Feature PyramidNetwork (FPN) [21] dé rút trích đặc trưng và đưa ra dự đoán hộp giới han ở ba tỉ lệ(Scale) khác nhau YOLOv4 được tác giả bổ sung, chỉnh sửa và tích hợp nhữngcông nghệ mới giúp cải thiện đáng kể hiệu suất như thiết kế mạng mới
CSPDarknet-53 [5], sử dụng Path Aggregation Network (PAN) [22] làm phương
pháp tổng hợp đặc trưng từ các scale khác nhau Các phương pháp phát hiện một
Trang 26giai đoạn xác định các hộp neo một cách dày đặc trên một hình ảnh và tạo ra các
hộp dự đoán cuối cùng bằng cách chấm điểm các hộp neo và tỉnh chỉnh các tọa độcủa chúng thông qua hồi quy
2.2 Cac mô hình dựa trên phương pháp mạng học sâu (Deep Learning)
2.2.1 Mạng học sâu Mang học sâu (Deep Learning Neural Network — DNN) được xây dựng trên
cơ sở một mạng nơron nhân tạo, tô chức thành từng lớp DNN sử dụng nhiều lớp đểlần lượt rút trích các đặc trưng từ thấp đến cao của đầu vào Ví dụ, trong bài toán xử
lý ảnh phát hiện khuôn mặt, những lớp thấp hơn sẽ tập trung trong việc phát hiện
góc cạnh của ảnh, trong khi những lớp cao hơn sẽ nhận diện được các đặc trưng
quen thuộc với con người như mắt, mũi, miệng DNN được tổ chức với một hoặcnhiều don vị lớp an (Hidden layer) ở giữa lớp đầu vào (Input layer) và lớp đầu ra(Output layer) Lớp đầu vào là lớp chứa các đơn vị tương ứng với đầu vào củamạng Lớp dau ra là lớp chứa các đơn vị tương ứng với đầu ra của mạng Lớp an làlớp chứa các đơn vị thé hiện cầu trúc bên trong cũng như cách tính toán của mạng.DNN giúp giải quyết các bài toán phức tạp hơn với độ chính xác cao hơn vì có thétăng số chiều hoặc tăng số biến đổi phi tuyến Tuy nhiên việc áp dụng DNN cũnggặp phải trở ngại về vấn đề bùng nỏ các siêu tham số (Hyper parameters) và thời
gian tính toán, đặc biệt là trong các mạng noron có độ sâu lớn.
2.2.2 Mạng noron nhân tao
Mang neural nhân tạo hay thường gọi ngắn gọn là mạng neural (Artificial
Neural network) [23] là một mô hình xử lý thông tin dựa trên toán học hay mô hình
tính toán được mô phỏng theo hoạt động của hệ thống thần kinh sinh học bao gồmlượng lớn các mạng noron được gắn kết với nhau đề xử lý thông tin Mỗi một nhómcác neural nhân tạo (nút) nối với nhau, và xử lý thông tin bằng cách truyền theo cáckết nối và tính giá trị mới tại các nút ANN giống như bộ não con người, được họcbởi kinh nghiệm thông qua huấn luyện, có khả năng lưu giữ những kinh nghiệm tri
thức và sử dụng những tri thức đó trong việc dự đoán các dữ liệu chưa biết Trong nhiều trường hợp, mạng neural nhân tạo là một hệ thống tự động thích ứng, tự thay
đổi cấu trúc của mình dựa trên các thông tin bên ngoài hay bên trong thông qua
mạng trong quá trình học.
Trang 27Kiến trúc cơ bản của một mạng nơron nhân tạo gồm 3 thành phan chính:
¢ Input Layer — Lớp đầu vào
hidden layer 1 hidden layer 2
Hình 2.4: Minh họa kiến trúc cơ bản của mang noron nhân tạo
Trong đó, lớp ân gồm các nơron nhận dữ liệu đầu vào từ các noron ở lớptrước đó và chuyền đổi các dữ liệu này cho các lớp xử lý tiếp theo cho đến khitruyền đến lớp đầu ra tạo ra kết quả Mỗi nơron nhận các dữ liệu vào xử lý chúng vàcho ra một kết quả duy nhất Kết quả xử lý của một nơron có thể làm dữ liệu đầuvào cho các noron khác Về cơ bản, mỗi lớp cố gắng tìm các trọng số nhất định để
có thé truyền vào các lớp ở bước sau và trong một ANN có thể có nhiều lớp ẩn
Hình 2.5: Minh họa kiến trúc của mạng noron nhân tạo với nhiều lớp an
- Quá trình xử lý thông tin của một ANN:
Mạng nơron nhân tạo có khả năng học bắt kỳ hàm phi tuyến nào Do đó, cácmạng này thường được biết đến với cái tên các phương pháp xắp xỉ hàm phổ quát.ANN có khả năng tính toán các trọng số ánh xạ bất kỳ
Trang 28"| Neuron j
=MjX, Summations Transfer function
Hình 2.6: Mô tả chi tiết một node trong mang noron nhân tạo
Inputs (đữ liệu đầu Vào): Mỗi Input tương ứng với một thuộc tinh (attribute)
của dit liệu (patterns).
Output (kết quả): Kết quả của một ANN là một giải pháp cho một vấn đẻ, làkết quả của từng bài toán cụ thé Đối với bài toán nhận diện đối tượng thì kếtquả sẽ là nhãn của đối tượng Đối với bài toán dịch máy thì sẽ là từ tiếp theo.Connection Weights (Trọng số liên kết: Đây là thành phần rất quan trọngcủa một ANN, nó thê hiện mức độ quan trọng của dữ liệu đầu vào đối vớiquá trình xử lý thông tin trong quá trình chuyển đổi dữ liệu từ lớp này sanglớp khác Quá trình học của ANN thực ra là quá trình điều chỉnh các trọng sốcủa các dữ liệu đầu vào để có được kết quả mong muốn là các giá trị của cáctrọng số cần tìm
Summation Function (Hàm tông): Tính tông trọng số của tat cả các phan tửđầu vào X; được đưa vào mỗi nơron với trọng số W; Hàm tổng Y của mộtnơron đối với n input được tinh theo công thức sau:
n
y= Ð xm (2.2)
í=1
Transfer Function (Hàm chuyền đổi): Hàm tổng của một noron cho biết khả
năng kích hoạt (Activation) của noron đó còn gọi là hàm kích hoạt Các
noron này được thiết lập với nhiệm vụ ánh xa dit liệu đầu vào từ nơron đếnmiễn giá trị mong muốn trước khi lan truyền kết quả ấy đến những nơronkhác nhằm đảm bảo việc huấn luyện của mạng được tiếp diễn và có thé sinh
ra một kết quả vượt ngưỡng kích hoạt dé có thể được chuyền đến lớp tiếptrong mạng nơron Mối quan hệ giữa hàm kích hoạt và kết quả được thẻ hiện
thông qua hàm chuyển đôi.
Trang 29‘Summation function: Y=8(02) + 1(04) +2(0.1) = 1.2
Transformation (transfer) function: Yr=1/(1 + e~'2) = 077
X=3 W,=02
Xp=1 Wp Xg=2 Wa=O.1
Hình 2.7: Vi dụ minh họa cho một node trong mang noron nhân tạo
Việc lựa chọn hàm chuyển đôi có tác động lớn đến kết quả của ANN Hàmchuyền đổi phải là hàm phi tuyến tính dé đữ liệu đầu ra cũng có tính chất phi tuyến,điều này rất quan trọng nếu không muốn phá vỡ phân cấp kiến trúc mạng và biếnđổi nó thành một tổ hợp tuyến tính Hàm chuyền đổi phi tuyến được sử dụng phổbiến trong ANN là hàm Sigmoid Kết quả xử lý tại các nơron ở lớp đầu ra đôi khirất lớn, vì vậy các hàm chuyên đổi được sử dụng để xử lý output này trước khichuyển đến lớp tiếp theo Đôi khi thay vì sử dụng hàm chuyền đổi người ta sử dụnggiá trị ngưỡng để kiểm soát các output của các nơron tại một lớp nào đó trước khichuyển đến các output này đến các lớp tiếp theo Nếu output của một nơron nào đónhỏ hơn giá trị ngưỡng thì nó sẽ không được chuyên đến lớp tiếp theo
CAT
(ae)
DOG
Hình 2.8: Mô tả mang noron nhân tạo nhận diện đối tượng trong hình ảnh
- _ Những hạn chế của mạng noron nhân tao:
Trong lĩnh vực thị giác máy tính, khi giải bài toán nhận dạng hay phân lớp
bằng ANN, bước đầu tiên là chuyển ảnh hai chiều thành vectơ một chiều trước khihuấn luyện mô hình Điều này có hai nhược điêm:
© Số lượng các tham số cần thé huấn luyện tăng lên đáng kể với sự gia tăngkích thước của hình ảnh Kết quả xử lý tại các nơron ở lớp output đôi khi rấtlớn Vi dụ nếu kích thước của hình ảnh là 224 x 224 thì số lượng tham sốđưa vào huấn luyện ở lớp an đầu tiên với bốn noron là 602.112 điểm ảnh
Trang 30© Khi chuyển đổi vector không gian hai chiều thành một chiều, ANN làm mat
các tính năng không gian của các điểm ảnh được sắp xếp trước trong một
hình ảnh.
Khi tính đạo hàm ở các layer đầu ta sẽ phải tính tích của rất nhiều số nhỏ hơn
1 nên giá trị sẽ tiến dần về 0 và bước cập nhật hệ số thông qua thuật toán lan truyềnngược này bằng cách tìm đạo hàm trở nên vô nghĩa và đạo hàm các trọng số của
mạng nơron sẽ không cập nhật được nữa, gọi là Vanishing Gradient Và ngược lại
là Exploding Gradient khi tính đạo hàm rất nhiều số lớn hơn 1 nên giá trị sẽ tiến dần
về vô cùng Đây là van đề phé biến trong thuật toán lan truyền ngược khi Ngoài ra,ANN không thé nắm bắt thông tin tuần tự trong dữ liệu đầu vào dé xử lý dữ liệutuần tự theo đúng thứ tự đã định của dữ liệu
2.2.3 Mạng noron hồi quy
Hiện tại, Deep learning có hai mô hình đang phổ biến là mạng noron tíchchập CNNs cho bài toán có dữ liệu đầu vào là ảnh như phân lớp, phát hiện đốitượng, phân vùng đối tượng và mạng noron hồi quy (Recurrent Neural Network -
RNN) [24] cho bài toán đữ liệu dạng chuỗi (Sequence) hay liên quan đến chuỗi thời
gian như văn bản, các ảnh tách từ một video.
Mạng noron hồi quy là một lớp của mạng nơron nhân tạo, nơi kết nối giữacác nút đề tạo thành đồ thị có hướng đọc theo một trình tự thời gian Điều nay chophép mạng thé hiện hành vi tạm thời RNN có nguồn gốc từ mang noron truyềnthing (Feedforward Networks), RNN có thé dùng các trạng thái đã lưu trong bộ nhớ
dé xử lý các chuỗi đầu vào có độ dài thay đổi RNN được gọi là hồi quy vì chúngthực hiện cùng một tác vụ cho tất cả các phần tử của một chuỗi với đầu ra phụ thuộc
vào cả các phép tính trước đó Nói cách khác, RNN có khả năng nhớ các thông tin
được tính toán trước đó Điều này làm cho RNN có thê áp dụng cho các tác vụ nhưnhận dạng chữ viết tay hay nhận dạng tiếng nói có tính chất kết nối, không phânđoạn Về cơ bản một mạng RNN có dạng như sau:
Trang 31Xe dau vao tại bước t.
sự: trạng thái ẩn tại bước t, là bộ nhớ của mạng Tính toán sẽ dựa trên cả cáctrạng thái ẩn phía trước và đầu vào tại bước đó: s; = f (Ux, + Ws,_¡) Hàm
ƒ thường là một hàm phi tuyến tính như hàm tanh hay hàm ReLu Dé làmphép toán cho phan tử ân đầu tiên ta cần khởi tạo thêm bước ở trạng thái s —
1 và thường giá trị khởi tạo được gán bằng 0
Of: dau ra tại bước t Vi dụ, ta muốn dự đoán từ tiếp theo có thể xuất hiệntrong câu thì 0, chính là một vector xác xuất các từ trong danh sách từ vựng,
được tinh: 0, = soƒtmax(Vs,)
Phân loại mang noron hồi quy RNN:
onetoone onetomany many to one ‘many to many many to many
One to one: mẫu bài toán cho mạng noron nhân tạo và mạng noron tích
chap, | input và 1 output, ví du với CNN input là ảnh và output là ảnh có các
đối tượng đã được nhận dạng
One to many: bài toán có | input nhưng nhiều output, vi dụ: bài toán captioncho anh, input là 1 ảnh nhưng output là nhiều chữ mô tả cho anh đấy, dưới
đạng một câu.
Trang 32© Many to one: bài toán có nhiều input nhưng chỉ có | output, ví dụ bài toán
phân loại hành động trong video, input là nhiều khung ảnh được tách ra từ
video, ouptut là hành động trong video.
© Many to many: bài toán có nhiều input và nhiều output, ví dụ bài toán dịch
từ tiếng anh sang tiếng Việt
- Ưu điểm của mạng noron hồi quy:
RNN xử lý thông tin tuần tự có trong dữ liệu đầu vào, sự phụ thuộc giữa các
từ trong văn bản trong khi đưa ra dự đoán, ở mỗi bước không chỉ phụ thuộc vào từhiện tại mà còn phụ thuộc vào các từ trước đó RNN chia sẻ và sử dụng các tham số
ở đầu ra qua các bước thời gian khác nhau Điều này dẫn đến việc huấn luyện ở
P
ot]
Hình 2.11: Minh họa chi tiết mang nơron RNN
bước sau ít tham số hơn và giảm chỉ phí tính toán
Như trong hình trên, ba ma trận trọng số - U, W, V, là các ma trận trọng sốđược dùng chung trong suốt tất cả các bước huấn luyện ở các nút
- _ Những hạn chế của mạng noron nhân tạo:
Deep RNNs với số lượng lớn các bước tính toán cũng gặp phải vấn đề phổbiến trong tất cả các loại mạng noron khác nhau như Vanishing và Exploding
Trang 332.2.4 Mạng noron tích chập - Convolutional Neural Network
Mạng noron tích chập được hình thành từ một tập hợp các noron và được tổchức thành nhiều lớp kết nối trực tiếp với nhau Mạng hoạt động theo nguyên lý
phản hồi và lan truyền ngược để tìm ra được một bộ trọng số và bias tốt nhất cho
tiễn trình tong quát hóa mô hình Điểm quan trọng nhất của kiến trúc này là cácnơron được sắp xếp theo ba chiều: chiều rộng, chiều cao, chiều sâu Ngoài ra, CNNcòn có thể làm giảm số lượng tham số đầu vào trong khi vẫn đảm bảo quá trìnhhuấn luyện và độ chính xác cao cho mô hình
Ngoài hai dữ liệu đầu vào và kết quả ở đầu ra thì kiến trúc CNN gồm có sáu
lớp (layer) chính:
Input layer (Thông tin đầu vào)
® Convolutional layer (Convolve + Activation func: ReLU )
¢ Pooling layer
® Dense Layer/Fully connected (FC) layer
¢ Softmax/logistic layer (Dùng dé phan lớp)
© Output layer (Kết quả đầu ra)
ÂN:
Y TY
Hình 2.13: Mô tả các lớp trong Convolutional Neural Network (CNN)
2.2.4.1 Lop Input Trong bài toán xử lý hình ảnh, lớp input chứa dit liệu hình ảnh, thông thường
đại điện cho một ma trận điểm ảnh Dữ liệu hình ảnh được biểu diễn bằng ma trận
ba chiều cần phải định hình lại nó thành ma trân với một cột duy nhất Giả sử banđầu hình ảnh có kích thước 28 x 28 = 784, cần chuyên nó thành ma trận 784 x 1trước khi đưa vào đầu vào
Trang 34Hình 2.14: Mô tả phân giải hình ảnh 2.2.4.2 Lép Convo
Lớp Convo còn được gọi là lớp trích xuất đặc trưng đối tượng va các đặcđiểm của đối tượng trong hình ảnh được trích xuất bên trong lớp này Trước hết,một phần của hình ảnh được đưa vào lớp Convo đề thực hiện phép tính tích chậptrên ảnh đầu vào và một bộ lọc tích chập (filter, kernel, feature detectors) Bộ lọcnày sẽ trượt qua từng vị trí của ảnh đầu vào để tính tích chập giữa bộ lọc và phầntương ứng trên ảnh, phần tương ứng này được gọi là trường tiếp nhận cục bộ Đầu
ra của lớp Conv sẽ qua hàm kích hoạt như Sigmod, TanH, ELU, ReLU trước khi
trở thành đầu vào của lớp Conv kế tiếp CNN chủ yếu được sử dụng cho các ứngdụng về hình ảnh, âm thanh, video, văn bản và mô hình chuỗi thời gian Có 3 loạiphép toán tích chập phô biến:
® ID convolution - chủ yếu được sử dụng khi đầu vào là tuần tự như văn bản
hoặc âm thanh.
© 2D convolution - chủ yếu được sử dụng khi đầu vào là hình ảnh
® 3D convolution - chủ yếu được sử dụng trong hình ảnh y tế 3D hoặc phát
hiện các sự kiện trong video.
- 1D Convolution for 1D Input
Bộ lọc trượt doc theo một thứ tự để tạo ra đầu ra
K=3
1Hm==E=————— iO,
w w
Hình 2.15: Mô hình chuỗi thời gian một chiều cho thông tin đầu vào một chiều
- 1D Convolution for 2D Input
Trang 35H=L=14 "——.
Ww
Hinh 2.16: Mô hình chuỗi thời gian một chiều cho thông tin đầu vào hai chiều.
- 2D Convolution for 2D Input
Án input mate The kernel being applied to the The output matrix
‘and a convolutional kernel Snput matrix (feature map)
Hinh 2.17: Mô hình chuỗi thời gian hai chiều cho thông tin đầu vào hai chiều
- 3D Convolution for 3D Input
Hình 2.18: Mô hình chuỗi thời gian ba chiều cho thông tin đầu vào ba chiều [25]
Convolution là một trong những yếu tố chính của CNN Thuật ngữ tích chập
đề cập đến sự kết hợp toán học của hai hàm dé tạo ra một ham thứ ba Conv kết hophai bộ thông tin, phép tích chập được thực hiện trên dữ liệu đầu vào với việc sửdụng bộ lọc để sau đó tạo ra một ban đồ đặc trưng, thực hiện tích chập bằng cáchtrượt bộ lọc qua đầu vào Tại mọi vị trí, phép nhân ma trận được thực hiện và tínhtổng kết quả vào bản đồ đặc trưng Trong Hình 2.19 mô tả phép toán tích chập, theoquan sát bộ lọc (hình vuông màu xanh lá cây) đang trượt qua đầu vào (hình vuôngmàu xanh lam) và tổng của tích chập là kết quả của bản đồ đặc trưng (hình vuông
màu đỏ).
Trang 36Input Filter / Kernel Hình 2.20: Ma trận đầu vào và bộc lọc Theo thuật ngữ CNN, ma trận 3 x 3 (màu xanh lá cây) được gọi là bộ lọc hoặc ma trận hạt nhân (Kernel) hoặc bộ phát hiện đặc trưng (Feature Detector) và
ma trận được hình thành bằng cách trượt bộ lọc qua ma trận các điểm ảnh (màu
xanh làm) và tính tích chập nên được gọi là Convolved Feature hoặc Activation
Map hoặc Feature Map bản đồ đặc trưng Điều quan trọng cần lưu ý là các bộ lọchoạt động như bộ phát hiện đặc trưng từ hình ảnh đầu vào
Depth: Chiều sâu của kích thước đầu ra phụ thuộc vào số lượng bộ lọc được
áp dụng trên ảnh (Kernel/Filter) Mỗi bộ lọc sẽ có cách đánh giá khác nhau về ảnhđầu vào và rút trích ra các đặc trưng khác nhau
Trang 37Stride 1 Feature Map Stride 2 Feature Map
Hình 2.21: Mô ta ma trận với một bước nhảy Hình 2.22: Mô tả ma trận với hai bước nhảy
- Padding/Zero-padding
Một đường biên bên ngoài có toàn giá trị mặc định cho trước (có thể là 0hoặc 255) được gọi là padding, mục đích là thêm vào ma trận ảnh ban đầu để matrận ảnh không bị thu hẹp Ngoài việc giữ cho kích thước không gian không đổi saukhi thực hiện tích chập, padding cũng cải thiện hiệu suất và đảm bảo kích thước bộlọc và bước sóng sẽ vừa với đầu vào Ngoài ra, padding có tác dụng duy trì kíchthước dir liệu tương thích với các bộ lọc được áp dụng trong kiến trúc mạng
HH
Stride 1 with Padding Feature Map
Hình 2.23: Mô ta ma trận bước nhảy cùng với đường biên bên ngoài
- Toán tử tích chập - Convolution Operation:
Giả sử ảnh đầu vào của lớp Conv là tensor kích thước W x H x D, với W làchiều rộng, H là chiều cao và D là chiều sâu (giá trị mau sắc trong ảnh màu) Filter
có kích thước F x F (F là số lẻ), stride: S, padding: P Stride thường dùng dé giảmkích thước của ma trận sau phép tính tích chập, với S là số pixel mà filter dịchchuyền trong mỗi bước trượt trên ảnh khi thực hiện phép tính tích chập Trong một
số trường hợp, padding được sử dụng bằng cách bồ sung thêm P điểm ảnh (với giátrị màu có định, thường là 0) nhằm cân bằng kích thước hình ảnh, từ đó cân bằng sốbước dịch chuyển của bộ lọc Với mỗi filter khác nhau ta sẽ học được những đặctrưng khác nhau của ảnh, nên trong mỗi lớp Conv thường dùng nhiều bộ lọc đề rút
Trang 38trích được nhiều đặc trưng của ảnh Khi đó, ta có công thức tính ma trận đầu ra củalớp Conv áp dụng K bộ lọc là một tensor 3 chiều có kích thước:
—¬ ——
x
- Pooling
Pooling thường được dùng giữa các lớp Conv, là thành phan tính toán chính
trong CNN, có nhiệm vụ làm giảm kích thước ma trận giúp giảm việc tính toán và
thời gian huấn luyện nhưng vẫn giữ được các đặc trưng quan trọng Có nhiều loại
lớp Pool như Sum-pooling, L2-pooling, Max-pooling, Avarage-Pooling Trong đó,
phổ biến là Max-pooling và Average-pooling Hình dưới đây minh họa việc tính
Max-pooling với các filter có kích thước khác nhau 2 x 2 va Stride = 2.
—| olule a
1
=)
Hình 2.24: Minh họa ma trận lớp pool
2.2.4.4 Lép Fully Connected Layer
Sau khi ảnh được truyền qua nhiều lớp convolutional va pooling thi mô hình
đã được huấn luyện với các đặc trưng cần nhận đạng của ảnh (ví dụ mắt, mũi,khuôn mặt ), lớp FC có nhiệm vụ chuyển ma trận đặc trưng đầu ra của các lớptrước đó thành vector đặc trưng bằng cách làm phẳng vector (Flattening), kết hợpcác đặc trưng lại với nhau dé tạo ra output của layer cuối cùng với kích thước banđầu là H x W x D, sẽ được chuyển về vector kích thước một chiều [H x W x D]
Flattening
Pooled Feature Map
Hình 2.25: Minh họa ma trận được làm phẳng của lớp pool
Ngoài ra, output của FC là một vector, số phần tử của vector tương ứng với
số lớp cần phân loại Mỗi phan tử trong vector là một con số dưới dang phan trăm,
Trang 39phần tử nào có % chính xác cao nhất thì tương ứng gần với lớp quy định thứ tự đónhất.
2.2.4.5 Softmax / Logistic Layer
Softmax hoặc lớp Logistic là lớp cuối cùng của CNN, nằm ở cuối lớp FC.Logistic được sử dụng để phân loại hai lớp và Softmax dành cho phân loại nhiềulớp Hàm Softmax hay Logistic là hàm biến một vectơ gồm K giá trị thực thành mộtvecto gồm K giá trị có tổng bằng 1 Các giá trị đầu vào có thé là đương, âm, 0 hoặclớn hơn một, nhưng hàm softmax hay logistic sẽ biến chúng thành các giá trị giữa 0
và 1, tương ứng với xác suất của từng phân lớp được nhận dạng
2.2.4.6 Output Layer
Lớp dau ra chứa nhãn của phân lớp được nhận dang ở lớp Softmax/Logistic
đã dưới dạng mã hóa one-hot vector.
2.2.5 Mô hình Encoder-Decoder - Seq2Seq
Mô hình Sequence to Sequence Model (Seq2seq) là một mô hình đặc biệt
của kiến trúc mạng nơron hồi quy (RNNs) được giới thiệu bởi nhóm nghiên cứu của
Google vào năm 2014 trong bài báo “Sequence to Sequence with Neural Networks”
[26] Seq2Seq được sử dụng dé tạo ra một chuỗi các token với các giá trị đầu ra(output) theo thứ tự xác định có ý nghĩa từ các giá trị đầu vào (input) đã có thứ tựđịnh sẵn mà độ dài của hai chuỗi thứ tự này có thê khác nhau Mặc dù mục đích banđầu của mô hình này là để áp dụng trong dịch máy, tuy nhiên hiện nay Seq2seqcũng được áp dụng nhiều trong các hệ thống khác như nhận dạng giọng nói, tóm tat
văn bản, thị giác máy tinh
Seq2seq gồm 2 phần chính là Encoder và Decoder Cả hai thành phần nàyđều được hình thành từ các mạng hồi quy như one-to-many hay many-to-many
Trang 40Encoder được sử dụng để ánh xạ chuỗi token từ dữ liệu đầu vào thành một vector cókích thước cố định Tại mỗi bước mã hóa, Encoder sẽ nhận vector tương ứng vớimỗi token trong chuỗi đầu vào dé trích xuất thông tin tạo ra vector trạng thái Ấn sđại diện cho chuỗi đầu vào tại bước mã hóa cuối cùng và cung cấp nó cho Decoder.Decoder sử dụng vector s như giá trị khởi tạo cho trạng thái ẩn đầu tiên và tạo rachuỗi các token thông qua một hàm xác suất có điều kiện tại mỗi bước giải mã Tùy
từng bài toán cụ thê mà Encoder và Decoder sử dụng các kỹ thuật học sâu khác nhau Vi dụ như trong dịch máy thi Encoder thường là LSTM, GRU hoặc Bi-
hị = ƒ(we*) hia + wed xi) (2.4)
Mô hình sẽ đọc tuần tự các giá trị đầu vào, nếu chiều dai của chuỗi giá trị là tthì mạng Seq2Seq sẽ đọc va đưa vào t lần
© X;: giá trị đầu vào 6 bước thứ ¡.
© hạ cj: Seq2Seq duy trì hai trạng thái (h cho trạng thái an và c cho trạng tháingữ cảnh) tại mỗi bước i.
® V¿: Trình tự đầu ra tại bước i Y; là một vectơ đại diện cho một ham phân
phối xác suất trên toàn bộ token được tạo ra bằng cách sử dụng kích hoạt
softmax.