Một số kỹ thuật trong hệ thống gợi ý

Một phần của tài liệu Xây dựng mô hình tìm kiếm và gợi ý tài nguyên học tập (Trang 41 - 61)

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT VÀ CÁC NGHIÊN CỨU LIÊN QUAN

2.5. Hệ thống gợi ý và các kỹ thuật trong hệ thống gợi ý

2.5.3. Một số kỹ thuật trong hệ thống gợi ý

Cĩ nhiều kỹ thuật trong hệ thống gợi ý. Phần này trình bày các kỹ thuật chính được sử dụng cho các nghiên cứu trong luận án này.

2.5.3.1. Kỹ thuật k láng giềng dựa trên người dùng và mục tin

Cĩ hai cách tiếp cận của lọc cộng tác theo mơ hình k láng giềng là dựa trên người dùng (User_kNN), tức là dự đốn dựa trên sự tương tự giữa các người dùng, và dựa trên mục tin (Item_kNN), tức là dự đốn dựa trên sự tương tự giữa các mục tin.

Kỹ thuật User_kNN xác định độ tương đồng giữa hai người dùng thơng qua việc so sánh các đánh giá của họ trên cùng mục tin, sau đĩ dự đốn xếp hạng trên mục tin i bởi người dùng u, thơng qua các xếp hạng của những người dùng tương tự với người dùng u. Độ tương đồng giữa người dùng u và người dùng u' cĩ thể được tính theo cosine hoặc Pearson (Herlocker et al., 1999) tương ứng như hai biểu thức 2.7 và 2.8:

𝑠𝑠𝑖𝑖𝑚𝑚𝑐𝑐𝑐𝑐𝑠𝑠𝑖𝑖𝑐𝑐𝑡𝑡(𝑢𝑢,𝑢𝑢′) = ∑𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′𝑟𝑟𝑢𝑢𝑖𝑖.𝑟𝑟𝑢𝑢′𝑖𝑖 �∑ 𝑟𝑟𝑢𝑢𝑖𝑖2 𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′ .�∑𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′𝑟𝑟𝑢𝑢2′𝑖𝑖 2.7 𝑠𝑠𝑖𝑖𝑚𝑚𝑝𝑝𝑡𝑡𝑝𝑝𝑟𝑟𝑠𝑠𝑐𝑐𝑐𝑐(𝑢𝑢,𝑢𝑢′) = ∑𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̅𝑢𝑢)(𝑟𝑟𝑢𝑢′𝑖𝑖− 𝑟𝑟̅𝑢𝑢′) �∑ (𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̅𝑢𝑢)2 𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′ .�∑ (𝑟𝑟𝑢𝑢′𝑖𝑖 − 𝑟𝑟̅𝑢𝑢′)2 𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′ 2.8 Trong đĩ:

rui và ru’i là đánh giá của người dùng u và u’ trên item i tương ứng Iuu' là tập các item được đánh giá bởi cả người dùng u và người dùng u'

𝑟𝑟�𝑢𝑢 là giá trị đánh giá trung bình trên tất cả các item của người dùng u

𝑟𝑟𝑢𝑢′

Tương tự, kỹ thuật Item_kNN cũng xác định độ tương đồng dựa trên các mục tin bằng phương pháp cosine hoặc Pearson như hai biểu thức 2.9 và 2.10:

