1. Trang chủ
  2. » Luận Văn - Báo Cáo

Khóa luận tốt nghiệp Công nghệ thông tin: Sinh chú thích tiếng Việt tự động cho hình ảnh trong lĩnh vực chăm sóc sức khỏe trên bộ dữ liệu VIECAP4H

76 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Sinh chú thích tiếng Việt tự động cho hình ảnh trong lĩnh vực chăm sóc sức khỏe trên bộ dữ liệu VIECAP4H
Tác giả Dỗ Gia Bảo
Người hướng dẫn THS. Võ Duy Nguyên, TS. Nguyễn Tấn Trần Minh Khang
Trường học Trường Đại học Công nghệ Thông tin - Đại học Quốc gia Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ thông tin
Thể loại Khóa luận tốt nghiệp
Năm xuất bản 2022
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 76
Dung lượng 40,67 MB

Nội dung

Trong khóa luận tốt nghiệp lần này, tôi sẽ nghiên cứu bài toán Image Captioning này sinh ra câu chú thích caption bằng tiếng Việt — ngôn ngữ có hơn 100 triệu người sử dụng.. ” | Với nhữn

Trang 1

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KHOA HỌC - KỸ THUAT THONG TIN

DO GIA BAO

KHOA LUAN TOT NGHIEP

SINH CHU THÍCH TIENG VIET TU DONG CHO HÌNH

ANH TRONG LĨNH VUC CHAM SOC SỨC KHỎE

TREN BO DU LIEU VIECAP4H

Image Captioning for Healthcare domain in Vietnamese VieCap4H

dataset

CU NHAN NGANH CONG NGHE THONG TIN

TP HO CHi MINH, 2022

Trang 2

ĐẠI HỌC QUOC GIA TP HO CHÍ MINH

TRUONG DAI HOC CONG NGHE THONG TIN

KHOA KHOA HỌC - KY THUAT THONG TIN

DO GIA BẢO - 18520482

KHÓA LUẬN TÓT NGHIỆP

SINH CHU THÍCH TIENG VIET TỰ DONG CHO HÌNH

ANH TRONG LĨNH VUC CHAM SOC SỨC KHỎE

TREN BO DU LIEU VIECAP4H

Image Captioning for Healthcare domain in Vietnamese VieCap4H

dataset

CỬ NHÂN NGANH CONG NGHỆ THONG TIN

GIANG VIEN HUONG DAN THS VO DUY NGUYEN

TS NGUYEN TAN TRAN MINH KHANG

TP HO CHÍ MINH, 2022

Trang 3

THONG TIN HOI DONG CHAM KHÓA LUẬN TOT NGHIỆP

Hội đồng cham khóa luận tốt nghiệp, thành lập theo Quyết định số

ce beee eee eeeeeeeeeen ees ngày của Hiệu trưởng Trường Dai hoc Công

nghệ Thông tin.

Trang 4

LOI CAM ON

Để hoàn thành khóa luận tốt nghiệp này, tôi đặc biệt gửi lời cảm on sâu sắc

và chân thành đến hai Thầy Th§ Võ Duy Nguyên và Thầy TS Nguyễn Tấn Trần Minh Khang - hai người Thay đã tận tình hướng dẫn tôi trước, trong và sau khoảng thời gian thực hiện đề tài Nhờ có những định hướng rõ ràng và sự giúp đỡ xuyên suốt trong quá trình thực hiện đề tài từ hai Thầy đã giúp tôi hình

thành nhiều ý tưởng đề thực hiện khóa luận tốt nghiệp một cách tốt đẹp.

Tôi chân thành gửi lời cảm ơn đến toàn thể quý Thầy/Cô trong và ngoài trường Đại học Công nghệ Thông tin — Dai học Quốc gia Thành phó Hồ Chí Minh

đã giảng dạy tận tình và giúp đỡ tôi trong suốt 04 năm học tập dưới mái trường này.

Tôi cũng xin cảm ơn nhóm UIT — Together Research Group, đặc biệt là em Bùi Cao

Doanh — sinh viên khóa K14 khoa Khoa học Máy tính đã giúp đỡ và hỗ trợ tôi rất nhiệt tình trong thời gian thực hiện khóa luận tốt nghiệp.

Bên cạnh sự chủ động tìm hiểu rất nhiều kiến thức mới, tôi còn nhận được sự dạy bảo cùng những lời góp ý chuyên môn một cách chân tình đến từ Thầy TS.

Trần Anh Tuấn — giảng viên khoa Toán — Tin trường Dai học Khoa học Tự nhiên (ĐHQG — HCM) Nhờ đó, tôi đã tích lũy được nhiều kinh nghiệm cho bản thân và

lấy đó làm hành trang phục vụ cho công việc sau này.

Dù đã nỗ lực có gắng hoàn thiện khóa luận tốt nghiệp này, song chắc chắn sẽ không tránh khỏi những thiếu sót Tôi kính mong nhận được sự chỉ bảo và góp ý tận

tình từ quý Thầy/Cô dé đề tài được hoàn thiện hơn.

Cuối cùng tôi muốn nói lời cảm ơn đến tất cả mọi người đã giúp đỡ tôi hoàn

thiện mình như ngày hôm nay.

TP.Hồ Chí Minh, tháng 06 năm 2022

Sinh viên thực hiện

Dé Gia Bảo

Trang 5

MỤC LỤC

Churong no -::1 2

1.1 Động lực nghiên CU eeesssssssssssssssssssssssssssssssssssssssssessssssssssssssssssssssssssssssssssnssssssssssssssssss 2

1.2 Bài toán Image Captioning -ccccceeeeeeerirrrrrtrtiirrriririririrrsriirii

1⁄2.1 Phát biểu bài toán ccceeirirrrrrrrrre 3

1.2.2 Ứng dụng của bài toán Image Captioning -.-. -cz-52+ 3

1.2.2.1 Hỗ trợ thị giác cho người khiếm thị -x 3

1.2.2.2 Tự động chú thích hình anh trong Mạng Xã hội + 1.2.3 _ Thách thức bài toán - - 5+ Hư 5

1.3 Mục tiêu và phạm vi nghiên CỨu ecveseeeeeereereeseeeersrrririeisrree Ổ, 1.4 Đóng góp của nghiên cứỨu ccccccccveveeereeetrterrtrtrertrreirtrrrirreirrreerrree 7

1.5 Bố cục của báo cáo khóa luận tốt nghiệp . eseeeeseees

Chương 2 CƠ SỞ LÝ THUYÊT 22+22EE+++22EEEE+EEEEEEtrEEEEErrrtrrkrcree 9

2.1 Artificial Neural Network (ANN) eeereseiirirrrrsrve, 2.2 Convolutional Neural Network (CNN) «eo LO

2.2.1 Một số lớp thường xuất hiện trong mang CNN - 0

