• Không có kết quả nào được tìm thấy

Tìm hiểu mô hình ngôn ngữ PhoBert cho bài toán phân loại quan điểm bình luận tiếng Việt

Protected

Academic year: 2023

Chia sẻ "Tìm hiểu mô hình ngôn ngữ PhoBert cho bài toán phân loại quan điểm bình luận tiếng Việt"

Copied!
66
0
0

Văn bản

Tên đề tài: Tìm hiểu mô hình ngôn ngữ PhoBert cho bài toán phân loại nhận xét, ý kiến ​​tiếng Việt. Sơ đồ kiến ​​trúc BERT cho nhiệm vụ ngôn ngữ mô hình hóa được tô sáng Hình 6.

MÔ HÌNH BERT

Khái niệm

Tại sao lại cần BERT

Một số khái niệm

  • Nhiệm vụ phía sau (Downstream task)
  • Điểm khái quát đánh giá mức độ hiểu ngôn ngữ (GLUE score benchmark)
  • Hỏi đáp (Question and Answering)
  • Suy luận ngôn ngữ (Natural Language Inference)
  • Quan hệ văn bản (Textual Entailment)
  • Ngữ cảnh (Contextual)
  • Phương pháp Hiện đại nhất (SOTA)
  • Mô hình LTR
  • Mô hình ngôn ngữ được đánh dấu MLM (Masked Language Model)

Một mô hình tìm hiểu ngữ cảnh theo một hướng từ trái sang phải. Huấn luyện mô hình để dự đoán các từ mã được đánh dấu dựa trên ngữ cảnh xung quanh của các từ không được đánh dấu để tìm cách biểu thị từ.

Ngữ cảnh (Contextual) và vai trò trong NLP

Thuật toán ELMO đã được cải tiến so với WORD2VEC và FASTTEXT bằng cách tạo nghĩa của từ theo ngữ cảnh. Những cách biểu diễn từ này thể hiện các mô hình sử dụng kỹ thuật biến áp.

Tiếp cận nông và học sâu trong ứng dụng huấn luyện trước (pre-training) trong NLP

  • Tiếp cận nông (shallow approach)
  • Học sâu (deep-learning)

Kiến trúc mạng học sâu CNN của Computer Vision cho phép học đồng thời trên cả tính năng cấp thấp và cấp cao bằng cách sử dụng lại các tham số từ các lớp Mô hình đã được đào tạo trước. Các lớp còn lại giúp tạo ra các tính năng cấp cao sẽ được đào tạo lại từ đầu.

Phương pháp TRANSFORMER 1. Encoder và Decoder trong BERT

  • Các tiến trình self-attention và encoder-decoder attention ( phương pháp transformer )
  • Mô hình BERT tinh chỉnh (Fine-tuning model BERT)
  • Mô hình ngô ngữ được đánh dấu (Masked Language Model)
  • Next Sentence Prediction (NSP)

Khi chuyển việc học bằng phương pháp deep learning, chúng ta sẽ sử dụng lại kiến ​​trúc của mô hình được đào tạo trước và thêm một số lớp phía sau phù hợp với nhiệm vụ đào tạo. Trong kiến ​​trúc máy biến áp, chúng ta sẽ áp dụng hai loại chú ý khác nhau ở mỗi bước huấn luyện. BERT được thiết kế để đào tạo trước các từ nhúng.

Điểm đặc biệt của BERT mà các mô hình nhúng trước đây chưa từng có đó là kết quả huấn luyện có thể được tinh chỉnh. Và chúng ta sẽ huấn luyện mô hình để dự đoán những từ ẩn đó dựa trên những từ còn lại. Mô hình sẽ dựa vào các từ không được che dấu xung quanh [MASK] và cả ngữ cảnh của [MASK] để dự đoán giá trị ban đầu của từ được che dấu.

Kiểu câu (nhúng đoạn): Gồm hai vectơ: EA nếu từ đó thuộc câu đầu tiên và EB nếu từ đó thuộc câu thứ hai. Vectơ đầu vào là tổng của cả ba phần nhúng cho mỗi từ, câu và vị trí.

