Các câu mô tả này sẽ có thể được ứng dụng vào trong việc hỗ trợ các mô hình học máy khác nhằm nâng cao tính hiệu quả mà các mô hình học máy đó đang hướng tới, đồng thời việc sinh ra câu
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT PHẦN MỀM
Nguyễn Trường Khoa Nguyên
Phạm Huỳnh Tấn Đạt
KHÓA LUẬN TỐT NGHIỆP
TẠO MÔ TẢ TIẾNG VIỆT CHO ẢNH DỰA
TRÊN TIẾP CẬN HỌC SÂU
Vietnamese Image Captioning based on Deep
Learning approach
KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM
TP HỒ CHÍ MINH, 2021
Trang 2ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA KỸ THUẬT PHẦN MỀM
Nguyễn Trường Khoa Nguyên - 17520827
Phạm Huỳnh Tấn Đạt - 17520338
KHÓA LUẬN TỐT NGHIỆP
TẠO MÔ TẢ TIẾNG VIỆT CHO ẢNH DỰA
TRÊN TIẾP CẬN HỌC SÂU
Vietnamese Image Captioning based on Deep
Trang 3THÔNG TIN HỘI ĐỒNG CHẤM KHÓA LUẬN TỐT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……… ngày ……… của Hiệu trưởng Trường Đại học Công nghệ Thông tin
Trang 4ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập - Tự Do - Hạnh Phúc
TP HCM, ngày… tháng… năm……
NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP
(CỦA CÁN BỘ HƯỚNG DẪN/PHẢN BIỆN) Tên khóa luận:
TẠO MÔ TẢ TIẾNG VIỆT CHO ẢNH DỰA TRÊN TIẾP CẬN HỌC SÂU
Nhóm SV thực hiện: Cán bộ hướng dẫn/phản biện:
Nguyễn Trường Khoa Nguyên 17520827 TS.Huỳnh Ngọc Tín
Phạm Huỳnh Tấn Đạt 17520338
Đánh giá Khóa luận
1 Về cuốn báo cáo:
Số trang 77 Số chương 5
Số bảng số liệu 4 Số hình vẽ 40
Số tài liệu tham khảo 24 Sản phẩm 1
Một số nhận xét về hình thức cuốn báo cáo:
Trang 5Nguyễn Trường Khoa Nguyên:……… /10
Phạm Huỳnh Tấn Đạt:……… /10
Người nhận xét
(Ký tên và ghi rõ họ tên)
Trang 6ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Thời gian thực hiện:Từ ngày 01/03/2021 đến ngày 26/06/2021
Sinh viên thực hiện:
Nguyễn Trường Khoa Nguyên – 17520827
Phạm Huỳnh Tấn Đạt – 17520338
Nội dung đề tài:
1 Đặt vấn đề:
Việc sử dụng các hình ảnh để thể hiện nội dung của một chủ đề đang được
sử dụng phổ rộng rãi không những trên các trang mạng xã hội, báo chí mà còn
được sử dụng trong các văn bản tài liệu, sách giáo khoa Bài toán tạo mô tả
cho ảnh với mục tiêu là biểu diễn nội dung của bức ảnh thành dạng văn bản
miêu tả đúng các sự vật và hành động trong bức ảnh đầu vào Các câu mô tả
này sẽ có thể được ứng dụng vào trong việc hỗ trợ các mô hình học máy khác
nhằm nâng cao tính hiệu quả mà các mô hình học máy đó đang hướng tới,
đồng thời việc sinh ra câu mô tả cho ảnh cũng có thể làm một phương tiện hỗ
trợ những người khiếm thị trong việc đọc hiểu nội dung của một bức ảnh
Đã có nhiều nghiên cứu trong việc tự động sinh câu mô tả cho ảnh như:
Retrieval based, Template based, Tuy nhiên những nghiên cứu này chỉ
được áp dụng cho tiếng Anh, chưa có nghiên cứu nào được thực hiện nhằm
giải quyết vấn đề cho tiếng Việt Đề tài với phạm vi xây dựng mô hình tạo
Trang 7câu mô tả tiếng Việt mong muốn với một bức hình người dùng đưa vào, mô hình sẽ tạo ra câu mô tả tiếng Việt thể hiện lên được nội dung của bức ảnh
- Sinh câu tiếng Việt
- Câu sinh ra chỉ mô tả các sự vật, sự việc, hành động trong ảnh
3 Phương pháp thực hiện:
3.1 Phương pháp xây dựng tập dữ liệu:
- Sử dụng api google translate có trả phí để dịch bộ dữ liệu tiếng Anh Flickr30k và MSCOCO có sẵn sau đó review lại chỉnh sửa lỗi, ngữ pháp
3.2 Phương pháp lập trình:
- Cài đặt mô hình
- Xây dựng api triển khai mô hình tạo câu tiếng Việt cho ảnh
4 Nội dung thực hiện:
4.1 Khảo sát các phương pháp:
- Tiến hành khảo sát các phương pháp thường được dùng để giải quyết bài toán tạo mô tả cho ảnh
- Đánh giá, lựa chọn các phương pháp được khảo sát
4.2 Tìm hiểu lựa chọn thuật toán, công nghệ:
- Tìm đọc và chọn paper về bài toán tạo mô tả cho ảnh phù hợp
- Đánh giá, kiểm thử với phương pháp đã chọn
4.3 Xây dựng api tạo mô tả tiếng Việt cho ảnh:
- Tiến hành xây dựng api với dữ liệu đầu vào là một bức ảnh
- Tiến hành kiểm thử sau khi đã xây dựng xong api
- Triển khai mô hình thử với dữ liệu thực tế
Trang 85 Kết quả mong đợi:
- Xây dựng được mô hình tạo câu mô tiếng Việt với bức ảnh đầu vào
2 Tìm hiểu các kiến thức liên quan đến bài toán tạo
câu mô tả cho ảnh
15/3/2021 - 28/3/2021
3 Xây dựng dataset tiếng Việt cho bài toán 29/3/2021 -
11/4/2021
4 Áp dụng deep learning vào bài toán để tạo câu mô
tả cho hình ảnh
12/4/2021 - 25/4/2021
5 Điều chỉnh, kiểm thử các hyperparameters để cải
thiện khả năng học của mô hình
26/4/2021 - 9/5/2021
6 Xây dựng giao diện cho bài toán 10/5/2021 -
23/5/2021
7 Kiểm thử và đánh giá hiệu suất
Fix bug và tăng độ chính xác kết quả
24/5/2021 - 13/6/2021
8 Viết document Tối ưu code 14/6/2021 -
Trang 9LỜI CẢM ƠN
Nhóm xin chân thành cảm ơn tới giảng viên hướng dẫn Huỳnh NgọcTín đã tận tình chỉ dẫn cho chúng em trong quá trình thực hiện đề tàinày Nhóm cũng xin gửi lời cảm ơn tới anh Trần Văn Tùng - sinh viênkhóa 10, anh Trần Hàm Dương - sinh viên khóa 10 và anh Ngô TrungHiếu - sinh viên khóa 11 trường đại học Công nghệ Thông tin đã góp
ý, giúp đỡ chúng em thực hiện đề tài một cách tốt nhất Cảm ơn công
ty VCCorp đã cho chúng em cơ hội làm việc trong môi trường thực tế,hướng dẫn chúng em trong quá trình thực nghiệm và đánh giá thực tế.Một lần nữa, nhóm xin chân thành cảm ơn
Trang 10Mục lục
Mục lục x
Danh sách hình vẽ xiv
Danh sách bảng xvii
Danh mục các ký hiệu, thuật ngữ xviii
Danh mục các chữ viết tắt xix
TÓM TẮT 1
MỞ ĐẦU 3
Dẫn nhập 3
Mục tiêu đề tài 4
Nội dung thực hiện 5
Phạm vi đề tài 5
Bố cục báo cáo 5
CHƯƠNG 1 PHÁT BIỂU BÀI TOÁN 7
1.1 Mở đầu 7
1.2 Tạo câu mô tả tiếng Việt cho ảnh 7
1.3 Phát biểu bài toán tạo mô tả cho ảnh 9
1.4 Khó khăn, thách thức 10
Trang 11MỤC LỤC
1.5 Kết chương 10
CHƯƠNG 2 CÁC NGHIÊN CỨU LIÊN QUAN 11
2.1 Mở đầu 11
2.2 Giới thiệu ứng dụng tạo mô tả cho ảnh 11
2.3 Tạo mô tả ảnh dựa vào truy xuất 12
2.4 Tạo mô tả cho ảnh dựa vào biểu mẫu 16
2.5 Tạo mô tả cho ảnh dựa vào học sâu 19
2.6 Kết chương 22
CHƯƠNG 3 TẠO MÔ TẢ TIẾNG VIỆT CHO ẢNH DỰA TRÊN TIẾP CẬN HỌC SÂU 23
3.1 Mở đầu 23
3.2 Hướng tiếp cận 23
3.2.1 Encoder 24
3.2.2 Cơ chế Attention 26
3.2.3 Sử dụng Attention với Decoder 29
3.3 Tổng quan về bộ dữ liệu 31
3.4 Tiền xử lý 33
3.4.1 Tiền xử lý hình ảnh 33
3.4.2 Tiền xử lý văn bản 33
3.4.3 Mã hóa dữ liệu 34
3.5 Xây dựng mô hình tạo câu mô tả tiếng Việt cho ảnh 35
3.5.1 Xây dựng Encoder 35
3.5.2 Xây dựng Decoder 36
3.6 Kết chương 39
Trang 12MỤC LỤC
CHƯƠNG 4 HIỆN THỰC BÀI TOÁN 40
4.1 Mở đầu 40
4.2 Tổng quan hệ thống 40
4.3 Thiết kế API 41
4.4 Thiết kế giao diện 42
4.4.1 Màn hình ứng dụng tạo câu mô tả tiếng Việt cho ảnh 42
4.4.2 Hiện thực UI 45
4.5 Triển khai hệ thống 45
4.5.1 Cài đặt môi trường Python 46
4.5.2 Cài đặt Django 46
4.5.3 Cài đặt Pytorch 46
4.5.4 Cài đặt Flask 47
4.5.5 Cài đặt thư viện hỗ trợ 47
4.6 Kết chương 48
CHƯƠNG 5 THỰC NGHIỆM, ĐÁNH GIÁ 49
5.1 Mở đầu 49
5.2 Mô tả tập dữ liệu 49
5.3 Thiết lập thực nghiệm 50
5.4 Phương pháp, độ đo 51
5.5 Kết quả thực nghiệm 52
5.6 Phân tích lỗi 53
5.7 Nhận định 54
5.8 Kết luận và hướng phát triển 55
5.8.1 Kết luận 55
Trang 13MỤC LỤC
5.8.2 Hướng phát triển 56
5.9 Kết chương 56
Kết luận và hướng phát triển 57
Phụ lục 64
Word Embedding 64
Convolutional Neural Networks 72
Residual Neural Networks 73
Long Short-Term Memory 75
Bản thảo bài báo khoa học 77
Trang 14Danh sách hình vẽ
2.1 Minh họa cơ chế tạo mô tả ảnh dựa vào truy xuất
(retrieval-based) Nguồn: https://www.researchgate.net/ 13
2.2 Minh họa cơ chế tạo mô tả ảnh dựa vào bộ ba đối tượng Nguồn: https://cdn.iiit.ac.in/ 15
2.3 Minh họa cơ chế tạo mô tả ảnh dựa vào biểu mẫu (template-based) Nguồn: https://www.researchgate.net/ 16
2.4 Minh họa kiến trúc tổng quan của tiếp cận học đa phương thức (multimodal) Nguồn: https://www.researchgate.net/ 19
2.5 Minh họa kiến trúc tổng quan của tiếp cận sử dụng khung mã hóa-giải mã (encoder-decoder) Nguồn: https://www.researchgate.net/ 21 3.1 Bộ phận Encoder 25
3.2 Luồng hoạt động của Encoder 26
3.3 Ví dụ về khả năng tập trung của con người 27
3.4 Luồng hoạt động của cơ chế Attention 29
3.5 Kiến trúc tổng quan của LSTM 30
3.6 Mô hình sinh câu mô tả tiếng Việt cho ảnh 31
3.7 Quá trình điều chỉnh kích thước của ảnh 33
Trang 15DANH SÁCH HÌNH VẼ
3.8 Quá trình chuyển đổi ma trận có kích thước MxN thành một
tensor RxGxB 33
3.9 Loại bỏ các ký tự đặc biệt trong câu 34
3.10 Quá trình mã hóa dữ liệu 35
3.11 Quá trình Beam Search chọn từ với k=2 36
3.12 Quá trình Beam Search chọn từ với k=2 dựa vào các từ trước 37
3.13 Quá trình kết thúc giải mã Beam Search 38
4.1 Kiến trúc tổng quan của mô hình tạo câu mô tả tiếng Việt cho ảnh.40 4.2 Thiết kế API tạo mô tả tiếng Việt cho ảnh 41
4.3 Màn hình Demo tạo câu mô tả tiếng Việt cho ảnh 42
4.4 Lấy ảnh từ đường dẫn internet 42
4.5 Lấy ảnh bằng việc upload 43
4.6 Submit ảnh tới mô hình 43
4.7 Kết quả tạo câu tiếng Việt cho ảnh 44
4.8 Phần ảnh mô hình tập trung vào 45
5.1 Mô hình mạng tổng quát của Word2Vec 65
5.2 Ý tưởng thực hiện mô hình Skip-Gram 66
5.3 Mô hình mạng của Skip-Gram 66
5.4 Ý tưởng thực hiện mô hình CBOW 67
5.5 Mô hình mạng CBOW 67
5.6 One-hot vector 68
5.7 Ví dụ cách hoạt động mô hình CBOW 69
5.8 Ví dụ cách hoạt động mô hình Skip-Gram 70
5.9 Ma trận trọng số sau khi training 70
Trang 16DANH SÁCH HÌNH VẼ
5.10 Tính vector từ ma trận trọng số 71
5.11 Mô hình CNN 73
5.12 Một khối Residual 74
5.13 Mạng ResNet 101 lớp trích xuất đặc trưng của ảnh 75
5.14 Mô hình Long Short-Term Memory 76
Trang 17Danh sách bảng
3.1 Mô tả về tập dữ liệu 32
5.1 Bảng phân tích tập dữ liệu Flickr30k tiếng Việt 50
5.2 Bảng phân tích tập dữ liệu MSCOCO tiếng Việt 50
5.3 Bảng phân tích bộ dữ liệu tổng hợp 50
Trang 18Danh mục các ký hiệu, thuật ngữ
Trang 19Danh mục các chữ viết tắt
Trang 20TÓM TẮT
Tự động sinh mô tả cho bức ảnh là bài toán tự động tạo một câu vănmiêu tả các sự vật và hành động của chúng trong bức ảnh đầu vào.Các câu mô tả được ứng dụng trong việc hỗ trợ các mô hình máy họckhác nhằm nâng cao tính hiệu quả trong việc xử lý các vấn đề mà các
mô hình này hướng đến Tuy nhiên, theo hiểu biết của nhóm nghiêncứu, việc tự động sinh câu mô tả cho ảnh chỉ được áp dụng cho tiếngAnh, chưa có nghiên cứu nào được thực hiện nhằm giải quyết vấn đềcho tiếng Việt Nhận thấy tiềm năng của bài toán và với mong muốnứng dụng tiếng Việt cho việc tự động sinh câu mô tả cho ảnh, đề tàikhóa luận này nhóm chúng em đã nghiên cứu là xây dựng một môhình tự động sinh câu tiếng Việt cho ảnh áp dụng kiến trúc Encoder -Decoder và cơ chế Attention Để thực hiện tốt đề tài này, nhóm cũng
đã xây dựng bộ dữ liệu tiếng Việt dựa trên hai tập dữ liệu nổi tiếng
là Flickr30k và MSCOCO Kết thúc đề tài, nhóm đã thu được các kếtquả sau:
• Học được kiến thức máy học, học sâu và NLP
• Học được kiến thức về cơ chế Attention
• Học được kiến thức liên quan bài toán tự động sinh câu mô tả
•
Trang 21TÓM TẮT
• Xây dựng mô hình tạo câu mô tả tiếng Việt cho ảnh
• Xây dựng công cụ tạo câu mô tả tiếng Việt cho ảnh
• Viết bản thảo bài báo khoa học: Tự động tạo câu mô tả tiếng Việtcho ảnh dựa trên phương pháp học sâu và cơ chế Attention (bảnthảo bài báo khoa học sẽ gửi cho một hội thảo chuyên ngành phùhợp trong thời gian sớm nhất)
Trang 22MỞ ĐẦU
Dẫn nhập
Ngày nay, với sự phát triển của thời đại công nghệ số, chúng ta đangphải đối đầu với thử thách tiếp nhận, xử lý lượng thông tin khổng lồ vớitốc độ phát triển nhanh chóng Bên cạnh các cách tiếp cận thông tintruyền thống như báo chí, các kênh tin tức truyền thông thì các trangmạng là một phương tiện dễ tiếp cận và nổi bật hơn cả trong thời đại
kĩ thuật số 4.0 Các trang mạng này chứa một lượng lớn thông tin baogồm rất nhiều văn bản, tuy nhiên, trong những năm trở lại đây, ngườidùng ngày càng có xu hướng ưu tiên các dạng thông tin trực quan nhưhình ảnh và đoạn phim Thế nhưng đối với những người dùng có vấn
đề về thị lực hoặc các vấn đề về đường truyền internet khiến các trangmạng không thể tải ảnh lên, việc tiếp cận các dạng thông tin này làviệc rất khó khăn Vì thế các ứng dụng tự động tạo câu mô tả cho ảnh
ra đời nhằm tóm tắt nội dung của ảnh nhanh chóng Cùng với sự pháttriển của machine learning và deep learning, bài toán tự động tạo câu
mô tả cho ảnh ngày càng được quan tâm và gặt hái được nhiều thànhcông, tuy nhiên, theo hiểu biết của nhóm chúng em, chủ yếu các môhình máy học chỉ được thiết kế để tạo câu mô tả tiếng Anh mà chưa
có nghiên cứu được thực hiện để áp dụng bài toán cho tiếng Việt
Trang 23MỞ ĐẦU
Việc tạo câu mô tả tiếng Việt cho ảnh sẽ giúp người dùng Việt Namnắm bắt thông tin của bức ảnh nhanh chóng, kể cả khi trong các trườnghợp gặp vấn đề về đường truyền mạng, việc tải ảnh lên trang mạng làđiều khó khăn Trên hết, các câu mô tả sẽ kết hợp với các thiết bị hỗtrợ người khiếm thị để giúp họ tiếp cận với các thông tin trực quan dễdàng hơn Việc sinh câu mô tả sẽ được thực hiện bởi một mô hình họcmáy Sử dụng các đặc trưng của bức ảnh để tạo câu Điều này giúp chongười sử dụng, đặc biệt là người khiếm thị nắm thông tin của bức ảnhnhanh hơn, đồng thời hỗ trợ các mô hình máy học khác áp dụng chotiếng Việt Chính vì những điều này đã thôi thúc nhóm chúng em chọn
đề tài này, với mong muốn đóng góp trong các bài toán máy học khác
và giải quyết chính bài toán này
Mục tiêu đề tài
• Tìm hiểu các kiến thức cơ bản trong lĩnh vực học máy
• Tìm hiểu các kiến thức học sâu
• Tìm hiểu các kiến thức học sâu ứng dụng trong NLP
• Tìm hiểu kiến trúc Encoder - Decoder
• Tìm hiểu cơ chế Attention
• Xây dựng tập dữ liệu tiếng Việt cho bài toán
• Xây dựng mô hình tạo mô tả cho ảnh theo kiến trúc Encoder Decoder kết hợp cơ chế Attention
-• Đạt được độ chính xác cao nhất và câu mô tả sinh ra đáp ứng được
Trang 24MỞ ĐẦU
• Ứng dụng mô hình trong thực tế
Nội dung thực hiện
• Tìm hiểu về bài toán Tự động sinh câu mô tả cho ảnh và các nghiêncứu liên quan
• Tìm hiểu các kiến thức cần thiết và liên quan để phục vụ quá trìnhnghiên cứu và xây dựng mô hình
• Tìm kiếm các tập dữ liệu cho bài toán
• Xây dựng tập dữ liệu tiếng Việt
• Xây dựng mô hình tạo câu mô tả tiếng Việt cho ảnh
• Đo đạc và đánh giá câu mô tả tiếng Việt sinh ra từ mô hình
• Phân tích lỗi và cải thiện kết quả
• Xây dựng ứng dụng cho mô hình
– Sinh câu mô tả tiếng Việt
– Câu sinh ra chỉ mô tả các sự vật, sự việc, hành động trong ảnh
Trang 25MỞ ĐẦU
Bố cục báo cáo
Báo cáo bao gồm 4 chương chính:
• Chương 1 Phát biểu bài toán: giới thiệu về bài toán tự động tạocâu mô tả tiếng Việt cho ảnh cùng những khó khăn, thách thức khigiải bài toán này
• Chương 2 Các nghiên cứu liên quan: trình bày một số phương pháp
đã được nghiên cứu để giải quyết bài toán tự động tạo mô tả choảnh
• Chương 3 Phương pháp thực hiện: mô tả phương pháp và cáchtiếp cận để giải quyết bài toán tự động tạo mô tả tiếng Việt choảnh
• Chương 4 Hiện thực bài toán: trình bày chi tiết về các công nghệ
sử dụng, các yêu cầu cần đạt để triển khai module tự động tạo mô
tả tiếng Việt cho ảnh
• Chương 5 Thực nghiệm và đánh giá: mô tả dataset thực nghiệm,trình bày phương pháp thiết lập thực nghiệm, phương pháp đánhgiá và kết luận
Cuối cùng là phần kết luận tổng kết lại kết quả đạt được cũng nhưhướng phát triển
Trang 26Mục tiêu của bài toán tạo câu mô tả tiếng Việt cho ảnh là xây dựng một môhình có khả năng tự động tạo ra một câu tiếng Việt mô tả các sự vật và hànhđộng của chúng trong bức ảnh một cách chính xác nhất Bài toán áp dụng chotất cả các bức ảnh với các định dạng khác nhau và kích thước khác nhau Câu
mô tả đáp ứng các yêu cầu về ngữ pháp của tiếng Việt
Bài toán thể hiện tiềm năng trong việc kết hợp, hỗ trợ các bài toán khác như:sinh câu mô tả dựa trên cảm xúc cho bức ảnh, hỗ trợ công cụ tìm kiếm, hỗ trợngười khiếm thị, Một trường hợp cụ thể, bài toán sẽ tự động mô tả các bứchình bằng câu văn bản thay thế tương đương, sau đó phối hợp với phần mềmtext to speech nói lên nội dung của bức ảnh đó điều này sẽ giúp tăng thêm trảinghiệm khi sử dụng web cho người khiếm thị
Trang 27CHƯƠNG 1: PHÁT BIỂU BÀI TOÁN
Tuy nhiên, bài toán mang lại nhiều thách thức như câu mô tả sinh ra cầnphải đáp ứng các yêu cầu về ngữ pháp của tiếng Việt và trên hết câu sinh raphải mô tả đúng các sự vật và hành động của chúng trong ảnh Các bức ảnhcần phải được điều chỉnh về cùng một kích thước và các đặc trưng của ảnh phảiđược giữ nguyên
Hiện nay đã có nhiều nghiên cứu được thực hiện để đưa ra các hướng giảiquyết cho các khó khăn trên Thế nhưng hầu hết các phương pháp được đưa rachỉ áp dụng cho tiếng Anh và theo sự hiểu biết của nhóm chúng tôi, chưa cóphương pháp nào áp dụng thành công cho bài toán này với tiếng Việt Phươngpháp trước đây sử dụng mạng tích chập Convolutional Neural Network (CNN)
và Long Short-Term Memory (LSTM) [21] tạo ra câu chưa mô tả đúng các sựvật và hành động của chúng trong bức ảnh Vì vậy một hướng nghiên cứu khác[23] đã áp dụng các phương pháp học sâu và cơ chế Attention, nhằm giúp môhình xác định các vị trí quan trọng trong một bức ảnh, từ đó tăng độ chính xáccho việc sinh ra câu mô tả
Với phương pháp này, nhóm nghiên cứu đã thành công trong việc xây dựng
mô hình sinh câu mô tả tiếng Việt cho bức ảnh Kết quả cho thấy mô hình đãtạo ra các câu tiếng Việt có độ chính xác cao và có thể áp dụng trong thực tế.Trong bài viết này, các đóng góp của chúng tôi bao gồm:
• Xây dựng tập dữ liệu tiếng Việt cho bài toán dựa trên hai bộ dữ liệuFlickr30k [24] và MSCOCO [15]
• Nghiên cứu, áp dụng mô hình tích chập đã được huấn luyện ResidualNeural Network cho bài toán
• Nghiên cứu, áp dụng kiến trúc Encoder-Decoder và cơ chế Attention cho
Trang 28CHƯƠNG 1: PHÁT BIỂU BÀI TOÁN
bài toán sinh câu mô tả tiếng Việt cho ảnh
Ứng dụng tự động tạo mô tả cho ảnh là ứng dụng sẽ tự động tạo câu mô tảphù hợp đối với bức hình đưa vào Hiện nay, có nhiều phương pháp giải quyếtvấn đề tự động tạo mô tả cho ảnh như: Template-based approaches, Retrieval-based approaches Những cách tiếp cận này tuy có thể giải quyết yêu cầu bàitoán là tạo mô tả phù hợp cho ảnh, tuy nhiên vẫn còn các hạn chế: Không thểđưa ra câu mô tả chính xác đối với các tổ hợp đối tượng không có trong dữ liệu,câu sinh ra có độ dài cố định, không phát hiện được hết các đối tượng trong ảnh, Vì vậy nhóm đưa ra hướng tiếp cận dựa trên phương pháp học sâu sử dụngkiến trúc Encoder-Decoder phối hợp với cơ chế Attention để giải quyết nhữngvấn đề này
Tự động tạo mô tả cho ảnh sử dụng phương pháp học sâu kết hợp với cơ chếAttention, hướng tiếp cận này đã giải quyết được các khó khăn mà các hướngtiếp cận truyền thống gặp phải, đồng thời cũng mang lại kết quả khả quan trongviệc tạo ra câu mô tả tương ứng với bức hình Sau khi người dùng đưa vào bứchình bất kỳ, hệ thống sẽ lập tức xác định các đặc điểm của bức hình và tiếnhành tạo câu mô tả dựa vào những đặc điểm đã xác định từ trước Một số kháiniệm cần biết trước khi đi vào phát biểu bài toán một cách cụ thể:
• Encoder - Decoder: Là kiến trúc thông thường được sử dụng trong mô hìnhtuần tự (Từ chuỗi sang chuỗi Thuật ngữ này chỉ một lớp các bài toán hoặccác kiến trúc mô hình có đầu vào và đầu ra là một chuỗi các phần tử),
Trang 29CHƯƠNG 1: PHÁT BIỂU BÀI TOÁN
bộ giải mã (Encoder) sẽ mã hóa chuỗi đầu vào thành một biểu diễn gọi là
"vector ngữ cảnh" Từ vector này bộ giải mã (Decoder) sử dụng để sinhchuỗi đầu ra
Phát biểu bài toán: Với đầu vào là bức hình của người dùng, ứng dụng sẽ trả vềcâu mô tả tiếng Việt phù hợp với đối tượng xuất hiện trong hình nhất
Những khó khăn, thách thức trong việc hiện thực ứng dụng:
• Việc xác định các đối tượng, cảnh vật, hành động trong ảnh đòi hỏi sựchuẩn xác cao để khi chuyển hóa thành vector mô hình có thể học được mốiquan hệ giữa các đối tượng
• Việc có thể tạo ra được câu mô tả phù hợp, đúng về ngữ pháp, từ vựng đòihỏi các câu mô tả trong tập dữ liệu phải chính xác về cấu trúc câu cũngnhư ngữ pháp
• Câu mô tả sinh ra phải nói lên được mối liên hệ giữa màu sắc, đối tượng,hành động, cảnh vật có trong bức hình
Ở chương này chúng ta đã có cái nhìn tổng quan về bài toán tự động tạo câu
mô tả tiếng Việt cho ảnh cũng như những khó khăn và thách thức trong quátrình thực hiện bài toán này
Trang 30Chương 2
CÁC NGHIÊN CỨU LIÊN QUAN
Chương này sẽ trình bày về một số nghiên cứu liên quan đã được ứng dụng,
ưu điểm, nhược điểm của những nghiên cứu đó và lý do tại sao các nghiên cứuđược đề cập không được áp dụng để giải quyết bài toán trong luận văn này
Mô hình tự động tạo mô tả cho ảnh được giới thiệu trong bài báo [1] Môhình tạo mô tả cho ảnh là ứng dụng để đưa ra những câu mô tả cho bức ảnhđầu vào, mô hình cần đưa ra những câu mô tả mang tính đúng đắn về mặt ngữpháp, trong câu cần phải thể hiện được những đối tượng chính trong ảnh, đồngthời câu tạo ra cần chỉ ra được mối liên kết giữa các đối tượng trong ảnh vớicác hành động cũng như là cảnh vật xung quanh Hiện đã có nhiều công ty,doanh nghiệp lớn đã nghiên cứu, ứng dụng mô hình tự động tạo câu mô tả như:Google, Microsoft, Mô hình tự động tạo câu mô tả được ứng dụng vào trongnhiều lĩnh vực khác nhau: y học [11], giao thông [14] và trong các trang mạng
Mô hình tạo mô tiếng Việt cho ảnh với nhiệm vụ là tạo ra các câu mô tả tiếng
Trang 31CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
Việt liên quan tới bức ảnh đầu vào Các hướng tiếp cập phổ biến nhất và cácnghiên cứu để áp dụng cho mô hình tạo mô tả cho ảnh là: Retrieval based imagecaptioning [4], [6], [18], Template based image captioning [12], [17], [13], Deepneural network based image captioning [10], [9], [23], [21]
Tạo mô tả ảnh dựa vào truy xuất (retrieval-based) Một trong những phươngpháp thường được sử dụng trong những giai đoạn đầu phát triển bài toán mô
tả ảnh Với đầu vào là một bức ảnh, sử dụng phương pháp truy xuất được sửdụng để tạo câu mô tả cho ảnh qua việc truy xuất một hoặc nhiều câu mô tảđược định nghĩa sẵn trong tập các câu mô tả Câu mô tả được tạo ra có thể làcâu đã có sẵn trong dữ liệu hoặc cũng có thể kết hợp từ nhiều câu có sẵn Cụthể [4] định nghĩa ra một không gian ngữ nghĩa bao gồm ba thành phần chính
là <đối tượng, hành động, cảnh vật> để liên kết hình ảnh với các câu tươngứng và đo độ tương đồng giữa ảnh và câu định nghĩa có sẵn Câu nào gần vớiảnh đầu vào nhất sẽ được chọn làm câu mô tả cho bức ảnh đầu vào Dưới đây
sẽ trình bày một số nghiên cứu sử dụng phương pháp này:
Trang 32CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
Hình 2.1: Minh họa cơ chế tạo mô tả ảnh dựa vào truy xuất (retrieval-based).Nguồn: https://www.researchgate.net/
Im2Text: Describing Images Using 1 Million Captioned Photographs
Trong nghiên cứu [18], nghiên cứu đã nêu lên các việc tạo câu mô tả phù hợpcho bức ảnh còn gặp nhiều thử thách như: cách thể hiện câu mô tả một cách tựnhiên như con người, làm sao để câu mô tả tạo ra đúng với ngữ pháp, và làmsao để nội dung của câu mô tả tạo ra thể hiện rõ ràng nội dung của bức ảnh.Với mục đích là “tell the story behind the image” (kể câu chuyện đằng sau bứcảnh), nhóm tác giả đã đề xuất một mô hình có khả năng xếp loại các câu mô
tả có nội dung gần với bức ảnh nhất và sử dụng câu có kết quả cao nhất làmcâu mô tả cho ảnh Phương pháp nhóm tác giả đề ra gồm ba giai đoạn chính là:
Trang 33CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
thu thập dữ liệu ảnh và câu mô tả tương ứng từ các bộ sưu tập trên mạng, sau
đó tận dụng ngữ nghĩa thể hiện từ hình ảnh thu về để tiến hành xếp hạng độtương đồng, cuối cùng chọn ra câu mô tả của bức hình xếp hạng cao nhất làmcâu mô tả cho bức hình đầu vào
Ba đóng góp chính của nghiên cứu này là: Một bộ dữ liệu lớn chứa hình ảnh
và câu mô tả tương ứng được viết bởi con người, và đã được nhóm lọc lại đểđảm bảo câu mô tả thể hiện nội dung của bức ảnh Một phương pháp tạo mô
tả tận dụng việc biểu diễn bức ảnh để truy xuất câu mô tả từ bộ dữ liệu tớibức ảnh đầu vào Một phương pháp tập mô tả ảnh tận dụng cả việc biểu diễnbức ảnh và dự đoán nội dung của bức ảnh (sự vật, hành động, đồ vật và cảnhquang) để tạo ra câu mô tả liên quan tới ảnh đầu vào
Choosing Linguistics over Vision to Describe Images
Phương pháp áp dụng ở trên cho rằng là với bất kỳ một bức ảnh đầu vào sẽluôn có một câu mô tả trong bộ dữ liệu thể hiện được nó Nhưng giả thuyết khó
có thể áp dụng đối với thực tế Vì vậy, thay vì chỉ sử dụng trực tiếp những câu
mô tả truy xuất từ bộ dữ liệu có sẵn, các câu mô tả được truy xuất sẽ được tậndụng để tạo nên câu mô tả mới cho bức ảnh đầu vào [6]
Trang 34CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
Hình 2.2: Minh họa cơ chế tạo mô tả ảnh dựa vào bộ ba đối tượng Nguồn:https://cdn.iiit.ac.in/
Trong nghiên cứu [6], từ bộ dữ liệu hình ảnh cùng các câu mô tả tương ứng,nhóm tác giả đã rút trích các cụm từ mang các ý nghĩa ngôn ngữ từ các câu mô
tả có sẵn, các cụm từ chung nhóm ảnh sẽ được xếp loại dựa vào độ tương đồngcủa ảnh Các cụm từ sau đó sẽ được gom lại thành bộ ba bao gồm thuộc tínhcảnh, đối tượng và động từ để hỗ trợ quá trình sinh câu mô tả
Ba đóng góp chính của nghiên cứu này là: Một hướng tiếp cận tạo câu mô
tả giống người sử dụng các thông tin thu được từ câu mô tả có sẵn Xây dựng
mô hình và đưa ra đánh giá trên bộ dữ liệu IAPR TC-12 – gồm 20.000 hìnhảnh tĩnh được chụp từ khắp nơi trên thế giới, bộ dữ liệu bao gồm ảnh của nhiềuhoạt động, thể thao, con người, động vật, Và mô hình của nhóm tác giả thuđược kết quả tốt nhất vào thời điểm bài báo được viết với số điểm Bleu-1 là 64.Phương pháp tạo mô tả cho ảnh dựa vào truy xuất tuy đưa ra các câu mô tảđúng với ngữ pháp như con người cho bức ảnh đầu vào, nhưng những câu mô
tả này bị hạn chế bởi bộ dữ liệu, phương pháp này không thể sử dụng để sinhnhững câu thích ứng với ảnh có các tổ hợp đối tượng không có trong dữ liệu,những câu mô tả này khi tạo ra có thể không liên quan đến nội dung của bức
Trang 35CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
ảnh Phương pháp tạo mô tả ảnh dựa vào truy xuất bị giới hạn trong khả năng
mô tả lại các bức hình mới không có trong dữ liệu
Trong các nghiên cứu ban đầu của bài toán tạo mô tả cho ảnh, một phươngpháp phổ biến thường được sử dụng là tạo mô tả dựa vào biểu mẫu Thôngthường để sử dụng phương pháp dùng biểu mẫu để tạo mô tả cho ảnh, một bộbao gồm các khái niệm trực quan cần phải được xác định trước Các khái niệmtrực quan sẽ được kết nối với biểu mẫu câu hoặc là quy tắc văn phạm cụ thểcủa một ngôn ngữ để tiến hành sinh câu Dưới đây sẽ trình bày một số nghiêncứu sử dụng phương pháp này:
Hình 2.3: Minh họa cơ chế tạo mô tả ảnh dựa vào biểu mẫu (template-based)Nguồn: https://www.researchgate.net/
Efficient Image Annotation for Automatic Sentence Generation
Nghiên cứu được công bố vào năm 2012 ở hội nghị quốc tế acm về đa phươngtiện [20], nghiên cứu đặt giả định là nội dung của một bức ảnh có thể được biểudiễn bằng nhiều cụm từ khóa, và câu mô tả có thể được tạo ra bằng cách nốicác cụm từ khóa lại với nhau dưới một mô hình ngữ pháp Cụ thể nghiên cứuchỉ ra với các cách tiếp cận bằng thuật toán dựa vào truy xuất (retrieval-based)rất khó để áp dụng đối với các dữ liệu lớn và tổng quan, sử dụng phương pháp
Trang 36CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
trước đây cần phải quản lý nhãn cho từng thuộc tính và cần thủ công chỉ địnhtừng nhãn vào đúng hình ảnh phù hợp Tóm lại dữ liệu sử dụng cho các phươngpháp đó thường nhỏ và thiếu tính tổng quan đối với nhiều loại hình ảnh khácnhau Nghiên cứu đã đưa ra phương pháp tạo mô tả ảnh bằng việc học nhiều
từ khóa (Multi-keyphrase Learning), cụ thể với một câu mô tả sẽ được đưa quamột bộ lọc sử dụng term frequency–inverse document frequency (TF-IDF) đểlấy ra được các từ khóa (keyphrase) Sau quá trình lọc các từ khóa, các từ này
sẽ được đưa qua hai mô hình tính toán xác suất, nếu các từ khóa thu được giốngvới các từ khóa trong bộ dữ liệu, câu đó sẽ được chọn làm mô tả cho bức ảnh,còn nếu các từ khóa thu được khác với dữ liệu, các từ khóa này sẽ được đưa quamột mô hình tính xác suất ngữ pháp để dự đoán từ tiếp theo sau các từ khóa
để tạo nên câu hoàn chỉnh
Term frequency–inverse document(TF-IDF) [8] là một kĩ thuật sử dụng trongkhai phá dữ liệu văn bản Trọng số này được sử dụng để đánh giá tầm quantrọng của một từ trong một văn bản Với TF là là số lần từ xuất hiện trong vănbản Vì các văn bản có thể có độ dài ngắn khác nhau nên một số từ có thể xuấthiện nhiều lần trong một văn bản dài hơn là một văn bản ngắn
Trang 37CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
Inverse Document Frequency(Nghịch đảo tần suất của văn bản), giúp đánhgiá tầm quan trọng của một từ Khi tính toán TF , tất cả các từ được coi như
có độ quan trọng bằng nhau Nhưng một số từ như “is”, “of” và “that” thườngxuất hiện rất nhiều lần nhưng độ quan trọng là không cao Như thế chúng tacần giảm độ quan trọng của những từ này xuống
500 ảnh để kiểm thử ESP Game, với 60000 hình ảnh được tạo mô tả thông quatrò chơi IAPR-TC12 với 20000 ảnh
Bốn đóng góp chính của nghiên cứu gồm: Thể hiện vấn đề tạo câu mô tả choảnh bằng cách sử dụng nhiều cụm từ khóa Đề xuất phương pháp học nhiềunhãn cho chú thích, bài toán con của bài toán nhiều cụm từ khóa Đánh giáphương pháp được đề xuất để tìm hiểu nhiều nhãn bằng cách sử dụng bộ dữliệu cho chú thích hình ảnh Đánh giá cách tiếp cận được đề xuất mà các câuđược tạo ra bằng cách kết nối các cụm từ khóa với một mô hình ngữ pháp thửnghiệm chỉ sử dụng tập dữ liệu bằng hình ảnh và câu văn
Phương pháp sinh câu mô tả cho ảnh theo biểu mẫu có thể tạo ra được cáccâu mô tả đúng ngữ pháp, và câu tạo ra bằng phương pháp này thường sẽ liênquan tới bức ảnh hơn là những câu tạo ra sử dụng phương pháp truy xuất Tuy
Trang 38CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
nhiên, vẫn có những hạn chế của việc sử dụng phương pháp theo biểu mẫu.Bởi vì câu mô tả được tạo cố định theo khuôn của biểu mẫu (template basedframework), nên câu tạo ra thường bị giới hạn lại bởi nội dung bức ảnh mà môhình có thể nhận được Hơn nữa việc sử dụng các biểu mẫu câu tạo ra thườngrập khuôn và không được tự nhiên như người viết
Với sự phát triển của lĩnh vực học sâu, những nghiên cứu gần đây bắt đầudựa vào sự hỗ trợ của các mạng học sâu để tự động tạo ra câu mô tả cho ảnh.Tạo mô tả cho ảnh dựa vào tiếp cận học sâu (deep-learning based) được chia rathành các phương pháp: dựa trên học đa phương thức (Image captioning based
on multimodal learning), dựa trên khung mã hóa-giải mã (Image captioningbased on the encoder-decoder framework), dựa vào cơ chế Attention (Attentionguided image captioning)
Hình 2.4: Minh họa kiến trúc tổng quan của tiếp cận học đa phương thức timodal) Nguồn: https://www.researchgate.net/
(mul-Tạo mô tả ảnh dựa trên học đa phương tiện
Nhờ vào các mạng học sâu, các hướng tiếp cận tạo mô tả cho ảnh được đề
Trang 39CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
liệu như cách tiếp cận truy xuất (retrieval based) hay bị cố định vào cấu trúcvăn phạm khuôn mẫu như hướng tiếp cận sử dụng biểu mẫu (template based).Những phương pháp sử dụng học sâu có thể cho ra những câu biểu cảm và cấutrúc linh hoạt, phong phú hơn
Cấu trúc tổng quan của hướng tiếp cận học đa phương tiện (multimodallearning) cho bài toán tạo mô tả cho ảnh được đề cập trong hình 2.4 Cụ thể vớibức hình đầu vào, các đặc điểm của bức hình đó sẽ được trích xuất ra nhờ vàomột mô hình trích xuất đặc trưng như là mạng tích chập (deep convolutionalneural networks), sau đó các đặc trưng ảnh thu được sẽ được đưa tiếp vào mộtmạng ngôn ngữ (language model) để tiến hành liên kết các đặc trưng của ảnh
và các đặc trưng của từ vào cùng một không gian Sau đó sẽ bắt đầu dự đoán
ra từ kế tiếp dựa vào các đặc trưng của ảnh và từ tạo ra trước đó
Nghiên cứu [9] đã đề xuất sử dụng một mô hình ngôn ngữ tạo mô tả choảnh dựa vào các bức ảnh đầu vào Phương pháp của nhóm nghiên cứu sử dụngmột mô hình ngôn ngữ log-song tuyến (log-bilinear) Cụ thể, mô hình ngôn ngữđược sử dụng để dự đoán từ Wt dựa vào các từ ngữ cảnh trước đó W1, ,Wt-1: P(Wt | W1, , Wt-1) Nhóm nghiên cứu làm mô hình phụ ngôn ngữphụ thuộc vào bức ảnh đầu vào qua việc thêm các đặc trưng của ảnh như làbias cho từ dự đoán kế tiếp P(Wt | W1, , Wt-1, I) với I là đặc trưng ảnh.Trong phương pháp của nhóm nghiên cứu, hình ảnh được thể hiện quan mạngtích chập (Convolutional Neural Network) , và mô hình sẽ học các đặc trưng củaảnh và từ thông qua quá trình lan truyền ngược xuyên suốt mạng lưới Bằngcách sử dụng này, một câu mô tả ảnh có thể được tạo ra theo từng từ, với từng
từ được tạo ra dựa vào đặc điểm ảnh và đặc điểm của từ trước nó
Trang 40CHƯƠNG 2: CÁC NGHIÊN CỨU LIÊN QUAN
Tạo mô tả ảnh dựa trên khung mã hóa-giải mã
Phương pháp khung mã hóa-giải mã (encoder–decoder framework) ban đầuđược thiết kế để phục vụ cho bài toán dịch máy – dịch từ ngôn ngữ này sangmột ngôn ngữ khác
Hình 2.5: Minh họa kiến trúc tổng quan của tiếp cận sử dụng khung mã hóa-giải
mã (encoder-decoder) Nguồn: https://www.researchgate.net/
Lấy cảm hứng từ ý tưởng mô hình dịch máy, nghiên cứu [10] đã đề ra mộthướng tiếp cận mới, nhóm cho rằng bài toán tạo mô tả cho ảnh cũng có thểhiểu như một bài toán dịch máy, với đầu vào là một hình ảnh và đầu ra là mộtcâu Đối với bài toán tạo mô tả ảnh sử dụng phương pháp này, một bộ mã hóa(encoder) sẽ mã hóa bức ảnh thành các vector thể hiện trung gian, sau đó một
bộ giải mã (decoder) sử dụng mạng hội quy (recurrent network) sẽ nhận nhữngvector ảnh làm đầu vào và tạo ra một câu theo từng từ
Nghiên cứu [10] giới thiệu mô hình sử dụng bộ giải mã – dịch mã vào bài toántạo mô tả cho ảnh, nhóm nghiên cứu sử dụng mạng hồi quy bộ nhớ dài-ngắnhạn (Long Short-Term Memory - LSTM) để mã hóa các dữ liệu dạng chữ và sửdụng một mạng tích chập (Convolutional Neural Network - CNN) để mã hóacác dữ liệu hình ảnh Sau đó mô hình sẽ tối ưu dựa vào độ mất mát khi so sánhxếp hạng cặp từ, các dữ liệu ảnh được mã hóa sẽ được đưa vào một không giannhúng được mở rộng qua trạng thái ẩn (hidden states) của LSTM, trong không