2.2.1.1 Lớp Input và Output -. -ce-eeeeeeesseeessseesseeeseee.e LO 2.2.1.2 Lớp Convolutional ssssssssssssssssssssssssssssssssssssssssssssssssssesssssssssssssssssssssssssssees LL 2.2.1.3 Lớp Pooling.

2.2.1.4 Lớp Fully — Connected -. -ceceeeeeeeeeeeeeeeeesseeesreeoe LO

2.2.2 Một số mang CNN nổi tiếng.

2.2.2.1 LeNet — 5 (1998) eo LO 2.2.2.2 AlexNet (2012)

Trang 6

2.2.2.3 GoogLeNet (Inception — V1) (20 14) .e- c-eeeeee L7 2.2.2.4 VGG Net (2014) iu LO) 2.2.2.5 ResNet (2015) iu LO) 2.2.2.6 ResNeXt (2017) iu 2 L

2.3 Các mô hình dịch chuỗi i 2:+eccettieevEEErreeeetrtrreverrrreevrrrroecvee 22

2.3.1 Recurrent Neural Network (RNN) cai 23 2.3.2 Long Short — Term Memory (LS'TM) - ¿55 55+5+<<> 24 2.3.3 Bidirectional Recurrent Neural Network (BRNN) - 25

2.3.4 TramsfOrmer ccsccceececesseseseseecseseseseeescseseeeeneseseseeeeseseseseseeecssssseaees 27

Chương 3 HƯỚNG TIẾP CAN BÀI TOÁN IMAGE CAPTIONING 35

3.1 Các hướng tiếp cận bài toán dựa trên mô hình LSTM 3 5

3.1.2 CNN + LSTM + Cơ chế Attention - -c¿5225scz2225scczzz 38

3.2 Các hướng tiếp cận hiện đại dựa trên kiến trúc Transformer 40

3.2.1 | Meshed— Memory Transformer ( M? Transformer) - 40

3.2.2 RSTNG( TH hư 43

Chương 4 PHƯƠNG PHAP DE XUẤTT 222++z+2222vvvvrrrrrrrrrrrev 47

4.1 Tổng quan phương pháp dé xuất s-.eeeeereereeeeeeeeeeev AT

4.2 TG2F Module eeeeeeeeerrrrrrrrrrrrrrrerrruu 4,

4.3 Adaptive Attention Module sssssssessssssessssssesessssssssssuesssssessnsassesssssssssseeesees 4D)

Chương 5 QUY TRÌNH THUC NGHIỆM -22222cccz+cccvvvsee 51

5.1 Bộ dữ liệu D1 5.2 Độ đo đánh giá tự Ong sssssssssssssssssssssssssssssssssssssssssssssssssssssssesssssssssssssssssssssssssnsssssssss D2 5.3 Cài đặt chỉ tiẾt eereereetrrrrrrrrrrrrrrirrirrirrrrrrroesooov ĐỔI

Trang 7

5.4 Phân tích kết quả và đánh giá -.-.-sssrerrerrerrrrerrerrrrrrrre

5.5 Trực quan hóa kết quả

Chương 6 KÉT LUẬN VÀ HƯỚNG PHÁT TRIEN

Trang 8

DANH MỤC HÌNH Hình 1.1: Mô hình bài toán Image Captioning cho tiếng Việt wed

Hình 1.2: Thiết bi Horus đến từ công ty khởi nghiệp Thụy Si Eyra có nhiệm vụ mô

tả hình ảnh phía trước và chuyền sang giọng nói thông qua tai nghe cho người

khiếm thị -.e S4 Hình 1.3: Ung dung Image Captioning trên Facebook -e<-ee-Ð

Hình 2.1: Sự tương quan giữa mang neural Sinh học va mang neural Nhân tao 10

Hình 2.2: Cấu trúc của một mạng FeedForward Neural Network đơn giản 11

Hình 2.3: Phép tích chập giữa ma trận bức ảnh đầu vào va kernel

Hình 2.4: Ví dụ về Max Pooling và Average Pooling với window size = 2 cùng bước nhảy stride = 2 -cccvvvvirttiriiirirririiiiiiiiiirriiiiiriirirrrrirriieirrrerorrrir LO Hình 2.5: Lớp Fully — Connected -e-c e-ececveeseseeerrerrererrrrrrrrsre LA Hình 2.6: Quá trình phát triển của các mạng CNN e.seee.e LD Hình 2.7: Kiến trúc mạng LeNet — 5 -esceseeeeeeerreereereereeeseeeeree LD Hình 2.8: Kiến trúc mạng AlexNet -s-esrreereeeeeeerrerrereereerseeeeee LO Hình 2.9: Kiến trúc mang Inception — VI

Hình 2.10: Khối Inception module Hình 2.11: Kiến trúc mạng VGG — 16 «-seeeeeeersereereereerseeseeeee LO Hình 2.12: Kiến trúc mạng ResNet -essereeeeeserrererereereresesessuo 20 Hình 2.13: Khối residual block

Hình 2.14: Kiến trúc mạng ResNet (trái) và kiến trúc mạng ResNeXt (phải) 22

Hình 2.15: Cấu trúc của một mạng Recurrent Neural Network đơn giản 23

Hình 2.16: Mô hình kiến trúc LSTM

Hình 2.17: So sánh sự khác nhau giữa RNN (trái) và BRNN (phải)

Hình 2.18: Ví dụ về mạng BRNN ở bài toán NER Đường mũi tên màu cam nằm ngang chính là hướng forward, đường mũi tên màu xanh nằm ngang chính là hướng 0960000 ,

Hình 2.19: Mô hình kiến trúc Transformer «esteem 29

Trang 9

Hình 2.20: Scaled Dot — Product Atf€TIfIOH - << << zszkkvEEeeeEeEskrrrrrerrerersre 32 Hình 2.21: Multi - Head Affenfion ‹ -ssersrrketrrirtkirtrriirriiririiriirirree 33

Hình 3.1: Mô hình Neural Image Caption (NIC) ccc-crsexeeexeeerserreee 35

Hình 3.2: Ví dụ về kỹ thuật Beam Search với beam size k = 3 Beam Search hỗ trợ

mô hình tìm k hướng đi tối ưu nhất dé tìm ra câu chú thích tốt nhất 38

Hình 3.3: Mô hình bài báo “Show, Attend and 'TelÏ”” -.-« c c«ecsecsexsersersee 39

Hình 3.4: Ví dụ về “soft” attention (phía trên) và “hard” attention (phía đưới) 40Hình 3.5: Tổng quan kiến trúc M? Transformer cho bài toán Image Captioning 41

Hình 3.6: Tổng quan kiến trúc RSTNet cho bài toán Image Captioning 44

Hình 3.7: Mat thông tin không gian khi flatten đặc trưng bức ảnh 44Hình 3.8: Ví dụ minh họa về visual word (màu đỏ) và non — visual word (màu xanh)

Xin EEEEDTE z2⁄27 HH NT 45

Hình 3.9: Adaptive Attention module - s-©<++++x£+xeEkteererteerketrxettekkrrreerrkee 46

Hình 4.1: Tổng quan phương pháp dé xuắt -s2.+ccseeesrrccetrrcezrree 47Hình 4.2: Chỉ tiết TG2F Module - ri 48

Hình 4.3: Chi tiết Adaptive Attention module -c-s+eceerrcceerrcczrrre 50Hình 5.1: Ví dụ về một bức anh trong bộ dữ liệu VieCap4H - 52

Hình 5.2: Chỉ số Brevity Penalty (BP) -::ceceverrrrreeeetrrrrtrrseerrrrrrrrrerrrrrie 55Hình 5.3: Trực quan hóa kết quả trên tập public — test và private — test của phương

pháp (M2, RSTNet) w/PhoBERT + TG2F với bộ trích xuất đặc trưng ảnh X —

Trang 10

DANH MỤC BANG

Bảng 3.1: Kết qua mô hình NIC trên bộ dữ liệu MS COCO -5- 52 38Bảng 3.2: Kết quả mô hình “Show, Attend and Tell ” trên bộ dữ liệu MS COCO 40Bang 3.3: Kết quả mô hình M? Transformer trên bộ dữ liệu MS COCO Trong đó,B-N, M, R, C, S là viết tắt của các độ đo BLEU-N, METEOR, ROUGE - L, CIDEr

i9 43

Bảng 3.4: Kết quả mô hình RSTNet trên bộ dữ liệu MS COCO Trong đó, B@N,

M,R,C, S là viết tắt của các độ đo BLEU@N, METEOR, ROUGE - L, CIDEr va

Trang 11

DANH MỤC TU VIET TAT

STT Tên viết tắt Tên đầy đủ

1 ANN Artificial Neural Network

2 BLEU BiLingual Evaluation Understudy

3 BRNN Bidirectional Recurrent Neural Netwok

4 CNN Convolutional Neural Network

5 LSTM Long — Short Term Memory

6 M2? Transformer Meshed — Memory Transformer

7 NIC Neural Image Caption

8 RNN Recurrent Neural Network

9 RSTNet Relationship — Sensitive Transformer

10 VLSP Vietnamese Language and Speech Processing

Trang 12

TOM TAT KHÓA LUẬN

Image Captioning — bài toán kết hợp giữa hai chuyên ngành Thị giác Máy tính

(Computer Vision) và Xử lý Ngôn ngữ Tự nhiên (Natural Language Processing) —

nhằm phát triển một mô hình có thé quan sat, hiểu được đặc trưng của thị giác vàgiao tiếp với chúng ta bằng ngôn ngữ tự nhiên Tuy nhiên, phần lớn các công trình

nghiên cứu bài toán này đều là tiếng Anh Sẽ là một thiếu sót cực kỳ lớn khi chúng

ta chỉ giới hạn khả năng của mô hình giao tiếp bằng một ngôn ngữ duy nhất

Trong khóa luận tốt nghiệp lần này, tôi sẽ nghiên cứu bài toán Image

Captioning này sinh ra câu chú thích (caption) bằng tiếng Việt — ngôn ngữ có hơn

100 triệu người sử dụng Trước hết, về vấn đề bộ dữ liệu, chúng ta đã có bộ dữ liệu

VieCap4H từ Ban Té chức cuộc thi VLSP 2021 cung cấp Tiếp theo, tôi sẽ nghiên

cứu tính khả thi và đánh giá mô hình khi áp dụng phương pháp mới được đề xuất dégiải quyết bài toán Image Captioning trên bộ dữ liệu tiếng Việt theo hướng tiếp cận

CNN + Transformer.

Khóa luận tốt nghiệp này tập trung vào việc cải thiện độ chính xác trên bàitoán này dựa trên phương pháp co sở RSTNet Cụ thé, tác giả khóa luận đề xuất

một module cải tiến từ bộ Grid Feature Extractor của mô hình RSTNet có tên là

TG2F giúp tăng cường kha năng biểu diễn anh và làm giàu thông tin đặc trưng bức

ảnh đầu vào Cùng với đó là đề xuất thay đôi mô hình Transformer gốc bằng môhình M? Transformer giúp mô hình khai thác tốt đặc trưng ảnh từ low — level đếnhigh — level Kết quả thu được rất cạnh tranh so với các đội thi trong cuộc thi VLSP

2021.

Trang 13

Chương 1 MỞ DAU

1.1 Động lực nghiên cứu

“People can summarize a complex scene in a few words without thinking twice,

It’s much more difficult for computer ” |

Với những tiến bộ trong lĩnh vực Machine Learning, đặc biệt là sự phát triểnbùng nỗ của các Thuật toán Deep Learning đã mở ra nhiều hướng nghiên cứu mới

cho cả hai lĩnh vực Computer Vision (Thị giác Máy tính), Xử lý Ngôn ngữ Tự

nhiên (Natural Language Processing) và thậm chí là kết hợp cả hai chuyên ngànhnày, Image Captioning là một trong số những bài toán đó Image Captioning — mộtbài toán đầy thách thức và hap dẫn trong lĩnh vực Trí tuệ Nhân tao [1] — giúp máy

tính có thê quan sat và “giao tiêp” với chúng ta thông qua câu mô tả.

Con người chỉ cần nhìn vào và diễn giải nội dung bức ảnh một cách nhanh

chóng nhưng đối với máy tính, bức ảnh chỉ đơn giản là ma trận các pixels Mô hình

hệ thống Image Captioning sẽ kết hợp các thông tin đặc trưng của ảnh và thông tinđặc trưng ngôn ngữ để sinh ra được câu chú thích mô tả đầy đủ các khía cạnh trên

bức anh băng ngôn ngữ tự nhiên cua con người.

Phần lớn các công trình nghiên cứu bài toán Image Captioning chủ yếu làquan tâm đến việc sinh ra câu chú thích bằng ngôn ngữ tiếng Anh Điều này vô tìnhlàm giới hạn khả năng sinh ra câu chú thích bằng những ngôn ngữ khác của hệ

thống Image Captioning Trong khóa luận tốt nghiệp lần này, tôi sẽ nỗ lực nghiêncứu dé có thé ứng dụng phương pháp mới nhất vào giải quyết bài toàn này bằng

ngôn ngữ tiếng Việt

Tiếng Việt thì khác rất nhiều và có ưu điểm so với tiếng Anh Một ưu điểmcủa tiếng Việt là van đề chuyển đổi từ Các từ trong tiếng Anh bị chuyên đổi là dongữ cảnh, cu thé ở đây là thì (tense) và đại từ nhân xưng Vi dụ: động từ “do”, tùytheo ngữ cảnh thì sẽ có những biến thể: do/does, did, done, doing, hay danh từ

1 https://ai.googleblog.com/2014/1 1/a-picture-is-worth-thousand-coherent.html

Trang 14

“apples” tùy theo ngữ cảnh thì sẽ có dạng số ít/số nhiều như apple/apples Đối vớitiếng Việt thì khác, thay vì phải chuyên đổi từ, chúng ta chỉ cần thêm các trợ từ “đã”(thì quá khứ), “đang” (thì tiếp diễn), “sẽ” (thì tương lai), trước động từ chính của

câu dé bồ trợ thì (tense) cho câu hay biểu diễn danh từ số nhiều bang từ “những”

Để xử lý tốt phần ngôn ngữ tiếng Việt trong bài toán Image Captioning, ngoàinhững đòi hỏi về bộ dit liệu lớn, chúng ta phải nắm rõ tường tận về cách vận dụng

ngôn ngữ đó dé có thê sinh ra câu chú thích có tính mạch lạc, trọn vẹn vê nghĩa.

1.2 Bài toán Image Captioning

1.2.1 Phát biểu bài toán

Image Captioning — hay còn gọi là bài toán sinh câu chú thích (caption) mô tả

nội dung bức ảnh đầu vào Trong phạm vi đề tài khóa luận tốt nghiệp, đầu vào làbức ảnh thuộc lĩnh vực Y tế - Chăm sóc Sức khỏe, đầu ra sẽ là câu chú thích mô tảbức ảnh bằng tiếng Việt

Input của bài toán: một bức ảnh thuộc lĩnh vực Y tế - Chăm sóc Sức khỏe

Output của bài toán: câu mô tả (caption) nội dung bức ảnh bằng tiếng Việt

3 TT TT Các bác sĩ đang chăm sóc

M cho bệnh nhân

Đầu vào Đầu ra

Hình 1.1: Mô hình bài toán Image Captioning cho tiếng Việt

1.2.2 Ung dụng của bài toán Image Captioning

1.2.2.1 Hỗ trợ thị giác cho người khiếm thị

Người khiếm thị đeo một thiết bị trợ thính và chụp hình ảnh và nhúng hệthống Image Captioning vào Hệ thống này sẽ đưa hình ảnh phía trước vào hệ thống

và sinh ra câu chú thích và phát thành giọng nói thông qua tai nghe.

Trang 15

Hình 1.2: Thiết bị Horus đến từ công ty khởi nghiệp Thụy Sĩ Eyra có nhiệm vụ mô

tả hình ảnh phía trước và chuyên sang giọng nói thông qua tai nghe cho người

khiếm thị”.

1.2.2.2 Tự động chú thích hình ảnh trong Mạng Xã hội

Tháng 04 năm 2016, Facebook đã công bố hệ thống tự động mô tả ảnh của

người dùng đăng tải lên Mạng xã hội này Cũng giống như thiết bị Horus, hệ thông

của Facebook cũng mô tả bức ảnh và chuyền ngôn ngữ sang giọng nói để giúp đỡ cho người khiếm thính có thể hiéu được bức ảnh như thé nào.

? safely/

Trang 16

https://www.zdnet.com/article/its-no-robot-guide-dog-but-this-wearable-aims-to-help-blind-people-move-Hình 1.3: Ứng dụng Image Captioning trên Facebook.

Ngoài những ứng dụng như trên, Image Captioning còn giúp ích rất nhiều

trong việc hỗ trợ hệ thông truy van ảnh bằng nội dung, sinh phụ dé cho video và

phim ảnh.

1.2.3 Thách thức bài toán

Sau đây tôi xin trình bày một số thách thức đối với bài toán Image Captioning

nói chung và bài toán Image Captioning bằng tiếng Việt nói riêng:

© Chất lượng ảnh là thách thức chung đối với các bài toán Thị giác Máy

tính: mờ, biến dang, ánh sáng, che khuất, góc nhìn,

e Viéc xây dựng bộ dữ liệu sẽ tốn rất nhiều thời gian và nhân lực Sẽ cần

rất lớn số lượng hình ảnh và đặc biệt khó khăn ở với gán chú thích vì

mỗi người tham gia gán chú thích sẽ có mỗi cách cảm nhận, lối viết chú

thích khác nhau về cùng một bức ảnh Do đó, cần phải đặt ra những

3 https://www.wired.co.uk/article/facebook-ai-image-recognition-caption-accessibility-blind-users

Trang 17

ràng buộc và quy định ban đầu trước khi thực hiện gán chú thích dé có

thể thống nhất, chuẩn hóa các câu chú thích thu được.

¢ Thiếu bộ dữ liệu bài toán dành cho tiếng Việt: Trong tầm hiểu biết của

tác giả khóa luận tốt nghiệp này thì hiện nay có bộ dữ liệu UIT — ViIC

[17] và VieCap4H [20] là hai bộ dữ liệu dành cho tiếng Việt mới được

công bố Chính vì vậy, trước khi hai bộ dữ liệu ra đời, bài toán Image Captioning sinh câu chú thích tiếng Việt phải sử dụng bộ dữ liệu tiếng Anh, tức là trước đó phải dịch các câu chú thích tiếng Anh sang tiếng Việt dé huấn luyện bằng hệ thống dich tự động Điều này ít nhiều có thể sinh ra câu chú thích tiếng Việt không chuẩn về ngữ pháp, câu từ không

trôi chảy.

e Sự khác biệt và đa dạng về mặt ngôn ngữ: tiếng Việt rất khác với tiếng

Anh về các thành phần từ, ngữ pháp và đại từ xưng hô Do đó, việc xử

lý tiếng Việt trong bài toán Image Captioning không những đòi hỏi về

một bộ dữ liệu lớn mà còn phải nam rõ chính xác cách sử dụng từ ngữ của ngôn ngữ đó để có thê tạo ra caption có tính mạch lạc, trôi chảy.

1.3 Mục tiêu và phạm vi nghiên cứu

Trong nội dung đề tài, tác giả khóa luận tốt nghiệp nghiên cứu các nội dung

chính:

e Khao sát và nghiên cứu các phương pháp giải quyết bài toán Image

Captioning bao gồm cách biểu diễn ảnh và các mô hình dịch chuỗi

thường được sử dụng, đặc biệt chú trọng theo các hướng tiếp cận bằng Deep Learning mới nhất hiện nay.

¢ _ Hệ thống kiến thức và giới thiệu một số mạng CNN và RNN nổi tiếng.

Những mô hình mạng này là nền tảng xây dựng các mô hình hệ thống

Image Captioning theo xu hướng mới nhất hiện nay.

Trang 18

e Tìm hiểu chỉ tiết các mô hình dịch chuỗi liên quan đến bài toán mô ta

anh: Long Short — Term Memory (LSTM) va Transformer.

e Đề xuất một cách tiếp cận mới trong kiến trúc dự đoán câu mô tả đầu

Ta.

1.4 Đóng góp của nghiên cứu

Nội dung báo cáo khóa luận tốt nghiệp trình bày các công trình tiêu biểu trước

đây của bài toán cũng như các hướng tiếp cận bài toán, đồng thời đề xuất hai sựthay đổi dựa trên phương pháp cơ sở: xây dựng TG2F module dùng dé làm giàu

thông tin đặc trưng bức ảnh va thay đổi kiến trúc Transformer thành kiến trúc M?Transformer giúp mô hình khai thác tốt đặc trưng ảnh từ low — level đến high —level Những đề xuất thay đổi này mang lại kết quả rất cạnh tranh

1.5 Bố cục của báo cáo khóa luận tốt nghiệp

Những phần còn lại của khóa luận tốt nghiệp được trình bày theo bố cục như

sau:

Chuong 2: CO SO LY THUYET

Trinh bày và giới thiệu lý thuyết co ban về một số mang CNN va RNN nỗitiếng

Chương 3: HƯỚNG TIẾP CẬN BÀI TOÁN IMAGE CAPTIONING

Giới thiệu một số phương pháp giải quyết bài toán Image Captioning theo

hướng tiếp cận LSTM và Transformer

Chương 4: PHƯƠNG PHAP DE XUẤT

Trinh bày những cải tiến trong phương pháp đề xuất dựa trên phương pháp cơ

sở RSTNet.

Trang 19

Chương 5: QUY TRÌNH THỰC NGHIỆM

Trình bày về bộ đữ liệu VieCap4H, độ đo đánh giá được sử dụng cho bài toánSinh câu mô tả cho ảnh, phân tích các kết quả thực nghiệm khác nhau trong quátrình nghiên cứu và trực quan hóa kết quả

Chương 6: KET LUẬN VÀ HUONG PHÁT TRIEN

Kết luận và đề xuất các hướng phát triển tiếp theo trong tương lai

Trang 20

Chương2 CƠ SỞ LÝ THUYET

Ở chương này, tôi xin giới thiệu sơ lược về các mô hình ANN nỗi tiếng hiệnnay Ứng dụng các kỹ thuật Deep Learning vào các bài toán Computer Vision cũng

như Natural Language Processing.

2.1 Artificial Neural Network (ANN)

Artificial Neural Network (ANN) là mạng xử ly thông tin được mô phỏng dựa

trên cơ chế hoạt động của hệ thống neural Sinh học (Biological Neural Network)trong não bộ con người Thanh phan cấu tạo nên ANN bao gồm số lượng lớn các tếbào neural đơn lẻ — còn gọi được gọi là các tế bào tính toán — được xem như đơn vị

xử lý thông tin cơ bản của một mang neural Các tế bào neural sắp xếp liên kề vớinhau tạo thành một lớp (layer), nhiều lớp như vậy kết nối với nhau sẽ tạo thành một

hệ thống mạng có cấu trúc phân tầng của Neural Network Các tầng liên kết với

nhau bang các ma tran trọng sỐ (weights) Quá trình học cua ANN được xem như làquá trình điều chỉnh các bộ trọng số (weights) liên kết giữa các lớp Tóm lại, mạngANN giống như não bộ con người, được học thông qua quá trình huấn luyện, có khả

năng lưu giữ những tri thức và sử dụng những tri thức đó trong việc dự đoán các dữ

liệu mới.

Có hai loại mạng ANN chính: FeedForward Network (Mạng truyền thắng) và

Recurrent Network (Mạng hồi quy)

Trang 21

A ossatessiaicras Artificial Neural Network

Biological Neural Network

Hình 2.1: Sự tương quan giữa mang neural Sinh hoc và mang neural Nhân tạo.

2.2 Convolutional Neural Network (CNN)

Convolutional Neural Network (CNN) 1a kiến trúc FeedForward Neural

Network thống trị hầu hết trong các bài toán Computer Vision Một mang CNNthường bao gồm nhiều lớp tích chập (convolution) giữa ma trận nhăm khai thác cácđặc trưng của ảnh Kiến trúc này được sử dụng trong các bài toán Computer Vision,đặc biệt là trong việc nhận dạng và phân loại các đối tượng từ ảnh hoặc video

2.2.1 Một số lớp thường xuất hiện trong mang CNN

2.2.1.1 Lớp Input va Output

Hai thành phần không thể thiếu trong mạng CNN chính là hai lớp: Input và

Output Trong đó, lớp Input sẽ nhận dữ liệu đầu vào và lớp Output sẽ trả về các giá

trị sau khi thực thi toàn bộ mạng neural.

10

Trang 22

Input layer Hidden layers Output layer

Hình 2.2: Cấu trúc của một mạng FeedForward Neural Network đơn giản

2.2.1.2 Lớp Convolutional

Đây là lớp cét lõi và cũng là lớp được sử dụng nhiều nhất trong mô hình mang

CNN Khái niệm “convolution” nghe có vẻ là một thuật ngữ phức tạp, hoa mỹ

nhưng thực tế không phải vậy Tích chập (convolution) thực chất là một phép nhân

ma trận cơ bản giúp chúng ta có thể rút trích các đặc trưng bức ảnh trên từng khía

cạnh tùy vào kernel sử dụng Kết quả của phép tích chập giữa ma trận hình ảnh và

kernel được gọi là Features Map.

Có thể hiểu kernel — cũng có thé gọi là filter — là một ma trận vuông lưu trữcác trọng số (weights) và những trọng số này luôn được cập nhật dé đảm bảo rằngvới một bức ảnh bất kì thì sẽ khai thác được đặc trưng tốt nhất Nếu xét về kích

thước không gian thì các kernel này nhỏ nhưng chúng giúp cho chiều sâu của đặctrưng ảnh được tăng lên Khi thực hiện phép tích chập, chúng ta sẽ di chuyền kernelxung quanh ảnh (di chuyển theo kiểu zigzag) để làm nổi bật các vùng trong ảnh

tương đồng với kernel này

11

Trang 23

các trọng số không cần thiết và chỉ giữ lại các trọng số có giá trị lớn, ngoài ra còn

giảm được chi phí tính toán trong mạng neural Sau khi Features Map trước đó đi

qua lớp Pooling, số lượng trọng số được giảm cực kì nhiều (chỉ giảm chiều dài vàchiều rộng nhưng chiều sâu không thay đôi)

Hai loại lớp Pooling phổ biến thường dùng là Max Pooling (lấy giá trị lớnnhất), Average Pooling (lay giá trị trung bình)

Có thé thấy với hình bên dưới, áp dụng Max Pooling có thé bỏ đi đến 75%trọng SỐ SẼ giúp mô hình nhẹ đi và tăng tốc độ thực thi

4 Nguồn ảnh: https://pbcquoc.github.io/cnn/

12

Trang 24

5

Hình 2.4: Ví dụ về Max Pooling va Average Pooling với window size = 2 cùng

bước nhảy stride = 2°.

O vi du trén, dé thuc hién pooling, chting ta dich chuyén cửa số window size

va thực hiện thay thé giá tri cho vùng mà cửa số đi qua bằng một giá trị đại diện duynhất: đối với Max Pooling sẽ lay đại diện vùng bằng trọng số có giá trị cao nhất, đối

với Average Pooling sẽ lấy đại diện vùng bang trung bình cộng các trọng số Sau

khi pooling thì chúng ta đã loại bỏ được 75% các trọng số để tránh hiện tượngOverfitting và tăng tốc độ huấn luyện

2.2.1.4 Lớp Fully — Connected

Sau khi truyền bức ảnh qua nhiều lớp Convolutional và Pooling thì mô hình đã

học được rất nhiều đặc trưng bức ảnh Lay vi dụ về bài toán Classification, lớp

Fully — Connected đóng vai trò như một bộ phân loại nhằm phân loại class: cónhiệm vụ kết hợp với các đặc trưng lại với nhau và cuối cùng áp dụng hàm kích

hoạt softmax đê cho ra xác suât phân loại dau ra.

5 Nguồn ảnh:

https://towardsdatascience.com/beginners-guide-to-understanding-convolutional-neural-networks-ae9ed58bb17d

13

Trang 25

VAR YY

Hình 2.5: Lớp Fully — Connected®.

Lớp Fully — Connected nhận đầu vào là các ma trận đặc trưng từ các lớp trước

đó và đầu ra của lớp trước Fully — Connected sẽ được làm phăng (hay còn gọi làflatten) thành vector một chiều trước khi đưa vào lớp Fully — Connected Các mang

thường sử dụng nhiều lớp Fully — Connected trước lớp Output nhăm tăng độ chính

xác cho kêt quả đâu ra.

Nhược điểm của việc sử dụng lớp Fully — Connected đó là vì có qua nhiềutrọng số (weights) nên chi phí tính toán rất lớn, tốc độ thực thi chậm Dù vậy, lớp

Fully — Connected van là lớp chủ đạo trong các mô hình CNN vi tính tiện lợi, cho

phép chúng ta huấn luyện từ đầu đến cuối (end — to — end) mà không cần phải

chuyên đổi sang hay huấn luyện thêm mô hình khác

2.2.2 Một số mạng CNN nỗi tiếng

Mạng CNN ra đời đã thúc đây sự phát triển của Computer Vision Hiện nay córất nhiều kiến trúc mạng CNN và các kiến trúc mới vẫn đang tiếp tục được khámphá và phát triển ngày qua ngày Trong phần này, tôi xin trình bày một số mạng

CNN nỗi tiếng thường được nhắc đến Các mạng CNN này đều từng giành được

giải thưởng lớn trong cuộc thi ImageNet (ImageNet Large Scale Visual Recognition

Challege — ILSVRC) qua từng năm.

6 Nguồn ảnh: https://stanford.edu/~shervine/teaching/cs-230/cheatsheet-convolutional-neural-networks

14

Trang 26

2.2.2.1 LeNet —5 (1998)

LeNet — 5 [2] được xem là mang CNN “lá cờ đầu”, ra đời vào năm 1998 bởi

GS.Yann LeCun - cha đẻ của kiến trúc CNN Mô hình này không chạy trên

ImageNet do thời điểm đó chưa có sự phát triển của dữ liệu và khả năng tính toán

nên mạng CNN vẫn chưa có cơ hội bùng nỗ Mô hình này chỉ giải quyết bài toánriêng biệt đó là nhận diện chữ số, kí tự, chữ viết tay (Handwritten Recognition)

LeNet — 5 là nguồn cảm hứng cho sự phát triển các mang CNN mà chúng ta sử

dụng ngày nay.

C3: í maps 16@10x10

INPUT số sesh maps S4: f' maps 16@5x5

32x32 S2: Í maps C5: layer Ƒ6:iayer OUTPUT

420 84 10

|

Full conrlection | Gaussian connections

Convolutions Subsampling Convolutions Subsampling Full connection

Hình 2.7: Kiến trúc mạng LeNet - 5 [2]

15

Trang 27

- _ Một số điểm nỗi bật của mạng LeNet — 5:

e Là kiến trúc CNN đơn giản nhất với 2 lớp Convolutional và 3 lớp

Fully — Connected (“5” trong LeNet — 5 là tổng số lớp Convolutional

va Fully — Connected).

e Lớp Subsampling ở mô hình này là tên gọi của lớp Average Pooling

của các kiến trúc CNN hiện đại ngày nay

e - Mô hình có khoảng 60.000 tham số

2.2.2.2 AlexNet (2012)

Được công bố bởi nhóm SuperVision gồm: Alex Krizhevsky, Ilya Sutskever

và Geoffrey Hilton vào năm 2012, AlexNet [3] giành chiến thắng vượt trội vào cuộc

thi ImageNet năm đó.

pooling pooling

Hình 2.8: Kiến trúc mạng AlexNet [3]

- _ Một số điểm nổi bật của mạng AlexNet:

e Là kiến trúc CNN với 8 lớp gồm 5 lớp Convolutional cùng với 3 lớp

Fully — Connected.

e AlexNet được huấn luyện đồng thời trên 2 GPUs nên đó là lý do tại

sao mạng được chia thành 2 pipelines.

e Kích thước các kernels được sử dụng là 11x11 ở lớp Convolutional

đầu tiên và giảm dần thành 5x5, 3x3 ở các lớp sau đó

16

Trang 28

e AlexNet sử dụng hàm ReLU (Rectified Linear Unit) làm hàm kích

hoạt ở sau mỗi lớp Convolutional va Fully — Connected dé cải thiệntốc độ huấn luyện

e Để tránh Overfitting và giảm tải mô hình, tác giả mô hình áp dụng

thêm một số kỹ thuật Max — Pooling và Dropout với xác suất 50%

e Mô hình có khoảng 60 triệu tham số

e Đạt kết quả top-5 error rate = 15.3% trên ImageNet test set 2012

2.2.2.3 GoogLeNet (Inception — V1) (2014)

GoogLeNet [4] là mô hình do nhóm tác giả đến từ Google phát triển.GoogLeNet là mạng CNN cho chúng ta thấy không nhất thiết phải là các lớp xếpchồng lên nhau Sự xuất hiện Inception module là điểm nhấn góp phần giúp mô

hình này vô địch trong cuộc thi ImageNet 2014.

Mang Inception cũng thường được cải tiên với các phiên bản mới hơn như:

Inception-v2 và Inception-v3 (năm 2015), Inception-v4 (năm 2016).

Convolution

Pooling

Softmax Other

Hình 2.9: Kiến trúc mang Inception — V1’

7 Nguồn anh:

https://medium.com/analytics-vidhya/cnns-architectures-lenet-alexnet-vgg-googlenet-resnet-and-more-666091488df5

17

Trang 29

- Một số điểm nổi bật của mang Inception — V1:

Là kiến trúc CNN với 22 lớp, nhiều gần gap đôi so với VGG - 16

Mô hình sử dụng 9 Inception module để thay thế cho các lớpConvolutional Khối Inception module sẽ bao gồm 4 nhánh song song,

có thể tính toán tích chập song song với các kernels đa kích thước(1x1, 3x3, 5x5) cùng lúc, trong khi các lớp Convolutional truyềnthống phải thực hiện tuần tự Việc kết hợp nhiều kernels đa kích thước

giúp rút trích được đa đặc trưng ảnh trên những vùng có kích thước

khác nhau.

Khối Inception module được lặp lại 7 lần trong kiến trúc GoogLeNet

Nhờ áp dụng tích chập 1x1 giúp tham số trong mô hình chỉ còn 5

triệu, it hon gần 27 lần so với VGG - 16

Đạt kết quả top-5 error rate = 6.67% trên ImageNet test set 2014

18

Trang 30

2.2.2.4 WGG Net (2014)

Về nhì trong cuộc thi ImageNet năm 2014 là VGG Net [5] (đặt tên theo độithi) được công bố bởi nhóm của Karen Simonyan va Andrew Zisserman đến từ Daihọc Oxford Chúng ta nhận thấy rằng các mô hình CNN ngày càng sâu hơn, VGG

có thé xem là một phiên bản cải tiến của AlexNet về độ sâu Kết quả VGG cải thiện

hơn so với AlexNet chứng tỏ độ sâu của mạng CNN ảnh hưởng lớn đến độ chính

- _ Một số điểm nồi bat của mạng VGG:

e Là kiến trúc CNN có nhiều biến thé tùy theo độ sâu cũng như là số

lượng các lớp như: VGG — 11, VGG - 13, VGG - 16 và biến thé sâu

nhất là VGG - 19.

e Được huấn luyện trên 4 GPUs khoảng 2 - 3 tuần

e Kích thước các kernels được sử dụng là có định 3x3, việc sử dụng

kernel có kích thước nhỏ giúp giảm chi phí về mặt tính toán nhưngvẫn mang kết quả cao

e_ Đạt kết quả top-5 error rate = 7.3% (VGG — 16) trên ImageNet test

set 2014.

2.2.2.5 ResNet (2015)

ResNet [6] (Residual Network) là mang được dé xuất bởi nhóm tác giả đứngđầu là Kaiming He đến từ Miscrosoft Research, đây là mô hình vô dich ở cuộc thiILSVRC năm 2015 Đây là mạng CNN cực kỳ sâu với tối đa 152 lớp Ngoài ra, mô

8 Nguồn ảnh:

https://medium.com/analytics-vidhya/cnns-architectures-lenet-alexnet-vgg-googlenet-resnet-and-more-666091488df5

19

Trang 31

hình này còn thông tri trong các bài toán detection, localization, segmentation cua

cả hai cuộc thi ILSVRC và COCO Challenge.

Qua quá trình thực nghiệm, nhóm tác giả nhận thấy rằng với độ sâu ngày càngtăng thì độ chính xác sẽ trở nên bão hòa và giảm dần xuống (degradation problem)

Chính vì vậy, ResNet được giới thiệu với tư cách là mang CNN cực kỳ sâu nhưng

vân đảm bảo được độ chính xác cao.

Image ‘Ta? conv, 64, /2 pool, /2 3x3 conv, 128 fe 1000.

Trang 32

connection) đảm bảo rằng hiệu suất của mô hình sẽ không giảm, trái lại, F(x) saukhi di qua hàm ReLU sẽ làm mat đi một phan thông tin Features Map cộng với x(F(x) + x) sẽ giúp làm giàu thông tin đặc trưng hơn, giúp hiệu suất mô hình có thể