𝑠𝑠𝑖𝑖𝑚𝑚𝑐𝑐𝑐𝑐𝑠𝑠𝑖𝑖𝑐𝑐𝑡𝑡(𝑖𝑖,𝑖𝑖′) = ∑𝑢𝑢∈𝑈𝑈𝑖𝑖𝑖𝑖′𝑟𝑟𝑢𝑢𝑖𝑖.𝑟𝑟𝑢𝑢𝑖𝑖′ �∑ 𝑟𝑟𝑢𝑢𝑖𝑖2 𝑢𝑢∈𝑈𝑈𝑖𝑖𝑖𝑖′ .�∑ 𝑟𝑟𝑢𝑢𝑖𝑖2′ 𝑢𝑢∈𝑈𝑈𝑖𝑖𝑖𝑖′ 2.9 𝑠𝑠𝑖𝑖𝑚𝑚𝑝𝑝𝑡𝑡𝑝𝑝𝑟𝑟𝑠𝑠𝑐𝑐𝑐𝑐(𝑖𝑖,𝑖𝑖′) = ∑𝑢𝑢∈𝑈𝑈𝑖𝑖𝑖𝑖′(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̅𝑖𝑖)(𝑟𝑟𝑢𝑢𝑖𝑖′ − 𝑟𝑟̅𝑖𝑖′) �∑ (𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̅𝑖𝑖)2 𝑢𝑢∈𝑈𝑈𝑖𝑖𝑖𝑖′ .�∑ (𝑟𝑟𝑢𝑢𝑖𝑖′− 𝑟𝑟̅𝑖𝑖′)2 𝑢𝑢∈𝑈𝑈𝑖𝑖𝑖𝑖′ 2.10 Trong đĩ:

Uii' là tập các người dùng cĩ đánh trên cả hai mục tin i và i’

𝑟𝑟𝚤𝚤

� là giá trị đánh giá trung bình của tất cả các người dùng trên item i

𝑟𝑟�𝚤𝚤′ là giá trị đánh giá trung bình của tất cả các người dùng trên item i’

Với phương pháp User_kNN, xếp hạng của người dùng u trên mục tin i được dự đốn qua biểu thức 2.11:

𝑟𝑟̂𝑢𝑢𝑖𝑖 = 𝑟𝑟̅𝑢𝑢+∑𝑢𝑢′∈𝐾𝐾𝑢𝑢𝑠𝑠𝑖𝑖𝑚𝑚(𝑢𝑢,𝑢𝑢′). (𝑟𝑟𝑢𝑢′𝑖𝑖 − 𝑟𝑟̅𝑢𝑢′)

∑𝑢𝑢′∈𝐾𝐾𝑢𝑢|𝑠𝑠𝑖𝑖𝑚𝑚(𝑢𝑢,𝑢𝑢′)

