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

Deep learning HUST Dự đoán số sao trên sàn thương mại điện tử

40 0 0

Đ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

Định dạng
Số trang 40
Dung lượng 2,14 MB

Nội dung

Deep learning HUST Bài tập lớn dự đoán số sao bình luận trên sàn thương mại điện tử. Học sâu và ứng dụng IT4653. Đại học bách khoa hà nội. Học sâu và ứng dụng. Deeplearning and application. Báo cáo mang tính chất tham khảo gợi ý về phương hướng làm bài tập lớn, không đi kèm source code cũng như tập dữ liệu. Các bạn phải tự cào dữ liệu bình luận trên các trang thương mại điện tử.

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG -    - ĐỒ ÁN MÔN HỌC Đề tài: Dự đốn số bình luận sàn thương mại điện tử Hà Nội, tháng năm 2022 MỤC LỤC Chương Giới thiệu 1.1 Tổng quan 1.2 Phát biểu toán 1.3 Khó khăn thách thức 1.4 Ứng dụng toán Chương Các nghiên cứu liên quan Chương Các phương pháp phân loại văn .8 3.1 Biểu diễn liệu văn 3.2 Một số mơ hình Học Máy toán phân lớp 10 3.2.1 Mơ hình hồi quy Logistic 10 3.2.2 Mơ hình máy véc-tơ hỗ trợ 12 3.2.3 Mơ hình phân lớp Naive Bayes 15 3.2.4 Mơ hình rừng ngẫu nhiên 16 3.2.5 Thuật toán tăng cường độ dốc 17 3.2.6 Long short term memory (LSTM) 18 3.3 BERT 20 Chương Mơ hình phân loại số qua bình luận 22 4.1 Thu thập liệu 22 4.2 Tiền xử lý liệu 23 4.3 Biểu diễn liệu không gian vector 26 4.3.1 Biểu diễn liệu với TFIDFVectorizer 26 4.3.2 Biểu diễn liệu với mơ hình fastText 26 Đồ án môn học 4.3.3 Biểu diễn với mơ hình PhoBERT 27 4.4 Mơ hình phân lớp 27 4.4.1 Các mơ hình Học Máy phân lớp 27 4.4.2 Mơ hình phân loại học sâu PhoBERT 29 Chương 5: Kịch thực nghiệm 30 5.2 Tiêu chí đánh giá 32 5.3 Môi trường thực nghiệm 32 5.4 Kết thực nghiệm 33 Chương 6: Kết luận 39 Đồ án môn học Chương Giới thiệu 1.1 Tổng quan Trên sàn thương mại điện tử nay, phần bình luận đánh giá sản phẩm phần thiếu giúp cho khách hàng có đánh giá khách quan ban đầu sản phẩm thông qua trải nghiệm người dùng trước, từ đưa đến định có nên mua hay khơng Ngồi cịn giúp nhãn hàng hiểu rõ khách hàng mình, từ đưa sản phẩm phù hợp, nâng cao doanh số bán hàng Những bình luận chủ quan thường bao gồm từ ngữ trực tiếp thể trạng thái tiêu cực tích cực giúp xác định cảm xúc người đánh giá, nhiên tính chất khách hàng, từ viết tắt, từ khơng dấu, sai tả từ mang lớp nghĩa theo trend hành xuất nhiều Vì chúng em lựa chọn đề tài để nghiên cứu ,xây dựng so sánh mơ hình phân lớp nhằm tìm mơ hình hiệu việc dự đốn số bình luận tiếng Việt 1.2 Phát biểu toán Bài toán Dự đoán số bình luận sàn thương mại điện tử mơ tả sau:   Đầu vào: Một câu bình luận tiếng Việt Đầu ra: Y  {0; 1; 2; 3; 4} đó: Y nhãn bình luận, 0, 1, 2, 3, tương ứng với số 1, 2, 3, 4, Trong project này, Dự đốn số bình luận sàn thương mại điện tử xây dựng tập liệu huấn luyện miền liệu tiếng Việt Sau đó, sử dụng phương pháp biểu diễn văn không gian véc-tơ kết hợp mơ hình học máy thống kế học sâu để phân loại bình luận 1.3 Khó khăn thách thức Để thực giải toán gặp khơng khó khăn thách thức định sau: Khó khăn lớn q trình xây dựng tập liệu bình luận đáp ứng đủ u cầu tốn, khơng bị q bias cân bằng, khiến mơ hình đưa phân loại xác Những liệu bình luận thu gắn nhãn số từ trước, nhiên, nhiều số người dùng đánh giá lại không giống với từ ngữ nhận xét bình luận đó, để gán nhãn xác phải nhiều thời gian ngồi đọc, phân tích bình luận, tìm bình luận đáp ứng đủ tiêu chí nhằm hạn chế gán nhãn nhầm ảnh hưởng đến mơ hình Thách thức thứ hai việc biểu diễn bình luận khơng gian véc- tơ Do đặc điểm phong phú, đa dạng ngữ nghĩa ngôn ngữ tiếng Việt, khiến cho việc biểu diễn văn tiếng Việt mà giữ ý nghĩa từ, ngữ cảnh câu khơng gian vec-tơ gặp nhiều khó Đồ án mơn học khăn Cùng với từ ngữ viết tắt, khơng dấu sai tả, icon, hay từ vơ nghĩa , khơng có tính phân loại gây nhiễu q trình huấn luyện Một khó khăn việc lựa chọn mơ tham số thích hợp để mơ hình phân lớp đạt kết cao với đầu vào tập liệu bình luận tiếng Việt Việc sử dụng mơ hình học sâu để giải tốn có nhiều thách thức tập liệu lớn, thời gian huấn luyện lâu nên đòi hỏi phần cứng tốc độ xử lý mạnh mẽ 1.4 Ứng dụng toán Ứng dụng toán dự đoán số bình luận, dựa kết dự đốn, nhãn hàng hiểu khách hàng mình, sản phẩm, dịch vụ đem lại trải nghiệm khác người dùng khác nhau, mơ hình đủ tốt dựa dự đoán sai lệch so với ban đầu để xác định xu hướng sở thích khác khách hàng, ngồi ra, cịn giúp nhanh chóng xác định số bình luận mang tính phá hoại ( Ví dụ: việc đồng loạt vote cho sản phẩm có liên quan đến scandal ) Chương Các nghiên cứu liên quan Nguồn gốc phân tích ngữ nghĩa bắt nguồn từ năm 1950, phân tích ngữ nghĩa chủ yếu sử dụng tài liệu giấy văn Tuy nhiên, ngày nay, phân tích tình cảm sử dụng rộng rãi để khai thác thông tin từ nội dung In-tơ-nét, bao gồm văn bản, tweet, blog, phương tiện truyền thông xã hội, báo, đánh giá nhận xét Điều thực cách sử dụng loạt kỹ thuật khác nhau, bao gồm xử lý ngôn ngữ tự nhiên, thống kê, luật kết hợp phương pháp học máy Những tồn phân tích ngữ nghĩa phân loại thành hai loại: tích cực, tiêu cực, trung tính vào sử dụng thang điểm n, ví dụ: tốt, tốt, tạm, xấu, tệ Dự đốn số bình luận nhìn chung toán mở rộng từ lớp sang lớp, chất dạng phân tích ngữ nghĩa văn Bài tốn phân loại ngữ nghĩa toán phân loại thực nhiều tập liệu khác nhau, ngôn ngữ văn đa dạng với tốn có đặc trưng riêng, số nghiên cứu liên quan đến toán phân loại ngữ nghĩa: Đầu tiên cơng trình nghiên cứu cho tốn phân tích ngữ nghĩa cho tập liệu mạng xã hội Twitter nhóm tác giả Vishal A Kharde S.S Sonawane [1] Dữ liệu thô lấy từ mạng xã hội Twitter tiến hành tiền xử lý (loại bỏ từ dừng, ký tự lạ, biểu tượng cảm xúc, số với sửa lỗi tả, trùng lặp câu, thay từ viết tắt thành từ hoàn chỉnh ), sau nhóm tiến hành trích xuất từ loại câu để tìm đặc trưng câu từ phủ định, từ có tác dụng phân loại biểu diễn câu, đặc trưng câu không gian vec-tơ sử dụng phương pháp biểu diễn dựa tần suất từ Đầu vào mơ hình vec-tơ câu với vec-tơ trích xuất đặc trưng câu mơ hình phân loại mơ hình Naive Bayes (độ xác 74.56%) mơ hình vec-tơ hỗ trợ (độ xác 76.68%) để giải tốn Đối với văn tiếng Việt, số cơng trình nghiên cứu vào ứng dụng, điển hình phân tích quan điểm văn tiếng Việt Underthesea (http://undertheseanlp.com/#!/sentiment) (một thư viện chuyên xử lý ngôn ngữ tiếng Việt) Đồ án môn học Trong báo nghiên cứu [2], tác giả Quoc Thai Nguyen ba cộng sự, tiến hành sử dụng nhiều cách tiếp cận khác cho tốn phân tích quan điểm đánh giá tiếng Việt Nhóm sử dụng hai phương pháp Glove fastText để biểu diễn văn tiếng Việt khơng gian vectơ Sau đó, sử dụng mơ hình học máy phân loại máy vec-tơ hỗ trợ, xgboost, mơ hình học sâu mơ hình nhớ dài ngắn hạn (LSTM), mơ hình BERT để giải toán phân loại Theo thực nghiệm tác giả, mơ hình học sâu BERT mơ hình đạt kết tốt so với mơ hình phân lớp cịn lại Một cách tiếp cận khác đến từ tác giả Suong N Hoang [3] ba cộng cho tốn phân tích quan điểm đánh giá sản phẩm điện tử tiếng Việt Nhóm tác giả sử dụng fastText để biểu diễn văn tiếng Việt không gian vec-tơ làm đầu vào cho mơ hình Sau sử dụng mơ hình học sâu mơ hình nhớ dài ngắn hạn (LSTM), mơ hình đơn vị tái phát có cổng (GRUS) mơ hình Transformer để phân loại quan điểm Theo đánh giá tác giả, mơ hình Transformer đạt điểm F1 cao so với hai mơ hình cịn lại Ngồi nghiên cứu tiếp cận sử dụng mơ hình học máy, học sâu cho văn tiếng Việt trên, nhóm tác giả Xuan-Son Vu, Seong-Bae Park [4] nghiên cứu xây dựng SentiWordNet tiếng Việt từ điển Tiếng Việt Đây toán nhằm xây dựng từ điển để sử dụng phương pháp tiếp cận Lexicon cho toán phân loại quan điểm tiếng Việt Qua đó, thấy việc nghiên cứu phân tích ngữ nghĩa văn nhằm mục đích phân loại xuất từ lâu Với nhiều cách tiếp cận, hướng từ thể loại văn ngôn ngữ giới bao gồm tiếng Việt Đối với phân tích quan điểm văn tiếng Việt số nghiên cứu đạt kết tốt, với nhiều hướng đi, phương pháp cách tiếp cận khác Phân tích quan điểm văn tốn mở rộng cho nhiều loại văn cần linh hoạt hướng đi, phương pháp để đáp ứng nhu cầu thể loại văn cần phân tích quan điểm Trong project này, tốn xây dựng mơ hình phân tích quan điểm bình luận tiếng Việt sử dụng hai phương pháp biểu diễn véc-tơ liệu văn bình luận khơng gian mơ hình fastText mơ hình PhoBert kết hợp với mơ hình học máy thống kê SVM ( Support Vector Machine ) Đồ án môn học Chương Các phương pháp phân loại văn 3.1 Biểu diễn liệu văn Biểu diễn văn vấn đề khai thác văn truy xuất thơng tin Nó nhằm mục đích đại diện số cho tài liệu văn phi cấu trúc để làm cho chúng tính toán mặt toán học Biểu diễn liệu văn thường chia làm hai phương pháp: phương pháp biểu diễn dựa tần suất từ phương pháp dự đoán Phương pháp biểu diễn dựa tần suất từ: xây dựng véc-tơ từ văn dựa vào tần suất xuất văn Mơ hình túi từ: cách biểu diễn biến văn tùy ý thành véc-tơ có độ dài cố định cách đếm số lần từ xuất Ví dụ: sử dụng mơ hình túi từ để biểu diễn véc-tơ câu văn đồ án; đồ án môn học đồ án đồ án môn học đồ án môn học 1 0 1 1 Bảng 3.1: Mơ hình túi từ văn Từ bảng 3.1 thu véc-tơ biểu diễn từ câu: - đồ án: [1, 1, 0, 0] đồ án môn học: [1, 1, 1, 1] Mơ hình túi ký tự n-gram: Mỗi từ w thể túi ký tự n-gram Với từ w thêm ’’ vào cuối từ, với tập hợp ngram bao gồm từ w Ví dụ từ "where" n-gram = 3: [, ] Lưu ý thêm từ her khác với từ her tri-gram từ where Nhược điểm mơ hình túi từ số lượng liệu lớn, có nhiều từ có tần suất xuất lớn lại khơng cần thiết TF-IDF: TF tần suất xuất từ văn IDF đánh giá mức độ quan trọng từ tập văn Khác với mơ hình túi từ quan đếm đến tần suất xuất từ văn bản, TF-IDF quan tâm đến tần suất xuất từ toàn tập văn Những từ xuất nhiều nhiều văn (tính phân loại thấp) IDF nhỏ, dẫn đến kết cuối nhỏ Nhược điểm hai phương pháp biểu diễn trọng vào tần suất xuất từ, mà không quan tâm vào mặt ngữ cảnh Phương pháp dự đoán: xây dựng véc-tơ từ văn dựa vào dự đốn theo ngữ cảnh Mơ hình túi từ liên tục Mikolov: học cách biểu diễn từ cách dự đoán từ theo ngữ cảnh Ngữ cảnh định nghĩa cửa sổ đối xứng chứa tất từ xung Đồ án môn học quanh Giả sử có chuỗi 𝑇 từ 𝑤1 , 𝑤2 , , 𝑤𝑇 , mục tiêu mơ hình túi từ liên tục tối đa hóa khả xảy xác suất từ đưa xung quanh chuỗi T biểu diễn theo cơng thức: 𝑇 ∑ log(𝑝(𝑤𝑡 |𝐶𝑡 )) 𝑡=1 Trong đó: 𝐶𝑡 ngữ cảnh từ thứ 𝑡 Các từ 𝑤𝑡−𝑐 , , 𝑤𝑡−1 , 𝑤𝑡+1 , , 𝑤𝑡+𝑐 cửa sổ ngữ cảnh có kích thước 2𝑐 Ở hình 3.2, mơ hình kiến trúc túi từ liên tục có kích thước tập từ vựng 𝑉, kích thước lớp ẩn N, nút lớp sử dụng liên kết đầy đủ Đầu vào mơ hình véc-tơ theo dạng one-hot từ ngữ cảnh, tức véc-tơ ngữ cảnh có giá trị giá khác đêu Trọng số lớp đầu vào lớp ẩn biểu diễn ma trận W có kích thước V × N Mỗi hàng W biểu diễn véc-tơ 𝑣𝑤 có số chiều N đại diện cho từ 𝑤 ℎ ma trận kích thước 𝑁 × Chúng ta có mối liên kết sau: 𝑇 𝑇 ℎ = 𝑊 𝑇 𝑥 = 𝑊(𝑘,.) : = 𝑣𝑤𝐼 Trong đó, 𝑣𝑤 véc-tơ đại diện cho từ 𝑤𝐼 đầu vào Hình 3.1: Ảnh minh họa đầu vào - đầu mơ hình túi từ liên tục với cửa sổ ngữ cảnh có kích thước (c = 1) Hình 3.2: Mơ hình túi từ liên tục Mikolov [16] Từ lớp ẩn đến lớp đầu sử dụng ma trận 𝑊′ có kích thước 𝑁 × 𝑉 Sử dụng số ma trận tính điểm 𝑢𝑗 cho từ từ vựng theo công thức: 𝑇 𝑢𝑗 = 𝑣′𝑤𝑗 ℎ Trong đó, 𝑣′𝑤𝑗 cột thứ 𝑗 ma trận 𝑊′ Sau đó, sử dụng softmax để có phân phối sau từ, phân phối đa thức Đồ án môn học 𝑒𝑥𝑝(𝑢𝑗 ) 𝑝(𝑤𝑗 |𝑤𝐼 ) = 𝑦𝑗 = 𝑉 ∑ 𝑗 ′ =1 𝑒𝑥𝑝(𝑢′𝑗 ) Từ (3.5), (3.6), (3.7) ta thu công thức: 𝑇 𝑒𝑥𝑝(𝑣′𝑤𝑗 𝑣𝑤𝐼 ) 𝑝(𝑤𝑗 |𝑤𝐼 ) = 𝑦𝑗 = 𝑉 ∑ 𝑗 ′ =1 𝑇 𝑒𝑥𝑝(𝑢′𝑤′𝑗 𝑣𝑤𝐼 ) Chú ý 𝑣𝑤 𝑣𝑤′ hai véc-tơ đại diện cho từ 𝑤 𝑣𝑤 đến từ hàng ma trận 𝑊 (là ma trận trọng số từ đầu vào -> lớp ẩn), 𝑣𝑤′ đến từ cột ma trận 𝑊′ (là ma trận trọng số từ lớp ẩn -> đầu ra) 3.2 Một số mơ hình Học Máy toán phân lớp Suy giảm độ dốc: thuật tốn tối ưu hóa việc lặp lặp lại để tìm giá trị nhỏ hàm Để tìm điểm cực tiểu hàm, bắt đầu số điểm ngẫu nhiễn thực bước di chuyển ngược với dấu đạo hàm Thuật toán: - Bắt đầu với việc khởi tạo ngẫu nhiên tham số: 𝜃 = 𝜃0 Cập nhật 𝜃 cách lặp lặp lại công thức nhận kết chấp nhận được: 𝜃 = 𝜃 − 𝜂 ∗ 𝛻𝜃 𝐽(𝜃) Trong đó, 𝜂 tỉ lệ học tập điều chỉnh dùng để thay tối độ hội tụ hàm mát tới điểm cực tiểu toàn cục 𝛻𝜃 𝐽(𝜃) hàm mát 𝜃 Suy giảm độ dốc ngẫu nhiên: phiên thuật toán Suy giảm độ dốc, thuật toán chọn ngẫu nhiên điểm liệu từ toàn tập liệu lần lặp lại để giảm tính toán nhiều Với thuật toán Suy giảm độ dốc, thường 𝜃 cập nhật sau duyệt qua hết tập liệu, với Suy giảm độ dốc ngẫu nhiên, 𝜃 cập nhật sau duyệt qua điểm (sau tập liệu xáo trộn) 3.2.1 Mơ hình hồi quy Logistic Hồi quy Logistic: khơng phải thuật tốn hồi quy mà thuật toán phân loại sử dụng để gán giá trị cho tập liệu rời rạc Ví dụ: việc dự đốn email spam hay khơng spam sử dụng để dự đốn khối u bình thường ác tính, Trong hồi quy Logistic, thực chất mơ hình 𝑦𝑖 hàm tuyến tính 𝑥𝑖 , chẳng hạn muốn xác định hai nhãn 1, cần tìm hàm liên tục đơn giản có miền (0,1), giá trị mơ hình trả cho đầu vào 𝑥 gần với giá trị 0, gán nhãn cho 𝑥 0, không gán nhãn cho 𝑥 Một hàm có thuộc tính gọi hàm Logistic tiêu chuẩn hay gọi hàm “sigmoid”: 𝑓(𝑥) = 1 + 𝑒 −𝑥 Với 𝑒 số Euler có giá trị xấp xỉ 2.71828 𝑒 𝑥 viết 𝑒𝑥𝑝(𝑥) Từ (3.5), ta biểu diễn mơ hình hồi quy Logistic sau: 10 Đồ án mơn học Hình 4.2 Dữ liệu sau tiền xử lý 4.3 Biểu diễn liệu khơng gian vector Với mơ hình học máy, sử dụng hai mơ hình học sẵn đào tạo tập liệu câu bình luận tiếng Việt TFIDF, fastText PhoBert để biểu diễn liệu câu bình luận tiếng Việt khơng gian véc-tơ Cột nhãn bình luận chuyển thành véc-tơ gồm giá trị (0, 1, 2, 3, 4) 4.3.1 Biểu diễn liệu với TFIDFVectorizer Trong khai phá liệu văn (text mining), thuật ngữ TF-IDF (term frequency – inverse document frequency) phương thức thống kê biết đến rộng rãi để xác định độ quan trọng từ đoạn văn tập nhiều đoạn văn khác Nó thường sử dụng trọng số việc khai phá liệu văn TF-IDF chuyển đổi dạng biểu diễn văn thành dạng không gian vector (VSM), thành vector thưa Trong tập lớn này, chúng em thực tính tốn TF-IDF dựa vào thư viện scikit-learn Python Áp dụng TfidfVectorizer với việc đặt giới hạn kích thước từ điển 100,000 từ, đồng thời sử dụng mơ hình ngơn ngữ n-gram để làm giàu thêm kích thước từ điển (trong áp dụng unigram, bigram, trigram 4-gram) Sự đóng góp mức độ quan trọng từ tần suất xuất từ câu bình luận có mối quan hệ hàm phụ tuyến tính, ta áp dụng sublinear_tf để giảm giá trị TF từ có tần suất lớn Vector đại diện cho câu vector có kích thước kích thước từ điển có giá trị giá trị TF-IDF từ câu 4.3.2 Biểu diễn liệu với mơ hình fastText fastText thư viện dùng để biển diễn từ theo không gian véc-tơ xây dựng cách kết hợp: đại diện câu với mơ hình túi từ, mơ hình túi kí tự n-gram kiến trúc mơ hình túi từ liên tục Mikolov Mơ hình học sẵn fastText biểu diễn véc-tơ (kích thước 300) cho từ, cụm từ câu bình luận tiếng Việt Để thực việc véc-tơ nhúng, cần phải tách câu 26 Đồ án mơn học bình luận thành từ cụm từ (tokens) Sử dụng hàm tách từ tiếng việt thư viện undertheseanlp, ví dụ văn bản: "chất lượng sản phẩm tuyệt vời giao hàng nhanh" sau tách từ, cụm từ danh sách từ, cụm từ khác sau: ['chất lượng', 'sản phẩm', 'tuyệt vời', 'giao', 'hàng', 'nhanh'] Kết hợp từ, cụm từ sau tách từ liệu câu bình luận thu danh sách tổng hợp từ, cụm từ câu bình luận Sau đó, sử dụng mơ hình fastText để ánh xạ từ, cụm từ thành véc-tơ có chiều 300, từ, cụm từ chưa có mơ hình fastText ánh xạ thành véc-tơ có chiều 300 Véc-tơ đại diện cho câu bình luận véc-tơ trung bình tổng véc-tơ từ, cụm từ 4.3.3 Biểu diễn với mơ hình PhoBERT Mơ hình PhoBERT đào tạo sẵn mơ hình ngôn ngữ đại cho tiếng Việt, phương pháp đào tạo trước PhoBERT dựa RoBERTa (loại bỏ mục tiêu dự đoán câu tiếp theo, tự động thay đổi mơ hình mặt nạ) giúp tối ưu hóa quy trình trước đào tạo BERT để có hiệu suất mạnh mẽ Trong tốn xây dựng mơ hình phân tích quan điểm văn báo chí Tiếng Việt sử dụng PhoBERT_base_fairse (bao gồm tập tin nhỏ: config.json chứa cấu hình cài đặt mơ hình, model.bin lưu trữ tham số, trọng số đào tạo trước mô hình, bpe.codes dict.txt tập từ vựng sẵn có PhoBERT) để biểu diễn câu bình luận tiếng Việt chiều khơng gian véc-tơ có kích thước véc-tơ biểu diễn văn 768 Vẫn sử dụng hàm tách từ tiếng Việt thư viện undertheseanlp, nhiên khác với fastText tách thành danh sách chứa từ, cụm từ sử dụng cách biểu diễn từ, cụm từ sau, chẳng hạn câu: "chất lượng sản phẩm tuyệt vời giao hàng nhanh" sau tách từ, cụm từ thành câu sau: "chất_lượng sản_phẩm tuyệt_vời giao hàng nhanh" Sử dụng thuật toán mã hóa cặp byte từ tập tin bpe.code PhoBert để mã hóa câu sau phân tách thành danh sách từ phụ (tách từ theo mức nhỏ từ lớn ký tự) Sau đó, sử dụng mơ hình học sẵn RoBERTa để biểu diễn véc-tơ cho câu Tuy nhiên giới hạn độ dài tối đa chuỗi đầu vào 258, văn chia thành đoạn nhỏ (có trung bình khoảng 200 từ, cụm từ đoạn), đoạn văn đưa vào mô hình để tìm véc-tơ biểu diễn Véc-tơ đại diện cho văn véc-tơ trung bình tổng véc-tơ đoạn văn chia nhỏ văn 4.4 Mơ hình phân lớp 4.4.1 Các mơ hình Học Máy phân lớp Mơ hình Học Máy: Các mơ hình học máy sử dụng thư viện scikit-learn (là thư viện học máy bao gồm nhiều thuật toán hồi quy, phân loại, phân cụm dành cho ngôn ngữ Python) với đầu vào tập liệu danh sách véc-tơ câu bình luận sàn thương mại điện tử Đầu nhãn mơ hình dự đốn viết đánh theo số: -1 tiêu cực, trung tính, tích cực 27 Đồ án mơn học Hồi quy Logistic: mơ hình thường thiết kế cho vấn đề hai lớp, mơ hình hóa mục tiêu cách sử dụng phân phối xác suất nhị thức Đầu thể dạng xác suất tính theo cơng thức "sigmoid" Tuy nhiên, tốn xây dựng mơ hình phân tích cảm xúc câu bình luận Tiếng Việt có ba nhãn: tiêu cực, tích cực trung tính Do đó, mơ hình Hồi quy Logistic sử dụng phân bố xác suất đa thức để phân loại nhiều hai nhãn (trong đó: phân phối xác suất nhị phân trường hợp đặc biệt phân bố xác suất đa thức) Trong mô hình này, tham số sử dụng mơ hình bao gồm: phân loại đa nhãn theo phân bố xác suất đa thức (multi_class = "multinomial"), thuật toán tối ưu "newton-cg" cho liệu đa nhãn Mơ hình máy Véc-tơ hỗ trợ (SVM): có đầu siêu mặt phẳng tốt (trong không gian đa chiều) để phân loại hai lớp (trong trường hợp phân loại nhị phân) liệu Để sử dụng mơ hình Véc-tơ hỗ trợ cho tồn phân loại có nhiều hai nhãn sử dụng phương pháp Một-Một (One-Vs-One) Phương pháp chia liệu phân loại nhiều lớp thành vấn đề phân loại nhị phân Đối với toàn phân loại câu bình luận có ba nhãn: tiêu cực, tích cực trung tính chia làm liệu phân loại nhị phân sau: (tiêu cực, tích cực), (tiêu cực, trung tính) (tích cực, trung tính) sau sử dụng mơ hình máy véc-tơ hỗ trợ cho tốn nhị phân Trong mơ hình này, tham số sử dụng mơ hình bao gồm: phương pháp Một-Một cho phân loại đa lớp (decision_function_shape = "ovo"), hàm hạt nhân (kernel) "rbf" (hàm xuyên tâm) Mơ hình phân lớp Naive Bayes: mơ hình phân loại dựa định lý Bayes, đầu xác suất điểm liệu X rơi vào lớp C Trong mơ hình này, sử dụng Gaussian Naive Bayes để tính giá trị xác suất Mơ hình rừng ngẫu nhiên (Random Forest): có đầu tổng hợp từ kết định xây dựng q trình huấn luyện Trong mơ hình này, tham số sử dụng mơ hình bao gồm: tiêu chuẩn phân tách định (criterion) số "Entropy", số lượng mẫu tối thiểu để phân tách nút (min_samples_split) 2, độ sâu (max_depth) không giới hạn (các nút mở rộng tất túy chứa số mẫu tối thiểu để phân tách), số mẫu tối thiểu Thuật toán tăng cường độ dốc cực cao (XGBoost): thuật toán xây dựng dựa thuật toán Tăng cường độ dốc Đầu định sửa lỗi cập nhật lại trọng số từ mơ hình định trước Trong mơ hình này, tham số sử dụng mơ hình bao gồm: độ sâu (max_depth) 10 (trong huấn luyện thử tinh độ sâu cao kết không cải thiện), tỉ số học tập (learning_rate) 0.1, số lượng ngẫu nhiên tạo thành 100 Điều chỉnh tham số tự động sử dụng tìm kiếm lưới (GridSearchCV): thực điều chỉnh siêu tham số, tham số để xác định giá trị tối ưu cho mơ hình định Tìm kiếm lưới chạy qua tất tham số khác đưa vào lưới tham số tạo kết hợp tốt tham số, dựa số liệu tính điểm mơ hình Trong mơ hình trên, áp dụng tìm kiếm lưới để tìm tham số tốt cho mơ hình Chẳng hạn sử dụng tìm kiếm lưới với thuật tốn tăng cường độ dốc cực cao XGBoost, lúc tham số truyền vào sau: độ sâu (max_depth) danh sách [3, 4, 5, 7], tỉ số học tập (learning_rate) danh sách [0.1, 0.01, 0.05], số lượng ngẫu nhiên tạo thành danh sách [100, 200, 28 Đồ án môn học 300] Khi tìm kiếm lưới kết hợp danh sách lại với chạy qua vòng lặp để tìm kiếm tham số tối ưu cho mơ hình Long short term memory (LSTM): Ơ trạng thái dạng băng chuyền chạy thẳng xuyên suốt toàn chuỗi với vài tương tác tuyến tính nhỏ giúp cho thơng tin truyền dọc theo đồ thị mạng nơ ron ổn định LSTM có khả xóa thêm thơng tin vào trạng thái điều chỉnh luồng thông tin thông qua cấu trúc gọi cổng Cổng chế đặc biệt để điều chỉnh luồng thông tin qua Chúng tổng hợp tầng ẩn hàm activation sigmoid với toán tử nhân đồ thị Trong mơ hình này, sử dụng lớp LSTM Keras 4.4.2 Mơ hình phân loại học sâu PhoBERT Khác với mơ hình PhoBert để biểu diễn câu bình luận khơng gian Véc-tơ, với mơ hình RoBERTa phân loại sử dụng PhoBERT_base_transformers (bao gồm tập tin nhỏ: config.json chứa cấu hình cài đặt mơ hình, model.bin lưu trữ tham số, trọng số đào tạo trước mô hình, bpe.codes dict.txt tập từ vựng sẵn có PhoBERT) Biểu diễn liệu đầu vào mơ hình: Bước tương tự với việc biểu diễn liệu PhoBert, cần phải tách nội dung câu bình luận thành từ cụm từ (tokens) giống biểu diễn liệu với PhoBert Bước sử dụng hàm bpe (mã hóa cặp Byte) hàm vocab (ánh xạ từ, cụm từ id từ vựng cung cấp sẵn) PhoBert để ánh xạ từ, cụm từ văn sang dạng véc-tơ có kích thước 258 (có thể tùy chỉnh kích thước) Trong đó, câu bình luận có độ dài nhỏ 258 thêm giá trị vào phía cuối véc-tơ, văn có độ dài lớn 258 cắt cho đủ 258 Tập liệu lúc thành danh sách chứa phần tử véc-tơ chứa id từ, cụm từ văn từ vựng có sẵn Tạo danh sách mặt nạ chứa véc-tơ mặt nạ gồm có giá trị tương ứng với văn để xác định phần từ thêm vào danh sách id từ, cụm từ văn Cột nhãn câu bình luận chuyển thành véc-tơ gồm giá trị (-1, 0, 1) đó: -1 nhãn tiêu cực, nhãn trung tính nhãn tích cực Cuối chuyển ba tập liệu (dữ liệu chứa thông tin ánh xạ id câu bình luận, liệu mặt nạ, liệu nhãn) sang dạng tensor sử dụng Dataloader torch để tạo dataloader cho mơ hình 29 Đồ án mơn học Hình 4.3 Kiến trúc mơ hình BERT dùng để phân loại Xây dựng mơ hình: Tải mơ hình RoBERTa phân loại từ tập tin model.bin PhoBert Kiến trúc mơ hình RoBERTa dùng để phân loại chia làm hai nhiệm vụ: tìm véc-tơ thể tồn thơng tin từ câu đầu vào (thơng qua mơ hình RoBERTa) phân loại nhãn Dữ liệu chứa thơng tin ánh xạ id câu bình luận liệu mặt nạ đưa vào mô hình RoBERTa (gồm 12 lớp mã hóa Transformers) để tìm véc-tơ tốt cho liệu câu bình luận tiếng Việt Các véc-tơ vừa tìm kết hợp với liệu nhãn để huấn luyện mơ hình phân loại Đầu mơ hình RoBERTa phân loại phân phối xác suất mơ hình dự đốn Trong mơ hình này, lựa chọn tham số cho mơ sau: Kích thước véc-tơ mã hóa từ 258, số lượng lớp (num_labels) 3, số lượng đầu kết nối lớp tự ý 12, kích thước lớp mã hóa 768 Thuật toán Adam Weight Decay sử dụng làm thuật tốn tối ưu cho mơ hình huấn luyện dựa ưu điểm so với thuật tốn tối ưu khác Chương 5: Kịch thực nghiệm Trong chương này, chúng em tiến hành áp dụng mô hình véc-tơ hóa liệu, sử dụng thuật tốn học máy khác để phân tích quan trọng việc biểu diễn liệu cần thiết việc dán nhãn liệu xác 5.1 Bộ liệu 30 Đồ án mơn học Hình 5.1 Bộ liệu nhóm dùng để thực project Theo hình , thấy liệu bao gồm liệu thu thập thêm có phân phối sát với liệu thầy đưa có dấu hiệu lệch nhãn Tích cực Chúng em thử áp dụng phương pháp Undersampling, giảm ngẫu nhiên số mẫu có nhãn Tích cực để tránh cân liệu (Data Imbalance) Nhưng để sát với liệu test thầy đưa nhóm thực cho giữ nguyên data train 500 bình luận 975 liệu lazada (túi lata), giảm phần liệu từ tiki 31 Đồ án môn học Như vậy, sau áp dụng Undersampling, phân phối liệu cân (mỗi nhãn có tầm 1000 bình luận ) Điều quan trọng tốn phân loại, chúng em phân tích lí sau 5.2 Tiêu chí đánh giá Độ đo sử dụng tập lớn để đánh giá là: Độ xác (Accuracy) điểm F1 (weighted F1 score) Độ xác (accuracy) đo số câu bình luận gán nhãn chia tổng số câu bình luận Độ xác = Số bình luận gán nhãn đúng/ Tổng số bình luận Điểm F1 trung bình điều hịa Điểm xác (Precision - P) Độ hồi tưởng (Recall R) Trong đó, P R cho công thức sau: P = Tổng số bình luận phân loại nhãn / Tổng số bình luận phân loại nhãn R = Tổng số bình luận phân loại nhãn / Tổng số bình luận thực thuộc nhãn Điểm khác P R chỗ P đánh giá nhãn máy phân loại, R đánh giá nhãn người thu thập từ trước Điểm F1 trung bình điều hịa (harmonic mean) xác định công thức sau: 𝐹1 = 1 + 𝑃 𝑅 = 2𝑃𝑅 𝑃+𝑅 Lí chúng em sử dụng thêm Điểm F1 để đánh giá mơ hình điểm Độ xác (accuracy) khơng phù hợp liệu bị cân Độ xác trung bình số mẫu gán nhãn chia cho tổng số mẫu Trong trường hợp mơ hình phân loại lớp đa số lớp thiểu số tồi có độ xác cao Điều nguy hiểm, chẳng hạn tốn phân loại bệnh nhân có bị nhiễm trùng huyết hay không số bệnh nhân theo dõi khoa hồi sức tích cực, số mẫu bị bệnh nhỏ (thường chiếm ~5%) mẫu khơng bị bệnh lớn (thường chiếm 95%) Vì vậy, cần mơ hình phân loại tất bệnh nhân vào lớp không bị bệnh đạt accuracy 95% lớp mà quan tâm lớp bị bệnh (lớp thiểu số) Do đó, tốn phân loại, tiêu chí Điểm F1 cần sử dụng thêm bên cạnh Độ xác để đánh giá độ hiệu mơ hình 5.3 Mơi trường thực nghiệm Môi trường thực nghiệm đồ án thực môi trường Google Colab Phiên Python sử dụng 3.7 số thư viện kèm sau: sklearn, numpy, pandas, underthesea, transformer, torch, fasttext,… Chúng em sử dụng phương pháp Word Embedding là: fastText, PhoBERT, Tf-Idf Các thuật toán AI khác cài đặt cho toán phân loại với đầu vào vector sinh từ phương pháp Embedding kể 32 Đồ án môn học 5.4 Kết thực nghiệm Kết thực nghiệm tốn Dự đốn số bình luận sàn thương mại điện tử trình bày bảng Phân tích kết quả: Đồ án sử dụng liệu tiền xử lý phương pháp trình bày mục 4, 80% liệu làm tập Training 20% liệu làm tập Validation Dữ liệu bảng liệu trước sau thực giảm số mẫu Tích cực (lớp đa số) Trên tập liệu, chúng em cài đặt thuật toán bao gồm học máy học sâu kịch Word Embedding khác nhau: fastText, PhoBERT Tf-Idf Phương pháp Embedding liệu qua tiền xử lý Mơ hình Hồi quy Logistic Máy véc-tơ hỗ trợ (SVM) XGBoost Random Forest LightGBM RoBERTa (4 epochs) LSTM fastText PhoBERT Độ Điểm F1 Độ Điểm F1 xác (%) (%) xác (%) (%) Nhóm thuật tốn học máy 67.9 63.5 79.8 77.9 80.5 77.6 69.2 64.6 63.9 65.6 67.0 - 61.4 75.3 61.2 78.8 63.3 79.2 Thuật toán học sâu 79.3 Tf-Idf Độ xác (%) Điểm F1 (%) 73.9 74.0 71.0 70.0 73.0 74.3 76.8 71.5 70.6 73.3 68.7 66.5 72.0 77.0 - - 71.0 Bảng 5.4 Kết chạy thuật toán liệu 69 Với cột bảng, kết thuật toán học máy tốt bôi đậm Từ bảng trên, nhận thấy phương pháp biểu diễn văn bình luận tiếng Việt khơng gian véc-tơ đóng vai trị khơng nhỏ để mơ hình có kết tốt Mơ hình PhoBERT Tf-Idf đem lại kết tốt đáng kể so với phương pháp biểu diễn theo mô hình fastText Mơ hình BERT hoạt động hiệu trường hợp cần hiểu rõ ngữ cảnh văn dịch máy, phân loại văn dài, tóm tắt văn bản,… Tuy nhiên, tốn phân loại sắc thái bình luận, câu bình luận ngắn không mang nhiều đặc trưng ngữ cảnh nên sử dụng BERT chưa cho kết độ xác tốt Việc biểu diễn bình luận khơng gian véc-tơ sử dụng Tf-Idf hiệu phương pháp dựa tần suất xuất từ không quan tâm ngữ cảnh, phù hợp cho tốn phân loại câu bình luận ngắn, lặp lại, xuất từ đặc trưng để phân loại cảm xúc Hơn thời gian chạy thuật tốn véc-tơ hóa mơ hình Tf-Idf nhanh nhiều so với mơ hình cịn lại, điều mơ hình Tf-Idf u cầu tính tốn số đơn giản Mặc dù vậy, mô hình hóa bình luận PhoBERT cho kết tốt số trường hợp Cụ thể, từ bảng ta thấy điểm Độ xác tốt PhoBERT 80.8%, không khác biệt nhiều so với Độ xác tốt Tf-Idf 81% Tuy nhiên, điểm F1 PhoBERT 78.4%, tốt so với Tf-Idf 77.9% Ngoài ra, điểm F1 PhoBERT tốt Tf-Idf fastText nhiều thuật toán khác thể bảng 33 Đồ án mơn học Điều chứng minh việc học ngữ cảnh PhoBERT hoạt động hiệu liệu cân bằng, giúp phân loại câu vào nhãn, kể lớp thiểu số đa số Câu hỏi đặt mơ hình đơn giản Tf-Idf lại chiếm ưu phoBERT lại tỏ chưa có nhiều điểm mạnh? Giả thuyết chúng em đặc tính liệu Có thể liệu nhỏ nên dẫn đến tượng overfit nhanh chóng áp dụng thuật tốn học sâu Vì chúng em phân tích điểm huấn luyện kiểm tra kích thước mẫu tăng dần Hình 5.3 Điểm huyến luyện kiểm tra chéo kích thước mẫu tăng dần Kết cho thấy, lợi ích nhận tăng số mẫu không đáng kể Vì vậy, việc liệu nhỏ khơng phải vấn đề Lí phân tích kĩ phần Phân tích lỗi Trong mơ hình fastText, việc biểu diễn véc-tơ từ, cụm từ dựa ngữ cảnh từ lân cận nó, PhoBert học ý nghĩa câu để biểu diễn véc-tơ (các từ giống xuất ngữ cảnh khác có véc-tơ khác nhau) Do đó, kết thực mơ hình PhoBert tốt đáng kể so với mơ hình fastText Sau đây, chúng em xem xét kết thuật toán việc phân loại nhãn thông qua biểu đồ ma trận lỗi.( Dữ liệu lấy từ tập train.txt train-test 0.8 - 0.2) 34 Đồ án môn học Hinh 5.4 SVM (TF- IDF) Hai giải thuật học máy đạt kết tốt SVM Hồi quy Logistic, SVM cho độ xác tốt thuật tốn khác nhiều trường hợp Tuy nhiên, nhược điểm mơ hình SVM kết phân loại lớp thiểu số nhỏ Điều thể hình … Do nhãn xuất tương đối nhãn xuất nhiều dẫn đến kết phân loại lớp tương đối thấp So sánh với giải thuật học sâu: 35 Đồ án mơn học Hình 5.5 Độ xác tập train validation theo Epoch Hình 5.6 Hàm loss tập train validation theo Epoch 36 Đồ án mơn học Hình 5.7 Kết RoBERTa theo nhãn Hình 5.8 Trực quan hóa kết Confusion Matrix Ngoài ra, chúng em so sánh kết thuật toán học máy cho điểm F1 accuracy tốt áp dụng KFold: Hồi quy Logistic, SVM LightGBM 37 Đồ án môn học Hình 5.9 Sử dụng KFold với k = Hình so sánh độ xác (accuracy) thuật toán hồi quy Logistic, SVM LightGBM liệu sử dụng KFold Cross Validation mơ hình PhoBERT để Embedding Kết cho thấy SVM tốt so với thuật tốn cịn lại Phân tích lỗi: Qua việc chạy thực nghiệm, chúng em nhận trường hợp phân tích quan điểm mà mơ hình phân loại sai sau: Có số bình luận đánh số không với nội dung, chẳng hạn “sản phẩm ok” đánh giá “ship chậm hàng bị móp” đánh giá Việc dán nhãn cịn mang tính tự phát phụ thuộc nhiều vào cảm quan người dùng sàn thương mại điện tử nên nhiều nhãn bị sai lệch Chất lượng liệu chưa đủ tốt dẫn đến việc thuật toán học máy học sai lệch theo liệu đào tào phụ thuộc vào việc phân chia tập đào tạo tập kiểm tra Bên cạnh đó, số câu bình luận vừa mang nghĩa tích cực, vừa mang nghĩa tiêu cực gây khó khăn cho việc phân loại, chẳng hạn câu “tiki giao hàng nguyên tem đóng gói kỹ sản phẩm hãng có chất lượng vỏ máy hồn thiện ọp ẹp” (Tích cực) vế “tiki giao hàng nguyên tem đóng gói kỹ sản phẩm hãng” mang nghĩa tích cực, vế sau lại mang nghĩa tiêu cực từ dẫn đến khó đánh giá số xác Việc định nhãn khó khăn, kể người Vì liệu dán nhãn chưa xác dẫn đến thuật toán học dựa ngữ nghĩa, ngữ cảnh hiểu sai ý nghĩa văn ổn định việc dự đốn Ngồi ra, số bình 38 Đồ án mơn học luận vơ nghĩa, lặp lại nhiều lẫn dẫn đến việc áp dụng mô hình véc-tơ hóa từ hiểu ngữ cảnh, ngữ nghĩa PhoBERT hay fastText khơng tốt mơ hình dựa tần suất Tf-Idf thể số kịch thực nghiệm Chương 6: Kết luận Đồ án nghiên cứu phương pháp, hướng giải khác để giải toán Dự đoán số bình luận sàn thương mại điện tử Bài toán thực liệu văn bình luận thu thập từ sàn thương mại điện tử Tiki, Lazada Sau có tập liệu phù hợp với toán, liệu biểu diễn dạng véc-tơ thông qua phương pháp véc-tơ hóa khác Sau đó, thuật tốn học máy học sâu áp dụng cho thấy kết khả quan với điểm độ xác điểm F1 lớn 70%, đó, mơ hình đạt điểm cao hồi quy Logistic với điểm F1 phương pháp véc-tơ hóa phoBERT 78.4% điểm độ xác phương pháp véc-tơ hóa Tf-Idf 81% Sau q trình xây dựng mơ hình tiến hành hiệu chỉnh đánh giá thấy việc quay lại xử lí liệu, xây dựng lại mơ hình, thay đổi tham số có vai trị quan trọng việc có mơ hình tốt Do ln cần phải học hỏi, phát triển mơ hình, khai thác liệu để có kết tối ưu Do liệu hạn chế chưa dán nhãn thật đắn, độ xác mơ hình học máy học sâu tập validation chưa ưu tú cần cải thiện Trong tương lai, để đưa train model tốt cần gán nhãn liệu nhiều hơn, chuẩn xác Ngồi cịn thử nghiệm thêm nhiều thuật tốn để tìm thuật toán tối ưu cho toán Tài liệu tham khảo [1] V Kharde, P Sonawane et al., “Sentiment analysis of twitter data: a survey of techniques,” arXiv preprint arXiv:1601.06971, 2016 [2] Q T Nguyen, T L Nguyen, N H Luong, and Q H Ngo, “Fine-tuning bert for sentiment analysis of vietnamese reviews,” in 2020 7th NAFOSTED Conference on Information and Computer Science (NICS) IEEE, 2020, pp 302–307 39 Đồ án môn học [3] S N Hoang, L V Nguyen, T Huynh, and V T Pham, “An efficient model for sentiment analysis of electronic product reviews in vietnamese,” in International Conference on Future Data and Security Engineering Springer, 2019, pp 132– 142 [4] X.-S Vu and S.-B Park, “Construction of vietnamese sentiwordnet by using vietnamese dictionary,” arXiv preprint arXiv:1412.8010, 2014 40

Ngày đăng: 07/04/2023, 01:56

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

TÀI LIỆU LIÊN QUAN

w