tăng lên.

- _ Một số điểm nỗi bật của mạng ResNet:

e Là kiến trúc CNN có nhiều biến thé với da dang số lớp: ResNet — 50,

ResNet — 101 và kiến trúc sâu nhất là ResNet — 152 với 152 lớp

e Là một trong những mô hình tiên phong sử dung Skip connections và

càng tăng va chi phí tính toán ngày càng lớn Do đó, Saining Xie cùng các cộng sự

đến từ Facebook AI Research và UC San Diego dé xuất ResNeXt [7] — kiến trúc

mới đạt giải Á quân trong cuộc thi ILSVRC năm 2016 trong bài toán Classification

— giúp cải thiện độ chính xác đồng thời làm giảm độ phức tạp của mô hình và sốlượng tham số tham gia

ResNeXt là sự kế thừa của ba kiến trúc trước đó ResNet, VGG va Inception:

bao gồm shortcuts từ block trước đến block tiếp theo, các lớp được xếp chồng lên

nhau và thực hiện phương pháp “split — transform — merge” Trong bài báo

“Aggregated Residual Transformations for Deep Neural Networks” [7] nhóm tác

giả có nhắc đến một khái niệm hoàn toàn mới: “cardinality” — có nghĩa là “the size

of the set of transformations” Nhóm tác gia khang định rang qua kết quả thựcnghiệm, việc tăng số lượng cardinality sẽ mang lại kết quả tốt hơn thay vì tăng độ

