GIỚI THIỆU ĐỀ TÀI
Lý do chọn đề tài
Công việc của phòng ban học thuật tại một trung tâm giảng dạy Anh ngữ ở Việt Nam gồm ba công việc chính:
1 Chọn lựa, điều chỉnh giáo trình phù hợp môi trường Việt Nam và định hướng của tổ chức
2 Tuyển dụng, đào tạo, quản lý giáo viên và tổ chức giảng dạy
3.Đánh giá kết quả học tập và định hướng lộ trình học tập Đánh giá kết quả học tập được thực hiện trong suốt quá trình giảng dạy thông qua các bài tập trên lớp, bài tập ở nhà và các bài kiểm tra kiểm tra định kỳ Bên cạnh việc sử dụng các nguồn bên ngoài, các trung tâm Anh ngữ còn thực hiện biên soạn bài tập, câu hỏi thi, bài thi để phù hợp với đặc trưng và định hướng phát triển riêng của tổ chức Một trung tâm Anh ngữ xác định thế mạnh là mảng học thuật (du học) sẽ ưu tiên phát triển giáo trình, bài tập, câu hỏi thi, bài thi chuyên về học thuật Điều này diễn ra tương tự đối với một trung tâm Anh ngữ xác định thế mạnh là mảng giao tiếp
Một bài thi bao gồm nhiều câu hỏi thi, các câu hỏi thi thường được chia thành hai loại Loại thứ nhất dùng để kiểm tra, đánh giá mức độ tiếp nhận, áp dụng kiến thức đã học Loại thứ hai dùng để thử thách khả năng của học viên Một bài thi tốt giúp đánh giá chính xác học viên và phản ánh mức độ tiến bộ của học viên
Ngân hàng câu hỏi thi được xây dựng từ các nguồn bên ngoài cũng như nội bộ tự biên soạn Đánh giá cấp độ câu hỏi thi để xây dựng một đề thi Anh ngữ là một công việc phức tạp đòi hỏi nhiều công sức, chi phí và thời gian Công việc này đang được thực hiện thủ công và chất lượng công việc phụ thuộc vào kỹ năng, trình độ,… của hội đồng giáo viên
Các bước thực hiện đánh giá và phân loại cấp độ câu hỏi thi gồm
1 Giáo viên thứ nhất và thứ hai thực hiện độc lập các bước:
• Đánh giá mức độ dễ đọc của ngữ cảnh câu hỏi thi (đoạn văn)
• Đánh giá từ vựng phù hợp cho cấp độ học viên
• Mức độ gây phân tâm giữa câu trả lời đúng và các câu trả lời sai (Ý nghĩa gần giống được đánh giá có mức độ phân tâm cao)
• Đưa ra kết quả cấp độ phù hợp
2 Giáo viên thứ ba kiểm tra và đối chiếu kết quả của giáo viên thứ nhất và thứ hai Khi không đồng thuận kết quả, câu hỏi thi được chuyển 03 trợ giảng (tutor) ở 3 cấp độ thực hiện nhận xét cấp độ của bài thi
3 Giáo viên thứ ba tổng hợp thông tin và ra quyết định cuối cùng
Với mục tiêu giảm chi phí, thời gian và chất lượng công việc, đề tài luận văn này nghiên cứu, áp dụng phương pháp xử lý ngôn ngữ tự nhiên BERT và mạng nơ-ron nhân tạo, để xây dựng hệ thống đánh giá và xác định cấp độ của bài thi Quy định phải có của một câu hỏi thi được lồng ghép trong hệ thống để đảm bảo tính tuân thủ Hệ thống này giúp tăng tốc quá trình đánh giá, giảm bớt công việc cho hội đồng giáo viên Dựa trên kết quả đánh giá của hệ thống, hội đồng giáo viên lựa chọn sử dụng, kiểm tra, điều chỉnh bài thi nếu có cho phù hợp với mục tiêu xây dựng đề thi ban đầu.
Mục tiêu nghiên cứu
Đề tài sẽ tập trung vào nghiên cứu các phương pháp nhúng từ (word-embedding), phương pháp BERT, phương pháp phân loại văn bản (text-classification), phương pháp tính mức độ dễ đọc của văn bản và phương pháp tính mức độ tương đồng về mặt ngữ nghĩa Từ đó, tác giả đề xuất một cách tiếp cận và phương hướng giải quyết cho bài toán đánh giá và xác định cấp độ của bài thi
Cụ thể đề tài sẽ nghiên cứu vào ba vấn đề sau:
1 Phương pháp nhúng từ (word-embedding) và các biến thể để biểu diễn từ ngữ, câu văn và đoạn văn thành véc-tơ số thực trong khi vẫn giữ phần lớn ngữ nghĩa
2 Phương pháp đánh giá mức độ tương đồng về mặt ngữ nghĩa giữa hai đoạn văn bản (cụ thể là mức độ tương đồng ngữ nghĩa giữa ba câu trả lời sai với câu trả lời đúng)
3 Phương pháp phân loại sử dụng kỹ thuật học sâu
Các đối tượng nghiên cứu chính bao gồm:
1 Dữ liệu đầu vào gồm 1664 câu hỏi thi đã được hội đồng giáo viên phân chia cấp độ trong giai đoạn xây dựng hệ thống
2 Kiến thức chuyên môn của người dùng, trong trường hợp này là của giáo viên và hội đồng giáo viên trong việc đánh giá kết quả của hệ thống
3 Phương pháp nhúng từ (word-embedding)
Ý nghĩa khoa học và thực tiễn
Về mặt nghiên cứu khoa học, đề tài này có ý nghĩa phát triển và thúc đẩy các nghiên cứu, ứng dụng các kỹ thuật xử lý ngôn ngữ tự nhiên trong việc cải thiện chất lượng đào tạo Anh ngữ Bên cạnh đó, đề tài cũng thúc đẩy các nghiên cứu kết hợp giữa các lĩnh vực khác nhau như xử lý ngôn ngữ tự nhiên, mạng nơ-ron và Anh ngữ học trong việc giải quyết các bài toán về chất lượng đào tạo, mà ở đó các hệ thống tự động còn một số hạn chế nhất định và phần lớn dựa vào hoạt động thủ công của con người
Về mặt thực tiễn, khi ứng dụng đề tài nghiên cứu này giúp tăng tốc quá trình đánh giá, giảm bớt công việc thủ công của con người và đưa ra đánh giá công bằng dựa trên các chỉ tiêu cụ thể Đối với tác giả, đề tài này sẽ giúp bản thân nghiên cứu sâu hơn về lĩnh vực xử lý ngôn ngữ tự nhiên, các công trình nghiên cứu đã và đang được phát triển, cũng như xem xét các hạn chế hiện có để tìm ra cách tiếp cận và hướng giải quyết cho các bài toán đánh giá và xác định cấp độ của bài thi.
Giới hạn đề tài
Do nguồn lực có hạn, nên phạm vi nghiên cứu của đề tài trước mắt tập trung vào việc đề xuất và hiện thực một hệ thống đánh giá phân loại câu hỏi thi thực hiện tự động thao tác đánh giá phân loại thủ công của giáo viên bằng cách dựa trên việc điều chỉnh một mô hình ngôn ngữ đã được đào tạo sẵn, kết hợp đào tạo bổ sung trên tập dữ liệu của Yola.
Cấu trúc báo cáo
Nội dung của luận văn thạc sĩ này được chia làm 5 chương:
• Chương 1: Giới thiệu đề tài, trình bày về nhu cầu, khó khăn và thách thức của việc đánh giá xác định cấp độ của câu hỏi thi Anh ngữ, mục đích và ý nghĩa của việc nghiên cứu, giới hạn đề tài và cấu trúc bài báo cáo
• Chương 2: Cơ sở lý thuyết, trình bày tổng quan về phương pháp đo lường mức độ dễ đọc của văn bản (text readability formula), phương pháp biểu diễn văn bản thành véc-tơ số thực (text vectorization), mô hình ngôn ngữ BERT, phương pháp phân loại văn bản (text classification), và phương pháp tính mức độ tương đồng về mặt ngữ nghĩa (semantic similarity)
• Chương 3: Trình bày các nghiên cứu liên quan
• Chương 4: Đề xuất thiết kế và hiện thực nguyên mẫu, trình bày đặc tả dữ liệu đầu vào, thành phần hệ thống, thiết kế giao diện
• Chương 5: Thí nghiệm và kết quả, trình bày về thu thập dữ liệu, thiết lập thực nghiệm, đánh giá kết quả
• Chương 6: Kết luận, trình bày kết quả các đóng góp của đề tài, hạn chế của đề tài, hướng phát triển trong tương lai.
CƠ SỞ LÝ THUYẾT
Phương pháp đánh giá khả năng đọc của văn bản (Readability formula)
Người đọc (khán giả) luôn là tâm điểm chú ý của người viết tài liệu, văn bản (tác giả) Để có thành công trong công việc, các tác giả phải đảm bảo rằng văn bản do họ viết phải dễ hiểu, dễ đọc và hấp dẫn đối với đối tượng người đọc mục tiêu
George Klare (1963) định nghĩa tính dễ đọc (readability) là sự dễ hiểu hoặc dễ hiểu do phong cách viết [1] Chúng ta có thể coi tính dễ đọc là thước đo khả năng tiếp cận của văn bản hoặc bố cục trang liên quan, cho biết văn bản sẽ tiếp cận với đối tượng người đọc nào hiệu quả
Trong bài báo “The Principles of Readability”, William H Dubay (2004) [1] nhấn mạnh những phát hiện của các nghiên cứu về khả năng đọc viết cho thấy một số lượng lớn người sử dụng tài liệu kỹ thuật gặp khó khăn về khả năng đọc viết và phần lớn có mức đọc hiểu ở trình độ văn hóa thấp và trung bình Điều này có nghĩa là các tài liệu kỹ thuật được viết cho đối tượng có trình độ hiểu biết trên mức thấp và trung bình sẽ không đạt được một lượng lớn người đọc
Tác giả có thể đánh giá tính dễ đọc của văn bản bằng cách áp dụng lý thuyết và công thức dễ đọc Những công thức này cung cấp điểm số cho biết một người cần bao nhiêu năm học để có thể hiểu được một văn bản viết Các công thức đo lường tính dễ đọc thực hiện đo lường các tính năng nhất định của văn bản dựa trên các phép tính toán học Các thước đo đều dựa trên một số yếu tố ngữ nghĩa, chẳng hạn như số lượng từ trong một câu, cũng như số lượng chữ cái hoặc âm tiết trên mỗi từ, tức là độ khó của từ và một yếu tố cú pháp, tức là độ khó của câu Bằng cách áp dụng các nguyên tắc khoa học và toán học, các công thức đo lường tính dễ đọc thể hiện một phân tích khách quan về khả năng đọc của một văn bản cụ thể
Các công thức và lý thuyết đo lường tính dễ đọc được bắt nguồn từ sách giáo khoa trung học ở Hoa Kỳ (U.S) Công thức đầu tiên xuất hiện vào năm 1923, khi hai giáo viên trung học quan tâm đến nội dung của sách giáo khoa khoa học vào thời điểm đó Hai giáo viên này cảm thấy rằng việc sử dụng các từ vựng mang tính kỹ thuật cao trong sách giáo khoa khoa học có nghĩa là phần lớn thời gian trên lớp được dành cho việc giải thích ý nghĩa của từ vựng, còn lại rất ít thời gian dành cho giảng dạy khoa học
Nhận thấy được sự không phù hợp của những cuốn sách giáo khoa này đối với học viên, các giáo viên đã phát triển một hệ thống để đo độ khó của từ vựng sách giáo khoa Điều này dẫn đến phát minh ra công thức đo lường khả năng đọc đầu tiên Công thức dễ đọc Winnetka ra đời ngay sau đó vào năm 1928 [2] Công thức này, được phát triển bởi các giáo viên trung học, để kiểm tra các đặc điểm cấu trúc của văn bản Đây là công thức đo lường khả năng đọc đầu tiên, nhằm mục đích dự đoán độ khó đọc theo cấp lớp và tạo cơ sở cho tất cả các công thức đo lường tính dễ đọc hiện đại
Các công thức đo lường tính dễ đọc đã trở nên nổi bật từ những năm 1950 trở đi Sự gia tăng sử dụng và phổ biến chúng vì các công thức đo lường tính dễ đọc được phát hành miễn phí và dễ sử dụng Công thức Flesch Reading Ease được phát triển vào năm 1948 bởi Rudolf Flesch là một ví dụ về công thức được phát triển trong thời gian này vẫn được áp dụng rộng rãi cho đến ngày nay
Công thức dễ đọc Flesch Reading Ease
Flesch Reading Ease bao gồm hai phần Phần đầu tiên sử dụng hai biến (số lượng âm tiết và số lượng câu) trong mỗi bài viết mẫu 100 từ Phần thứ hai dự đoán sự quan tâm của con người bằng cách đếm số từ và câu cá nhân trong văn bản Văn bản có điểm càng cao thì để đọc hiểu tài liệu cần số năm học tương ứng và càng khó đọc Đối với hầu hết các tệp tiêu chuẩn, điểm số trung bình là 70-80
Công thức Flesch Reading Ease là:
• RE = Readability Ease (tính dễ đọc)
• ASL = Average Sentence Length (i.e., the number of words divided by the number of sentences) = Độ dài câu trung bình (tức là số từ chia cho số câu)
• ASW = Average number of syllables per word (i.e., the number of syllables divided by the number of words) = Số lượng âm tiết trung bình trên mỗi từ (tức là số lượng âm tiết chia cho số lượng từ) Điểm số của Flesch Reading Ease thể hiện mức độ dễ đọc theo bảng sau:
Bất chấp giá trị của công thức đo lường tính dễ đọc trong việc dự đoán độ khó của văn bản, các tác giả (người sử dụng) được lưu ý không nên sử dụng lý thuyết khả năng đọc một cách riêng lẻ khi đánh giá khả năng đọc của tài liệu Dubay chỉ ra rằng hai yếu tố quan trọng nhất của giao tiếp là kỹ năng đọc của khán giả và tính dễ đọc của văn bản (2004) Các công thức đo lường tính dễ đọc đánh giá một cách khách quan các cấp độ đọc dựa trên độ dài trung bình của các câu và của từ Tuy nhiên, các công thức về khả năng đọc có tính chất máy móc và không nên được áp dụng để đánh giá các khía cạnh của bài viết ngoài mục đích của chúng
Các công thức đo lường tính dễ đọc có công dụng trong việc giúp các tác giả đánh giá khả năng đọc của văn bản Dubay cho rằng các biến được sử dụng trong các công thức đo lường tính dễ đọc, rất hữu ích trong việc tạo ra hình ảnh về cấu trúc khung của một văn bản (2004) Tuy nhiên, Dubay cũng lưu ý tác giả (người sử dụng) phải đảm bảo rằng các văn bản cũng được nghiên cứu về giọng điệu, nội dung, cách tổ chức, tính mạch lạc và thiết kế để hoàn thành phân tích đầy đủ về tính dễ đọc Flesch Reading Ease được sử dụng tốt nhất trên văn bản học thuật và công thức này đã trở thành một công thức dễ đọc tiêu chuẩn được sử dụng bởi nhiều Cơ quan Chính phủ Hoa Kỳ, bao gồm cả Bộ Quốc phòng Hoa Kỳ nên đề tài sử dụng công thức này với yêu cầu chỉ số >1 hoặc xấp chỉ bằng 0 Ví dụ, nếu i là “table”, j là “cat” và k là “chair” thì (1) sẽ khá lớn do “chair” có nghĩa gần hơn với “table” hơn là “cat”, ở trường hợp khác, nếu ta thay k là “ice cream” thì (1) sẽ xấp xỉ bằng 1 do “ice cream” hầu như chẳng lên quan gì tới “table” và “cat”
Dựa trên tầm quan trọng của (1), GloVe khởi đầu bằng việc là nó sẽ tìm một hàm F sao cho nó ánh xạ từ các véctơ từ trong vùng không gian V sang một giá trị tỉ lệ với (1) Việc tìm F không đơn giản, sau nhiều bước đơn giản hóa cũng như tối ưu, ta có thể đưa nó về bài toán hồi quy với việc tối thiểu hoá hàm chi phí sau:
• wi, wj là các véctơ từ
• bi, bj là các bias tương ứng (được thêm vào ở các bước đơn giản hóa và tối ưu)
• Xij: mục nhập tương ứng với cặp từ i, j trong ma trận đồng xuất hiện (Co- occurrence Matrix)
Hàm f được gọi là weighting function, được thêm vào để giảm bớt sự ảnh hưởng của các cặp từ xuất hiện quá thường xuyên, hàm này thỏa 3 tính chất:
• Có giá trị nhỏ khi x rất lớn
Thực tế, có nhiều hàm số thỏa các tính chất trên, nhưng ta sẽ lựa chọn hàm số sau:
Việc thực hiện tối thiểu hoá hàm chi phí J để tìm ra các véctơ từ wi, wj có thể được thực hiện bằng nhiều cách, trong đó cách tiêu chuẩn nhất là sử dụng phương pháp Gradient Descent
Phương pháp Prediction-based Embedding xây dựng các véctơ từ dựa vào các mô hình dự đoán sử dụng mạng nơ ron cạn gồm 3 lớp: một lớp đầu vào, một lớp ẩn và một lớp đầu ra Mục đích chính của mạng nơ-ron này là học các trọng số biểu diễn véctơ từ Phương pháp Prediction-based Embedding có một số đại diện sau:
• Doc2vec (biến thể dựa trên Word2Vec, tối ưu cho biểu diễn câu, đoạn văn)
• FastText (biến thể dựa trên Word2Vec, để mã hóa thông tin từ phụ)
Mô hình ngôn ngữ BERT (Bidirectional Encoder Representations from Transformers)
Trong lĩnh vực xử lý ngôn ngữ tự nhiên, sự thiếu hụt dữ liệu đào tạo là một trong những thách thức lớn nhất Đây là một lĩnh vực rộng lớn và đa dạng với nhiều nhiệm vụ riêng biệt, hầu hết các tập dữ liệu đều chỉ đặc thù cho từng nhiệm vụ Để thực hiện được tốt những nhiệm vụ này tác giả cần những bộ dữ liệu lớn chứa hàng triệu thậm chí hàng tỷ ví dụ mẫu Trong thực tế hầu hết các tập dữ liệu hiện giờ chỉ chứa vài nghìn hoặc vài trăm nghìn mẫu được đánh nhãn bằng tay bởi con người (các chuyên gia ngôn ngữ học) Để giải quyết thách thức này, các mô hình xử lý ngôn ngữ tự nhiên sử dụng một cơ chế tiền xử lý dữ liệu huấn luyện bằng việc chuyển giao (transfer) từ một mô hình chung được đào tạo với một lượng lớn các dữ liệu không được gán nhãn Ví dụ một số mô hình đã được nghiên cứu trước đây để thực hiện nhiệm vụ này như Word2Vec, Glove hay FastText
Các mô hình được đào tạo trước (pre-trained model), khi được tinh chỉnh lại trên các nhiệm vụ khác nhau với các bộ dữ liệu nhỏ như Question Answering, Sentiment Analysis,… sẽ dẫn đến sự cải thiện đáng kể về độ chính xác
Tuy nhiên, các mô hình được đào tạo trước (pre-trained model) có những yếu điểm riêng, như là không thể hiện được sự đại diện theo ngữ cảnh cụ thể của từ trong từng lĩnh vực hay văn cảnh cụ thể
Về mặt lý thuyết, các kỹ thuật khác như Word2Vec, FastText hay Glove cũng tìm ra đại diện của từ thông qua ngữ cảnh chung của chúng Tuy nhiên, những ngữ cảnh này là đa dạng trong dữ liệu tự nhiên Ví dụ các từ như "con chuột" có ngữ nghĩa khác nhau ở các ngữ cảnh khác nhau như "Con chuột máy tính này thật đẹp!!" và
"con chuột này to thật." Trong khi các mô hình như Word2Vec, FastText tìm ra 1 véctơ đại diện cho mỗi từ dựa trên 1 tập dữ liệu lớn nên không thể hiện được sự đa dạng của ngữ cảnh Nếu tạo ra một biểu diễn của mỗi từ dựa trên các từ khác trong câu, thì mang lại kết quả ý nghĩa hơn nhiều Như trong trường hợp trên, ý nghĩa của từ con chuột sẽ được biểu diễn cụ thể dựa vào phần trước hoặc sau nó trong câu Nếu đại diện của từ "con chuột" được xây dựng dựa trên những ngữ cảnh cụ thể này thì ta sẽ có được biểu diễn tốt hơn
BERT là viết tắt của Bidirectional Encoder Representations from Transformers [8] được hiểu là một mô hình học sẵn (pre-trained model), tạo ra các véctơ đại diện theo ngữ cảnh 2 chiều của từ, được sử dụng để chuyển giao (transfer) sang các bài toán khác trong lĩnh vực xử lý ngôn ngữ tự nhiên BERT đã thành công trong việc cải thiện những công việc gần đây trong việc tìm ra đại diện của từ trong không gian số (không gian mà máy tính có thể hiểu được) thông qua ngữ cảnh của nó BERT mở rộng khả năng của các phương pháp trước đây bằng cách tạo các biểu diễn theo ngữ cảnh dựa trên các từ trước và sau đó để dẫn đến một mô hình ngôn ngữ với ngữ nghĩa phong phú hơn
Kiến trúc của mô hình BERT là một kiến trúc đa tầng gồm nhiều lớp Bidirectional Transformer encoder dựa trên bản mô tả đầu tiên trong bài báo “Attention is All You Need” (Vaswani và cộng sự, 2017) [9] Điều này trái ngược với những nỗ lực trước đây đã xem xét một chuỗi văn bản từ trái sang phải hoặc kết hợp đào tạo thêm từ phải sang trái Kết quả của bài báo cho thấy rằng một mô hình ngôn ngữ được đào tạo theo hai hướng có thể có cảm nhận sâu sắc hơn về ngữ cảnh và luồng ngôn ngữ so với các mô hình ngôn ngữ một hướng Trong bài báo, các nhà nghiên cứu trình bày chi tiết một kỹ thuật mới có tên Masked Language Model (MLM) cho phép đào tạo hai chiều mà các mô hình mà trước đây không thể thực hiện được BERT sử dụng Transformer, một cơ chế “Attention” tìm hiểu các mối quan hệ theo ngữ cảnh giữa các từ (hoặc từ phụ) trong một văn bản Transformer bao gồm hai cơ chế riêng biệt - một bộ mã hóa (encoder) đọc đầu vào văn bản và một bộ giải mã (decoder) tạo ra kết quả cho nhiệm vụ dự đoán Vì mục tiêu của BERT là tạo mô hình ngôn ngữ, nên chỉ dùng cơ chế bộ mã hóa (encoder)
Trái ngược với các mô hình định hướng, đọc văn bản đầu vào theo tuần tự (từ trái sang phải hoặc từ phải sang trái), bộ mã hóa (encoder) Transformer đọc toàn bộ chuỗi từ cùng một lúc Đặc tính này cho phép mô hình học ngữ cảnh của một từ dựa trên tất cả các môi trường xung quanh nó (bên trái và bên phải của từ đó)
Biểu đồ bên dưới là mô tả cấp cao của bộ mã hóa (encoder) Transformer Đầu vào là một chuỗi mã thông báo (sequence of tokens), đầu tiên được nhúng vào véctơ và sau đó được xử lý trong mạng nơ-ron Đầu ra là một chuỗi các véctơ có kích thước
H, trong đó mỗi véctơ tương ứng với một mã thông báo đầu vào có cùng chỉ số
Hình 10 - Mô tả bộ mã hóa (encoder) Transformer (nguồn https://www.lyrn.ai/ 2018/11/07/explained-bert-state-of-the-art-language-model-for-nlp) Khi đào tạo các mô hình ngôn ngữ, có một thách thức là xác định mục tiêu dự đoán Nhiều mô hình dự đoán từ tiếp theo trong một chuỗi (ví dụ: “Đứa trẻ về nhà từ _”), cách tiếp cận đơn hướng gặp hạn chế trong khi học ở ngữ cảnh này Để vượt qua thách thức này, BERT sử dụng hai chiến lược đào tạo:
Trước khi đưa chuỗi từ vào BERT, 15% số từ trong mỗi chuỗi được thay thế ngẫu nhiên bằng mã thông báo [MASK] Sau đó, mô hình cố gắng dự đoán giá trị ban đầu của các từ bị che, dựa trên ngữ cảnh được cung cấp bởi các từ khác, không bị che, trong chuỗi Về mặt kỹ thuật, việc dự đoán các từ ở đầu ra yêu cầu:
• Thêm một lớp phân loại trên đầu ra của bộ mã hóa
• Nhân các véctơ đầu ra với ma trận nhúng, biến chúng thành chiều từ vựng
• Tính xác suất của từng từ trong từ vựng với hàm softmax
Hình 11 - Mô tả hoạt động của MLM (nguồn https://www.lyrn.ai/2018/11/07/ explained-bert-state-of-the-art-language-model-for-nlp) Hàm mất mát BERT chỉ xem xét dự đoán của các giá trị bị che và bỏ qua dự đoán của các từ không bị che Do đó, mô hình hội tụ chậm hơn so với các mô hình định hướng, tuy nhiên khả năng nhận thức ngữ cảnh được thêm vào
Trong quá trình đào tạo BERT, mô hình nhận các cặp câu làm đầu vào và học cách dự đoán xem câu thứ hai trong cặp có phải là câu tiếp theo trong tài liệu gốc hay không Trong quá trình luyện tập, 50% đầu vào là một cặp, trong đó câu thứ hai là câu tiếp theo trong tài liệu gốc, trong khi 50% còn lại, một câu ngẫu nhiên từ dữ liệu được chọn làm câu thứ hai Giả định của tác giả là câu ngẫu nhiên sẽ bị ngắt kết nối với câu đầu tiên Để giúp mô hình phân biệt giữa hai câu trong đào tạo, đầu vào được xử lý theo cách bên dưới, trước khi đưa vào mô hình:
• Mã thông báo [CLS] được chèn vào đầu câu đầu tiên và mã thông báo [SEP] được chèn vào cuối mỗi câu
• Một câu nhúng (sentence embedding) cho biết Câu A hoặc Câu B được thêm vào mỗi mã thông báo Nhúng câu (sentence embedding) có khái niệm tương tự như nhúng mã thông báo có từ vựng là 2
• Một vị trí nhúng (positional embedding) được thêm vào mỗi mã thông báo để chỉ ra vị trí của nó trong chuỗi Khái niệm và cách thực hiện nhúng vị trí (positional embedding) được trình bày trong bài báo Transformer Để dự đoán xem câu thứ hai có thực sự được kết nối với câu đầu tiên hay không, các bước sau được thực hiện:
• Toàn bộ trình tự đầu vào đi qua mô hình Transformer
Phương pháp phân loại văn bản (Text Classification)
Phân loại văn bản là quá trình gán các thẻ hoặc danh mục cho văn bản theo nội dung của văn bản Đây là một trong những nhiệm vụ cơ bản trong xử lý ngôn ngữ tự nhiên với các ứng dụng rộng rãi như phân tích tình cảm, gắn nhãn chủ đề, phát hiện spam và phát hiện ý định Bộ phân loại văn bản có thể được sử dụng để tổ chức, cấu trúc và phân loại khá nhiều loại văn bản - từ tài liệu, nghiên cứu y tế và trên tất cả các trang web Ví dụ, các bài báo mới có thể được sắp xếp theo chủ đề; các cuộc trò chuyện có thể được sắp xếp theo ngôn ngữ; đề cập thương hiệu có thể được sắp xếp theo cảm tính,… Giống như trong văn bản dưới đây:
“Giao diện người dùng khá đơn giản và dễ sử dụng.”
Bộ phân loại văn bản lấy văn bản này làm đầu vào, phân tích nội dung của nó và sau đó tự động gán các thẻ có liên quan, chẳng hạn như “Giao diện người dùng” và hoặc “Dễ sử dụng” đại diện cho văn bản này
Phân loại văn bản có thể được thực hiện theo hai cách khác nhau: phân loại thủ công hoặc tự động Phân loại thủ công dựa vào hướng dẫn và sử dụng con người sẽ diễn giải nội dung của văn bản và phân loại văn bản cho phù hợp Phương pháp này thường mang lại kết quả chất lượng nhưng tốn kém thời gian và chi phí Phân loại tự động dựa trên kỹ thuật xử lý ngôn ngữ tự nhiên (NLP) và trí tuệ nhân tạo (Artificial Intelligence) Có nhiều cách tiếp cận để phân loại văn bản tự động, thường chia thành ba loại hệ thống:
• Hệ thống dựa trên tập luật định sẵn (Rule-based systems)
• Hệ thống dựa trên kỹ thuật máy học (Machine learning-based systems)
• Hệ thống kết hợp (Hybrid systems)
Hệ thống dựa trên tập luật định sẵn (Rule-based systems)
Phương pháp tiếp cận dựa trên quy tắc phân loại văn bản thành các nhóm có tổ chức bằng cách sử dụng một tập hợp các quy tắc ngôn ngữ thủ công Các quy tắc này hướng dẫn hệ thống sử dụng các yếu tố phù hợp về mặt ngữ nghĩa của văn bản để xác định các danh mục liên quan dựa trên nội dung của nó Mỗi quy tắc bao gồm một tiền đề hoặc mẫu và một danh mục dự đoán
Giả sử bạn muốn phân loại bài báo thành hai nhóm: Thể thao và Chính trị Đầu tiên, bạn sẽ cần xác định hai danh sách các từ đặc trưng cho mỗi nhóm (ví dụ: các từ liên quan đến thể thao như bóng đá, bóng rổ, LeBron James, v.v và các từ liên quan đến chính trị, chẳng hạn như Donald Trump, Hillary Clinton, Putin,…) Tiếp theo, khi bạn muốn phân loại một văn bản mới đến, bạn sẽ cần đếm số lượng từ liên quan đến thể thao xuất hiện trong văn bản và thực hiện tương tự đối với các từ liên quan đến chính trị Nếu số lượng từ liên quan đến thể thao xuất hiện nhiều hơn số từ liên quan đến chính trị, thì văn bản được phân loại là Thể thao và ngược lại
Hệ thống dựa trên quy tắc có ưu điểm là con người hiểu được và có thể được cải thiện theo thời gian Nhưng cách làm này có một số nhược điểm Đối với người mới bắt đầu, các hệ thống này yêu cầu kiến thức sâu về lĩnh vực cụ thể (domain- knowledge) Bên cạnh đó cũng tốn nhiều thời gian, vì việc tạo ra các quy tắc cho một hệ thống phức tạp có thể khá khó khăn và thường đòi hỏi nhiều phân tích và thử nghiệm Hệ thống dựa trên quy tắc thường khó duy trì và không mở rộng quy mô tốt do việc thêm các quy tắc mới có thể ảnh hưởng đến kết quả của các quy tắc đã có từ trước
Hệ thống dựa trên kỹ thuật máy học (Machine learning-based systems)
Thay vì dựa vào các quy tắc được tạo thủ công, phân loại văn bản dựa trên kỹ thuật học máy bằng cách tạo ra các phân loại dựa trên các quan sát trước đây Bằng cách sử dụng các ví dụ được gắn nhãn trước làm dữ liệu đào tạo, các thuật toán học máy tìm hiểu các liên kết khác nhau giữa các phần văn bản và nhãn đầu ra cụ thể (tức là thẻ) được mong đợi cho một đầu vào cụ thể (tức là văn bản) “Thẻ” là phân loại hoặc danh mục được xác định trước
Bước đầu tiên để đào tạo một bộ phân loại dựa trên kỹ thuật học máy là trích xuất tính năng: một phương pháp được sử dụng để biến đổi mỗi văn bản thành một biểu diễn số dưới dạng một véctơ
Hình 12 - Đào tạo hệ thống phân loại dựa trên học máy (Machine Learning)
(nguồn monkeylearn.com) Sau khi được đào tạo với đủ các mẫu đào tạo, mô hình học máy có thể bắt đầu đưa ra các dự đoán Công cụ trích xuất tính năng tương tự được sử dụng để chuyển đổi văn bản không nhìn thấy thành các tập hợp tính năng có thể được đưa vào mô hình phân loại để nhận dự đoán trên các thẻ (ví dụ: thể thao, chính trị):
Hình 13 - Hoạt động dự đoán của hệ thống phân loại dựa trên học máy (nguồn monkeylearn.com) Phân loại văn bản bằng học máy thường chính xác hơn so với các hệ thống quy tắc do con người tạo ra, đặc biệt là đối với các nhiệm vụ phân loại ngôn ngữ tự nhiên phức tạp Ngoài ra, bộ phân loại với học máy dễ bảo trì hơn và tác giả luôn có thể bổ sung các thẻ và mẫu dữ liệu mới
Hệ thống kết hợp (Hybrid Systems)
Hệ thống kết hợp kết hợp bộ phân loại cơ sở được đào tạo bằng máy học với hệ thống dựa trên quy tắc, được sử dụng để cải thiện hơn nữa kết quả Có thể dễ dàng tinh chỉnh các hệ thống kết hợp này bằng cách thêm các quy tắc cụ thể cho các thẻ xung đột chưa được trình phân loại cơ sở lập mô hình chính xác Đề tài ứng dụng nguyên tác kết hợp để xây dựng hệ thống đánh giá phân loại cấp độ câu hỏi thi Bước thứ nhất, áp dụng phân loại dựa trên tập luật, đoạn văn được đánh giá mức độ mức độ dễ đọc phù hợp và các câu trả lời không có sự tương đồng ngữ nghĩa phù hợp để tránh trường hợp thí sinh loại trừ Bước thứ hai, thực hiện véctơ hóa văn bản và phân loại bằng mô hình ngôn ngữ BERT dựa trên học máy (machine learning)
Phương pháp tính mức độ tương đồng về mặt ngữ nghĩa (semantic similarity)
Ước tính sự tương đồng về ngữ nghĩa giữa những dữ liệu văn bản là một trong những vấn đề nghiên cứu mở và đầy thách thức trong lĩnh vực xử lý ngôn ngữ tự nhiên (NLP) Tính linh hoạt của ngôn ngữ tự nhiên gây khó khăn cho việc xác định các phương pháp dựa trên quy tắc để tính toán mực độ tương đồng về ngữ nghĩa Để giải quyết vấn đề này, nhiều phương pháp tương đồng ngữ nghĩa khác nhau đã được đề xuất trong nhiều năm Nghiên cứu của Dhivya Chandrasekaran, Vijay Mago [10] phân chia các phương pháp thành bốn loại chính:
• Phương pháp dựa trên tri thức (Knowledge-based methods)
• Phương pháp dựa trên tập dữ liệu (Corpus-based methods)
• Phương pháp dựa trên mạng nơ ron sâu (Deep neural network-based methods)
• Phương pháp kết hợp (Hybrid methods)
Hình 14 - Phân loại các phương pháp đo lường tương đồng về mặt ngữ nghĩa
(trích dẫn từ bài báo [10])
Phương pháp dựa trên tri thức (Knowledge-based methods)
Các phương pháp đo lường tương đồng về mặt ngữ nghĩa dựa trên tri thức tính toán sự tương đồng về ngữ nghĩa giữa hai thuật ngữ dựa trên thông tin thu được từ một hoặc nhiều nguồn tri thức cơ bản như bản thể học / cơ sở dữ liệu từ vựng, bách khoa toàn thư, từ điển, v.v Cơ sở tri thức cơ bản cung cấp cho các phương pháp này một biểu diễn có cấu trúc của các thuật ngữ hoặc các khái niệm được kết nối bởi các quan hệ ngữ nghĩa, cung cấp một biện pháp đầy đủ về mặt ngữ nghĩa đúng như ý nghĩa thực tế theo tên của phương pháp
Dựa trên nguyên tắc cơ bản về cách đánh giá sự giống nhau về mặt ngữ nghĩa giữa các từ, các phương pháp đo lường tương đồng về mặt ngữ nghĩa dựa trên tri thức có thể được phân loại thêm thành ba phương pháp:
• Phương pháp đếm cạnh (Edge-counting methods)
• Phương pháp dựa trên đặc trưng (Feature-based methods)
• Phương pháp dựa trên nội dung thông tin (Information content-based methods)
Phương pháp dựa trên tập dữ liệu (Corpus-based methods)
Các phương pháp đo lường tương đồng về mặt ngữ nghĩa dựa trên tập dữ liệu đo lường sự tương đồng về ngữ nghĩa giữa các thuật ngữ bằng cách sử dụng thông tin được truy xuất từ một kho ngữ liệu cơ bản rất lớn Nguyên tắc cơ bản khai thác ý tưởng là các từ tương đồng về mặt ngữ nghĩa xuất hiện cùng nhau thường xuyên trong các tài liệu; tuy nhiên, ý nghĩa thực tế của các từ không được xem xét Các kỹ thuật thống kê được triển khai để phân tích sự tương đồng tiềm ẩn giữa các thuật ngữ trong kho ngữ liệu đào tạo Các phương pháp này hầu hết đều dựa trên hai bước Bước thứ nhất là véctơ hoá văn bản Bước thứ hai là đo lường khoảng cách (Euclidean hoặc Manhattan) giữa hai véctơ hoặc đo góc cosine giữa hai véctơ để tính độ tương đồng về mặt ngữ nghĩa Cách tính góc cosine bỏ qua số lượng xuất hiện từ ngữ trong các văn bản được so sánh Cụ thể minh họa như sau:
• Tài liệu thứ nhất có chữ bầu trời (sky) xuất hiện 100 lần
• Tài liệu thứ hai có chữ bầu trời (sky) xuất hiện 10 lần
Khoảng cách Euclide giữa hai véctơ sẽ cao hơn nhưng góc vẫn nhỏ vì chúng vẫn cùng hướng, đó là những gì quan trọng khi chúng ta đang so sánh các tài liệu
Hình 15 - Mô hình sự tương đồng giữa hai văn bản bằng giá trị cosine (nguồn https://github.com/sagarmk/Cosine-similarity-from-scratch-on-webpages) Duy nhất phương pháp khoảng cách chuẩn hóa dựa trên Google (Normalized Google Distance - NGD) dựa trên kết quả thu được khi các cụm từ được truy vấn bằng công cụ tìm kiếm của Google Phương pháp NGD dựa trên giả định: nếu hai từ xuất hiện cùng nhau thường xuyên hơn trong các trang web thì chúng có liên quan nhiều hơn Một số phương pháp đo lường tương đồng về mặt ngữ nghĩa dựa trên tập dữ liệu điển hình gồm có:
• Phương pháp phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis - LSA)
• Phương pháp Hyperspace Analogue to Language (HAL)
• Phương pháp phân tích ngữ nghĩa rõ ràng (Explicit Semantic Analysis - ESA)
• Phương pháp mô hình Word-Alignment
• Phương pháp khoảng cách chuẩn hóa dựa trên Google (Normalised Google Distance)
• Phương pháp mô hình dựa trên sự phụ thuộc (Dependency-based models)
• Phương pháp mô hình Word-attention
Phương pháp dựa trên mạng nơ ron sâu (Deep neural network-based methods)
Các phương pháp đo lường tương đồng ngữ nghĩa đã khai thác những phát triển gần đây trong mạng nơ-ron để nâng cao hiệu suất Các kỹ thuật được sử dụng rộng rãi nhất gồm Convolutional Neural Networks (CNN), Long Short Term Memory (LSTM), Bidirectional Long Short Term Memory (Bi-LSTM) và Recursive Tree LSTM
Các phương pháp dựa trên mạng nơ-ron học sâu vượt trội hơn hầu hết các phương pháp truyền thống tuy nhiên việc áp dụng các mô hình học sâu đòi hỏi nguồn tài nguyên tính toán lớn Mô hình học sâu là mô hình "hộp đen" và rất khó để xác định chắc chắn các đặc trưng giúp đạt được hiệu suất, do đó nó trở nên khó được giải thích không giống như trong trường hợp các phương pháp dựa trên tập dữ liệu Các lĩnh vực như tài chính, bảo hiểm, v.v xử lý dữ liệu nhạy cảm có thể miễn cưỡng triển khai các phương pháp dựa trên mạng nơ-ron học sâu vì lý do thiếu khả năng diễn giải
Phương pháp kết hợp (Hybrid methods)
Mỗi phương pháp đều có ưu điểm và nhược điểm Các phương pháp dựa trên tri thức khai thác các bản thể học cơ bản để phân biệt các từ đồng nghĩa, trong khi các phương pháp dựa trên tập dữ liệu rất linh hoạt vì chúng có thể được sử dụng trên các ngôn ngữ Các hệ thống dựa trên mạng nơ-ron học sâu, mặc dù tốn kém về mặt tính toán nhưng cung cấp kết quả tốt hơn Tuy nhiên, nhiều nhà nghiên cứu đã tìm cách khai thác những gì tốt nhất của từng phương pháp và xây dựng các mô hình lai để đo độ tương đồng về ngữ nghĩa Đề tài thực hiện đo lường mức độ tương đồng về mặt ngữ nghĩa giữa các câu trả lời trong câu hỏi thi bằng việc tính cosine giữa các véctơ đại diện cho mỗi câu trả lời Véctơ đại diện cho mỗi câu trả lời được xây dựng bằng mô hình ngôn ngữ BERT có khả năng giữ được ngữ nghĩa, ngữ cảnh và vị trí của các từ trong câu, có tính đại diện tốt so với các phương pháp véctơ hóa truyền thống như BOW, TF-IDF, Co- occurrence và cả những phương pháp hiện đại như Word2Vec, Doc2Vec, FastText Cách tính cosine rất đơn giản, không đòi hỏi nhiều tài nguyên được áp dụng trong đề tài này Véctơ được BERT tạo ra mang tính đại diện tốt nhất cho văn bản và ưu điểm này giúp cải thiện tính chính xác của cách tính cosine.
CÁC NGHIÊN CỨU LIÊN QUAN ĐỀ TÀI
Phân loại văn bản dựa trên trích xuất đặc trưng bằng Domain-Knowledge và Machine
Babak Loni và các đồng sự, thông qua nghiên cứu [16] năm 2011 trên tập dữ liệu UIUC, đã đề xuất một phương pháp phân loại câu hỏi bằng cách:
• Sử dụng các kỹ thuật Bigrams, word-shapes, wh-words, head-words, related words, hypernyms trích xuất đặc trưng của câu hỏi
• Áp dụng kỹ thuật phân tích ngữ nghĩa tiềm ẩn (Latent Semantic Analysis - LSA) để giảm từ không gian đặc trưng lớn thành không gian đặc trưng nhỏ
• Tiếp theo tác giả đã áp dụng hai phương pháp để phân loại là Mạng thần kinh lan truyền ngược (BPNN) và Support vector Machine (SVM) để phân loại và đánh giá kết quả
• Kết quả thu được, với không gian đặc trưng nhỏ thì BPNN hoạt động tốt hơn SVM
Mặc dù đạt kết quả cao (độ chính xác 93.8%), đóng góp kết quả không gian đặc trưng nhỏ giúp các thuật toán phân loại hoạt động tốt và nhanh hơn; nhưng phương pháp trong bài báo gặp một số hạn chế:
• Dựa trên domain-knowledge về ngôn ngữ tiếng Anh để rút trích đặc trưng vì vậy khó mở rộng Cần xây dựng một đặc trưng riêng cho các ngôn ngữ khác
• Không gian đặc trưng không lưu giữ được ngữ nghĩa trong ngữ cảnh cụ thể
Alaa Mohasseb và các đồng sự, thông qua nghiên cứu [17] năm 2018 trên ba tập dữ liệu Yahoo Non-Factoid Question, TREC 2007 Question Answering và Wikipedia, đã đề xuất phương pháp phân loại câu hỏi tiếng Anh bằng cách dựa trên ngữ pháp để phân loại và phân loại câu hỏi (GQCC) Kết quả đầu ra là một véctơ đặc trưng dựa trên Khung Ngữ Pháp (GQCC) được áp dụng kỹ thuật cây quyết định (Decision Tree) để phân loại và gán nhãn Nghiên cứu [17] cho kết quả độ chính xác cao nhất là 90.1% Dù đạt được kết quả cao chỉ với bộ khung ngữ pháp (GQCC) nhưng bản chất nghiên cứu trong bài báo vẫn dựa trên domain-knowledge nên vẫn gặp các hạn chế như nghiên cứu của Babak Loni và các đồng sự [16]
Hình 24 - Khung phân loại câu hỏi dựa trên domain-knowledge
Phân loại văn bản dựa trên trích xuất đặc trưng bằng Prediction-based embedding và
Mohammad Razzaghnoori và các đồng sự, thông qua nghiên cứu [18] năm 2017 trên tập dữ liệu Tehran Question Dataset 2016, đã đề xuất ba phương pháp phân loại câu hỏi tiếng Ba Tư bằng cách:
• Phương pháp một: sử dụng thuật toán phân cụm để phân chia từ vựng thành các cụm và thu được véctơ đặc trưng tương ứng với mỗi câu hỏi bằng cách sử dụng thông tin phân cụm
• Phương pháp hai: Mỗi câu hỏi được chuyển đổi thành một véctơ đặc trưng, được lấy bằng phương pháp Word2Vec và được tính theo hệ số TF-IDF Véctơ đặc trưng mỗi câu hỏi sẽ được phân loại bằng SVM và MLP
• Phương pháp ba: chuyển đổi mỗi câu hỏi thành một ma trận trong đó mỗi hàng là một véctơ Word2Vec của một từ trong câu Sau đó, phương pháp LSTM được sử dụng cho mục đích phân loại
Phương pháp thứ hai cho kết quả độ chính xác đat được 72.46% khi sử dụng MLP và 72% khi sử dụng SVM Phương pháp thứ ba cho kết quả độ chính xác đat được 81.77% Bài báo sử dụng Word2Vec để trích xuất đặc trưng nên gặp một số hạn chế:
• Không gian đặc trưng không lưu giữ được ngữ nghĩa trong ngữ cảnh cụ thể
Alami Hamza và các đồng sự, thông qua nghiên cứu [19] năm 2019 trên ba tập dữ liệu TREC, CLEF, Moroccan, đã đề xuất phương pháp phân loại câu hỏi tiếng Ả Rập theo các bước sau:
• Làm sạch dữ liệu, loại bỏ dấu câu, stop-word,…
• Tạo ra véctơ TF-IDF cho các n-gram của từ Tiếp theo sử dụng mạng ANN để liên kết n-gram và từ tạo ra véctơ đại diện cho từ (xem từ là một tập hợp các n-gram)
• Tạo véctơ đại diện cho câu hỏi bằng hàm tổng các véctơ của mỗi từ trong câu
• Véctơ đại diện cho câu hỏi được phân loại bằng SVM
Kết quả của bài đạt độ chính xác 90.03% Một kết quả cao chỉ dựa trên sự kết hợp các kỹ thuật truyền thống và SVM Bài báo gặp một số hạn chế:
• Không gian đặc trưng không lưu giữ được ngữ nghĩa trong ngữ cảnh cụ thể.
ĐỀ XUẤT VÀ HIỆN THỰC NGUYÊN MẪU
Đặc tả dữ liệu đầu vào
Cấu trúc phần thi TOEFL kỹ năng đọc gồm 3-4 bài đọc Các bài đọc là những đoạn văn trích từ tài liệu học thuật ở cấp độ Trung Học, Đại học với các chủ đề đa dạng: địa lý, lịch sử, nhân chủng học, xã hội học, khảo cổ học, thiên văn học,… Mỗi bài đọc sẽ có 10 câu hỏi Mỗi câu hỏi gồm 04 câu trả lời, chọn câu trả lời đúng nhất Các dạng câu hỏi thường gặp trong đề thi là: đoán từ vựng, ý tưởng chính, suy luận, tham khảo, và chi tiết cụ thể Thời gian làm bài phần thi kỹ năng đọc là 54-72 phút Điểm thi cao nhất là 30 điểm (từ 25 điểm trở lên được xem là khá giỏi) Mỗi phần thi của TOEFL có điểm cao nhất là 30 Tổng điểm thi của bốn kỹ năng: nghe, nói, đọc, viết là 120 điểm
Do tính tương đồng về cấu trúc nên hệ thống được thiết kế tiếp nhận dữ liệu đầu vào là một bài đọc gồm nhiều đoạn văn bản kèm theo một câu hỏi, với bốn câu trả lời cho mỗi câu hỏi và thông tin câu trả lời đúng cho mỗi câu hỏi
Bên dưới là một ví dụ minh họa cho dữ liệu đầu vào của hệ thống
The current economic expansion is unsustainable in terms of climate change and ecological breakdown this is a widely accepted fact It spawned the so-called Paris Agreement within the United Nations Framework Convention on Climate Change, signed back in 2016 Its long-term goal is to keep the increase in global average temperature to well below 2 °C above pre-industrial levels and, if possible, limit the increase to 1.5 °C in an effort to mitigate the effect's industrialization has had on our planet
The green growth theory is one of several approaches to fulfilling the Paris Agreement Its main idea is the decoupling of GDP growth from resource use and carbon emissions, which would lead to using natural resources in a more sustainable manner The idea itself is a worthy cause, but critics warn that to meet the criteria set by the Paris Agreement, green growth is a half-baked measure at best In reality, it is severely misguided
Researchers point out that as of right now, there is no empirical evidence that the necessary decoupling of resource use from growth can be achieved on a global scale, especially if the plan is keeping any growth at all Additionally, even if it were possible, it is highly unlikely that such an approach could be implemented rapidly enough to meet the necessary criteria
Perhaps worst of all, once capitalists lose their access to natural resources, where else will they acquire the free input they need for radical growth? Unfortunately, previous experience points towards them finding new ways to squeeze workers and create an artificial scarcity of immaterial things in order to profit off them like knowledge, green spaces, even parenting or physical touch This poses a very important question: is growth still the way to go?
Which of these summarizes the text best?
A “Green growth” is a worthless idea
B “Green growth” is not a worthy, but deeply flawed idea
C Capitalism is required to profit from natural resources
D The Paris Agreement was signed in 2016
Câu trả lời đúng là B
Thành phần hệ thống
Kiến trúc tổng quát của hệ thống được hiện thực trong hình bên dưới
Hình 16 - Các thành phần chính của hệ thống.
Chức năng các thành phần của hệ thống
• Dữ liệu đầu vào: Đây là câu hỏi thi do giáo viên/hội đồng giáo viên biên soạn và cần thực hiện đánh giá, phân loại cấp độ Mỗi mẫu dữ liệu đầu vào gồm một bài đọc, một câu hỏi, bốn câu trả lời và lựa chọn trả lời đúng
• Kiểm tra ngôn ngữ, ngữ pháp: Đây là thành phần thực hiện kiểm tra dữ liệu đầu vào Các công đoạn kiểm tra gồm hai bước chính Bước thứ nhất là kiểm tra ngôn ngữ của dữ liệu đầu vào có phải là tiếng Anh Bước thứ hai là kiểm tra ngữ pháp của dữ liệu đầu vào Bên cạnh việc kiểm tra lỗi chính tả, lỗi ngữ pháp, trong bước này còn thực hiện đưa ra mô tả lỗi và đề xuất hướng sửa lỗi cho người sử dụng Thư viện xử lý ngôn ngữ tự nhiên spacy và thư viện kiểm tra chính tả, ngữ pháp language-tool-python được sử dụng trong thành phần này
• Kiểm tra tính dễ đọc của bài đọc: Đây là thành phần thực hiện kiểm tra tính dễ đọc của bài đọc bằng phương pháp Flesch Reading Ease Bài đọc của điểm số lớn hơn hoặc bằng 70 sẽ bị từ chối do thuộc dạng rất dễ đọc, không phù hợp với bài thi TOEFL Reading học thuật Thư viện textstat được sử dụng trong thành phần này
• Véctơ các câu trả lời: Đây là thành phần thực hiện véctơ hóa bốn câu trả lời Đầu ra của thành phần này là đầu vào cho bước kiểm tra mức độ tương đồng về mặt ngữ nghĩa giữa các câu trả lời Chức năng tokenize của mô hình ngôn ngữ BERT được ứng dụng trong thành phần này
• Kiểm tra mức độ tương đồng giữa các câu trả lời: Dựa trên câu trả lời đúng, thành phần này kiểm tra mức độ tương đồng ngữ nghĩa bằng phương pháp cosine giữa ba câu trả lời sai và câu trả lời đúng Nếu giá trị cosine bằng, nhỏ hơn -0.1 hoặc bằng, lớn hơn 0.9 thì hệ thống sẽ hiện cảnh báo có sự phân biệt rõ ràng giữa các câu trả lời, điều này giúp thí sinh dễ dàng loại suy đáp án sai
• Véctơ hóa bài đọc, câu hỏi và các câu trả lời: Thành phần này thực hiện ghép bài đọc, câu hỏi và bốn câu trả lời thành một chuỗi văn bản Tiếp theo sẽ thực hiện véctơ hóa chuỗi văn bản thành một véctơ có 512 phần tử Chức năng véctơ hóa trong thành phần này dựa trên bộ mã hoá (encoder) trong BERT Tác giả chọn BERT do khả năng nắm bắt ngữ cảnh, thứ tự của từ trong câu, trong đoạn văn
• Phân loại bằng mô hình BERT: Đây là thành phần nhận véctơ kết quả từ thành phần trước đó và thực hiện công việc phân loại câu hỏi thi thuộc cấp độ nào trong năm cấp độ (Foundation, 60, 70, 80 và từ 90 trở lên) dựa trên mô hình ngôn ngữ được tác giả đào tạo theo hình thức Pre-trained model Hình thức này là phương pháp sử dụng một mô hình ngôn ngữ đã được đào tạo trước trên một tập dữ liệu lớn, sau đó sẽ thực hiện đào tạo bổ sung trên tập dữ liệu cho mục đích riêng của bài toán Chi tiết về mô hình ngôn ngữ sử dụng để phân loại được trình bày ở mục
“Phương pháp xây dựng mô hình ngôn ngữ cho bài toán phân loại câu hỏi thi Anh ngữ kỹ năng”.
Phương pháp xây dựng mô hình ngôn ngữ cho bài toán phân loại câu hỏi thi Anh ngữ kỹ năng
Đề tài sử dụng BERT model được đào tạo trước với tập dữ liệu chứa 11038 quyển sách và toàn bộ các trang Wikipedia Anh ngữ không bao gồm danh sách (lists), bảng (tables) và tiêu đề (headers) Dữ liệu của bài toán phân loại câu hỏi thi Anh ngữ kỹ năng đọc được trích xuất từ sách, bài báo Anh ngữ do đó có sự tương đồng với tập dữ liệu của BERT nhưng kích thước tập dữ liệu của đề tài nhỏ hơn khá nhiều Tập dữ liệu sử dụng bao gồm 1664 câu hỏi thi chia thành 05 cấp độ Số lượng câu hỏi mỗi cấp độ thể hiện trong bảng bên dưới Để thực hiện việc sử dụng mô hình đào tạo sẵn (pre-trained model) cho một bài toán cụ thể, có bốn cách thực hiện đào tạo bổ sung (fine-tune model) dựa theo yếu tố tương đồng dữ liệu và yếu tố kích thước dữ liệu của bài toán cụ thể [11] Bốn cách đào bổ sung được thể hiện trong hình sau
Cấp độ Số lượng câu hỏi thi
Hình 17 - Bốn cách thức đào tạo bổ sung trên mô hình ngôn ngữ đào tạo sẵn (nguồn https://www.analyticsvidhya.com/blog/2017/06/transfer-learning-the- art-of-fine-tuning-a-pre-trained-model) Dựa theo đặc tính dữ liệu và độ lớn dữ liệu, đề tài này thực hiện đào tạo bổ sung trên lớp dày đặc (dense) và lớp đầu ra (output) theo yêu cầu của bài toán Cụ thể các lớp thêm vào thực hiện đào tạo bổ sung trên tập dữ liệu câu hỏi thi gồm:
• Lớp dense thứ nhất sử dụng 64 nơ-ron, dùng hàm activation relu
• Lớp drop-out thứ nhất với tỷ lệ drop là 0.2 (mục đích để tránh over-fitting)
• Lớp dense thứ hai sử dụng 32 nơ-ron, dùng hàm activation relu
• Lớp drop-out thứ hai với tỷ lệ drop là 0.2 (mục đích để tránh over-fitting)
• Lớp dense cuối dùng (output) sử dụng 5 đầu ra và hàm activation softmax
Dữ liệu được phân chia thành 03 phần Phần thứ nhất dùng đào tạo (train) mô hình chiếm 60% Phần thứ hai dùng kiểm tra (test) mô hình chiếm 20% Phần thứ ba dùng xác nhận chéo (cross validation) mô hình chiếm 20% Đề tài này sử dụng thư viện train_test_split để phân chia dữ liệu ngẫu nhiên với thông số stratify=y (đầu ra) mục đích để trong dữ liệu đào tạo và dữ liệu kiểm tra đều có tỷ lệ tương đồng Số lượng dữ liệu được phân chia đào tạo, kiểm tra thể hiện trong bảng sau
Cấp độ Mục đích Số lượng câu hỏi thi
Mô hình sau khi đào tạo đạt được độ chính xác 0.8859 = 88.59 % dựa trên dữ liệu kiểm tra; dựa trên dữ liệu xác nhận chéo, mô hình đạt được độ chính 0.8529 = 85.29
% Mô hình sau đào tạo và toàn bộ code được đính kèm trong đề tài này.
Thiết kế trực quan – tương tác
Các bước tương tác chính giữa người dùng và hệ thống được đề xuất như hình sau
TOEFL 90 and above Đào tạo (60%) 57
Mục đích Số lượng câu hỏi thiCấp độ
Hình 18 - Các tác vụ chính được cung cấp cho giáo viên
Bắt đầu -> (Bước 1) Đăng nhập và nhập liệu -> (Bước 2) Nhận kết quả kiểm tra ban đầu từ hệ thống nếu dữ liệu nhập sai -> (Bước 3) Hệ thống véctơ hóa văn bản và cho kết quả phân loại và thu nhận ý kiến của giáo viên -> Dừng
Bước 1 Đây là bước bắt buộc người dùng phải thực hiện, mục đích của bước này:
• Có được dữ liệu đáp ứng yêu cầu cho việc phân loại
Hình 19 - Giao diện đăng nhập của hệ thống
Hình 20 - Giao diện nhập liệu của hệ thống
Hệ thống thực hiện kiểm tra nội dung nhập liệu Nội dung kiểm tra chính gồm:
• Kiểm tra nhập liệu (thiếu)
• Kiểm tra ngôn ngữ (Anh ngữ)
• Kiểm tra tính dễ đọc của bài đọc (readability formula)
• Kiểm tra tương đồng về mặt ngữ nghĩa của các câu trả lời (véctơ hóa và tính cosine)
Hình 21 - Thông báo nhập thiếu dữ liệu của hệ thống
Hình 22 - Thông báo dữ liệu có lỗi chính tả và hướng xử lý lỗi
Bước này, gồm ba tác vụ chính:
• Lưu nội dung nhập liệu của giáo viên để dùng cho việc tái đào tạo trong tương lai (hoạt động ẩn bên dưới)
• Phân loại câu hỏi thi bằng mô hình được đào tạo bằng bộ dữ liệu câu hỏi thi đã được phân loại
• Thu nhận ý kiến của giáo viên
Hình 23 - Xuất kết quả và thu thập ý kiến của giáo viên.
THỰC NGHIỆM VÀ KẾT QUẢ
Mục tiêu
Có hai mục tiêu chính trong phần thực nghiệm Đầu tiên là đo lường sự hiệu quả của hệ thống đề xuất trong việc đánh giá phân loại câu hỏi Anh ngữ kỹ năng đọc Mục tiêu thứ hai của thực nghiệm là đánh giá mức độ hữu ích của hệ thống đối với giáo viên sử dụng hệ thống
Do đây là bài toán phân loại mà tập dữ liệu của các lớp là chênh lệch nhau rất nhiều nên ở mục tiêu thứ nhất, đề tài chọn giá trị F1-score, là trung bình hài hòa của Precision và Recall làm chỉ số đo lường cho sự chính xác của hệ thống Precision được định nghĩa là tỉ lệ số điểm true positive trong số những điểm được phân loại là positive (TP + FP) Recall được định nghĩa là tỉ lệ số điểm true positive trong số những điểm thực sự là positive (TP + FN) Công thức tính F1-score, Precision & Recall như sau:
• F1-score = 2 * Precision * Recall / (Precision + Recall)
• Recall = TP / (TP + FN) với thông tin:
• True Positive (TP): số lượng điểm của lớp positive được phân loại đúng là positive
• False Positive (FP): số lượng điểm của lớp negative bị phân loại nhầm thành positive
• True Negative (TN): số lượng điểm của lớp negative được phân loại đúng là negative
• False Negative (FN): số lượng điểm của lớp positive bị phân loại nhầm thành negative
Giá trị F1-score trong khoảng từ 0 đến 1 F1-score càng gần giá trị 1 thì hệ thống phân loại càng tốt Đây là bài toán phân loại nhiều lớp, đề tài chọn cách tính F1- score dựa theo weighted-average (dựa trên số mẫu của mỗi lớp).
Thu thập dữ liệu
Dữ liệu phục vụ cho thực nghiệm đến từ hai nguồn Nguồn thứ nhất đến từ 20% còn lại của tập dữ liệu ban đầu (dữ liệu xác nhận chéo) Ở mục “Phương pháp xây dựng mô hình ngôn ngữ cho bài toán phân loại câu hỏi thi Anh ngữ kỹ năng”, đề tài chỉ mới sử dụng 60% của bộ dữ liệu phục vụ cho đào tạo mô hình, 20% của bộ dữ liệu phục vụ cho việc kiểm tra mô hình Nguồn dữ liệu thứ hai do giáo viên nhập vào hệ thống, được thu thập trong quá trình giáo viên sử dụng hệ thống và cho kết quả phản hồi.
Thiết lập thí nghiệm
Đối với nguồn dữ liệu thứ nhất, tác giả thực hiện nạp mô hình vào bộ nhớ và thực hiện tính độ chính xác (Accuracy), Precision, Recall và F1-score Các câu lệnh thực hiện như sau:
# Nạp mô hình vào bộ nhớ model.load_weights(‘model_final.h5’)
# Bước chuẩn bị cv_input = bert_encode(X_cv, tokenizer, max_lenQ2) # Mã hoá dữ liệu xác nhận chéo (Cross-Validation) đầu vào cv_labels = y_cv # Đặt tên biến theo đúng phong cách dùng tên trong đề tài cv_pred = model.predict(cv_input) # Sử dụng mô hình dự đoán nhãn cv_pred_2 = np.argmax(cv_pred,axis=1).flatten() # Chuyển đổi véctơ kết quả thành giá trị cv_labels_2 = np.argmax(cv_labels,axis=1).flatten() # Chuyển đổi véctơ kết quả thành giá trị from sklearn.metrics import precision_score, recall_score, f1_score, accuracy_score , mean_squared_error from math import sqrt
# Nạp thư viện dùng tính độ chính xác, precision, recall & F1_score
# Tính độ chính xác print('Accuracy: %.4f' % accuracy_score(cv_labels_2, cv_pred_2))
# Tính Precision print('Precision: %.4f' % precision_score(cv_labels_2, cv_pred_2, average=‘weighted'))
# Tính Precision print('Recall: %.4f' % recall_score(cv_labels_2, cv_pred_2, average='weighted'))
# Tính F1-score print('F1 Score: %.4f' % f1_score(cv_labels_2,cv_pred_2,average=‘weighted'))
# Tính MSE print('MSE: %.4f' % mean_squared_error(test_labels_2,test_pred_2))
# Tính RMSE print('RMSE: %.4f' % sqrt(mean_squared_error(test_labels_2,test_pred_2))) Đối với nguồn dữ liệu thứ hai, tác giả thực hiện bằng cách thiết kế biểu mẫu thu thập dữ liệu để đánh giá ở ngay giao diện trả kết quả của hệ thống Thời gian thu thập dữ liệu trong 15 ngày với nhóm phụ trách chương trình học thuật Test-Prep (TOEFL, IELTS, TOEIC, Junior) Số lượng thành viên được chọn tham gia là 05 giáo viên có hợp đồng toàn thời gian (teacher head) Thành viên tham gia chủ động thực hiện kiểm tra hệ thống bằng ngân hàng câu hỏi tự soạn hoặc thu thập từ nguồn khác.
Kết quả và thảo luận
Phần thực nghiệm đo lường độ chính xác của mô hình trên hai nguồn dữ liệu gồm dữ liệu xác thực chéo (cross validation) và dữ liệu do giáo viên đưa vào Bên cạnh đó, thực nghiệm cũng thu thập các phản hồi về sự hữu ích hay không của ứng dụng đề xuất thông qua phần thu thập phản hồi [Feedback] của người sử dụng Vì vậy, phần đánh giá sẽ chia làm phần: kết quả định lượng và kết quả định tính
Kết quả định lượng: Đố i v ớ i d ữ li ệ u xác th ự c chéo Đối với dữ liệu xác thực chéo, các chỉ số: độ chính xác, precision, recall và F1- score thu thập được thể hiện trong bảng bên dưới Trong bảng cũng thể hiện kết quả đối với dữ liệu kiểm tra để có cái nhìn trực quan và thuận tiện đánh giá
Các chỉ số của hai tập dữ liệu không chênh lệch nhiều Chỉ số F1-score tương đồng chỉ số độ chính xác Từ đây cho thấy mô hình ổn định Một bài thứ hạng cao nhất
Dữ liệu Độ chính xác
Precision Recall F1-Score MSE RMSE
[12] tham gia cuộc thi trên Kaggle (trang tổ chức các cuộc thi về machine learning) cho độ chính xác là 81.945 % và F1-score là 82% với bộ dữ liệu 40000 mẫu và số nhãn đầu ra dự đoán là 7 trên cùng mô hình ngôn ngữ BERT Đề tài sử dụng 1664 mẫu với số nhãn đầu ra dự đoán là 5 và đạt chỉ độ chính xác 85.29% và F1-score là 85.37% Đây là một kết quả cao và hoàn toàn cải thiện được thêm nếu có đủ dữ liệu cần thiết Đố i v ớ i d ữ li ệ u do giáo viên đư a vào
Sau thời gian thử nghiệm, hệ thống nhận được 28 câu hỏi kèm theo phản hồi do 5 giáo viên tham gia đợt thử nghiệm đưa vào Các giáo viên tham gia là nhân viên chủ lực và có hợp đồng chính thức (teacher head) Đề tài giả định các phản hồi của giáo viên về kết quả cấp độ câu hỏi thi hoàn toàn chính xác Bảng thông tin sau thể hiện kết quả của lượt đánh giá của giáo viên
Kết quả precision, recall và F1-score được thể hiện trong bảng sau
Tổng hợp kết quả của hai nguồn dữ liệu, được thể hiện trong bảng sau
Tổng 5 12 1 0 10 28 Độ chính xác Precision Recal F1-score
Tất cả các lớp theo tỷ lệ các lớp 23/28=82
Dựa trên kết quả thu được, các kết quả giữa ba lần kiểm chứng mô hình ổn định, không có sự chênh lệch lớn Đây là một kết quả cao và hoàn toàn cải thiện được thêm nếu có đủ dữ liệu cần thiết
Dựa trên kết quả phản hồi, cho thấy các giáo viên đồng thuận là hệ thống giúp ích cho công việc (duy nhất một trường hợp trả lời trung lập) Để đánh giá về trải nghiệm và phản hồi của người dùng, đề tài thực hiện khảo sát người dùng qua kỹ thuật khảo sát và thống kê Bảng khảo sát bao gồm 1 câu hỏi đóng với 5 mức lựa chọn và 03 câu hỏi mở bao phủ toàn bộ mục tiêu cần khảo sát:
• Thu thập ý kiến của giáo viên vì sao giáo viên chọn kết quả khác với hệ thống
• Thu thập ý kiến về tính hữu ích của hệ thống cho công việc
• Thu thập ý kiến của giáo viên về các điểm cần cải tiến của ứng dụng
• Thu thập các ý kiến khác (nếu có)
Những hạn chế và đề xuất cải tiến do giáo viên phản hồi nhiều nhất
• Tăng tốc quá trình đưa ra kết quả
• Sửa lỗi chính tả, văn phạm tự động
• Hệ thống cần đưa ra tóm lược giải thích về kết quả đầu ra.
Dữ liệu Độ chính xác
Precision Recall F1-Score MSE RMSE