Chương 1 GVHD: TS. Bùi Xuân Diệu Tags Summarization (ETS) ra đời. Mục tiêu của tác vụ ETS đó là thu gọn danh sách các thẻ tương ứng với một tấm ảnh trong khi vẫn giữ được khả năng đại diện của bộ thẻ mới cho tấm ảnh đó. Hay nói cách khác, mục tiêu chính là trích xuất ra được các thẻ quan trọng từ nội dung của tấm ảnh và các thẻ gốc đi kèm.
Nhưng tại sao ở đây lại là tóm tắt trích xuất (Extractive Summarization) mà không phải là tóm tắt trừu tượng (Abstractive Summa- rization)? Hiểu một cách đơn giản, không có thẻ mới nào được tạo ra từ các thẻ đã được gán ban đầu cho tấm ảnh, chỉ đơn thuần chọn ra những thẻ quan trọng từ chỗ thẻ gốc đó. Có thể thấy bài toán ETS có khá nhiều điều tương đồng với bài toán tóm tắt văn bản (Text Summarization); chỉ khác ở chỗ, thay vì làm việc với các từ thì ta sẽ làm việc với các thẻ, và thứ tự xuất hiện của các thẻ trong bộ thẻ là không quan trọng. Theo tìm hiểu của tôi, tại thời điểm quyển luận này được viết, chưa có một cá nhân, nhóm nghiên cứu hay tổ chức nào đứng ra giải quyết bài toán này. Trong lận văn này, tôi sẽ trình bày về một giải pháp Học sâu (Chương 3) để giải quyết bài toán ETS một cách tự động và hiệu quả.
Bên cạnh giải quyết bài toán ETS cho dữ liệu ảnh, ta sẽ cùng mở rộng bài toán này cho dữ liệu là các video được gắn thẻ trong Chương 4. Nhưng trước đó, hãy cùng tìm hiểu qua một vài phần nội dung cơ bản về cơ sở lý thuyết trong Chương 2. HVTH: Phùng Trọng Hiếu 2 20BTOANTIN Chương 2 Cơ sở lý thuyết Trong phần này, ta sẽ cùng điểm qua một vài lý thuyết cơ bản xoay quanh chủ đề Học sâu như mạng nơ-ron nhân tạo (Artificial Neural Net- work), mạng nơ-ron tích chập (Convolutional Neural Network), mạng nơ- ron Transformer, v. trước khi đi vào xây dựng giải pháp cụ thể cho việc giải quyết bài toán ETS sẽ được trình bày trong Chương 3.1 Mạng nơ-ron nhân tạo Mạng nơ-ron nhân tạo được cấu tạo bởi các nơ-ron được xếp thành các lớp, mỗi nơ-ron ở lớp đằng sau sẽ có các kết nối đến các nơ-ron thuộc lớp ngay trước đó, được minh họa như trong Hình 2.
Đầu vào của mạng thường có dạng một vectơ trong không gian nhiều chiều, mỗi chiều tương ứng với một đặc trưng và được biểu diễn dưới dạng các con số. Nằm giữa lớp đầu vào và lớp đầu ra, ta có các lớp ẩn được xếp chồng lên nhau. Mỗi nơ-ron, hay node, có thể được coi như một mô hình hồi quy tuyến tính (Linear Regression) bao gồm các trọng số wi , dữ liệu đầu vào xi , độ lệch (Bias) b và giá trị đầu ra y. Ta có thể biểu diễn dưới dạng công thức như sau: m y = ∑ wi xi + b = w1 x1 + w2 x2 + · · · + wm xm + b.1) i=1 Trước khi trở thành đầu vào cho các nơ-ron thuộc lớp liền sau, đầu ra của từng nơ-ron trong lớp đang xét (ngoại trừ lớp đầu vào) sẽ được đưa qua một hàm kích hoạt (Activation Function) f (x) với mục đích phi tuyến hóa kết quả đầu ra.
Vì tổ hợp tuyến tính của các hàm tuyến tính cũng là 3 Chương 2 GVHD: TS. Bùi Xuân Diệu Hình 2.1: Mạng nơ-ron nhân tạo. một hàm tuyến tính, sự có mặt của các hàm kích hoạt là bắt buộc. Không có các hàm kích hoạt này, toàn bộ mạng nơ-ron sẽ chỉ có khả năng biểu diễn tương đương với một nơ-ron duy nhất.
Có rất nhiều sự lựa chọn cho hàm kích hoạt, kinh điển nhất có thể kể đến như hàm dấu, hàm Sigmoid, hàm Tanh, v. Hiện đại hơn, ta có những hàm như ReLU [35], Leaky ReLU [33], ELU [6], v.2 Mạng nơ-ron tích chập Kể từ lần công bố của mạng LeNet-5 [26] vào những năm 90 của thế kỷ XX, mạng nơ-ron tích chập đã trải qua một hành trình dài để trở thành một kiến trúc được cho là tốt nhất cho việc trích xuất đặc trưng từ ảnh. Ngoài được sử dụng trong các bài toán về xử lý ảnh (Image Processing) hay thị giác máy tính (Computer Vision), mạng nơ-ron tích chập còn được áp dụng trong nhiều lĩnh vực khác như xử lý âm thanh (Audio Signal Processing) hay xử lý ngôn ngữ tự nhiên (Natural Language Processing). Kiến trúc của mạng nơ-ron tích chập được xây dựng dựa trên một giả định rằng dữ liệu đầu vào là ảnh; điều này giúp ta có thể mã hóa một vài thuộc tính nhất định vào trong kiến trúc của nó, giúp giảm đáng kể lượng tham số của mô hình cũng như giúp cho việc huấn luyện mô hình trở nên hiệu quả hơn.1 Kiến trúc của mạng nơ-ron tích chập Mạng nơ-ron tích chập được cấu tạo chủ yếu bởi hai thành phần cơ bản bao gồm lớp tích chập (Convolutional Layer) và lớp tổng hợp (Pooling HVTH: Phùng Trọng Hiếu 4 20BTOANTIN Chương 2 GVHD: TS.
Bùi Xuân Diệu Layer). Lớp tích chập Dữ liệu ảnh thường có kích thước khá lớn cùng những mối quan hệ về không gian hay thậm chí là thời gian giữa các điểm ảnh với nhau. Để giải quyết được những vấn đề này, cấu tạo của lớp tích chập sẽ gồm các bộ lọc (Hình 2. Các nơ-ron trong cùng một lớp sẽ chỉ phải kết nối tới một khu vực tương đối nhỏ của dữ liệu đầu ra của lớp ngay trước đó.
Thiết kế này dựa trên một giả định rằng nếu một đặc trưng là đủ tốt cho một vị trí (x1 , y1 ) trong không gian hai chiều (chiều rộng và chiều cao) của ảnh, thì nó cũng sẽ tốt cho một vị trí (x2 , y2 ) khác nào đó. Việc thiết kế này không những giúp ích cho việc học ra các đặc trưng trong ảnh một cách hiệu quả mà còn giúp cho thuật toán có khả năng mở rộng cho những bộ dữ liệu gồm những bức ảnh với kích thước vô cùng lớn.2: Sử dụng bộ lọc để trích ra các đặc trưng. Một mạng nơ-ron thông thường sẽ bao gồm nhiều lớp tích chập. Mục tiêu chính của các lớp tích chập là trích rút ra các đặc trưng trong ảnh đầu vào; công việc này được thực hiện thông qua việc sử dụng các bộ lọc.
Trong lớp tích chập đầu tiên, các bộ lọc sẽ học được các đặc trưng cấp thấp trên ảnh, ví dụ như các cạnh, các đốm màu, v. Càng đi sâu vào những lớp đằng sau, các bộ lọc sẽ học được những đặc trưng cấp cao hơn, trừu tượng hơn như họa tiết của cả một cái tổ ong hay của một chiếc bánh xe. Việc này HVTH: Phùng Trọng Hiếu 5 20BTOANTIN Chương 2 GVHD: TS. Bùi Xuân Diệu giúp cho mạng nơ-ron có thể "hiểu" được tấm ảnh như cách mà con người vẫn thường hiểu.
Các bộ lọc được sử dụng thường có kích thước khá bé so với kích thước của tấm ảnh, phổ biến nhất là 3x3, ngoài ra có thể là 5x5 hay 7x7. Tuy có kích thước tương đối nhỏ về chiều rộng và chiều cao nhưng những bộ lọc này lại mở rộng về chiều sâu bằng với kích thước ảnh đầu vào hay của đầu ra thu được từ lớp ngay trước đó. Với ảnh đầu vào thông thường có ba kênh (Channel) màu (đỏ, lục, lam), chiều sâu sẽ có giá trị bằng ba. Trong quá trình huấn luyện mô hình, ta sẽ tiến hành trượt các bộ lọc này dọc theo chiều rộng và chiều cao của ảnh đầu vào hoặc đặc trưng thu được từ lớp ngay trước đó để tính toán nên đầu ra như được minh họa trong Hình 2.
Với mỗi bộ lọc ta sẽ thu được một ma trận; khi các ma trận này được xếp chồng lên nhau theo chiều sâu ta sẽ thu được một bản đồ đặc trưng (Feature Map).3: Quá trình trượt bộ lọc dọc theo chiều rộng và chiều cao của ảnh. Lớp tổng hợp Xen kẽ giữa các lớp tích chập thường sẽ là sự xuất hiện của các lớp tổng hợp. Lớp tổng hợp có nhiệm vụ giảm kích thước đặc trưng trích xuất được từ lớp tích chập ngay trước đó; điều này giúp giảm khối lượng tính toán HVTH: Phùng Trọng Hiếu 6 20BTOANTIN Chương 2 GVHD: TS. Bùi Xuân Diệu trong mạng nơ-ron đồng thời tránh được hiện tượng quá khớp (Overfitting).
Khác với lớp tích chập, lớp tổng hợp không có khả năng học được các đặc trưng từ dữ liệu mà chỉ thực hiện một chức năng cố định. Trong thực hành, lớp tổng hợp thường được cấu tạo bởi các bộ lọc 2x2, với sải bước (Stride) bằng 2 khi trượt dọc theo chiều rộng và chiều cao của đầu vào. Quá trình này được thực hiện trên từng lớp theo chiều sâu và kết quả thu được sẽ là một đầu ra có kích thước bằng 1/4 kích thước đầu vào, tương ứng với việc mất đi 75% lượng thông tin ban đầu. Bộ lọc được sử dụng phổ biến nhất hiện nay cho lớp tổng hợp là bộ lọc lọc ra giá trị lớn nhất trong vùng mà nó trượt qua; lớp tổng hợp loại này có tên là Max Pooling.
Nói cách khác, Max Pooling sẽ chỉ giữ lại giá trị tại những vị trí có mối quan hệ mạnh nhất với từng đặc trưng; những giá trị lớn nhất này sẽ được tổng hợp lại để tạo nên một chiều không gian mới thấp hơn, như được minh họa trong Hình 2.3 Mạng nơ-ron Transformer Mạng nơ-ron Transformer được giới thiệu lần đầu vào năm 2017 trong bài báo "Attention is All you Need" [48] được trình bày tại hội nghị Neural Information Processing Systems lần thứ 31. Trước khi có Transformer, ta thường hay được nghe đến thuật ngữ mạng nơ-ron hồi quy (Recurrent Neu- ral Network) trong các công trình nghiên cứu liên quan đến xử lý ngôn ngữ tự nhiên. Sự xuất hiện của Transformer như một cuộc cách mạng trong giới nghiên cứu trí tuệ nhân tạo khi sử dụng cơ chế Attention để xây dựng nên HVTH: Phùng Trọng Hiếu 7 20BTOANTIN Chương 2 GVHD: TS. Bùi Xuân Diệu một kiến trúc hoàn chỉnh với mục đích ban đầu nhằm giải quyết các bài toán với dữ liệu đầu vào mang tính tuần tự.
Cách thiết kế mới này cho hiệu quả tính toán vượt trội so với cách tiếp cận truyền thống sử dụng mạng nơ-ron hồi quy hay thậm chí là mạng nơ-ron tích chập nhờ vào việc tận dụng tốt hơn khả năng tính toán song song của GPU (Graphical Processing Unit); không những thế, kết quả dự đoán cũng tốt hơn so với các giải pháp trước đó trên nhiều bài toán, trong đó có dịch văn bản.1 Cơ chế Attention Attention là thành phần cấu tạo chính nên kiến trúc Transformer.