sâu và độ rộng Kiên trúc này bao gôm 32 block có cùng câu trúc liên kêt với nhau

21

Trang 33

nên giá trị cardinality sẽ là 32 Chính vì sử dụng cùng một câu trúc liên kêt nên

giảm được sô lượng tham sô và thỏa mãn điêu kiện nhiêu lớp được thêm vào kiên

Hinh 2.14: Kién trtic mang ResNet (trai) va kiến trúc mạng ResNeXt (phải) [7]

- _ Một số điểm nỗi bật của mạng ResNeXt:

e Là kiến trúc CNN kế thừa những ưu điểm từ ba mô hình trước đó

ResNet, VGG và Inception.

e Là mô hình chứng minh được rằng độ sâu của block và chiều sâu

không phải là hai yếu tổ duy nhất quyết định đến việc làm tăng độ

chính xác.

e Đạt kết quả top-5 error rate = 3.7% trên single model và top-5 error

rate = 3.03% trén ensemble model ImageNet test set 2016.

2.3 Các mô hình dịch chuỗi

Với một mạng FeedForward Network như CNN thì việc lưu trữ những thông

tin đã xử lý trước đó là không thể Ví dụ chúng ta muốn dự đoán từ tại thời điểmtiếp theo thì sẽ không thực hiện được vì không có thông tin của những từ trước đó

