paint-brush
Cách LinkedIn sử dụng NLP để thiết kế hệ thống tìm kiếm trợ giúp của họtừ tác giả@harshit158
568 lượt đọc
568 lượt đọc

Cách LinkedIn sử dụng NLP để thiết kế hệ thống tìm kiếm trợ giúp của họ

từ tác giả Harshit Sharma2m2022/07/18
Read on Terminal Reader
Read this story w/o Javascript

dài quá đọc không nổi

Hệ thống tìm kiếm trợ giúp của LinkedIn đang được sử dụng (kể từ năm 2019 **) để thiết kế hệ thống tìm kiếm trợ giúp của nó. Điều này làm nổi bật tuyên bố vấn đề và các lần lặp lại khác nhau của các giải pháp đã được thông qua cùng với những thiếu sót của chúng. Đây là phần tóm tắt và những điều tôi rút ra được từ bài đăng gốc của LinkedIn về cách NLP được sử dụng trong việc thiết kế hệ thống tìm kiếm trợ giúp. Truy vấn đã cho được sử dụng để tìm nạp tất cả các tài liệu có liên quan (lượt truy cập) bằng cách sử dụng lập chỉ mục Lucene. Mỗi lần truy cập được tính điểm bằng cách sử dụng thuật toán [BM25F] (https://www.google.com/article/53174626597/).

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coin Mentioned

Mention Thumbnail
featured image - Cách LinkedIn sử dụng NLP để thiết kế hệ thống tìm kiếm trợ giúp của họ
Harshit Sharma HackerNoon profile picture

Đây là bản tóm tắt và những điều quan trọng của tôi từ bài gốc của LinkedIn về cách NLP đang được sử dụng (kể từ năm 2019 ) trong việc thiết kế Hệ thống Tìm kiếm Trợ giúp của nó. Điều này làm nổi bật tuyên bố vấn đề và các lần lặp lại khác nhau của các giải pháp đã được thông qua cùng với những thiếu sót của chúng.

Báo cáo vấn đề:

Người dùng đưa ra một truy vấn, hãy tìm nạp Bài viết trợ giúp có liên quan nhất từ cơ sở dữ liệu.

(Hình ảnh của tác giả) Tuyên bố vấn đề

Lặp lại 1: Giải pháp ban đầu

  1. Đã lập chỉ mục tất cả các bài báo trợ giúp (tài liệu) trong cơ sở dữ liệu bằng Lucene Index . Nói tóm lại, nó tạo ra một từ điển đảo ngược ánh xạ các thuật ngữ cho tất cả các tài liệu mà nó xuất hiện.Nguồn: Blog gốc

2. Truy vấn đã cho được sử dụng để tìm nạp tất cả các tài liệu có liên quan (lượt truy cập) bằng cách sử dụng lập chỉ mục Lucene.

3. Mỗi lần truy cập được tính điểm bằng cách sử dụng thuật toán BM25F , có tính đến cấu trúc tài liệu , đưa ra trọng số cao nhất cho các lần truy cập trong Tiêu đề , sau đó truy cập trong Từ khóa và sau đó là Nội dung và trả về điểm số có trọng số.

4. Trả lại những bài báo được điểm cao nhất.

Tại sao nó không thành công

Vì hệ thống truy xuất tài liệu dựa trên thuật ngữ ( cú pháp ), không tính đến ngữ nghĩa , sau đây là hai trường hợp lỗi ví dụ: (Hình ảnh của Tác giả) Ví dụ về các trường hợp sử dụng không thành công

Lặp lại 2: Giải pháp cuối cùng

Bước 1: Chuẩn hóa văn bản

" Cách hủy tài khoản trả phí của tôi ngay lập tức" được chuẩn hóa thành " hủy tài khoản trả phí" Nguồn: Blog gốc

Bước 2: Ánh xạ truy vấn

Có thể xảy ra trường hợp truy vấn chuẩn hóa không có bất kỳ từ nào chung với các từ trong bài viết. Do đó, mỗi truy vấn được ánh xạ tới một truy vấn đại diện hơn để lấp đầy khoảng cách giữa thuật ngữ của người dùng và thuật ngữ của bài báo.

Thực hiện theo hai bước sau:

  1. Nhóm truy vấn: Các truy vấn được nhóm lại với nhau dựa trên các chỉ số tương tự (Hình ảnh của Tác giả) Minh họa nhóm truy vấn

2. Khai thác chủ đề và tính điểm đại diện: Đối với mỗi truy vấn trong nhóm Truy vấn, điểm tổng được tính và K truy vấn hàng đầu được chọn làm Truy vấn đại diện (Hình ảnh của tác giả) Hình minh họa Khai thác chủ đề và cho điểm đại diện

sim (RQ, Q2) là điểm giống nhau giữa truy vấn thô và một truy vấn khác trong nhóm

sim (Q2, tiêu đề) là độ tương đồng tối đa giữa Q2 và một trong các chủ đề từ tiêu đề (tương tự đối với nội dung)

Bước 3: Phân loại ý định

Các truy vấn dài có thể không có Truy vấn đại diện, trong trường hợp đó, CNN được sử dụng để phân loại Mục đích của truy vấn.

Ví dụ: “Hủy Đăng ký Đặc biệt của bạn” và “Hủy hoặc Cập nhật Đăng ký Đặc biệt đã Mua trên Thiết bị Apple của bạn” được coi là có cùng mục đích là “hủy bỏ phí bảo hiểm”.

Lưu lượng tổng thể (Hình ảnh của Tác giả)


Cũng được xuất bản tại đây