Hình 1. Sơ đồ kiến trúc transformer kết hợp với chú ý  Mô hình sẽ bao gồm 2 pha:
Hình 1. Sơ đồ kiến trúc transformer kết hợp với chú ý Mô hình sẽ bao gồm 2 pha:

Các kiến trúc mô hình BERT

RoBerta

  • Khái niệm RoBerta
  • Dữ liệu
    • Kích thước hàng loạt lớn
  • Điền từ ( Filling Mask )
  • Trích suất đặc trưng ( Extract feature ) cho từ

Khi đó mỗi từ hoặc ký tự sẽ được biểu thị bằng một chỉ mục. Đây là phương pháp mã hóa được sử dụng trong các thuật toán nhúng từ truyền thống như GloVe, word2vec. Mã thông báo cấp độ từ cũng có một hạn chế: chúng không thể xử lý các trường hợp từ nằm ngoài từ điển.

Nguyên tắc hoạt động của BPE dựa trên phân tích trực quan rằng hầu hết các từ có thể được chia thành các thành phần phụ. Vì vậy, nếu chúng ta biểu thị từ Lower, chúng ta có thể mã hóa chúng thành hai từ phụ riêng biệt: low và er. Bước 3: Thống kê tần suất xuất hiện theo cặp của tất cả các token trong từ điển.

Mô hình đào tạo từ RoBERTa cho phép chúng tôi trích xuất các tính năng từ các lớp bộ mã hóa. Sau khi tải mô hình BERT, chúng ta có thể trích xuất đầy đủ các đặc trưng cho từng từ từ mô hình được huấn luyện trước.

Bảng 4. Hiệu suất với các kích thước lô khác nhau của các mô hình  1.10.2.2. Mã hóa BPE
Bảng 4. Hiệu suất với các kích thước lô khác nhau của các mô hình 1.10.2.2. Mã hóa BPE

PHOBERT

Sự ra đời của PhoBERT

  • Dữ liệu trước khi huấn luyện
  • Tối ưu hóa
  • Kết quả thực nghiệm

PhoBERT sử dụng RRDRSegmenter của VnCoreNLP để tách các từ khỏi dữ liệu đầu vào trước khi mã hóa BPE. Đặc biệt đối với các nhiệm vụ NLP cấp độ từ tiếng Việt, các mô hình được huấn luyện trước về dữ liệu cấp độ âm tiết có thể không hoạt động tốt như các mô hình ngôn ngữ. Hiệu suất của PhoBERT được đánh giá trên bốn tác vụ NLP tiếng Việt: gắn thẻ loại POS, phân tích cú pháp phụ thuộc, nhận dạng thực thể và xử lý ngôn ngữ tự nhiên.

Không giống như gắn thẻ lớp từ, phân tích cú pháp phụ thuộc và tập dữ liệu NER cung cấp phân đoạn từ vàng, chúng tôi sử dụng RDRSegments để phân đoạn văn bản thành các từ trước khi áp dụng BPE để tạo các từ thăm dò dẫn xuất từ ​​mã thông báo từ. Điểm hiệu suất (tính bằng%) trên bộ kiểm tra phân tích cú pháp phụ thuộc và ghi nhãn loại từ. Trong tương lai, cần nghiên cứu lớp Transformer của PhoBERT, lớp này chứa thông tin cú pháp phong phú hơn, bằng cách đánh giá hiệu năng phân tích cú pháp tiếng Việt của từng lớp.

Theo phương pháp tinh chỉnh của PhoBERT, chúng tôi đã tinh chỉnh XLM-R một cách cẩn thận cho các nhiệm vụ ghi nhãn lớp từ tiếng Việt, phân tích phụ thuộc và NER. Có thể thấy, PhoBERT – mô hình ngôn ngữ đơn ngữ quy mô lớn đầu tiên được đào tạo riêng cho tiếng Việt – hoạt động tốt hơn mô hình đa ngôn ngữ tốt nhất gần đây XLM-R và giúp phiên dịch SOTA thực hiện bốn nhiệm vụ NLP sau: Gắn thẻ lớp từ, phân tích cú pháp phụ thuộc, NER và NLI.

Bảng 1. Thống kê các bộ dữ liệu
Bảng 1. Thống kê các bộ dữ liệu

Ứng dụng của PhoBert