Có nhiều dạng bài toán với input và output đều là dạng dữ liệu tuần tự (sequence

data / time — series data) như Machine Translation, Text Generation (many — to —

many) Tuy nhiên các mạng FeedForward Network thông thường chỉ hỗ trợ các bài

22

Trang 34

toán theo dạng one — to — one Chính vì vậy Recurrent Neural Network (RNN) ra

đời nhằm khắc phục vấn đề trên

2.3.1 Recurrent Neural Network (RNN)

Cu thé đối với bai toán Image Captioning nay, RNN có thé hiểu là một mangvới các vòng lặp chính nó, dùng các thông tin ở các vòng lặp trước dé dự đoán xácsuất một chuỗi các từ xuất hiện trong câu chú thích đầu ra Do đó, RNN đóng vai

trò cực kỳ quan trọng trong các tác vụ thuộc về lĩnh vực Xử lý Ngôn ngữ Tự nhiên

Các mô hình RNN nỗi tiếng có thé đề cập đến như: Long Short — Term

Memory (LSTM), Bidirectional Recurrent Neural Network (BRNN), Transformer.

Hình 2.15: Cau trúc của một mang Recurrent Neural Network đơn giản

Khối màu xanh dương ở trên được gọi là Hidden states hay còn gọi là cell, có

