Tôi hiện đang xây dựng một công cụ tìm kiếm nhỏ trong nhà dựa trên Apache Lucene. Mục đích của nó rất đơn giản - dựa trên một số từ khóa, nó sẽ gợi ý một số bài viết được viết trong nội bộ công ty chúng tôi. Tôi đang sử dụng cách tính điểm TF-IDF khá chuẩn làm chỉ số cơ bản và xây dựng cơ chế tính điểm của riêng mình trên đầu trang. Tất cả những thứ này dường như đang hoạt động xuất sắc ngoại trừ một số trường hợp góc mà bảng xếp hạng dường như bị rối tung.
Vì vậy, những gì tôi dự định làm là thêm một liên kết nhỏ Có liên quan / Không liên quan vào trang kết quả tìm kiếm để người dùng có thể nhấp vào một trong những tùy thuộc vào nhận thức của họ về việc liệu kết quả đó có nên được đưa vào vị trí đầu tiên hay không.
Ý kiến của tôi
- Hãy coi những thứ này có liên quan / Không liên quan như nhãn và tạo dữ liệu đào tạo.
- Sử dụng dữ liệu này để huấn luyện bộ phân loại (như SVM)
- Kết hợp mô hình này vào công cụ tìm kiếm, tức là mọi kết quả mới sẽ đi qua bộ phân loại và sẽ được gán nhãn cho dù nó có liên quan hay không.
Cách tiếp cận này có vẻ trực quan với tôi nhưng không chắc liệu nó có hoạt động trong thực tế hay không. Tôi có hai câu hỏi cụ thể:
- Những gì tất cả các tính năng tôi nên trích xuất?
- Có cách nào tốt hơn để tích hợp thành phần máy học vào công cụ tìm kiếm không? Mục tiêu cuối cùng của tôi là "tìm hiểu" chức năng xếp hạng dựa trên cả logic kinh doanh cũng như phản hồi của người dùng.