Bằng cách phát hành rộng rãi các mô hình PhoBERT, hy vọng rằng chúng có thể thúc đẩy nghiên cứu và ứng dụng NLP Việt Nam trong tương lai. ỨNG DỤNG PHOBERT VÀO VẤN ĐỀ PHÂN TÍCH Ý KIẾN VÀ BÌNH LUẬN Ở VN.

ỨNG DỤNG PHOBERT VÀO BÀI TOÁN PHÂN TÍCH QUAN ĐIỂM BÌNH LUẬN TIẾNG VIỆT

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

Chúng ta đang sống trong thời đại kỹ thuật số, đặc biệt trong những năm gần đây với sự phát triển của mạng xã hội, với hàng triệu người dùng trên toàn thế giới, với lượng thông tin nội dung có sẵn cho mọi người. Hệ quả là các công ty lớn gặp rất nhiều khó khăn trong việc quản lý công ty và thương hiệu sản phẩm trước những dư luận tiêu cực trên mạng xã hội, cả về nguồn thông tin cũng như lượng thông tin cần xử lý. Chưa kể đến việc các đối thủ trên thị trường đang lợi dụng mạng xã hội để cố tình tạo ra những thông tin bất lợi cho nhau.

Nhưng ai biết được thông tin bất lợi này về Tân Hiệp Phát có phải do đối thủ cạnh tranh thúc đẩy hay không. Điều này cần đến một công cụ hỗ trợ đắc lực, chỉ có thể giải quyết bằng ứng dụng công nghệ thông tin chứ không phải nhờ bất kỳ lực lượng con người nào. Học hỏi kinh nghiệm của Tân Hiệp Phát, các doanh nghiệp lớn của Việt Nam hiện đã ủy thác cho các doanh nghiệp công nghệ thông tin giải quyết vấn đề này.

Giải pháp công nghệ hiện nay được gọi là “lắng nghe xã hội”, nghĩa là các công ty CNTT mua dữ liệu thời gian thực từ các công ty mạng xã hội để xử lý thông tin liên quan đến công ty hoặc sản phẩm công ty bán nhằm phát hiện và ngăn chặn việc lan truyền những thông tin bất lợi trên mạng xã hội khắc phục và phản hồi khách hàng trong thời gian sớm nhất, đồng thời thương lượng và ngăn chặn hoàn toàn những người tạo ra nội dung này. Bản chất của giải pháp này là phân tích cảm xúc của các thanh trạng thái trên mạng xã hội để lọc ra những thông tin bất lợi để xử lý.

Hình 9. Sơ đồ phân tích cảm xúc
Hình 9. Sơ đồ phân tích cảm xúc

Dữ liệu và Công cụ, môi trường thực nghiệm

  • Dữ liệu
  • Công cụ và môi trường thực nghiệm

Python được Guido van Rossum phát triển vào cuối những năm 80 và đầu những năm 90 tại Viện Nghiên cứu Toán học và Khoa học Máy tính Quốc gia ở Hà Lan. Python là ngôn ngữ lập trình hướng đối tượng cấp cao mạnh mẽ được tạo bởi Guido van Rossum. Nó rất dễ học và đang nổi lên như một trong những ngôn ngữ lập trình cơ bản tốt nhất cho người mới bắt đầu.

Python làm cho việc lập trình trở nên thú vị để bạn có thể tập trung vào các giải pháp chứ không phải cú pháp. Điều này sẽ cung cấp cho ứng dụng của bạn những tính năng tốt hơn cũng như khả năng viết kịch bản bằng các ngôn ngữ này. Những thư viện này đã được hàng trăm người kiểm tra và sử dụng kỹ lưỡng.

Lập trình hướng đối tượng (OOP) giúp giải quyết các vấn đề phức tạp một cách trực quan. Với OOP, bạn có thể chia các vấn đề phức tạp thành các tập hợp nhỏ hơn bằng cách tạo các đối tượng.

Các bước thực hiện

  • Cài đặt thư viện vncorenlp
  • Tải về bộ dữ liệu huấn luyện từ trang chủ cuộc thi của AIVIVN và pre-trained của PhoBERT
  • Tách dữ liệu ra thành 2 tập train và validation theo tỉ lệ 90:10
  • Tạo một mask gồm các giá trị 0 , 1 để làm đầu vào cho thư viện transformers train_masks = []
  • Huấn luyện mô hình import random