nhiệm vụ lưu trữ thông tin đã được học qua từng bước.

Một RNN đơn giản được biéu diễn theo công thức:

hy = fWeightsChị—1, Xt) (1)

h, = tanh(Wnh,_+ + W,x;) (2)

v= Wyh, (3)

Trong đó: t la bước hiện tại; h la hidden state lưu trữ các thông tin học được

và được khởi tạo ban đâu với ho bằng 0; x; la one — hot vector dau vào của từng từ;

b là bias; còn Wx va Wh là các trọng số sẽ dan được toi wu qua các bước tiép theo.

23

Trang 35

2.3.2 Long Short - Term Memory (LSTM)

Một trong những khuyết điểm của mang RNN là Long — Term Dependency,nghĩa là RNN không thé dự đoán ra vi khoảng cách quá xa giữa từ cần dự đoán vàthông tin học được Như vậy khi thực hiện Back Propagation dé tối ưu trọng số chomạng RNN sé gặp hiện tượng suy giảm gradient (vanishing gradient) hay bùng nỗ

gradient (exploding gradient).

Là phiên ban cải tiễn của mang RNN được dé xuất bởi Sepp Hochreiter

và Jiirgen Schmidhuber vào năm 1997, LSTM [8] được thiết kế cho các bài toán xử

