Hệ thống đề xuất

Một phần của tài liệu Khóa luận tốt nghiệp Công nghệ thông tin: Xây dựng hệ thống đề xuất sách cho ứng dụng web áp dụng các mô hình truy hồi thông tin (Trang 44 - 49)

5.1. M6 tả hệ thống

Hệ thống đề xuất của chúng tôi áp dụng cả hai phương pháp CBF va CF, tối ưu cả

dữ liệu văn bản của các đầu sách và dit liệu ratings của user. Bằng cách tận dụng dữ liệu rating của user đối với các item, và dữ liệu văn bản được véc-tơ hóa bằng các

kỹ thuật truy hồi thông tin, mô hình sẽ dự đoán rating cho cáci item mà user chưa tương tác, đồng thời cũng tìm các user tương đồng và đề xuất những item được đánh giá cao cho user. Các bước xử lý của mô hình hệ khuyến nghị được mô tả sau

đây:

1. Xử lý dữ liệu thô: Tiền xử lý các dữ liệu thô ban đầu như dữ liệu văn bản mô tả

của item, đữ liệu ratings của các user như đã mô tả trong mục 3.1.2. Kết quả thu được sẽ là các văn bản chứa token đối với dữ liệu văn bản mô tả của item, và 2 tập dùng dé training va testing đối với tập dữ liệu ratings của user. Các bước tiền

xử lý này nhằm đảm bảo độ ôn định và chất lượng của tập dit liệu được sử dụng trong các bước tiếp theo.

2. Véc-tơ hóa dữ liệu văn bản: Trong bước này, chúng tôi sẽ áp dụng hai kỹ thuật

truy hồi thông tin là TF-IDF và Doc2Vec dé xử lý dữ liệu dé thu được danh sách

các véc-tơ của từng dữ liệu văn bản tập dữ liệu. Các véc-tơ này sẽ được sử dụng

trong các quá trình xử lý tiếp theo.

3. Tạo hồ sơ cho các user và lập ma trận user: Ở bước này, chúng tôi sẽ sử dụng dữ

liệu của user trong tập dữ liệu huấn luyện. Mô hình hồi quy Ridge sẽ được áp dụng để tạo hồ sơ cho từng user. Danh sách các item sẽ được sử dụng để truy xuất các vector tương ứng đã thu được ở bước 2. Trước khi áp dụng mô hình hồi quy Ridge, dữ liệu ratings sẽ được xử lý như đã đề cập ở mục 3.1.2. Tiến hành

áp dụng mô hình này với các biến phụ thuộc là các giá trị véc-tơ item của user

đã tương tác và biến độc lập là giá trị ratings của user cho item tương ứng đã được tiền xử lý. Kết quả thu được là một mô hình hồi quy Ridge đã được huấn

36

luyện với dữ liệu của user. Hệ số của mô hình sau khi fit với đữ liệu của từng user sẽ được lưu lại dé tạo ma trận user. Mô hình cơ bản đã được hoàn thành.

Tạo gợi ý cho user: Sau khi đã có ma trận user, mô hình có thé đưa ra các gợi ý cho từng user cụ thé. Khi nhập user id vào, mô hình sẽ tiễn hành tái tạo lại hồ sơ

cua user đó và đưa ra các gợi ý dựa theo ratings của item ma user đó đã đánh gia

trong quá khứ. Đồng thời mô hình cũng tìm các user tương đồng với user bằng

ma trận user đã tao ở bước trước đó, sau đó dé xuât các item mà những user

Dữ liệu ratings của users |

Tiên xử lý d

tương đồng đánh giá cao cho user.

Dữ liệu van ban thé

Tiên xử lý văn bản

Mô hinh truy hồi thông tin

Van ban dưởi dang vector

Mỏ hinh hoi quy Ridge

lỮ liệu rating

Tao ma trận users

Ma trận users

Hình 5.1. Quá trình xử ly dữ liệu.

37

Mé hỉnh khuyến nghị

Lay dữ liệu items của người Lay dif liệu các users

dùng tương đồng

Danh sách các users

Dự doan ratings các items =

tương dong

user chưa tương tắc

Danh sach item-rating

Lay các items có ratings cao

Danh sach items

Hình 5.2. Quá trình tao các gợi ý.

5.2. Trién khai mô hình

5.2.1. Streamlit

Streamlit là một thư viện Python mã nguồn mở. Streamlit cho phép nhà phát triển xây dựng một ứng dụng web dé tương tác và trực quan hóa dữ liệu nhanh chóng và đơn giản. Streamlit đơn giản hóa các bước phát triển và chia sẻ ứng dụng web bằng

các API thân thiện với user.

Sreamlit cho phép tạo ứng dụng từ các đoạn script Python mà không cần các kiến thức liên quan tới HTML, CSS, hay JavaScript. Thư viện này cung cấp tất cả các công cụ tạo các components dé user tương tác trên ứng dụng như buttons, sliders, dropdowns, và kê cả plots.

38

Thư viện này cũng hỗ trợ các thư viện data science phổ biến bao gồm NumPy, Pandas, Matplotlib, và TensorFlow. Điều này làm cho các công đoạn xử lý dữ liệu,

phân tích, và trực quan hóa dữ liệu trở nên mượt mà hơn.

5.2.2. Các bước triển khai

Các bước triển khai mô hình như sau:

1. Sau khi đã huấn luyện xong hệ khuyến nghị với các dữ liệu user trên môi trường

Jupyter Notebook, chúng tôi tiến hành lưu mô hình bang các công cụ được cung cấp trong thư viện Joblib, một thư viện pipeline, để lưu mô hình đã huấn luyện

vào một file .joblib.

2. Tiến hành gọi mô hình bằng các công cụ có trong thư viện Joblib.

5.2.3. Giao diện chính của ứng dụng

39

Giao diện của ứng dụng demo bao gồm 2 mục, lựa chọn đề xuất theo book_id va lựa chọn dé xuất theo user_id.

Đối với lựa chọn đề xuất theo book id: User sẽ nhập book_id và số lượng sách muốn gợi ý vào form. Sau đó nhân “Submit” thì hệ thống sẽ đề xuất các đầu sách tương tự với cuốn sách có id đó.

Đối với lựa chọn đề xuất theo user id: Tương tự như đề xuất theo book_id, thay vi nhập book_id thì sẽ nhập user_id mong muốn. Sau đó hệ thống sẽ đề xuất các item

thích hợp.

40

Một phần của tài liệu Khóa luận tốt nghiệp Công nghệ thông tin: Xây dựng hệ thống đề xuất sách cho ứng dụng web áp dụng các mô hình truy hồi thông tin (Trang 44 - 49)

Tải bản đầy đủ (PDF)

(51 trang)