[Help] Tìm kiếm tài liệu tiếng việt theo chủ đề

classification
nlp

#1

Em chào a chị trong diễn đàn, Hiện tại em đang làm cái đề tài “Tìm kiếm tài liệu tiếng việt theo chủ đề” và em đã implement thuật toán TF-IDF trên một tập dữ liệu khoảng 500 document về bài báo khoa học tiếng việt khoảng 7 chủ đề và tính weight (TD * IDF) của mỗi từ trong tập tài liệu sau khi tiền xử lý, tách từ.
tf - idf : https://vi.wikipedia.org/wiki/Tf–idf Rồi mình xây dựng index để tăng khả năng tìm kiếm nhanh hơn với định dạng : ‘word1’ : [doc1, tf-idf], [doc2, tfidf] : tức là word1 xuất hiện ở doc1 và doc2 kèm weight = tfidf

Input là 1 câu query và em cũng xử lý tách từ và tính tf-idf của mối từ sau đó dựa trên bảng index để tính cosin giữa 2 vector : query_vector và document_vector có chứa từ trong câu query để lấy các document liên quan.

Một số vấn đề của em gặp phải là : 1 . Mỗi lần em thêm mới document mới lại phải đánh index lại từ đầu và mất khá nhiều thời gian, anh chị nào có giải pháp nào recommend giúp em với ạ ? 2. Việc gõ Tiếng Việt không dấu có công cụ gì để tách từ không ạ ? 3. A chị có thể recommend giúp em thuật toán dùng phân lớp dựa trên tập tài liệu có sẵn theo chủ đề với ạ. Cảm ơn a chị đã đọc bài và đây là demo mà em đang làm : http://128.199.210.77/


#4
  • Từ không dấu không có tách từ.
  • Em nên dùng Elasticsearch để build search engine.
  • Không nên dùng SQL để lưu document như trong bài này, nên dùng NoSQL http://tailieuso.udn.vn/bitstream/TTHL_125/2923/2/Tomtat.pdf.
  • Còn nếu build 1 con search engine từ đầu thì bạn chỉ cần lưu file index xuống file, khi nào deploy model thì gọi lên, index thêm và lại ghi xuống.
  • Phân loại văn bản thì bạn có thể search theo keyword Text Classification, mà mình đoán dữ liệu bạn không nhiều

#5

Cảm ơn a đã góp ý ạ, Hiện tại e đang build một search engine dựa trên mô hình không gian vector ( Vector Space Model ) nên em dùng TF-IDF. Tập dữ liệu là các bài báo khoa học (khoảng 600 bài ) liên quan đến 7 chủ đề. Cho e hỏi tập dữ liệu thế đã đủ để phân loại chưa ạ ?