lý dữ liệu dạng chuỗi hay tuần tự, gồm nhiều khối nhớ (memory blocks hay LSTMcell) Các khối nhớ này sẽ kết nối với nhau dé lưu thông tin hidden state và truyềncho các khối nhớ tiếp theo Mỗi khối nhớ chứa ba công đặc biệt: input gate, outputgate, forget gate và một đường cell state Các công này có nhiệm vụ kiểm soát các

dòng thông tin LSTM là một trong những mạng RNN được ứng dụng trong các bài

toán như: Image Captioning, Machine Translation, Handwriting Recognition,

9 Nguồn ảnh: https://www.researchgate.net/figure/Long-Short-term-Memory-Neural

Network fig3 324600237

24

Trang 36

Chúng ta có thê mô hình hóa quy trình xử lý đầu vào của một LSTM cell bằng

các biêu thức như sau:

Cho một chuỗi đầu vào X = (x;,xạ, ,xụ) và đầu ra là Y = (y,ÿ¿, - ,YN)được dự đoán băng một chuỗi công thức

Một LSTM cell được biểu diễn theo công thức:

Forget Gate: ƒ, = ø(W/ - [h,_,x¿] + by) (4)

Input Gate: i, = o(W; - [h;_+,x¿] + bị) (5)

Output Gate: 0, = o(W, - [h;_+,x;¿] + bạ) (6)

