Giao diện tạo bài viết ẩm thực mới

Một phần của tài liệu Xây dựng ứng dụng sổ tay gia đình hỗ trợ tương tác (Trang 106 - 109)

STT Tên thành phần Mô tả

1 Ô chọn ảnh đại diện

Chọn ảnh đại diện cho bài viết

81 3 Khung nhập nội

dung bài viết

Nhập nội dung bài viết

Bảng 3.56: Mô tả giao diện tạo bài viết ẩm thực mới

Chương 4. ÁP DỤNG THUẬT TOÁN

4.1. Một số định nghĩa

4.1.1. Utility matrix

Đây là một thành phần hết sức quan trọng trong hệ khuyến nghị, ta hầu như không thể thực hiện khuyến nghị mà không sử dụng tới utility matrix.

Trong hệ khuyến nghị sẽ bao gồm hai lớp thực thể tạm gọi là user và item. User sẽ có sự quan tâm đối với các item nhất định, và sự quan tâm đó sẽ được đúc kết thơng qua dữ liệu ta có. Và những dữ liệu ta có để có thể đúc kết được mối quan tâm của các user đối với các item sẽ được thể hiện trong utility matrix, với mỗi cặp user - item sẽ có một giá trị đại diện cho mức độ quan tâm của user tới item đó.

Hình 4.1: Ví dụ về Utility matrix [3]

Hình trên là một ví dụ về ma trận utility. Trong đó từ u[1] đến u[n] tương ứng với các user và từ i[1] đến i[m] tương ứng với các item. Giá trị từng cặp (u, i)

82

chính là giá trị rating (mức độ quan tâm của user u đến item i). Ma trận này được xây dựng từ dữ liệu. Tuy nhiên, có thể thấy rằng ma trận này có rất nhiều các giá trị chưa biết, đó là do giữa cặp user - item chưa có sự tương tác. Nhiệm vụ của hệ gợi ý chính là dựa vào các ơ đã có giá trị trong ma trận trên (dữ liệu thu được từ trong q khứ), thơng qua mơ hình đã được xây dựng, dự đốn các ơ cịn trống (của user hiện hành), sau đó dựa vào các kết quả dự đốn này, sắp xếp kết quả dự đốn (ví dụ, từ cao xuống thấp) và chọn ra những items có giá trị dự đốn cao nhất để gợi ý cho người dùng.

Khơng có Utility matrix, gần như không thể gợi ý được sản phẩm tới người dùng, ngồi cách ln ln gợi ý các sản phẩm phổ biến nhất. Vì vậy, trong các Recommender Systems, việc xây dựng Utility Matrix là tối quan trọng. Tuy nhiên, việc xây dựng ma trận này thường có gặp nhiều khó khăn. Có hai hướng tiếp cận phổ biến để xác định giá trị rating cho mỗi cặp user-item trong Utility Matrix: [4]

• Nhờ người dùng rate sản phẩm. Amazon luôn gửi mail nhắc nhở người dùng rate sản phẩm hay Baemin luôn nhắc nhở người dùng rate sản phẩm và người giao hàng mỗi khi nhận được sản phẩm. Tuy nhiên, cách này cũng sẽ có những hạn chế như người dùng rất ít khi rate sản phẩm hay việc rate sản phẩm đôi khi là những đánh giá thiên lệch của người dùng về sản phẩm như đối với người dùng khó tính, họ có thể đánh giá sản phẩm họ thích chỉ ở mức 3-4 sao và các sản phẩm họ khơng thích ở mức 1 sao, nhưng với người dùng dễ tính thì họ sẵn sàng đánh giá sản phẩm với 5 sao cho sản phẩm họ thích và 3 sao cho sản phẩm họ khơng thích.

• Một hướng tiếp cận khác là thu thập thông tin về hành vi của user. Nếu user mua một sản phẩm trên Amazon, hay xem một video trên youtube (có thể xem nhiều lần), hay click đọc một bài viết nào đó, thì có thể khẳng định rằng người dùng thích hay quan tâm đến sản phẩm đó.

83

4.1.2. Cosine similarity

Sau khi đã xây dựng được utility matrix, mỗi cột (user) là một vector với độ dài là số lượng item. Ta có thể sử dụng những vector này để thực hiện việc tính tốn độ tương ứng giữa các user bằng việc sử dụng hàm Cosine similarity.

Một phần của tài liệu Xây dựng ứng dụng sổ tay gia đình hỗ trợ tương tác (Trang 106 - 109)