Thư viện fastBPE: Gói hỗ trợ mã hóa từ thành từ phụ theo phương pháp mới nhất áp dụng cho các mô hình xử lý ngôn ngữ tự nhiên tiền huấn luyện hiện đại như BERT và các biến thể của nó. Tải xuống tập dữ liệu đào tạo từ trang chủ cuộc thi của AIVIVN và PhoBERT được đào tạo trước từ PhoBERT. Drive/BERT/SA/PhoBERT_base_transformers/bpe.codes", bắt buộc=False, . type=str, .. help='đường dẫn đến fastBPE BPE'.

Sử dụng bpe đã tải lên ở trên để đặt văn bản đầu vào dưới dạng từ phụ và ánh xạ những từ phụ đó vào biểu mẫu chỉ mục trong từ điển. Drive/BERT/SA/PhoBERT_base_transformers/config.json", from_tf=False, num_labels = 2, out_hidden_states=False,. BERT, PhoBer, ngôn ngữ lập trình Python, sử dụng thư viện trong Tensorflow.

Dự án cũng thử nghiệm bài toán phân tích comment tiếng Việt dựa trên mô hình ngôn ngữ được huấn luyện sẵn PHoBERT và công cụ phân loại văn bản Keras. Dữ liệu cho bài toán thực nghiệm là các ý kiến ​​được thu thập từ cuộc thi Phân tích và bình luận ý kiến ​​tiếng Việt.

Hình ảnh

Hình 1. Sơ đồ kiến trúc transformer kết hợp với chú ý  Mô hình sẽ bao gồm 2 pha:
Hình 2. Sơ đồ vị trí áp dụng self-attention trong kiến trúc transformer.
Hình 3. Sơ đồ chú ý tương tác giữa các véc tơ nhúng của encoder và decoder
Hình 5. Sơ đồ kiến trúc BERT cho nhiệm vụ ngôn ngữ mô hình được đánh dấu  Theo đó:
+7

Tài liệu tham khảo

Tài liệu liên quan

Mô hình ngôn ngữ (Language Model - LM) là các phân phối xác suất trên một ngữ liệu đơn ngữ, được sử dụng trong nhiều bài toán khác nhau của xử lý ngôn ngữ tự nhiên,

In the past, a lot of countries denied having contributed to global warmingA. Most people admit that they contribute to

+ Mô tả thuật toán: là tìm cách giải bài toán và diễn tả bằng các lệnh cần phải thực hiện bằng một phương pháp nào đó (ngôn ngữ tự nhiên, ngôn ngữ lập trình, mã giả,

* MT riêng: (HS Phúc Khả năng nghe, viết của Phúc chậm; ngôn ngữ diễn đạt lúng túng, không tự tin, không chủ động nói; khả năng nhận biết số và giải

- Năng lực chung: Năng lực tự học, năng lực giao tiếp, năng lực hợp tác, năng lực tính toán, năng lực giải quyết vấn đề, năng lực sử dụng ngôn ngữ, sử dụng

Việc sử dụng kết hợp cả hai phương pháp lý thuyết và số đã cho thấy thiếu sót trong cách dự đoán kết quả, và cấu trúc mô hình mô phỏng đề xuất trong bài

Kết quả dự báo của mô hình được sử dụng để xây dựng mô hình phát hiện bất thường trong mạng dựa trên sai số dự báo và dữ liệu thực.. Kết quả thử nghiệm cho thấy phương

Ngoài các công cụ chuyên dụng đang được sử dụng hiện nay như mô hình mô phỏng số, phân tích đường cong suy giảm, nhóm tác giả đề xuất giải pháp tích hợp phương trình điện trở - điện

Bài viết này được thực hiện bằng phương pháp tổng hợp lý thuyết kết hợp với phân tích các mô hình ước lượng đã được sử dụng ở các nghiên cứu trước nhằm đề xuất phương pháp ước lượng phù

Cũng như nhiều ngôn ngữ lập trình hướng đối tượng khác, kiểu trong C# đượ c định nghĩa là một lớp class, và các thể hiện của từng lớp được gọi là đối tượngobject.Trong các chương kế