Cell state: C = ƒ, X c¿_¡ + ip X C; (7)

Hidden state: h, = 0, X tanh(C,) (8)

Trong đó: fi, i: và Or mang giá trị năm trong khoảng [0,1]; bự bị và bo là bias;

2.3.3 Bidirectional Recurrent Neural Network (BRNN)

Bidirectional Recurrent Neural Network [9] (BRNN) được giới thiệu vào năm

1997 bởi Mike Schuster và Kuldip K Paliwal Khi nhìn vào chữ “B” trong

“BRNN” thì chúng ta đã biết mô hình này cải tiến hơn so với RNN ở chỗ: BRNN sẽ

đề xuất đi theo cả hai hướng Nghĩa là thay vì chỉ đi hướng từ trái sang phải

(forward) như ở RNN thì BRNN sẽ di từ cả hai hướng: từ trái sang phải (forward)

và từ phải sang trái (backward) Đề có thê đi được hai hướng như vậy, tác giả đã tạothêm một mạng RNN độc lập nữa để lưu trữ các trạng thái (state) của hướng

backward.

25

Trang 37

Hình 2.17: So sánh sự khác nhau giữa RNN (trái) và BRNN (phải)!?.

BRNN được biểu diễn theo công thức:

Lấy ví dụ về mạng BRNN, ta có một bài toán Named Entity Recognition (NER) như

sau:

“Bob loves apple, the company produces best electronics”

Nếu chúng ta di theo lỗi của mạng RNN (forward) tức là hoc từ trái sang phải

thì mang sẽ hiểu rằng “apple” chính là “trái táo” thuộc thực thé “fruit”, điều này

sai với ý nghĩa của câu Nhưng khi chúng ta thêm một mạng RNN có nhiệm vụ học

từ phải sang trái (backward), tức là cho mô hình học từ ngữ cảnh tương lai thì mô

10 Nguồn anh: https://en.wikipedia.org/wiki/Bidirectional_recurrent_neural_networks

26

Trang 38

hình sẽ nhận biết được rằng từ “the company” ở phía sau sẽ bồ sung ngữ nghĩa

“apple” chính là “công ty” thuộc thực thé “company”

Hình 2.18: Ví dụ về mang BRNN ở bài toán NER Đường mũi tên màu camnăm ngang chính là hướng forward, đường mũi tên màu xanh năm ngang chính là

hướng backward.

Như vậy, tác giả đã c6 gang xây dựng một mang Neural có thê hiểu được toàn

bộ ngữ nghĩa (semantic) của đầu vào mà chúng ta có mang này học nhờ vào hai

mạng con RNN độc lập:

e Mang forward: dùng những từ phía trước dự đoán từ tiếp theo (từ

trái sang phải).

e Mang backward: dùng những từ đã hoc từ phía sau dự đoán từ phía trước (từ phải sang trái).

Tóm lại, mạng BRNN được dùng rất nhiều trong những bài toán mang tínhngữ nghĩa cao Tức là muốn cho mô hình nắm được toàn bộ ngữ cảnh đầu vào thì

cần phải hiểu theo hai hướng forward và backward

2.3.4 Transformer

Hầu hết các tác vụ về lĩnh vực Xử lý Ngôn ngữ Tự nhiên, đặc biệt là bài toán

Dịch máy (Machine Translation) đều sử dụng kiến trúc RNN Mô hình này có

nhược điểm là không tận dụng được sức mạnh của GPUs dé tính toán Song song nênphải xử lý đầu vào một cách tuần tự, dẫn đến tốc độ xử lý (performance) rất chậm

27

Ngày đăng: 08/11/2024, 17:02

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN