Cùng mục tiêu giải quyết vấn đề về kích thước kí tự bất đồng nhất, tác giả luận văn đề xuất kết hợp sử dụng đặc trưng đa phân giải với kiến trúc nền tảng được kế thừa và dựa trên 2 cơng trình WAP[13] và MultiScale WAP[14].
Để rút trích được đặc trưng đa phân giải với sự kết hợp giữa các đặc trưng toàn cục và các đặc trưng cục bộ, ta tham khảo và kế thừa ý tưởng được đề xuất bởi [10] bằng cách biến đổi kiến trúc mạng InceptionV2[5]. Nhóm tác giả của [10] đề xuất dung hợp các đặc trưng với độ phân giải thấp, vùng quan sát lớn12 và biểu diễn mang tính tồn cục với các đặc trưng phân giải cao, vùng quan sát nhỏ và biểu diễn mang tính cục bộ. Phương pháp được sử dụng để dung hợp các đặc trưng với nhau là phép nối13 theo phương sâu.
Để giải quyết bài tốn nối 2 đặc trưng có độ phân giải khác nhau, nhóm tác giả đã sử dụng phép nội suy14 để đưa các đặc trưng có độ phân giải thấp, kích thước nhỏ về cùng kích thước với các đặc trưng có kích thước lớn. Khái qt về ý tưởng đề xuất cho bộ rút trích đặc trưng đa phân giải được thể hiện ở Hình [15].
Như ta thấy trên Hình [15], có 3 bộ đặc trưng được bộ rút trích đặc trưng trả về đầu ra, với tên gọi x1, x2, x3 với mỗi đặc trưng sẽ có độ phân giải và mức độ kết hợp giữa cục bộ và tồn cục giảm dần, với x3 gần như khơng mang thơng tin biểu diễn đặc trưng ảnh có sự kết hợp và cục bộ.
11
Thuật ngữ tiếng Anh: Teacher forcing
12Thuật ngữ tiếng Anh: Receptive field
13
Thuật ngữ tiếng Anh: concatenation
Hình 15: Bộ rút trích đặc trưng đa phân giải được đề xuất bởi [10]. Ảnh được rút trích từ bàibáo gốc của các tác giả. báo gốc của các tác giả.
Mỗi mũi tên từ trên xuống chỉ thị cho việc rút trích đặc trưng trung gian từ một bước nhất định của mơ hình. Ở đây ta thấy có sự rút trích đặc trưng trung gian ở 3 mốc trong mơ hình x1, x2, x3 mà ta sẽ gọi tên lần lượt là 3b,4d và 5b mang ý nghĩa chỉ định thứ tự lớp trong toàn bộ mạng mà đặc trưng này được rút ra.
Hãy nhớ lại về InceptionNet[4], [5], mạng được cấu thành bởi việc xếp chồng các khối Inception lên với nhau. Ở InceptionNet, mạng được chia nhỏ thành 5 bậc với mỗi bậc sẽ một số khối Inception xếp chồng lên nhau. Để tiện trao đổi và thảo luận, các bậc được đặt tên theo số, với lớp càng gần đầu vào sô càng nhỏ, và mỗi khối Inception được đặt tên thứ tự theo bảng chữ cái, với lớp gần đầu vào nhất sẽ là a. Như vậy, đặc trưngx1 chính là đặc trưng đầu ra của block Inception thứ 2 của bậc thứ 3.
Hiểu rõ về quy cách gọi tên cũng như ý nghĩa của chúng, ta thống nhất sẽ gọi các biến thể của mạng rút trích đặc trưng đa phân giải và các biến thể của ý tưởng đề xuất ứng dụng chúng bằng các tên 3b, 4d và 5b.
Với ý tưởng về việc xây dựng bộ rút trích đặc trưng đa phân giải như đã trình bày (gọi tên là InceptionFusion và gọi tắt là IF), tác giả luận tham khảo và tiếp thu, qua
đó nghiên cứu về việc ứng dụng ý tưởng đó để phục vụ cho bài toán nhận dạng biểu thức toán học viết tay. Với việc mạng rút trích đặc trưng đa phân giải có thể coi là một mạng rút trích đặc trưng độc lập, kèm theo lợi thế về cách thiết kế chương trình khung theo kiến trúc nền tảng, việc ứng dụng ý tưởng kết hợp với WAP hay MultiScale WAP trở nên dễ dạng hơn với việc chỉ thay thế mô-đun Encoder với biến thể hiện thực InceptionFusion.
Như vậy, việc kết hợp ý tưởng InceptionFusion vào WAP tạo ra WAP + IF với các biến thể 3b, 4d, 5b tương ứng với các biến thể của InceptionFusion mà ta đã đề cập từ trước.
Tương tự, kết hợp ý tưởng InceptionFusion và MultiScale WAP tạo ra MultiScale WAP + IF với các biến thể 5b+4d, 5b+3b và 4d+3b.
Như vậy, phương pháp đề xuất nghiên cứu, thử nghiệm và đánh giá cho luận văn này là nỗ lực cải tiến 2 cơng trình WAP[13] và MultiScale WAP[14] bằng cách kết hợp đặc trưng
Chương 4 Kết quả thực nghiệm1 Dữ liệu 1 Dữ liệu
Dữ liệu được sử dụng để thực hiện huấn luyện cũng như đánh giá các hệ thống, mô hình là bộ dữ liệu được rút trích từ cuộc thi CROHME 2019. Dữ liệu được công bố và cho
phép tải về bởi ban tổ chức cuộc thi[23], [24].
Qua nhiều lần tổ chức thì tập dữ liệu CROHME cũng dần tăng trưởng và ở phiên bản 2019 tập dữ liệu được phân loại thành 5 tập con gắn liền với các giai đoạn phát triển là: Data2012, Data2013, Train2014, Test2014, Test2016. Bảng [3] cho ta thấy số lượng biểu thức ở mỗi tập dữ liệu con và việc tập dữ liệu sẽ được sử dụng vào mục đích huấn luyện (Train) hay đánh giá (Test) mơ hình.
Tập dữ liệu Số lượng biểu thức Phân loại dữ liệu
Train2014 8834 Train
Test2013 671 Train
Test2012 488 Train
Test2016 1147 Test
Test2014 984 Test
Bảng 3: Các tập dữ liệu con của CROHME 2019, số lượng biểu thức và phân loại của chúng. Dữ liệu CROHME được cung cấp ở dạng các file XML khai báo tọa độ tập hợp các điểm của mỗi nét (stroke) trong biểu thức, tổ hợp các nét sẽ tạo thành các ký tự trong biểu thức. Mỗi biểu thức trong tập dữ liệu sẽ được biểu diễn bởi 1 file XML tương ứng.
Tuy trong dữ liệu được cung cấp có trường giá trị nhãn của biểu thức nhưng việc khảo sát và nghiên cứu tập dữ liệu cho thấy nhãn biểu thức được cung cấp còn nhiều giá trị nhiễu mà đặc trưng là các định danh LATEXnhằm hỗ trợ việc định dạng font chữ (ví dụ như ‘mathrm‘). Do vậy đối với dữ liệu sử dụng cho đề tài thì ta sẽ tiến hành việc xử lý và chuẩn hóa nhãn dữ liệu, cụ thể là ta sẽ rút trích nhãn và tái dựng lại nhãn của biểu thức từ cây cú pháp biểu thức. Bên cạnh đó ta cũng giớn hạn được tập các ký tự xuất hiện trong nhãn (Xem chi tiết ở Phụ lục 3).
Ở phiên bản 2019, ban tổ chức đã định nghĩa chuẩn định dạng ảnh đầu vào cho bài toán cũng như hướng dẫn trực quan hóa dữ liệu nét thành dữ liệu ảnh. Mỗi biểu thức sẽ được trực quan hóa thành ảnh trắng đen với kích thước 310×310. Hình [16] trực quan
hóa một số ảnh ví dụ cho tập dữ liệu. Vì vậy dữ liệu ảnh đầu vào cho mỗi hệ thống, mơ hình được thử nghiệm đều sẽ được cố định về kích thước 310×310, từ đó bỏ qua yếu tố
sử dụng ảnh đa kích thước làm dữ liệu đầu vào ở một số cơng trình[13], [14].
Để phục vụ việc huấn luyện và tối ưu siêu tham số thì tập dữ liệu huấn luyện được chia thành tập TrainSubset và tập Valid theo tỷ lệ 80−20.
Hình 16: Một số ảnh trích xuất từ tập dữ liệu CROHME 20192 Mơi trường 2 Mơi trường
Tất cả thí nghiệm trong luận văn này được thực hiện trên máy chủ có 1 bộ xử lý đồ họa
GTX 1080Ti phiên bản 12GB.
Toàn bộ code cho luận văn này đều được hiện thực thông qua ngôn ngữ Pythonphiên bản 3.7 với sự hỗ trợ của các gói thư viện như liệt kê ở Bảng [4]
Tên gói thư viện Phiên bản numpy 1.20.3 pandas 1.2.5 Pillow 8.3.1 kornia 0.5.11 matplotlib 3.4.3 scikit-learn 0.24.2 scikit-image 0.19.2 scipy 1.7.1 pytorch 1.9.1 mlflow 1.22.0
Bảng 4: Các gói thư viện và phiên bản tương ứng. 3 Độ đo
Các hệ thống được nghiên cứu, thử nghiệm sẽ được đánh giá dựa trên chỉ số Tỷ lệ biểu thức đúng (ExpRate)15. Đây chính là độ đo được ban tổ chức của CROHME 2019 sử dụng làm độ đo đánh giá chính cho các bài dự thi.
Độ đo được định nghĩa bằng tổng số lượng những biểu thức được nhận dạng đúng hoàn toàn chia chotổng số lượng biểu thức có trong tập dữ liệu đánh giá.
ExpRate = Số biểu thức nhận dạng đúng HOÀN TOÀN
Số biểu thức trong tập dữ liệu (1) 4 Kết quả
Ở đề mục này ta sẽ trình bày và thảo luận về những kết quả thí nghiệm thu được với những chủ đề chính theo thứ tự như sau:
• Tái lập các cơng trình tham khảoTrình bày kết quả thí nghiệm thu được khi ta tự hiện thực hóa tồn bộ đề xuất ở các cơng trình tham khảo[13], [14].
• Phương pháp đề xuất Trình bày kết quả thí nghiệm với phương pháp đã được đề xuất ở Chương 3 Mục 3.
• Và cuối cùng là đặt phương pháp đề xuất vào ngữ cảnh so sánh hiệu suất với các cơng trình tham khảo ở So sánh với các cơng trình tham khảo.
Mơ hình đại diện để báo cáo kết quả cho mỗi cơng trình, hướng tiếp cận sẽ được lựa chọn dựa trên kết quả đánh giá tốt nhất với độ đo ExpRate trên tập Valid.
15
4.1 Tái lập các cơng trình tham khảo
Cơng trình CROHME 2019 CROHME 2014 CROHME 2016
MultiScale WAP 65.73 41.36 41.76
WAP 53.93 20.83 20.58
Bảng 5: Kết quả huấn luyện, đánh giá từ việc tái lập các cơng trình tham khảo[13], [14]. Bảng [5] trình bày đánh giá dựa theo độ đo ExpRate của 2 cơng trình WAP[13] và MultiScale WAP[14] được tái lập trên các tập dữ liệu Valid (CROHME 2019) và
Test (CROHME 2014, CROHME 2016). Dựa vào các chỉ số đánh giá ta có thể thấy
rõ ràng được sự cải thiện về mặt điểm số rõ rệt giữa 2 cơng trình. Mặc dù khoảng cách điểm số trên tập Valid giữa 2 cơng trình chỉ khoảng10điểm ExpRate nhưng khi đánh giá kết quả trên tập Valid thì khoảng cách ấy tăng lên thành 20 điểm cách biệt. Qua đó cho ta thấy được việc thêm cơ chế tập trung đa phân giải16 đã tạo nên hiệu quả lớn, cải thiện hiệu năng của mơ hình.
Bên cạnh đó, một điểm khác ta có thể nhận thấy ở đây chính là việc điểm số chênh lệch giữa việc đánh giá trên tập Valid và tập Test là rất lớn, khoảng 24điểm ở MultiScale WAP và 33điểm ở WAP. Điều này cho thấy có một sự khác nhau lớn giữa phân phối của 2 tập dữ liệu. Sự khác biệt này cũng dễ hiểu vì CROHME là một cuộc thi về Khoa học Dữ liệu và cũng như các cuộc thi khác, để tăng tính cạnh tranh và độ khó cho cuộc thi, các nhà tổ chức thường tạo ra sự khác biệt này. Vấn đề này nên được nghiên cứu một cách chi tiết như một đề tài riêng lẻ để đánh giá mức độ khác nhau giữa 2 tập dữ liệu cũng như đánh giá việc chia dữ liệu thành các tập Train-Valid-Test.
CROHME 2014 CROHME 2016
Cơng trình Tái lập Cơng bố Tái lập Công bố MultiScale WAP 41.36 52.80 41.76 50.10
WAP 20.83 46.55 20.58 44.55
Bảng 6:Kết quả đánh giá các cơng trình tham khảo[13], [14] được tái lập so với kết quả đã được công bố ở bài báo gốc.
Bảng [6] đặt kết quả tái lập được vào trong ngữ cảnh so sánh với những công bố ở các paper gốc[13], [14] trên các tập dữ liệu test CROHME 2014 và CROHME 2016. Trong bảng, đánh giá cho mỗi cơng trình được thể hiện ở từng hàng, với mỗi cặp cột thể hiện đánh giá cho mỗi tập dữ liệu riêng biệt lần lượt làCROHME 2014vàCROHME 2016.
Hai tập dữ liệu này cũng là những tập dữ liệu được sử dụng cho việc đánh giá ở paper gốc của mỗi cơng trình. Mỗi cặp cột sẽ gồm cột "Tái lập" cho biết đánh giá mơ hình tái lập lại cơng trình và cột"Cơng bố" là điểm số được cơng bố ở paper gốc.
Ta có thể thấy được từ Bảng [6] rằng dù ở tập dữ liệu CROHME 2014 hay CROHME 2016 thì kết quả được cơng bố ở paper gốc đều cao hơn rõ rệt so với đánh giá khi tái lập
lại các cơng trình đó. Để giải thích về sự khác biệt này, ta có thể kể đến một số yếu tố cũng như sự khác biệt giữa quá trình tái lập và cơng trình gốc như:
• Kích cỡ dữ liệu ảnh đầu vào Như đã đề cập ở Mục 1, đến năm 2019 thì cuộc thi CROHME mới đưa ra một quy chuẩn chính thức về việc trực quan hóa dữ liệu thành ảnh đầu vào cho các mơ hình, hệ thống. Vì vậy ở các cơng trình WAP[13] và MultiScale WAP[14] thì các tác giả đã sử dụng cách trực quan hóa dữ liệu thành các ảnh với kích thước khơng cố định, mà thay vào đó các tác giả thực hiện trực quan hóa với ràng buộc về kích thước của các kí tự xuất hiện trong biểu thức. Cách thức trực quan hóa đó có thể vơ tình khiến cho độ khó của bài tốn giảm đi ít nhiều, đặc biệt với các biểu thức có nhiều kí tự thì với cách quy chuẩn sẽ làm cho các kí tự có kích thức rất nhỏ.
Bên cạnh đó, khi nhìn nhận vào thực tế thì ta thấy được thường dữ liệu sẽ được thu thập từ những thiết bị như máy ảnh, máy qt,... Do đó mà kích thước ảnh đầu vào cho các mơ hình, hệ thống thường sẽ có những kích thước cụ thể nên việc cố định kích thước ảnh trực quan hóa giúp bài tốn gần gũi với hiện thực khách quan hơn.
• Mơ hình tổ hợp17 Trong cả 2 cơng trình[13], [14], các tác giả sử dụng kĩ thuật Mơ hình tổ hợp thơng qua việc tổ hợp 5 mơ hình với nhau để đạt được điểm số như đã công bố. Kỹ thuật này là một kỹ thuật thông dụng thường được sử dụng ở các cuộc thi Khoa học Dữ liệu nhằm tăng tính tổng qt hóa cũng như điểm số cuối cùng. Tuy nhiên với việc muốn tập trung vào nghiên cứu, phân tích các phương pháp cũng như kiến trúc mạng và ảnh hưởng của những đề xuất về mặt thiết kế nên việc ứng dụng kỹ thuật này theo nhận định cá nhân của tơi là khơng cần thiết.
Một lần nữa nhìn nhận vào thực tế thì dù kỹ thuật này được sử dụng nhiều ở các cuộc thi nhưng khó để ứng dụng vào thực tiễn do yêu cầu về việc có nhiều bản thể mơ hình cùng chạy sẽ gây ra khó khăn về yêu cầu phần cứng thiết bị cũng như tốc độ dự đốn.
Ngồi các lý do khách quan nêu trên thì có thể tồn đọng lý do chủ quan về khả năng huấn luyện mơ hình của người thực hiện đề tài có thể cịn nhiều thiếu sót. Tuy nhiên, do cả 2 mơ hình được tái lập một cách cơng bằng nên ta vẫn có thể nhận định được tác động tích cực của cơ chế MultiScale Attention là đúng đắn và có kiểm chứng, cũng như phần nào hỗ trợ giải quyết bài tốn về các kí tự có kích thước đa dạng trong một ảnh biểu thức, cụ thể hơn là với những kí tự có kích thức nhỏ.
Như vậy ta có thể thấy được q trình tái lập và đánh giá các cơng trình tham khảo được thực hiện theo một quy trình đánh giá công bằng. Tuy không đạt được các điểm số như ở các cơng bố gốc nhưng ta vẫn có thể sử dụng quy trình đánh giá này để áp dụng vào đánh giá các phương pháp đề xuất cũng như khi so sánh với các cơng trình tham khảo, nghiên cứu và bàn luận trên những kết quả đánh giá thơng qua quy trình cơng bằng này.
17
4.2 Phương pháp đề xuất
Ở phần này ta sẽ đánh giá ý tưởng đề xuất dựa trên việc cải tiến cơng trình WAP[13] và MultiScale WAP[14] bằng cách sử dụng mạng rút trích đặc trưng đa phân giải với những biến thể của chúng như đã trình bày ở Chương 3 Mục 3.
Phiên bản CROHME 2019 CROHME 2014 CROHME 2016
WAP+IF 5b 57.18 24.90 25.46
WAP+IF 4d 60.88 32.11 33.39
WAP+IF 3b 61.63 34.35 37.14
Bảng 7: Kết quả đánh giá các phiên bản của phương pháp đề xuất cải tiến WAP[13]. Bảng [7] trình bày kết quả đánh giá các phiên bản của phương pháp đề xuất cải tiến WAP[13]. Các phiên bản được đánh giá trên các tập dữ liệu Valid (CROHME 2019) và Test (CROHME 2014 và CROHME 2016). Như đã trình bày ở Chương 3 Mục 3, ta
sẽ nghiên cứu cải tiến này với 3 phiên bản đặc trưng đa phân giải được rút trích ra với thứ tự mức độ dung hợp toàn cục và cục bộ tăng dần là 5b, 4d và 3b. Kết quả đánh giá từ