Ứng dụng thuật toán k-láng giềng gần nhất trong phân loại văn bản tin tức theo chủ đề

22 10 0
  • Loading ...
1/22 trang

Thông tin tài liệu

Ngày đăng: 15/09/2019, 21:55

ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA LÊ QUANG HỊA ỨNG DỤNG THUẬT TỐN K LÁNG GIỀNG GẦN NHẤT TRONG PHÂN LOẠI VĂN BẢN TIN TỨC THEO CHỦ ĐỀ Chuyên ngành: Khoa học máy tính Mã số: 8480101 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT Đà Nẵng - Năm 2018 Cơng trình hồn thành TRƯỜNG ĐẠI HỌC BÁCH KHOA Người hướng dẫn khoa học: TS Ninh Khánh Duy Phản biện : TS Lê Thị Mỹ Hạnh Phản biện : TS Đậu Mạnh Hoàn Luận văn bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ kỹ thuật họp Trường Đại học Bách khoa vào ngày 05 tháng 01 năm 2019 Có thể tìm hiểu luận văn tại: - Trung tâm Học liệu Truyền thông Trường Đại học Bách khoa, Đại học Đà Nẵng - Thư viện Khoa Công nghệ thông tin, Trường Đại học Bách khoa, Đại học Đà Nẵng MỞ ĐẦU Lý chọn đề tài Như ta biết, thời đại thời đại internet, thời đại bùng nổ thông tin, mà tất người giới sống giới phẳng, đặc biệt diễn cách mạng cơng nghiệp 4.0 lượng thơng tin ngày nhiều, việc phân loại chúng trở nên khó khăn Ở tổ chức nào, với mô hình hay quy mơ có nhu cầu lưu trữ khai thác thông tin Đã có nhiều hệ thống phân loại tin tức giới Việt Nam đáp ứng phần nhu cầu phân loại tin tức để định Việc phân loại tin tức đem lại thành tựu định, cụ thể: - Xác định xu cộng đồng mạng mà cộng đồng chiếm ngày đông xã hội Qua xác định xu mặt ngắn hạn xã hội, hỗ trợ cho người sử dụng định phù hợp - Việc phân loại tin tức ứng dụng website thương mại nhằm nắm bắt xu tiêu dùng người sử dụng Một thuật toán để ứng dụng công việc phân loại liệu website tin tức tiếng Việt thuật tốn k-láng giềng gần nhất; thuật tốn có ưu điểm: Độ phức tạp q trình huấn luyện hay nói khơng tốn chi phí.Việc dự đốn kết liệu đơn giản, không cần giả sử phân phối lớp Tuy nhiên, thuật tốn có nhược điểm nhạy cảm với nhiễu k nhỏ Vì thuật tốn k- láng giềng gần tính tốn nằm giai đoạn kiểm thử( Test) việc tính toán khoảng cách đến điểm liệu tập huấn luyện tốn nhiều thời gian, đặc biệt sở liệu lớn có nhiều điểm liệu Để việc áp dụng thuật toán k- láng giềng gần việc ứng dụng phân loại tin tức giảm chi phí mặt thời gian độ phức tạp cần phải tăng tốc khăc phục nhược điểm cho thuật toán Đề tài nghiên cứu nhằm vận dụng thuật toán k- láng giềng gần theo cách tối ưu dựa sở lý thuyết Mục đích ý nghĩa đề tài - Nghiên cứu đề xuất phương pháp phân loại văn theo chủ đề dựa thuật toán k- láng giềng - Tích hợp giải pháp vào hệ thống phân loại văn theo chủ đề đánh giá hiệu - Đóng góp mặt phương pháp luận thực nghiệm vào lĩnh vực phân loại văn bản, nhánh nghiên cứu xử lý ngôn ngữ tự nhiên - Cải tiến chất lượng hệ thống phân loại văn có để nâng cao quản lý xu tin tức Mục tiêu nhiệm vụ - Mục tiêu đề tài Ứng dụng thuật toán k-láng giềng gần vào hệ thống xử lý thông tin để phân loại thông tin theo chủ đề - Nghiên cứu cải thiện thuật toán k- láng giềng hệ thống phân loại tin tức 3 Để đạt mục tiêu nhiệm vụ đặt đề tài là: - Thu thập liệu mẫu từ trang Web tiếng Việt - Nghiên cứu phương pháp biểu diễn văn dạng vec-tơ để đưa vào áp dụng thuật tốn k-láng giềng gần - Phát biểu, phân tích cài đặt giải thuật cho toán hệ thống phân loại tin tức - Đánh giá so sánh kết phân loại với thuật khác Naïve Bayes Support Vector Machine Đối tượng phạm vi nghiên cứu Trong khuôn khổ luận văn thạc sĩ thuộc loại ứng dụng với thời gian thực 06 tháng, giới hạn nghiên cứu vấn đề sau: - Xây dựng phương pháp biểu diễn văn dạng vec-tơ áp dụng thuật toán k-láng giềng phục vụ cho hệ thống phân loại tin tức - Đánh giá giải pháp đề xuất sở tích hợp vào hệ thống phân loại tin tức Phương pháp nghiên cứu Phương pháp lý thuyết - Tiến hành thu thập nghiên cứu tài liệu có liên quan đến đề tài - So sánh, đánh giá phương pháp phân loại tin tức Phương pháp thực nghiệm - Nghiên cứu khai thác công cụ phần mềm hỗ trợ 4 - Nghiên cứu đề xuất giải pháp tối ưu việc biểu diễn phân loại văn - Kiểm tra, thử nghiệm, nhận xét đánh giá kết Kết luận - Xây dựng hệ thống phân loại văn tin tức tiếng Việt - Thiết lập quy trình phân loại văn chặt chẽ, thông suốt, theo chủ đề, thuận tiện cho việc tìm kiếm, tra cứu , theo dõi cần thiết Bố cục luận văn ● CHƯƠNG 1: TỔNG QUAN BÀI TOÁN PHÂN LOẠI VĂN BẢN + Khái niệm phân lớp văn + Mơ hình phân lớp văn dùng tiếp cận học máy + Thu thập liệu + Tiền xử lý văn + Biểu diễn văn không gian vec-tơ B W T IDF ● CHƯƠNG 2: THUẬT T ÁN K- LÁNG GIỀNG GẦN NHẤT (KNN) + Khai phá liệu + Thuật toán k láng giềng gần ● CHƯƠNG 3: TRIÊN KHAI VÀ ĐÁNH GIÁ HÊ THỐNG ● KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ● TÀI LIỆU THAM KHẢ CHƯƠNG 1: TỔNG QUAN BÀI TOÁN PHÂN LOẠI VĂN BẢN 1.1 Khái niệm phân lớp văn 1.1.1 Khái niệm Phân lớp văn bản(Text classification) trình gán nhãn(tên lớp / nhãn lớp) văn ngôn ngữ tự nhiên cách tự động vào nhiều lớp cho truớc Phân lớp văn toán khai phá liệu văn Bài toán phân lớp văn việc gán tên chủ đề (tên lớp/nhãn lớp) xác định trước, vào văn dựa nội dung chúng Phân lớp văn công việc sử dụng để hỗ trợ trình tìm kiếm thơng tin, chiết lọc thơng tin, lọc văn tự động dẫn đường cho văn tới chủ đề xác định trước Phân lớp văn thực thủ cơng tự động sử dụng kỹ thuật học máy có giám sát Các hệ thống phân lớp ứng dụng việc phân loại tài liệu thư viện điện tử, phân loại văn báo chí trang tin điện tử… hệ thống tốt, cho kết khả quan, giúp ích nhiều cho người Hình 1.1 Bài toán phân lớp văn theo chủ đề 6 1.1.2 Phân loại toán phân lớp văn - Phân lớp văn nhị phân / đa lớp: Bài toán phân lớp văn gọi nhị phân số lớp 2, gọi đa lớp số lớp lớn -Phân lớp văn đơn nhãn / đa nhãn: Bài toán phân lớp văn gọi đơn nhãn tài liệu gán vào xác lớp Bài tốn phân lớp văn gọi đa nhãn tài liệu gán nhiều nhãn 1.2 Mơ hình phân lớp văn dùng tiếp cận học máy Phân lớp văn nhà nghiên cứu định nghĩa thống việc gán tên chủ đề (tên lớp / nhãn lớp) xác định cho trước vào văn text dựa nội dung nó.Để phân loại văn bản, người ta sử dụng phương pháp học máy có giám sát Tập liệu chia làm hai tập tập huấn luyện tập kiểm tra, trước hết phải xây dựng mơ hình thơng qua mẫu học tập huấn luyện, sau kiểm tra xác tập liệu kiểm tra Hình 1.2 Sơ đồ khung hệ thống phân lớp văn dùng Học máy 7 1.3 Thu thập liệu Để đảm bảo tính đa dạng nguồn liệu, tơi thu thập viết từ 10 trang web điện tử phổ biến Việt Nam (dựa http://alexa.com) zing.vn, kenh14, tuoitre.vn,… Mỗi trang chia thành 20 chủ đề Các chủ đề bao gồm: Tin tức, Thế giới, Văn hóa - Văn học, Cuộc sống, Y tế, Khoa học - Công nghệ, Kinh tế, Thể thao, Du lịch, Âm nhạc, Phim, Luật, Tự động - Moto, Thời trang, Trẻ sống, Giáo dục, Nói chuyện, Quảng cáo, Khám phá, Sao 1.3.1 Trình thu thập thơng tin web Hình 1.3 Kiến trúc trình thu thập liệu web 1.3.2 Thống kê liệu Hình 1.4 Số báo thu thập theo chủ đề 1.4 Tiền xử lý văn 1.4.1 Làm 1.4.2 Tách từ 1.4.3 Chuẩn hóa từ 1.4.4 Loại bỏ StopWords 1.5 Biểu diễn văn ưới dạng vector 1.5.1.Túi từ (Bag-of-words) Khái niệm: cách biểu diễn đơn giản sử dụng xử lý ngôn ngữ tự nhiên truy xuất thông tin Mơ hình BOW biểu diễn đơn giản sử dụng xử lý ngôn ngữ tự nhiên truy xuất thơng tin Trong mơ hình này, tài liệu văn biểu diễn thể túi từ nó, bỏ qua ngữ pháp thứ tự từ giữ tần số từ tài liệu Nội dung: ý tưởng BOW là: chạy từ đầu đến cuối văn bản, gặp từ tăng số lần đếm từ từ danh sách từ lưu trước.Mơ hình bag-of-words thường sử dụng phương pháp phân loại tài liệu, nơi xuất từ sử dụng tính để đào tạo trình phân loại Hình 1.5 Mơ hình Bag-of-words 1.5.2 Term Frequency – Inverse Document Frequency (TF-IDF) Khái niệm:tf-idf TF-IDF, viết tắt Term Frequency – Inverse Doccument Frequencylà số thu qua thống kê thể mức độ quan trọng từ văn bản, mà thân văn xét nằm tập hợp văn Giá trị tfidf tăng tương ứng với số lần từ xuất tài liệu, thường bù đắp tần số từ kho văn bản, giúp điều chỉnh thực tế số từ xuất thường xuyên nói chung[1][7] Nội dung: Giá trị TF-IDF từ t văn d tập văn D là: (1.1) Với: - df (d, t): số lượng văn tập D có chứa từ t 10 Những từ có giá trị TF-IDF cao từ xuất nhiều văn này, xuất văn khác Việc giúp lọc từ phổ biến giữ lại từ có giá trị cao (từ khố văn đó) 11 CHƯƠNG 2: THUẬT TỐN K LÁNG GIỀNG GẦN NHẤT 2.1 Khai phá d liệu Dưới số thuật toán phổ biến dùng khai phá liệu: Cây định: Decision tree Láng giềng gần nhất: Nearest Neighbor Mạng Neural: Neural Network Luật quy nạp : Rule Induction Thuật toán K-Means: K-Means 2.2 Thuật toán K láng giềng gần 2.2.1.Giới thiệu chung KNN thuật tốn học có giám sát đơn giản mà hiệu vài trường hợp học máy Khi huấn luyện, thuật toán khơng học điều từ liệu huấn luyện (đây lý thuật toán xếp vào loại lazy learning), tính tốn thực cần dự đốn kết liệu KNN áp dụng vào hai loại tốn học có giám sát phân lớp hồi quy KNN gọi thuật toán instance-based hay memory-based learning Một cách ngắn gọn, KNN thuật tốn tìm đầu điểm liệu cách dựa thông tin K điểm liệu gần tập huấn luyện 2.2.2 Nội dung thuật tốn Mơ tả thuật tốn: • Xác định giá trị tham số K (số láng giềng gần nhất) 12 • Tính khoảng cách điểm truy vấn phân lớp với tất đối tượng tập liệu huấn luyện • Sắp xếp khoảng cách theo thứ tự tăng dần xác định K láng giềng gần với điểm truy vấn phân lớp • Lấy tất lớp K láng giềng gần xác định • Dựa vào phần lớn lớp láng giềng gần để xác định lớp cho điểm truy vấn phân lớp, lớp điểm truy vấn phân lớp định nghĩa lớp chiếm đa số K láng giềng gần Việc tính khoảng cách đối tượng cần phân lớp với tất đối tượng tập liệu huấn luyện thường sử dụng với cơng thức tính khoảng cách Euclidean Cho điểm P1(x1,y1) P2(x2,y2) khoảng cách Euclidean distance tính theo cơng thức: √ (2.1) 2.2.3 Đánh trọng số cho điểm lân cận Trong kỹ thuật major voting bên trên, bảy điểm gần coi có vai trò giá trị phiếu điểm Như khơng cơng bằng, điểm gần cần có trọng số cao Vì vậy, ta đánh trọng số khác cho bảy điểm gần Cách đánh trọng số phải thoải mãn điều kiện điểm gần điểm kiểm thử phải đánh trọng số cao Cách đơn giản lấy nghịch đảo khoảng cách Trong trường hợp liệu kiểm thử trùng với điểm liệu tập liệu huấn luyện, tức khoảng cách 0, ta lấy đầu điểm liệu huấn luyện 13 Scikit-learn giúp đơn giản hóa việc cách gán thuộc tính weights = ’ distance’ (Giá trị mặc định weights ’uniform’, tương ứng với việc coi tất điểm lân cận có giá trị như trên) 2.2.4 Ưu điểm KNN - Độ phức tạp tính tốn q trình huấn luyện - Việc dự đoán kết liệu đơn giản (sau xác định điểm lân cận) - Không cần giả sử phân phối lớp 2.2.5 Nhược điểm KNN - KNN nhạy cảm với nhiễu K nhỏ - Như nói, KNN thuật tốn mà tính tốn nằm khâu kiểm thử, việc tính khoảng cách tới điểm liệu tập huấn luyện tốn nhiều thời gian, đặc biệt với sở liệu có số chiều lớn có nhiều điểm liệu Với K lớn độ phức tạp tăng lên Ngoài ra, việc lưu toàn liệu nhớ ảnh hưởng tới hiệu KNN 2.2.6 Các tham số quan trọng thuật tốn KNN Dựa vào phần trước, tơi thấy có tham số quan trọng thuật tốn KNN: - Giá trị K: K lớn thuật tốn nhạy cảm với nhiễu, K lớn q ngưỡng độ xác thuật tốn giảm K láng giềng thuộc nhiều lớp khác nhau, dẫn đến độ tin cậy việc phân lớp giảm - Hàm khoảng cách: để tính khoảng cách điểm cần phân loại điểm tập liệu huấn luyện Có nhiều hàm khoảng cách 14 tơi chọn hàm khoảng cách Euclidean đơn giản phổ biến - Cách đánh trọng số điểm lân cận: có nhiều cách đánh trọng số cho điểm lân cận chọn phương pháp đồng (uniform) tính đơn giản Ngồi tham số thuật tốn KNN độ xác thuật tốn phụ thuộc vào số chiều vec tơ đặc trưng biểu diễn điểm liệu ( trường hợp văn bản) 15 CHƯƠNG 3: TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG 3.1 Môi trường triển khai thử nghiệm 3.2 Mô tả d liệu Dưới bảng thống kê số lượng văn theo 06 chủ đề dùng thực nghiệm: Chủ đề TT Số lượng văn Tin tức 450 Sức khỏe 450 Khoa học – Công nghệ 450 Thể thao 450 Giải trí 450 Giáo dục 450 Bảng 3.1 Số lượng văn theo chủ đề dùng thực nghiệm 3.3 Sơ đồ phân lớp văn dùng KNN Hình 3.1 Sơ đồ phân lớp văn dùng KNN 16 Trong thuật toán KNN đặc biệt chỗ khơng có giai đoạn huấn luyện mơ hình Tập văn N văn gán nhãn vec tơ hóa dùng T -IDF thành N vec tơ (i=1 N) Tương tự Văn cần phân lớp vec tơ hóa thành vec tơ khoảng cách từ vec tơ Sau thuật tốn KNN tính N đến vec tơ (i=1 N), chọn K (trong số N) văn có khoảng cách nhỏ Cuối cùng, chủ đề văn cần phân loại chủ đề chiếm đa số tập K văn 3.4 Cấu hình tham số phân loại văn KNN - Cấu hình cố định: + Cách tính trọng số: đồng + Tính khoảng cách: dùng khoảng cách euclidean - Cấu hình thay đổi để so sánh hiệu suất hoạt động hệ thống: + Số láng giềng xét (k) có giá trị: 2, 4, 6, 10, 12, 20, 30, 40 + Số chiều vec tơ đặc trưng biểu diễn văn bản: 500, 1000, 2000, 3000, 4000 3.5 Kết thực nghiệm 3.5.1 Đánh giá thuật toán KNN Bảng 3.2 cho thấy hiệu suất hoạt động thuật tốn phân loại KNN Nó thể độ xác thay đổi K số đặc trưng trích xuất Hệ thống có độ xác tốt K = 12 số chiều vec tơ đặc trưng 4000 với tỷ lệ 86,45% Theo dõi kết ta thấy với số chiều vec tơ đặc trưng tăng độ xác phân lớp tăng Khi K lớn số 17 chiều vec tơ đặc trưng lớn 1000 tăng dần độ xác Nếu K tăng từ 10 số chiều vec tơ đặc trưng tăng từ 3000 độ xác tăng chậm lại, có giảm khơng đáng kể Bảng 3.2 Độ xác nhận dạng theo số chiều vectơ đặc trưng K thay đổi (Đơn vị tính: %) Số chiều vec tơ đặc trưng 500 1000 2000 3000 4000 K 77.60 80.05 80.47 80.69 81.08 81.17 82.82 83.09 84.10 84.48 82.09 83.97 84.91 85.18 85.65 10 82.69 84.53 85.49 86.36 86.27 12 82.85 85.07 85.83 86.43 86.45 20 83.09 85.29 86.12 86.18 86.14 30 83.07 85.60 86.23 86.32 86.43 40 83.34 85.67 85.89 86.10 86.27 18 3.5.2 So sánh với thuật toán phân loại Naive Bayes Naive Bayes thuật tốn phân loại khác với KNN chỗ Naive Bayes gồm hai giai đoạn huấn luyện mơ hình kiểm thử mơ hình, KNN khơng huấn luyện mơ hình mà kiểm thử mơ hình Tơi huấn luyện Naive Bayes dùng 4500 văn kiểm chứng dùng 450 văn bản, số chiều vec tơ đặc trưng 500, 1000, 2000, 3000, 4000 thu kết bảng 3.3 Bảng 3.3 Độ xác Naive Bayes theo số chiều vec tơ đặc trưng (Đơn vị tính: %) Số chiều N 500 1000 2000 3000 4000 Độ xác 80.99 83.85 85.09 85.85 86.00 Naive Bayes Bảng 3.3 cho ta thấy độ xác thuật toán Naive Bayes tăng số chiều vec tơ đặc trưng tăng Khi so sánh với kết bảng 3.2 ta thấy độ xác cao thuật tốn Naive Bayes 86.00% độ xác cao thuật toán KNN 86.45% chạy liệu kiểm thử, dù thuật toán Naive Bayes phức tạp độ xác thực nghiệm khơng độ xác thuật tốn đơn giản KNN, lý mà tơi chọn thuật tốn KNN tốn phân loại văn 19 Hình 3.2 So sánh độ xác cao hai thuật tốn phân loại Sau số ví dụ kết phân loại KNN phần mềm với độ xác cao K=12 số chiều vec tơ đặc trưng 4000: Hình 3.3 Kết phân loại ”Giáo dục” 20 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận Mục đích đề tài nhằm xây dựng hệ thống phân loại văn tin tức tiếng Việt Thiết lập quy trình phân loại văn chặt chẽ, thông suốt, theo chủ đề, thuận tiện cho việc tìm kiếm, tra cứu, theo dõi cần thiết Kết thực nghiệm cho thấy hệ thống nhận dạng độ xác cao 86.45% trường hợp K=12 số chiều vec tơ đặc trưng 4000 Khi so sánh với thuật toán phân loại văn khác Naive Bayes ta rút điều dù thuật toán KNN đơn giản hơn, dễ sử dụng độ xác thuật tốn KNN khơng mà thấp thuật toán phức tạp khác mà cao hơn, kết thực nhiệm cho thấy điều Kết vừa xem chưa phải kết tối ưu, hy vọng bước khởi đầu thuận lợi làm tiền đề nghiên cứu để thực chương trình phân loại văn tin tức tiếng Việt tốt tương lai Hướng phát triển đề tài Việc nghiên cứu đề tài phân loại văn văn tin tức tiếng Việt không dừng mức độ đồ án tốt nghiệp, cần phải tìm hiểu tiếp tục nghiên cứu sâu thuật toán phân loại văn khác nhằm đem lại hiệu suất cao Mở rộng phân loại tin tức văn lĩnh vực khác như: hành chính, luật pháp, … ... thống phân loại văn có để nâng cao quản lý xu tin tức Mục tiêu nhiệm vụ - Mục tiêu đề tài Ứng dụng thuật toán k-láng giềng gần vào hệ thống xử lý thông tin để phân loại thông tin theo chủ đề - Nghiên... nhằm vận dụng thuật toán k- láng giềng gần theo cách tối ưu dựa sở lý thuyết Mục đích ý nghĩa đề tài - Nghiên cứu đề xuất phương pháp phân loại văn theo chủ đề dựa thuật toán k- láng giềng - Tích... sử dụng định phù hợp - Việc phân loại tin tức ứng dụng website thương mại nhằm nắm bắt xu tiêu dùng người sử dụng Một thuật tốn để ứng dụng cơng việc phân loại liệu website tin tức tiếng Việt thuật
- Xem thêm -

Xem thêm: Ứng dụng thuật toán k-láng giềng gần nhất trong phân loại văn bản tin tức theo chủ đề, Ứng dụng thuật toán k-láng giềng gần nhất trong phân loại văn bản tin tức theo chủ đề

Gợi ý tài liệu liên quan cho bạn