2.11 Trong đĩ sim(u,u') là độ tương đồng giữa người dùng u và u' được xác định bằng phương pháp cosine hoặc Pearson như đã trình bày; Ku là số người dùng cĩ độ lân cận gần người dùng u (k láng giềng của u)

Với phương pháp Item_kNN, xếp hạng (đánh giá/ feedback) của người dùng u trên mục tin i được dự đốn qua biểu thức 2.12:

𝑟𝑟̂𝑢𝑢𝑖𝑖 = 𝑟𝑟̅𝑖𝑖+∑𝑖𝑖′∈𝐾𝐾𝑖𝑖𝑠𝑠𝑖𝑖𝑚𝑚(𝑖𝑖,𝑖𝑖′). (𝑟𝑟𝑢𝑢𝑖𝑖′ − 𝑟𝑟̅𝑖𝑖′)

∑𝑖𝑖′∈𝐾𝐾𝑖𝑖|𝑠𝑠𝑖𝑖𝑚𝑚(𝑖𝑖,𝑖𝑖′)

2.12 Trong đĩ, sim(i, i') độ tương đồng giữa mục tin i và i’ được xác định bằng phương pháp cosine hoặc Pearson như đã trình bày; Ki là số item cĩ độ lân cận gần item i (k láng giềng của i).

2.5.3.2. Kỹ thuật phân rã ma trận

Kỹ thuật phân rã ma trận (Matrix factorization - MF) là việc chia một ma trận lớn

X thành hai ma trận cĩ kích thước nhỏ hơn W và H, sao cho ta cĩ thể xây dựng lại X từ

hai ma trận nhỏ hơn này càng chính xác càng tốt (Koren et al., 2009), nghĩa là X ~ WHT,

được minh họa như trong Hình 2.10.

Trong đĩ, W ∈ ℜ|U|×K là một ma trận mà mỗi dịng u là một véc-tơ bao gồm K nhân tố tiềm ẩn (latent factors) mơ tả người dùng u; và H ∈ ℜ|I|×K là một ma trận mà mỗi dịng i là một véc-tơ bao gồm K nhân tố tiềm ẩn mơ tả cho item i (lưu ý: K<<|U| và K<<|I|).

Hình 2.10: Minh họa kỹ thuật phân rã ma trận

Gọi wuk và hik là các phần tử tương ứng của hai ma trận W và H, khi đĩ xếp hạng của người dùng u trên mục tin i được dự đốn bởi biểu thức 2.13:

𝑟𝑟̂𝑢𝑢𝑖𝑖 = �w𝑢𝑢𝑘𝑘ℎ𝑖𝑖𝑘𝑘 𝐾𝐾

𝑘𝑘=1

= (𝑊𝑊𝐻𝐻𝑇𝑇)𝑢𝑢,𝑖𝑖 2.13

Như vậy, vấn đề của kỹ thuật MF là làm sao để tìm được giá trị của hai tham số W và H. Hai tham số này cĩ được bằng cách tối ưu hĩa hàm mục tiêu (objective function). Hàm mục tiêu thơng dụng nhất trong RS tương tự như hàm lỗi RMSE, biểu diễn như biểu thức 2.14: 𝑂𝑂𝑀𝑀𝑀𝑀 = � (𝑟𝑟𝑢𝑢𝑖𝑖 − 𝑟𝑟̂𝑢𝑢𝑖𝑖)2 = � �𝑟𝑟𝑢𝑢𝑖𝑖− � 𝑤𝑤𝑢𝑢𝑘𝑘𝑖𝑖𝑘𝑘 𝐾𝐾 𝑘𝑘=1 � 2 𝑢𝑢,𝑖𝑖∈𝐷𝐷𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡 𝑢𝑢,𝑖𝑖∈𝐷𝐷𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡 2.14 Một trong những kỹ thuật cĩ thể dùng để tối ưu hĩa hàm mục tiêu là dùng SGD (Stochastic Gradient Descent) (Koren et al., 2009). Để tối ưu hĩa hàm mục tiêu trên, đầu tiên cần khởi tạo các giá trị ngẫu nhiên cho W và H, sau đĩ từng bước cập nhật giá trị của chúng cho đến khi hàm mục tiêu hội tụ về giá trị nhỏ nhất (lỗi ít nhất).

Để làm được điều đĩ phải biết nên tăng hay nên giảm các giá trị của W và H qua mỗi lần cập nhật, do vậy cần phải tìm đạo hàm tương ứng như hai biểu thức sau:

𝜕𝜕

𝜕𝜕𝑤𝑤𝑢𝑢𝑘𝑘𝑂𝑂𝑀𝑀𝑀𝑀 =−2(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̂𝑢𝑢𝑖𝑖)ℎ𝑖𝑖𝑘𝑘 2.15 𝜕𝜕

𝜕𝜕𝑖𝑖𝑘𝑘𝑂𝑂𝑀𝑀𝑀𝑀 =−2(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̂𝑢𝑢𝑖𝑖)𝑤𝑤𝑢𝑢𝑘𝑘 2.16 Sau khi tìm đạo hàm, các phần tử của W và H sẽ được cập nhật ngược hướng với giá trị của đạo hàm (Takács et al., 2009), qua hai biểu thức sau:

𝑤𝑤𝑢𝑢𝑘𝑘𝑐𝑐𝑡𝑡𝑤𝑤 =𝑤𝑤𝑢𝑢𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜 − 𝛽𝛽 ⋅𝜕𝜕𝑤𝑤𝜕𝜕

𝑢𝑢𝑘𝑘𝑂𝑂𝑀𝑀𝑀𝑀 =𝑤𝑤𝑢𝑢𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜 + 2𝛽𝛽 ⋅(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̂𝑢𝑢𝑖𝑖)ℎ𝑖𝑖𝑘𝑘 2.17

𝑖𝑖𝑘𝑘𝑐𝑐𝑡𝑡𝑤𝑤 =𝑖𝑖𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜 − 𝛽𝛽 ⋅ 𝜕𝜕

Trong đĩ β là tốc độ học (learning rate, 0 < β < 1). Quá trình cập nhật sẽ được thực hiện đến khi nào hàm mục tiêu đạt được giá trị nhỏ nhất hoặc vượt quá số vịng lặp được quy định trước. Tuy nhiên, để tránh tình trạng mơ hình dự đốn cho kết quả tốt trên tập huấn luyện nhưng cho kết quả thấp trên tập thử nghiệm (overfitting), người ta thêm vào đại lượng gọi là chính tắc hĩa 𝜆𝜆 (regularization) (Feng et al., 2009) để điều khiển độ lớn các giá trị trong W và H, khi đĩ hàm mục tiêu 𝑂𝑂𝑀𝑀𝑀𝑀 được biểu diễn như biểu thức 2.19:

𝑂𝑂𝑀𝑀𝑀𝑀 = � (𝑟𝑟𝑢𝑢𝑖𝑖 − 𝑟𝑟̂𝑢𝑢𝑖𝑖)2 (𝑢𝑢,𝑖𝑖) ∈ 𝑫𝑫𝒕𝒕𝒕𝒕𝒕𝒕𝒕𝒕𝒕𝒕

+𝜆𝜆(‖𝑊𝑊‖𝑀𝑀2 +‖𝐻𝐻‖𝑀𝑀2) 2.19

Với λ là hệ số chính tắc hĩa (0 ≤ λ <1) và ‖∙‖𝑀𝑀2 là chuẩn Frobenius (Bưttcher and Wenzel, 2008), tức là căn bậc hai của tổng bình phương tất cả các phần tử trong ma trận. Theo hàm mục tiêu mới này, giá trị của wuk và hik sẽ được cập nhật theo biểu thức sau:

𝑤𝑤𝑢𝑢𝑘𝑘𝑐𝑐𝑡𝑡𝑤𝑤 = 𝑤𝑤𝑢𝑢𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜 +𝛽𝛽. (2(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̂𝑢𝑢𝑖𝑖)ℎ𝑖𝑖𝑘𝑘− λ.𝑤𝑤𝑢𝑢𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜) 2.20

ℎ𝑖𝑖𝑘𝑘𝑐𝑐𝑡𝑡𝑤𝑤 = ℎ𝑖𝑖𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜 +𝛽𝛽. (2(𝑟𝑟𝑢𝑢𝑖𝑖− 𝑟𝑟̂𝑢𝑢𝑖𝑖)𝑤𝑤𝑢𝑢𝑘𝑘 − 𝜆𝜆.ℎ𝑖𝑖𝑘𝑘𝑐𝑐𝑜𝑜𝑜𝑜) 2.21

2.5.3.3. Kỹ thuật phân rã ma trận thiên vị

Một lợi thế của hướng tiếp cận phân rã ma trận MF cho lọc cộng tác CF là khả năng linh hoạt của nĩ khi cĩ thêm các điều kiện ràng buộc khác, các điều kiện này cĩ thể liên quan đến quá trình xử lý dữ liệu hoặc đến từng ứng dụng cụ thể. Các đánh giá thực tế đều cĩ những thiên vị về user và item. Cĩ user dễ hay khĩ tính, cũng cĩ những

item được rate cao hơn những item khác chỉ vì user thấy các user khác đã đánh giá item

đĩ cao. Vì thế, kỹ thuật phân rã ma trận thiên vị (Biased matrix factorization - BMF), một biến thể của kỹ thuật MF được đề xuất, theo đĩ giá trị dự đốn sẽ được cộng thêm các giá trị thiên vị hay độ lệch (bias).

Với kỹ thuật BMF, xếp hạng user u cho item i được dự đốn như biểu thức 2.22: 𝑟𝑟̂𝑢𝑢𝑖𝑖 =𝜇𝜇+𝑏𝑏𝑢𝑢+ 𝑏𝑏𝑖𝑖 +� 𝑤𝑤𝑢𝑢𝑘𝑘.ℎ𝑖𝑖𝑘𝑘

𝐾𝐾 𝑘𝑘=1

2.22 Trong đĩ:

- µ: giá trị trung bình tồn bộ các rating, được xác định từ tập dữ liệu huấn luyện

𝜇𝜇 = ∑�𝑢𝑢,𝑖𝑖,𝑟𝑟 ∈ 𝐷𝐷|𝐷𝐷𝑡𝑡𝑟𝑟𝑝𝑝𝑖𝑖𝑐𝑐𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡| �𝑟𝑟

- bu: độ thiên vị của user u, xác định bởi:

𝑏𝑏𝑢𝑢 = |{(𝑢𝑢∑�𝑢𝑢′,′,𝑖𝑖,𝑟𝑟 ∈ 𝐷𝐷𝑖𝑖,𝑟𝑟 ∈𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡𝐷𝐷𝑡𝑡𝑟𝑟𝑝𝑝𝑖𝑖𝑐𝑐 �|𝑢𝑢′=𝑢𝑢| )|𝑢𝑢(𝑟𝑟 − 𝜇𝜇)′ =𝑢𝑢|}|

𝑏𝑏𝑖𝑖 = |{(𝑢𝑢,∑�𝑢𝑢,𝑖𝑖𝑖𝑖′′,,𝑟𝑟 ∈ 𝐷𝐷𝑟𝑟 ∈𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡𝐷𝐷𝑡𝑡𝑟𝑟𝑝𝑝𝑖𝑖𝑐𝑐 �|𝑖𝑖′=𝑖𝑖| )|𝑖𝑖(𝑟𝑟 − 𝜇𝜇)′ =𝑖𝑖|}|

Khi đĩ, hàm mục tiêu của BMF cĩ dạng như biểu thức 2.23: 𝑂𝑂𝐵𝐵𝑀𝑀𝑀𝑀 = � �𝑟𝑟𝑢𝑢𝑖𝑖− 𝜇𝜇 − 𝑏𝑏𝑢𝑢− 𝑏𝑏𝑖𝑖− � 𝑤𝑤𝑢𝑢𝑘𝑘ℎ𝑖𝑖𝑘𝑘 𝐾𝐾 𝑘𝑘=1 � 2 +𝜆𝜆 . (‖𝑊𝑊‖𝑀𝑀2+‖𝐻𝐻‖𝑀𝑀2) (𝑢𝑢,𝑖𝑖) ∈ 𝐷𝐷𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡 2.23 Tương tự như kỹ thuật MF, sau khi tối ưu hĩa hàm mục tiêu, ta cũng xác định được các tham số tương ứng và từ đĩ cĩ thể dễ dàng dự đốn kết quả. Thực nghiệm đã cho thấy, trong khá nhiều trường hợp, BMF cho kết quả tốt hơn hẵn so với kỹ thuật MF (Koren et al., 2009; Nguyen-Thai-Nghe et al., 2012).

2.5.3.4. Kỹ thuật phân rã ma trận ba chiều

Trong nhĩm giải thuật CF, kỹ thuật phân rã ma trận (Matrix factorization - MF) là một trong những phương pháp khá thành cơng (state-of-the-art) trong lĩnh vực dự đốn xếp hạng của RS (Koren and Bell, 2011; Koren et al., 2009). Tuy nhiên, kỹ thuật MF chỉ dựa vào sự tương quan giữa user và item để đưa ra dự đốn (User × Item → Rating) mà khơng quan tâm đến yếu tố thời gian khi xây dựng mơ hình gợi ý. Hay nĩi cách khác, các nhĩm giải thuật MF chủ yếu tập trung vào giới thiệu các item phù hợp với user dựa vào tất cả các dữ liệu trong quá khứ của user đĩ, mà khơng xem xét đến yếu tố sở thích của user cĩ thể thay đổi theo thời gian. Chẳng hạn, một số đánh giá khá lâu trước đây sẽ khơng cịn phù hợp với sở thích hiện tại của user.

Trong RS hai chiều, người ta thường biểu diễn dữ liệu vào ma trận user-item do vậy chỉ quan tâm đến user item chứ khơng quan tâm đến các thơng tin ngữ cảnh (context) bên ngồi cĩ tác động đến quyết định của người dùng hay khơng. Theo nhĩm tác giả Adomavicius and Tuzhilin (2011), thơng tin ngữ cảnh là những thơng tin cĩ thể mơ tả được hồn cảnh của một thực thể, chẳng hạn như thời gian. Với hệ thống gợi ý theo ngữ cảnh, hàm dự đốn 𝑟𝑟̂ được bổ sung thêm thơng tin ngữ cảnh và biểu diễn thành:

𝑟𝑟̂: U × I × C → R (C là thơng tin ngữ cảnh)

Kỹ thuật phân rã ma trận ba chiều (Tensor factorization - TF) là một dạng tổng quát của kỹ thuật phân tích ma trận theo ngữ cảnh (Kolda and Bader, 2009; Dunlavy et

al., 2011). Nếu như MF được biểu diễn bởi dữ liệu cĩ 2 chiều user và item thì TF được

xem là một khối lập phương 3 chiều biểu diễn như Hình 2.11.

Cho một tensor Z với kích thước U × I × T, với 2 thành phần đầu tiên U và I lần lượt biểu diễn cho ma trận user và item trong kỹ thuật phân rã ma trận (MF). Thành phần thứ ba thể hiện cho ngữ cảnh dự đốn (chẳng hạn thời gian) cĩ kích thước T. Như vậy,

Z cĩ thể được viết lại như biểu thức 2.24:

Z ≈ � 𝑤𝑤𝑘𝑘 ∘ ℎ𝑘𝑘 ∘ 𝑞𝑞𝑘𝑘 𝐾𝐾

𝑘𝑘=1

2.24 Trong đĩ, mỗi véc-tơ 𝒘𝒘𝑘𝑘 ∈ ℝ𝑈𝑈, 𝒉𝒉k ∈ ℝ𝐼𝐼 và 𝒒𝒒k ∈ ℝ𝑇𝑇 lần lượt mơ tả các véc-tơ nhân tố tiềm ẩn (latent factors) của user, item và time. Các tham số mơ hình cũng được tối ưu hĩa theo RMSE bằng cách sử dụng SGD (Stochastic gradient descent) (Koren, 2010). Một minh họa của TF được trình bày trong Hình 2.12.

Hình 2.12: Minh họa kỹ thuật phân rã TF 2.5.3.5. Một số phương pháp khác của hệ thống gợi ý 2.5.3.5. Một số phương pháp khác của hệ thống gợi ý

Ngồi các kỹ thuật trên, các nhà nghiên cứu thường dùng một số phương pháp phổ biến của hệ thống gợi ý để làm cơ sở (gọi là baselines) so sánh với các kỹ thuật khác của hệ thống gợi ý (Koren et al., 2009; Thai-Nghe et al., 2011; Gomez-Uribe and Hunt, 2015; Iqbal et al., 2017).

Gọi u là người dùng (user), i là mục tin (item) và r là feedback/phản hồi của user

u trên item i (ratings). Các phương pháp khác của hệ thống gợi ý được trình bày vắn tắt

như sau:

Global Average là phương pháp sinh ra dự đốn xếp hạng (𝑟𝑟̂𝑢𝑢𝑖𝑖) cho user u trên item i bằng cách lấy trung bình các xếp hạng trong tập dữ liệu huấn luyện. Phương pháp này biểu diễn bằng biểu thức 2.25:

𝑟𝑟�𝑢𝑢𝑖𝑖 = ∑𝑡𝑡 ∈ 𝐷𝐷𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡𝑟𝑟

|𝐷𝐷𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡| 2.25

User Average là phương pháp sinh ra dự đốn xếp hạng cho user u trên item i.

Phương pháp này biểu diễn bằng biểu thức 2.26:

Item Average là trung bình dự đốn xếp hạng cho user u trên item i. Phương pháp

này biểu diễn bằng biểu thức 2.27:

𝑟𝑟�𝑢𝑢𝑖𝑖 = |{(𝑢𝑢,∑𝑖𝑖′�𝑢𝑢,𝑖𝑖,𝑟𝑟 ′,𝑟𝑟 ∈ 𝐷𝐷∈ 𝐷𝐷𝑡𝑡𝑡𝑡𝑡𝑡𝑖𝑖𝑡𝑡𝑡𝑡𝑟𝑟𝑝𝑝𝑖𝑖𝑐𝑐 �|𝑖𝑖 )|𝑖𝑖′=𝑖𝑖|′ =𝑟𝑟 𝑖𝑖|}| 2.27

User kNN sinh ra dự đốn xếp hạng bằng biểu thức 2.28:

𝑟𝑟�𝑢𝑢𝑖𝑖 = 𝑟𝑟�𝑢𝑢+∑𝑢𝑢′∈ 𝐾𝐾𝑢𝑢𝑠𝑠𝑖𝑖𝑚𝑚(𝑢𝑢,𝑢𝑢′). (𝑟𝑟𝑢𝑢′𝑖𝑖− 𝑟𝑟̅𝑢𝑢)

∑𝑢𝑢′∈ 𝐾𝐾𝑢𝑢|𝑠𝑠𝑖𝑖𝑚𝑚(𝑢𝑢,𝑢𝑢′) 2.28

Trong đĩ, Ku là k láng giềng gần nhất của người dùng u; sim (u,u’) là độ tương đồng cosine giữa hai người dùng và được tính bằng biểu thức 2.29:

𝑠𝑠𝑖𝑖𝑚𝑚𝑐𝑐𝑐𝑐𝑠𝑠𝑖𝑖𝑐𝑐𝑡𝑡(𝑢𝑢,𝑢𝑢′) = ∑𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′𝑟𝑟𝑢𝑢𝑖𝑖.𝑟𝑟𝑢𝑢′𝑖𝑖

�∑ 𝑟𝑟𝑢𝑢𝑖𝑖2

𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′ .�∑𝑖𝑖∈𝐼𝐼𝑢𝑢𝑢𝑢′𝑟𝑟𝑢𝑢2′𝑖𝑖 2.29 Trong đĩ, rui và ru’i là đánh giá của người dùng u và u’ trên tài nguyên học tập i

tương ứng; Iuu' là tập các tài nguyên học tập được đánh giá bởi người dùng u và u'.

2.5.3.6. Các kỹ thuật học sâu

Kỹ thuật học sâu (deep learning) là một phần của machine learning. Tuy nhiên, sự khác biệt giữa hai kỹ thuật này là trong khi machine learning giải quyết vấn đề dạng nơng truyền thống, cịn deep learning cho phép máy tính giải quyết một loạt các vấn đề phức tạp hơn, khĩ cĩ thể giải quyết được bằng kỹ thuật machine learning (Shetty et al., 2020). Một vấn đề khác là dữ liệu cĩ kích thước rất lớn, sự đa dạng của dữ liệu cần được huấn luyện với kỹ thuật tiên tiến hơn, vì thế mạng nơ-ron sâu là lựa chọn phù hợp. Mạng nơ-ron là các mơ hình tốn học cĩ cấu trúc được lấy ý tưởng từ bộ não con người. Mỗi nơ-ron trong mạng nơ-ron là một hàm tốn học lấy dữ liệu đầu vào và biến đổi thành dạng dễ điều chỉnh hơn và sau đĩ cho ra dự đốn ở đầu ra. Một điểm đặc biệt của các mơ hình deep learning là cĩ thể tự học kinh nghiệm của chính mình, với cách tiếp cận giải quyết vấn đề nhiều lần và tự điều chỉnh để cải thiện kết quả.

Dựa vào các nghiên cứu đang tồn tại cĩ thể chia các mơ hình gợi ý dựa trên các kỹ thuật học sâu thành hai loại như mơ tả ở Hình 2.13.

Hệ thống gợi ý với khối hợp nhất nơ-ron (Neural Building Blocks) gồm các kỹ thuật sâu như CNN (Convolutional Neural Network), MLP (Multilayer Perceptron), RNN (Recurrent Neural Network),... Mỗi kỹ thuật học sâu xác định khả năng ứng dụng của mơ hình gợi ý riêng biệt. Chẳng hạn, MLP cĩ thể dễ dàng mơ hình hĩa tương tác phi tuyến tính giữa người dùng và các mục nội dung; CNN cĩ khả năng rút trích các biểu diễn cục bộ và tồn cục từ các nguồn dữ liệu khơng đồng nhất như thơng tin văn bản và hình ảnh; RNN cho phép hệ thống gợi ý mơ hình hĩa thời gian động... Hệ thống gợi ý với các mơ hình học sâu lai (Deep Hybrid Models) là những mơ hình gợi ý sử dụng nhiều hơn một kỹ thuật học sâu. Tính linh hoạt của các mạng lai sâu là cĩ thể kết hợp một số khối hợp nhất nơ-ron để hình thành mơ hình hybrid mạnh hơn.

Dưới đây là một số mạng học sâu được sử dụng phổ biến trong các hệ thống gợi ý cũng như các kỹ thuật phân loại dữ liệu.

a) Mạng nơ-ron tích chập CNN

Mạng nơ-ron tích chập CNN (Convolutional Neural Networks) là một loại mạng nơ-ron đã được chứng minh là rất hiệu quả trong các lĩnh vực như nhận dạng và phân loại, trong đĩ cĩ thể kể đến là phân loại hình ảnh, phân loại dữ liệu chuỗi thời gian... (IBM Cloud Education, 2020). Giống như các mạng nơ-ron khác, mạng CNN cũng bao gồm một tầng input, một tầng output và nhiều tầng ẩn (hidden layers) ở giữa. Các tầng quan trọng trong kiến trúc CNN bao gồm tầng tích chập (convolutional layer), tầng gộp (pooling layer), tầng kết nối đầy đủ (fully connected layer - FC). Tầng convolution và tầng pooling đơi khi gọi chung là khối tích chập và cĩ thể được điều chỉnh theo các siêu tham số (hyperparameters). Tầng tích chập nhận dữ liệu thơng qua các bộ lọc tích chập (convolutional filters) với các bộ lọc kích hoạt các đặc trưng (features) của dữ liệu. Hàm ReLU (Rectified linear unit) cho phép quá trình huấn luyện nhanh và hiệu quả hơn bằng cách biến đổi giá trị âm về 0 và duy trì các giá trị dương trước khi chuyển các đặc trưng được kích hoạt tới tầng tiếp theo.

Để mơ tả kỹ về mạng CNN, chúng ta lấy ví dụ về phân loại hình ảnh. Về mặt kỹ thuật, trong mơ hình học sâu CNN, dữ liệu đầu vào sẽ chuyển nĩ qua một loạt các tầng tích chập với các bộ lọc, sau đĩ đến tầng gộp, rồi tiếp theo là các tầng được kết nối đầy đủ và cuối cùng áp dụng hàm kích hoạt Softmax để phân loại một đối tượng dựa trên

Một phần của tài liệu Xây dựng mô hình tìm kiếm và gợi ý tài nguyên học tập (Trang 41 - 61)

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

(148 trang)