GIẢI PHÁP XÂY DỰNG HỆ THỐNG GỢI Ý BÀI BÁO KHOA HỌC BẰNG PHƯƠNG PHÁP TẬP HỢP CÁC MÔ HÌNH PHÂN RÃ MA TRẬN

12 301 0
GIẢI PHÁP XÂY DỰNG HỆ THỐNG GỢI Ý BÀI BÁO KHOA HỌC BẰNG PHƯƠNG PHÁP TẬP HỢP CÁC MÔ HÌNH PHÂN RÃ MA TRẬN

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

GIẢI PHÁP XÂY DỰNG HỆ THỐNG GỢI Ý BÀI BÁO KHOA HỌC BẰNG PHƯƠNG PHÁP TẬP HỢP CÁC MÔ HÌNH PHÂN RÃ MA TRẬN Sử Kim Anh, Nguyễn Thái Nghe Trường Đại học Cần Thơ Khu 2, Đường 3/2, TP Cần Thơ skanh@ctu.edu.vn, ntnghe@cit.ctu.edu.vn TÓM TẮT— Hệ thống gợi ý ứng dụng để gợi ý mục tin (items) cho người dùng cách dựa vào liệu hành vi khứ người dùng để dự đoán mục tin tương lai mà họ thích Trong nghiên cứu này, đề xuất giải pháp xây dựng hệ thống gợi ý báo khoa học nhằm gợi ý cho bạn đọc báo hệ thống dự đoán phù hợp với sở thích lĩnh vực nghiên cứu họ Để xây dựng hệ thống, trước hết đề xuất phương pháp thu thập thông tin phản hồi (feedbacks) từ người dùng, sau đề xuất sử dụng phương pháp tập hợp mô hình phân rã ma trận để dự đoán phản hồi Do báo khoa học phù hợp cho số đối tượng định lĩnh vực (chuyên ngành) nên đề xuất áp dụng phương pháp gợi ý lọc theo ngữ cảnh đầu kết dự đoán từ gợi ý top-N báo phù hợp Sau xây dựng xong mô hình gợi ý, bước việc phân tích, thiết kế cài đặt hệ thống quản lý báo đồng thời tích hợp giải thuật xây dựng vào hệ thống Khi có hệ thống hoàn chỉnh, thu thập ý kiến phản hồi từ người dùng thực để đánh giá hiệu Kết cho thấy khả gợi ý phù hợp cho người dùng đạt độ tin cậy 80% Hệ thống thử nghiệm liệu thực lấy từ hệ thống quản lý báo trường Đại học Cần Thơ Từ khóa— Phân rã ma trận, hệ thống gợi ý, hệ thống quản lý báo, gợi ý báo khoa học I GIỚI THIỆU Hiện nay, bên cạnh công tác giảng dạy nghiên cứu khoa học hai nhiệm vụ quan trọng trường đại học Hoạt động nghiên cứu khoa học tất yếu trước xu phát triển ngày sâu rộng tất lĩnh vực giới Do đó, để đảm bảo chất lượng đào tạo vấn đề nghiên cứu khoa học phải đầu tư xuyên suốt, song hành với trình đào tạo mình, mà công trình khoa học trường không ngừng tăng lên Với lượng ngày tăng, việc tìm kiếm tốn thời gian việc tự động gợi ý báo thật đáp ứng yêu cầu nghiên cứu tìm kiếm thông tin cán sinh viên đồng thời phù hợp với chuyên ngành, trình độ, lĩnh vực nghiên cứu người sử dụng vấn đề có ý nghĩa cần thiết Bên cạnh đó, Hệ thống gợi ý phát triển ứng dụng mạnh mẽ [1][2] Ở Việt Nam, lĩnh vực tương đối tầm quan trọng phát triển tăng mạnh năm gần đặc biệt lĩnh vực thương mại Hệ thống gợi ý sản phẩm [9], lĩnh vực giáo dục Hệ thống gợi ý môn học [8], lĩnh vực giải trí hệ thống gợi ý phim ảnh [10]… Tuy vậy, việc ứng dụng hệ thống gợi ý lĩnh vực nghiên cứu khoa học, đặc biệt hỗ trợ công tác tìm kiếm, gợi ý nguồn tài nguyên học tập, gợi ý tài liệu hay cụ thể gợi ý báo khoa học chưa khai thác tốt Trong viết này, đề xuất giải pháp “Xây dựng hệ thống quản lý báo khoa học tích hợp hệ gợi ý” nhằm xây dựng hệ thống, tích hợp hệ gợi ý để tối ưu hóa việc hiển thị nội dung báo phù hợp với đối tượng người đọc II HỆ THỐNG GỢI Ý Hệ thống gợi ý (Recommender Systems - RS) dạng hệ thống lọc thông tin (information filtering), sử dụng để dự đoán sở thích (preference) hay xếp hạng (rating) mà người dùng dành cho mục thông tin (item) mà họ chưa xem xét tới khứ (item báo, phim, đoạn video clip, sách, ) [11] nhằm gợi ý mục thông tin “có thể quan tâm” người dùng Hệ thống gợi ý đưa gợi ý dựa trình thu thập, xử lý phân tích liệu từ người dùng Dữ liệu chia làm loại tường minh (explicit) cách yêu cầu người dùng phản hồi trực tiếp tiềm ẩn (implicit) cách tự động suy luận dựa tương tác người dùng với hệ thống như: số lần nhấp chuột, thời gian quan sát Trong hầu hết trường hợp, toán gợi ý coi toán dự đoán việc xếp hạng (rating) sản phẩm (phim, sản phẩm tiêu dùng, sách, nhạc…) chưa người dùng biết đến Việc dự đoán thường dựa đánh giá có người dùng người dùng khác Ví dụ, báo dự đoán có xếp hạng cao dùng để gợi ý Có nhiều ứng dụng tiếng hệ thống gợi ý như: gợi ý sản phẩm Amazon Ebay, hệ thống gợi ý phim NetFlix Youtube, Hệ thống gợi ý chứng minh ý nghĩa to lớn: giúp cho người sử dụng trực tuyến đối phó với tình trạng tải thông tin Hệ thống gợi ý trở thành công cụ mạnh mẽ phổ biến thương mại điện tử Mục đích hệ thống gợi ý dựa vào hành vi từ thói quen, nhu cầu khứ người sử dụng để dự đoán sở thích tương lai họ Một cách hình thức, gọi U tập tất người dùng I tập tất mục tin gợi ý máy tính, sách, phim ảnh, báo Trường hợp I tập báo, lên đến hàng trăm, hàng nghìn chí hàng triệu báo số ứng dụng Tương tự vậy, tập người dùng U lớn lên đến hàng triệu trường hợp Để dự đoán xếp hạng (hay nói cách khác đo tính hữu ích) báo ứng với người dùng người ta đưa hàm tiện ích rˆ : UxI R R tập thứ tự toàn phần (ví dụ số nguyên dương số thực tập xác định) Với người dùng u Є U, chọn mục (item) i’Є I cho hàm tiện ích người dùng lớn (1) Tập users U (u ∈ U ; |U| = n), tập items I (i ∈ I; | I | = m), rui ∈ R xếp hạng user u cho item i Trong hệ thống gợi ý, tính tiện ích mục tin (item) thường biểu thị mức độ quan tâm người dùng tới mặt hàng cụ thể thông qua trọng số; ví dụ An đánh giá báo Số có trọng số 4/5 bảng Bảng Item User An Bình Chi Lan Một ví dụ ma trận trọng số (đánh giá) hệ gợi ý Bài báo ∅ Bài báo ∅ Bài báo 5 Bài báo 4 ∅ Ký hiệu ∅ nghĩa người dùng không xếp hạng cho báo tương ứng Vì thế, hệ thống gợi ý đánh giá (dự đoán) trọng số báo không xếp hạng tổ hợp người dùng để từ đưa gợi ý thích hợp dựa dự đoán Khi trọng số đánh giá, trọng số lớn thường lựa chọn để gợi ý cho người dùng theo công thức (1) Chúng ta gợi ý N báo tốt cho một tập người dùng a Các nhóm kỹ thuật hệ thống gợi ý Có nhiều giải thuật hệ thống gợi ý, nhiên gom lại thành nhóm [1][2]: (i) Gợi ý dựa cộng tác: người dùng gợi ý báo ưa chuộng xuất phát từ người có thị hiếu sở thích với (ii) Gợi ý dựa nội dung: người dùng gợi ý báo tương tự với báo người dùng ưa thích trước (iii) Gợi ý dựa cách tiếp cận kết hợp: kết hợp hai phương pháp tiếp cận dựa nội dung cộng tác Hệ thống gợi ý dựa lọc cộng tác (Collaborative filtering - CF) thường sử dụng Chúng dựa vào hành vi khứ người dùng, ví dụ như: lịch sử giao dịch, đánh giá sản phẩm, thời gian xem mục tin… đặc biệt không cần thiết phải tạo hồ sơ tường minh (explicit feedback) cho người dùng Để gợi ý mục tin, hệ thống CF cần so sánh đối tượng khác mục tin (items) người dùng (users) Với tiếp cận lọc cộng tác có nhiều phương pháp sử dụng để mô hình như: neighborhood-based latent factor models [3] Đặc biệt với tiếp cận mô hình nhân tố tiềm ẩn phương pháp phân rã ma trận state-of-the-art hệ thống gợi ý Hầu hết tiếp cận chung CF dựa mô hình láng giềng (Neighborhood Models), mô hình user-user (user-based CF) [8] Bên cạnh đó, tiếp cận [6] dựa độ tương tự phần tử (item-based CF) với quy mô tập liệu lớn đưa đề xuất chất lượng cao thời gian thực Mô hình nhân tố tiềm ẩn có dạng tương tự phương pháp phân tích giá trị đơn (Singular Value Decomposition), chuyển đổi mục tin người dùng vào không gian tiềm ẩn nhân tố, điều làm chúng có khả so sánh trực tiếp Bên cạnh đó, nhờ vào khả biểu diễn so sánh khía cạnh liệu khác nhau, tiếp cận có xu hướng cung cấp kết dự đoán cao mô hình láng giềng [3] Tuy nhiên hầu hết hệ thống thương mại (Amazon, Tivo,…) sử dụng mô hình láng giềng Sự phổ biến mô hình phần nhờ vào tính dễ cài đặt dễ hiểu Trong hệ thống gợi ý báo sử dụng hai giải thuật hệ gợi ý Matrix Factorization (MF) Biased Matrix Factorization (BMF) với nhân tố phản hồi tiềm ẩn số lần click item nhân tố phản hồi tường minh (rate) mức độ quan tâm người dùng đến báo Tích hợp thông tin dự đoán phương pháp tập hợp mô hình cho hai nhân tố b Kỹ thuật phân rã ma trận (Matrix Factorization- MF) Kỹ thuật MF state-of-the-art hệ thống gợi ý [1][3] Trong toán này, người dùng (giảng viên, sinh viên) xem user, báo khoa học item, người dùng đạt lần truy cập vào báo hay số bình chọn người dùng báo xem rating Minh họa Hình Hình Minh họa kỹ thuật phân rã ma trận UxI R R tập thứ tự toàn phần (ví dụ số nguyên dương số thực tập xác định) Với người dùng u Є U, chọn mục (item) i’Є I cho hàm tiện ích người dùng lớn (1) Tập users U (u ∈ U ; |U| = n), tập items I (i ∈ I; | I | = m), rui ∈ R xếp hạng user u cho item i Trong hệ thống gợi ý, tính tiện ích mục tin (item) thường biểu thị mức độ quan tâm người dùng tới mặt hàng cụ thể thông qua trọng số; ví dụ An đánh giá báo Số có trọng số 4/5 bảng Bảng Item User An Bình Chi Lan Một ví dụ ma trận trọng số (đánh giá) hệ gợi ý Bài báo ∅ Bài báo ∅ Bài báo 5 Bài báo 4 ∅ Ký hiệu ∅ nghĩa người dùng không xếp hạng cho báo tương ứng Vì thế, hệ thống gợi ý đánh giá (dự đoán) trọng số báo không xếp hạng tổ hợp người dùng để từ đưa gợi ý thích hợp dựa dự đoán Khi trọng số đánh giá, trọng số lớn thường lựa chọn để gợi ý cho người dùng theo công thức (1) Chúng ta gợi ý N báo tốt cho một tập người dùng a Các nhóm kỹ thuật hệ thống gợi ý Có nhiều giải thuật hệ thống gợi ý, nhiên gom lại thành nhóm [1][2]: (i) Gợi ý dựa cộng tác: người dùng gợi ý báo ưa chuộng xuất phát từ người có thị hiếu sở thích với (ii) Gợi ý dựa nội dung: người dùng gợi ý báo tương tự với báo người dùng ưa thích trước (iii) Gợi ý dựa cách tiếp cận kết hợp: kết hợp hai phương pháp tiếp cận dựa nội dung cộng tác Hệ thống gợi ý dựa lọc cộng tác (Collaborative filtering - CF) thường sử dụng Chúng dựa vào hành vi khứ người dùng, ví dụ như: lịch sử giao dịch, đánh giá sản phẩm, thời gian xem mục tin… đặc biệt không cần thiết phải tạo hồ sơ tường minh (explicit feedback) cho người dùng Để gợi ý mục tin, hệ thống CF cần so sánh đối tượng khác mục tin (items) người dùng (users) Với tiếp cận lọc cộng tác có nhiều phương pháp sử dụng để mô hình như: neighborhood-based latent factor models [3] Đặc biệt với tiếp cận mô hình nhân tố tiềm ẩn phương pháp phân rã ma trận state-of-the-art hệ thống gợi ý Hầu hết tiếp cận chung CF dựa mô hình láng giềng (Neighborhood Models), mô hình user-user (user-based CF) [8] Bên cạnh đó, tiếp cận [6] dựa độ tương tự phần tử (item-based CF) với quy mô tập liệu lớn đưa đề xuất chất lượng cao thời gian thực Mô hình nhân tố tiềm ẩn có dạng tương tự phương pháp phân tích giá trị đơn (Singular Value Decomposition), chuyển đổi mục tin người dùng vào không gian tiềm ẩn nhân tố, điều làm chúng có khả so sánh trực tiếp Bên cạnh đó, nhờ vào khả biểu diễn so sánh khía cạnh liệu khác nhau, tiếp cận có xu hướng cung cấp kết dự đoán cao mô hình láng giềng [3] Tuy nhiên hầu hết hệ thống thương mại (Amazon, Tivo,…) sử dụng mô hình láng giềng Sự phổ biến mô hình phần nhờ vào tính dễ cài đặt dễ hiểu Trong hệ thống gợi ý báo sử dụng hai giải thuật hệ gợi ý Matrix Factorization (MF) Biased Matrix Factorization (BMF) với nhân tố phản hồi tiềm ẩn số lần click item nhân tố phản hồi tường minh (rate) mức độ quan tâm người dùng đến báo Tích hợp thông tin dự đoán phương pháp tập hợp mô hình cho hai nhân tố b Kỹ thuật phân rã ma trận (Matrix Factorization- MF) Kỹ thuật MF state-of-the-art hệ thống gợi ý [1][3] Trong toán này, người dùng (giảng viên, sinh viên) xem user, báo khoa học item, người dùng đạt lần truy cập vào báo hay số bình chọn người dùng báo xem rating Minh họa Hình Hình Minh họa kỹ thuật phân rã ma trận Quá trình dự đoán: Sau trình huấn luyện ta ma trận W H tối ưu trình dự đoán (công thức 2) thực minh họa Hình Hình Minh họa cách dự đoán người dùng số cho báo c Kỹ thuật phân rã ma trận thiên vị (Biased Matrix Factorization - BMF) Dựa vào khái niệm sở giải thuật Matrix Factorization (MF) thêm giá trị lệch (bias) vào MF để giải thuật BMF [3] Để dự đoán báo người dùng u cho báo i biểu diễn với công thức sau: K rˆui = µ + bu + bi + ∑ wuk hik (13) k =1 Với giá trị µ giá trị trung bình toàn cục, lực trung bình tất người dùng tất báo với tập liệu huấn luyện µ=∑ (u, i, r ) ∈ D trainR (14) train D Giá trị bu độ lệch người dùng (là giá trị lệch trung bình so với giá trị trung bình toàn cục) ∑ (u′, i, r) ∈ D train bu = {(u′, i, r) ∈ D u′ = u(r − µ ) train } u′ = u (15) Giá trị bi độ lệch báo (là giá trị lệch trung bình báo so với giá trị trung bình toàn cục) bi = ∑ (u, i′, r) ∈ D train {(u, i′, r ) ∈ D i′ = i ( r − µ ) train } i′ = i (16) Quá trình dự đoán: Sau trình huấn luyện ta giá trị biases ma trận W H tối ưu, trình dự đoán thực tương tự MF, dùng công thức (13) III TẬP HỢP CÁC MÔ HÌNH PHÂN RÃ MA TRẬN TRONG XÂY DỰNG HỆ THỐNG GỢI Ý BÀI BÁO Trước tiên đề xuất phương pháp thu thập thông tin phản hồi từ người dung, sau đề xuất cài đặt mô hình tương ứng đánh giá mô hình trước tích hợp chúng vào hệ thống thực a Phương pháp thu thập thông tin phản hồi từ người dùng Hệ thống xây dựng dạng website cung cấp thông tin báo giúp người dùng chọn báo mà cần đến Khi người dùng truy cập vào hệ thống, tìm kiếm, xem tải báo máy Ngoài ra, hệ thống phân loại báo theo thể loại, nhằm mang đến tiện lợi cho người sử dụng cung cấp thông tin chi tiết báo như: tên báo, tác giả, tóm tắt… Với đặc điểm hệ thống gợi ý, hệ thống phải có chức thu thập phản hồi từ người dùng Thông thường hệ thống ghi nhận phản hồi người dùng hình thức ghi nhận giá trị xếp hạng cụ thể (thích (1) / không thích (0), từ đến 5) gọi phản hồi tường minh (explicit feedback) Tuy nhiên, với cách hệ thống thường khó ghi nhận nhiều phản hồi từ người dùng Vì người dùng phải tự thể phản hồi cách tường minh Điều bất tiện thường làm cho người dùng không thích Do đó, để tạo tiện lợi cho người dùng hệ thống thu thập nhiều phản hồi cách dễ dàng, hệ thống gợi ý báo này, đề xuất ghi nhận phản hồi người dùng dạng phản hồi tiềm ẩn (implicit feedback) Hệ thống tự động ghi nhận lại thông tin người dùng thông qua đăng ký tài khoản, giá trị phản hồi - trọng số xếp hạng ghi nhận số lần click vào báo người dùng lựa chọn báo truy xuất hay đăng nhập vào hệ thống Chức lưu trữ số lần chọn (click) xem báo hệ thống tự động cập nhật vào sở liệu đếm theo địa IP (IP address) người truy xuất Khi thực đăng nhập vào tài khoản, hệ thống so sánh IP address người dùng lưu trữ lại số liệu theo tài khoản người sử dụng sử dụng làm trọng số (rate) cho xếp hạng người sử dụng b Cài đặt giải thuật Sử dụng phương pháp stochastic gradient descent, cài đặt giải thuật MF BMF Hình Hình c Tích hợp mô hình dự đoán Trong hệ thống gợi ý truyền thống, người ta thường sử dụng thông tin phản hồi tường minh từ người dùng xếp hạng (từ đến 5) hay dựa thông tin tiềm ẩn (như số lần click chuột item) Trong hệ thống gợi ý báo này, đề xuất sử dụng phương pháp tập hợp mô hình (ensemble method) để tận dụng thông tin phản hồi tường minh tiềm ẩn nghiên cứu trước cho thấy phương pháp tập hợp mô hình cho độ xác cao phương pháp đơn lẽ [6] Cụ thể, hệ thống tích hợp giải thuật gợi ý MF1 (BMF1) để gợi ý báo phù hợp cho người dùng dựa vào phản hồi tiềm ẩn (click) MF2 (BMF2) dựa phản hồi tường minh (bình chọn theo mức độ quan tâm người dùng từ đến 5), kết dự đoán sau dùng phương pháp tập hợp mô hình (ví dụ, trung bình) hai kết dự đoán Cách tính mô tả sau: Gọi r1 kết dự đoán sử dụng phản hồi số lần mà người dùng click chuột báo, sử dụng mô hình MF1 K rˆ1 ui = ∑ w uk h1 ik (17) k =1 Gọi r2 kết dự đoán sử dụng phản hồi xếp hạng mà người dùng đánh giá báo, sử dụng mô hình MF2 K rˆ2 ui = ∑ w2 uk h2 ik (18) k =1 Kết dự đoán sau rˆui = ( r1ui + r2 ui ) (19) Ngoài ra, gợi đến người dùng, để tăng hợp lý độ xác hệ thống lưu ý đến việc xử lý ngữ cảnh đầu (contextual post-filtering [7]) lĩnh vực báo lĩnh vực nghiên cứu người dùng đồng thời xếp kết dự đoán theo thứ tự giảm dần nhằm giúp cho người dùng tìm báo mà cần cách nhanh chóng tiện ích Hình Giải thuật Phân rã ma trận (MF) Procedure BMF( Dtrain , K, β, λ, stopping-condition) Let u ∈ U be a user, i ∈ I a item, r ∈ R a rate [ ] Let W U [K ] , H µ ← [ I ][K ] , b [U ] , and b [ I ] u ∑ r∈Dtrain r D train for each user u ∑ i (rui − µ ) end for for each task i bu [u ] ← bi [I ] ← 10 11 i Dutrain ∑ u ( pui − µ ) Ditrain end for W ← Ν 0, σ Η ← Ν (0, σ ) while (Stopping criterion is NOT met) ( ) (u, i, rui ) from D train 12 Draw randomly 13 rˆui ← µ + bu [u ] + bi [i ] + ∑ k (W [u ][k ] ∗ H [i ][k ]) ; K eui = rui − rˆui ; 14 18 µ ← µ + β ∗ eui ; bu [u ] ← bu [u ] + β ∗ (eui − λ ∗ bu [u ]) ; bi [i ] ← bi [i] + β ∗ (eui − λ ∗ bi [i ]) ; 19 for 15 17 20 k ← 1, , K W [u ][k ] ← W [u ][k ] + β ∗ (2eui ∗ H [i ][k ] − λ ∗ W [u ][k ]) 21 H [i ][k ] ← H [i ][k ] + β ∗ (2eui ∗W [u ][k ] − λ ∗ H [i ][k ]) 22 end for 23 end while 24 return {W , H , bu , bi , µ} 25 end function Hình Giải thuật Phân rã ma trận thiên vị (BMF) d Độ đo dùng để đánh giá giải thuật Chúng sử dụng độ đo lỗi RMSE (Root Mean Squared Error) độ đo phổ biến mà cộng đồng người dùng lĩnh vực máy học (machine learning) thường sử dụng Mặc dù có nhiều phương pháp khác mà sử dụng để đánh giá giải thuật như: F-Meansure, Area Under the ROC curve(AUC),…nhưng phương pháp đánh giá thích hợp cho lĩnh vực cụ thể, F-Meansure AUC dùng truy tìm thông tin phân lớp Trong RMSE dùng dự đoán xếp hạng( Rating Prediction) MAE dùng dự đoán mục tin (Item Prediction) phù hợp với lĩnh vực đề tài RMSE MAE xác định công thức: RMSE = MAE = ∑ (rui − rˆui ) | D test | u, i, r∈D test ∑ (rui − rˆui ) | D test | u,i, r∈D test (20) (21) Trong đó: Dtest ⊆ U × I × R tập liệu kiểm thử; U: tập người dung (user); I: Tập báo (item); rui: giá trị thực tế; rˆ : giá trị dự đoán e Đánh giá giải thuật tập liệu chuẩn Để kiểm tra tính đắn việc cài đặt giải thuật, kiểm tra mô hình cách sử dụng tập liệu tạp chí khoa học Bisonomy để đánh giá giải thuật (www.bibsonomy.org) với khoảng 15.000 người dùng, khoảng 1.800.000 báo có triệu đánh giá Đây tập liệu dùng để đánh giá giải thuật gợi ý dùng cho tạp chí khoa học Trong trình đánh giá giải thuật, đề tài sử dụng khoảng 30000 đánh giá (dùng nghi thức 3-fold cross validation) tập liệu chia làm phần: lấy ngẫu nhiên 2/3 liệu dùng để huấn luyện (train) 1/3 lại dùng để kiểm tra (test) Sau đó, so sánh liệu dự đoán với liệu tập kiểm tra để đo độ lệch giải thuật Sau tìm siêu tham số, hệ thống tiếp tục tính độ tương tự tất người dùng 2/3 tập huấn luyện ban đầu, sử dụng siêu tham số vừa tìm để dự đoán đánh giá người dùng tiến hành so sánh liệu dự đoán với 1/3 tập liệu kiểm tra ban đầu để đo độ lệch giải thuật Kết thực nghiệm tập liệu thực tế trình bày Bảng (trong GlobalAVG dùng công thức (14)) Bảng Bảng độ lỗi RMSE Lần Lần Lần Trung bình BMF 1.0236 0.9413 0.9455 0.9701 MF 1.0441 0.9707 0.9084 0.9744 GlobalAVG 1.1112 1.0524 1.0509 1.0715 Bảng độ lỗi MAE Bảng Lần Lần Lần BMF 0.8049 0.7366 0.7381 0.7599 MF 0.8205 0.7603 0.7045 0.7618 GlobalAVG 1.1112 1.0524 1.0509 1.0715 IV Trung bình XÂY DỰNG HỆ THỐNG TÍCH HỢP GIẢI THUẬT Tương tự hệ thống thông tin quản lý khác, hệ thống phải phân tích, thiết kế mô hình, cài đặt triển khai hệ thống Phần quan trọng hệ thống tích hợp giải thuật gợi ý vào hệ thống Do giới hạn số trang viết, giới thiệu vài mô bên a Đặc tả hệ thống Hệ thống quản lý tạp chí khoa học cho phép cán sinh viên trường quản lý, tìm kiếm xem báo khoa mà họ cần Hệ thống hiển thị báo nội dung theo nhu cầu khách hàng quan tâm Hệ thống có chức cho khách hàng chấm điểm, đánh giá chất lượng báo Đặc biệt hệ thống gợi ý cho người dùng trình lựa chọn sử dụng kỹ thuật phân rã ma trận hiển thị báo tương tự mà họ xem, sử dụng thuộc tính chủ đề báo lĩnh vực người dùng Giảng viên sinh viên muốn thực chức thành viên hệ thống Sau đăng nhập vào hệ thống, người dùng hệ thống dựa vào thông tin chuyên ngành họ để tư vấn theo thông tin vừa thu thập Tuy nhiên, người dùng có chấm điểm cho báo, hệ thống gợi ý báo theo giải thuật đề xuất Ngoài ra, hệ thống cung cấp công cụ quản trị như: quản trị người dùng, quản trị thông tin báo, công cụ cho phép người quản trị xuất thông tin đánh giá người dùng báo để huấn luyện lại mô hình giải thuật chức kiểm tra hiệu hệ thống gợi ý báo b Sơ đồ trường hợp sử dụng người dùng Hình Sơ đồ use case người dùng c Sơ đồ thực thể kết hợp Hình Sơ đồ thực thể kết hợp hệ thống d Thiết kế hệ thống tích hợp giải thuật Hệ thống xây dựng Web với ngôn ngữ lập trình PHP kết hợp với hệ quản trị sở liệu MySQL theo mô hình MVC (Model-View-Controller) Thành phần Controller nhận liệu GET/POST, xử lý liệu này, sau chuyển sang Model xử lý Model trả liệu phía Controller, sau Controller sinh mã HTML/XHTML để thể View Mô hình tổng thể hệ thống mô tả thông qua hình: Hệ thống gợi ý Giải thuật: MF BMF User Web server Internet Dự đoán Gợi ý 1… 2… 3… CSDL Hình Mô hình tổng thể hệ thống V KẾT QUẢ MINH HỌA a Kết minh họa hệ thống Hệ thống phát triển môi trường web, dùng ngôn ngữ PHP hệ quản trị sở liệu MySQL Hệ thống triển khai địa chỉ: http://crd.ctu.edu.vn/journals/, trang chủ hệ thống minh họa Hình Hệ thống chia thành phần kết nối tương tác Giao diện người dùng Giao diện quản trị Tại giao diện trang chính: người dùng truy cập vào thông tin báo mức độ: tên báo, tác giả, lĩnh vực tóm tắt báo Khi người dùng click chọn hệ thống tự động lưu trữ số lần chọn, mã báo dựa vào địa IP người dùng Các báo hiển thị theo tiêu chí như: Bài báo xem (click) nhiều nhất; Bài báo hiển thị dựa vào giá trị dự đoán trung bình toàn cục; Bài báo hiển thị theo Năm, Theo Loại, Theo lĩnh vực theo Số Khi người dùng đăng ký/ đăng nhập vào hệ thống tự động lưu trữ số lần chọn người dùng vào sở liệu so sánh với địa IP Với tương tác người dùng thông qua giải thuật thấy kết dự đoán hệ thống dựa vào ngữ cảnh áp dụng lĩnh vực báo lĩnh vực người dùng Hình Trang chủ hệ thống Gợi ý báo cho người dùng Người dùng chấm điểm cho báo gửi góp ý (feedback) cho báo Hình Sau người dùng chấm điểm báo, hệ thống gợi ý số báo cho người dùng thông qua mô hình tích hợp minh họa Hình 10 Bên cạnh đó, hệ thống có thêm mục chức khác như: gợi ý TOP báo nhiều người xem, báo thể loại, lĩnh vực với báo xem Hình Giao diện đánh giá báo Hình 10 Giao diện gợi ý báo cho người dùng Huấn luyện lại mô hình Ở giao diện người quản trị: Các chức thông thường để quản trị hệ thống quản lý báo như: Quản lý báo, Quản lý người dùng, Quản lý số báo, Quản lý lĩnh vực báo, Tìm kiếm thông tin Hệ thống thống kê báo theo năm, theo lĩnh vực, theo rating người dùng Bên cạnh đó, hệ thống cho phép người quản trị huấn luyện lại mô hình sau thời gian sử dụng Người quản trị cung cấp công cụ để tìm siêu tham số cho giải thuật đánh giá giải thuật thông qua độ đo lỗi RMSE, MAE tính độ xác (precision) hệ thống b Đánh giá hiệu sử dụng gợi ý Sau tích hợp giải thuật gợi ý và xây dựng hoàn chỉnh hệ thống, tiến hành thu thập phản hồi từ người dùng thực để kiểm tra hiệu việc gợi ý Dữ liệu thu thập từ người dùng (Giảng viên ĐHCT) đánh giá khoảng 40 báo thuộc lĩnh vực: Công nghệ thông tin, Công nghệ, Môi trường Tự nhiên Dữ liệu thu thập khoảng 40 thành viên với khoảng 400 đánh giá báo theo mức độ từ đến (từ Rất quan tâm đến không quan tâm) 10 Tiếp theo, tiến hành đánh giá hiệu việc gợi ý xem có phù hợp cho người dùng hay không dựa theo hướng dẫn điều chỉnh từ tài liệu [4] Gợi ý xem phù hợp người dùng có chọn báo từ danh sách báo gợi ý cho họ Các bước thực sau: • Tạo tập liệu train test theo user Với user (người dùng) chọn 70% liệu cho train, 30% lại dùng vào tập test • Tiến hành huấn luyện mô hình tập liệu train vừa tạo • Dự đoán cho user tất item tập train • Lấy Top K (K=10) item có giá trị dự đoán cao để kiểm tra, so sánh giá trị với tập liệu test Với lần gợi ý Top K thế, item có tập test user tương ứng, xem lần gợi ý phù hợp • Lặp lại cho tất user chọn thử nghiệm Do hệ thống thu thập với khoảng 40 user, nên chọn ngẫu nhiên user để thử nghiệm tính hiệu Thử nghiệm lần chạy, với lần lấy Top 10 báo danh sách dự đoán để kiểm tra tập test, kết trình bày bảng bên Trong bảng này, cột người dùng, hàng kết thống kê số lượng gợi ý Top 10 có xuất tập test với mã báo cụ thể Ví dụ: lần kiểm tra thứ nhất, báo gợi ý cho user 25 có xuất tập test với mã báo 68 Như vậy, lần gợi ý này, user 25 có sản phẩm phù hợp (chính xác) với sở thích Lặp lại tương tự cho user khác Bảng kết thống kê sau dự đoán Bảng User 25 Số lần chạy Số tìm thấy 1 1 Tỉ lệ 80% Mã báo 68 68 68 68 User 31 Số tìm thấy User 44 68 Số tìm thấy 68,69 Mã báo Mã báo 81 User 36 Số tìm thấy User 40 Mã báo Số tìm thấy Mã báo 102 102,101 102 102 81 102 102 81 102 102,100 102,101 102,100 60% 100% 60% 68 100% Nhận xét: Độ xác kết gợi ý qua lần kiểm tra cao người dùng, trung bình cho người dùng chọn ngẫu nhiên 80% Người dùng đăng nhập có bình chọn tham gia nhiều độ xác hệ thống đạt giá trị cao VI KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Trong nghiên cứu này, đề xuất giải pháp xây dựng hệ thống quản lý báo khoa học có tích hợp hệ gợi ý nhằm gợi ý cho bạn đọc báo hệ thống dự đoán phù hợp với sở thích lĩnh vực nghiên cứu họ Sở thích người dùng báo dự đoán dựa kết hợp liệu lĩnh vực chuyên ngành người dùng xếp hạng người dùng báo khứ Sau trình dự đoán, đề xuất phương pháp xử lý ngữ cảnh đầu (contextual post-filtering, ví dụ lọc lại theo chuyên môn người dùng) nhằm hiển thị kết phù hợp cho đối tượng sử dụng Để xây dựng hệ thống, viết đề xuất phương pháp thu thập thông tin phản hồi từ người dùng, sau cài đặt kỹ thuật phân rã ma trận – áp dụng thành công nhiều ứng dụng gợi ý Tiếp theo, kiểm tra tính đắn giải thuật tập liệu chuẩn Kế đến việc phân tích, thiết kế cài đặt hệ thống quản lý báo đồng thời tích hợp giải thuật gợi ý vào hệ thống để gợi ý báo phù hợp cho người dùng Sau có hệ thống hoàn chỉnh, thu thập ý kiến phản hồi từ người dùng thực để đánh giá hiệu hệ thống Hệ thống thử nghiệm liệu thực lấy từ hệ thống quản lý báo trường Đại học Cần Thơ, kết cho thấy việc tích hợp hệ gợi ý vào hệ thống quản lý báo khoa học hoàn toàn khả thi TÀI LIỆU THAM KHẢO Li Chen, Guanliang Chen, and Feng Wang 2015 Recommender systems based on user reviews: the state of the art User Modeling and User-Adapted Interaction 25, (June 2015), 99-154 DOI=10.1007/s11257-015-9155-5 http://dx.doi.org/10.1007/s11257-015-9155-5 Francesco Ricci, Lior Rokach, Bracha Shapira, and Paul B Kantor 2010 Recommender Systems Handbook (1st ed.) Springer-Verlag New York, Inc., New York, NY, USA Yehuda Koren, Robert Bell, and Chris Volinsky 2009 Matrix Factorization Techniques for Recommender Systems Computer 42, (August 2009), 30-37 DOI=10.1109/MC.2009.263 11 Guy Shani and Asela Gunawardana Evaluating recommendation systems In Recommender Systems Handbook, pages 257–297 Springer, 2011 HERLOCKER J L., KONSTAN J A., BORCHERS A., ANDRIEDL J (1999), “An algorithmic framework for performing collaborative filtering” In Proceedings of the 22nd Annual International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR’99) ACM, New York, NY, 230–237 Thomas G Dietterich, Ensemble Methods in Machine Learning Lecture Notes in Computer Science Volume 1857, 2000, pp 1-15 Springer Gediminas Adomavicius, Alexander Tuzhilin Context-Aware Recommender Systems, Recommender Systems Handbook 2011, pp 217-253 Spinger Huỳnh Lý Thanh Nhàn, Nguyễn Thái Nghe (2013): Hệ thống dự đoán kết học tập gợi ý lựa chọn môn học Kỷ yếu hội thảo quốc gia lần thứ XVI: Một số vấn đề chọc lọc CNTT&TT (@2013), trang 110-118 Nhà xuất Khoa học kỹ thuật ISBN: 987-604-67-0251-1 Nguyễn Hùng Dũng, Nguyễn Thái Nghe (2014): Hệ thống gợi ý sản phẩm bán hàng trực tuyến sử dụng kỹ thuật lọc cộng tác Tạp chí Khoa học Trường Đại học Cần Thơ, số 31a (2014), trang 36-51 ISSN: 1859-2333 10 Triệu Vĩnh Viêm, Triệu Yến Yến, Nguyễn Thái Nghe (2013): Xây dựng hệ thống gợi ý phim dựa mô hình nhân tố láng giềng Số chuyên đề: Công nghệ Thông tin (2013): 170-179, Tạp chí Khoa học Trường Đại học Cần Thơ, ISSN: 1859-2333 11 Nguyen Thai-Nghe 2013 An introduction to factorization technique for building recommendation systems Vol 6/2013, pp 44-53, Journal of Science - University of Da Lat, ISSN 0866-787X AN APPROACH FOR BUILDING PAPER RECOMMENDATION SYSTEM USING ENSEMBLE OF MATRIX FACTORIZATION MODELS Sử Kim Anh, Nguyễn Thái Nghe TÓM TẮT— Recommender systems are used to recommend appropriate items to users based on their feedbacks in the past In this work, we propose an approach for building paper recommendation system using ensemble of matrix factorization models The system can recommend suitable papers to the users based on their implicit feedbacks in the past, e.g., the number of user clicks/downloads on the papers as well as explicit feedbacks, e.g., user rating Since each user has his/her own specialized/major knowledge, we also propose a post-filtering recommendation approach so that the recommended papers can meet the user major/knowledge For building the system, first, we propose methods for collecting the user feedbacks, then we propose using ensemble method which is a combination of matrix factorization models After building the system, we collect the feedbacks from the real users to re-evaluate the system Results show that the system can recommend the papers to the users at 80% of accuracy Từ khóa— Matrix factorization, recommender systems, paper recommendation, ensemble methods 12

Ngày đăng: 05/11/2016, 12:05

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan