Xây Dựng Hệ Thống Gợi Ý Sử Dụng Phương Pháp Lai Và Tích Hợp Nền Tảng Odoo

Đồ án nghiên cứu tốt nghiệp công nghệ thông tin xây dựng hệ thống gợi ý sử dụng phương pháp lai và tích hợp nền tảng, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

khóa luận tốt nghiệp

2024

95
1
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CẢM ƠN

ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP

1. PHẦN 1: MỞ ĐẦU

1.1. Tính cấp thiết của đề tài

1.2. Mục đích của đề tài

1.3. Cách tiếp cận và phương pháp nghiên cứu

1.3.1. Đối tượng nghiên cứu

1.3.2. Phạm vi nghiên cứu

1.4. Phân tích những công trình có liên quan

1.5. Kết quả dự kiến đạt được

2. PHẦN 2: NỘI DUNG

2. CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG GỢI Ý

2.1. Các kỹ thuật chính trong hệ thống gợi ý

2.1.1. Content based filtering

2.1.2. Collaborative filtering (CF) Techniques

2.1.2.1. Memory Based Collaborative Filtering (Neighbourhood Based)
2.1.2.2. Model Based Collaborative Filtering

2.1.3. Feature Combination Recommendation System

2.1.4. Feature Augmentation Recommendation System

2.1.5. Cascade hybrid recommendation system (CARS)

2.1.6. Phương pháp đánh giá

2.1.6.1. Phương pháp sử dụng
2.1.6.2. Dữ liệu sử dụng đánh giá

3. CHƯƠNG 2: TRIỂN KHAI VÀ ĐÁNH GIÁ MÔ HÌNH GỢI Ý BẰNG PHƯƠNG PHÁP LAI (HYBRID RECOMMENDER SYSTEMS)

3.1. Content KNN và User Based CF

3.1.1. Phương pháp Weighted

3.1.2. Phương pháp Switching

3.2. Content KNN và Item Based CF

3.2.1. Phương pháp Weighted

3.2.2. Phương pháp Switching

3.3. Content KNN và SVD Untuned

3.3.1. Phương pháp Weighted

3.3.2. Phương pháp Switching

3.4. Content KNN và SVD Tuned

3.4.1. Phương pháp Weighted

3.4.2. Phương pháp Switching

3.5. Content KNN và Neural

3.5.1. Phương pháp Weighted

3.5.2. Phương pháp Switching

3.6. SVD Untuned và SVD Tuned

3.6.1. Phương pháp Weighted

3.6.2. Phương pháp Switching

3.7. User Based CF và SVD Tuned

3.7.1. Phương pháp Weighted

3.7.2. Phương pháp Switching

3.8. Item Based CF và SVD Tuned

3.8.1. Phương pháp Weighted

3.8.2. Phương pháp Switching

3.9. Neural và SVD Tuned

3.9.1. Phương pháp Weighted

3.9.2. Phương pháp Switching

3.10. Dữ liệu thực nghiệm

3.11. Môi trường thực nghiệm

3.11.1. Thư viện sử dụng

3.11.2. Cấu hình máy thực nghiệm

3.12. Mô hình thực nghiệm

3.12.1. User Based CF và Item Based CF

3.12.2. SVD Tuned và SVD Untuned

3.13. Kết quả thực nghiệm

3.13.1. Độ chính xác các mô hình đơn lẻ

3.14. Độ chính xác các mô hình kết hợp (hybrid)

3.14.1. Phương pháp Weighted

3.14.2. Phương pháp Switching

3.15. Đánh giá kết quả thực nghiệm

3.16. So sánh phương pháp Weighted và Switching

4. CHƯƠNG 3: TRIỂN KHAI TÍCH HỢP HỆ THỐNG GỢI Ý VÀO HỆ THỐNG ERP ODOO

4.1. Giới thiệu thương mại điện tử

4.2. Cấu trúc tổng quan

4.3. Giao diện website dành cho người dùng

4.4. Giao diện website dành cho quản trị hệ thống

4.5. Giao diện dashboard dành cho quản trị hệ thống

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng Quan Về Hệ Thống Gợi Ý Trên Nền Tảng Odoo

Hệ thống gợi ý là một công cụ quan trọng trong việc cải thiện trải nghiệm người dùng. Trên nền tảng Odoo, việc xây dựng hệ thống gợi ý hiệu quả không chỉ giúp tăng cường sự hài lòng của khách hàng mà còn tối ưu hóa quy trình kinh doanh. Hệ thống này sử dụng các thuật toán phức tạp để phân tích dữ liệu và đưa ra các gợi ý phù hợp với nhu cầu của người dùng.

1.1. Khái Niệm Về Hệ Thống Gợi Ý

Hệ thống gợi ý là một công nghệ sử dụng dữ liệu để dự đoán sở thích của người dùng. Nó có thể được chia thành hai loại chính: lọc cộng tác và lọc theo nội dung. Mỗi loại có những ưu điểm và nhược điểm riêng, nhưng sự kết hợp giữa chúng thường mang lại hiệu quả cao hơn.

1.2. Lợi Ích Của Hệ Thống Gợi Ý Trong Odoo

Việc tích hợp hệ thống gợi ý vào Odoo giúp doanh nghiệp cải thiện khả năng phục vụ khách hàng. Nó không chỉ tăng cường trải nghiệm người dùng mà còn giúp doanh nghiệp tối ưu hóa quy trình bán hàng và marketing.

II. Thách Thức Trong Việc Xây Dựng Hệ Thống Gợi Ý Hiệu Quả

Mặc dù có nhiều lợi ích, việc xây dựng hệ thống gợi ý hiệu quả trên nền tảng Odoo cũng gặp phải nhiều thách thức. Các vấn đề như dữ liệu không đầy đủ, độ chính xác của thuật toán và khả năng mở rộng là những yếu tố cần được xem xét kỹ lưỡng.

2.1. Dữ Liệu Không Đầy Đủ

Một trong những thách thức lớn nhất là việc thu thập dữ liệu đầy đủ và chính xác. Dữ liệu không đầy đủ có thể dẫn đến những gợi ý không chính xác, ảnh hưởng đến trải nghiệm người dùng.

2.2. Độ Chính Xác Của Thuật Toán

Độ chính xác của các thuật toán gợi ý là yếu tố quyết định đến hiệu quả của hệ thống. Cần phải thường xuyên kiểm tra và điều chỉnh các thuật toán để đảm bảo chúng hoạt động hiệu quả.

III. Phương Pháp Xây Dựng Hệ Thống Gợi Ý Trên Odoo

Để xây dựng hệ thống gợi ý hiệu quả trên Odoo, cần áp dụng các phương pháp hiện đại như lọc cộng tác, lọc theo nội dung và các phương pháp lai. Những phương pháp này giúp tối ưu hóa trải nghiệm người dùng và tăng cường khả năng gợi ý.

3.1. Lọc Cộng Tác

Lọc cộng tác dựa trên hành vi của người dùng khác để đưa ra gợi ý. Phương pháp này rất hiệu quả trong việc phát hiện các sở thích tiềm ẩn của người dùng.

3.2. Lọc Theo Nội Dung

Lọc theo nội dung tập trung vào việc phân tích các đặc điểm của sản phẩm để đưa ra gợi ý. Phương pháp này giúp người dùng tìm kiếm các sản phẩm tương tự dựa trên sở thích cá nhân.

IV. Ứng Dụng Thực Tiễn Của Hệ Thống Gợi Ý Trong Odoo

Hệ thống gợi ý có thể được áp dụng trong nhiều lĩnh vực khác nhau như thương mại điện tử, dịch vụ khách hàng và quản lý nội dung. Việc áp dụng này không chỉ giúp cải thiện trải nghiệm người dùng mà còn tăng cường hiệu quả kinh doanh.

4.1. Thương Mại Điện Tử

Trong thương mại điện tử, hệ thống gợi ý giúp người dùng tìm kiếm sản phẩm dễ dàng hơn. Nó có thể tăng tỷ lệ chuyển đổi và doanh thu cho doanh nghiệp.

4.2. Dịch Vụ Khách Hàng

Hệ thống gợi ý cũng có thể được sử dụng để cải thiện dịch vụ khách hàng. Nó giúp nhân viên hỗ trợ khách hàng đưa ra các gợi ý phù hợp, nâng cao sự hài lòng của khách hàng.

V. Kết Luận Về Tương Lai Của Hệ Thống Gợi Ý Trên Nền Tảng Odoo

Tương lai của hệ thống gợi ý trên nền tảng Odoo rất hứa hẹn. Với sự phát triển của công nghệ và dữ liệu lớn, khả năng gợi ý sẽ ngày càng chính xác và hiệu quả hơn. Doanh nghiệp cần tiếp tục đầu tư vào công nghệ này để duy trì lợi thế cạnh tranh.

5.1. Xu Hướng Phát Triển

Xu hướng phát triển của hệ thống gợi ý sẽ tập trung vào việc sử dụng trí tuệ nhân tạo và machine learning để cải thiện độ chính xác và khả năng cá nhân hóa.

5.2. Tầm Quan Trọng Của Dữ Liệu

Dữ liệu sẽ tiếp tục đóng vai trò quan trọng trong việc phát triển hệ thống gợi ý. Doanh nghiệp cần chú trọng đến việc thu thập và phân tích dữ liệu để tối ưu hóa hệ thống.

10/07/2025
Đồ án tốt nghiệp công nghệ thông tin xây dựng hệ thống gợi ý sử dụng phương pháp lai và tích hợp nền tảng odoo

Trích đoạn nội dung tài liệu

CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG GỢI Ý 1.1 Giới thiệu Hệ thống đề xuất (Recommender Systems - RS) là một tập hợp công cụ và phần mềm được thiết kế để cung cấp đề xuất về các mặt hàng (items) cho người dùng (users). Các đề xuất này có liên quan đến nhiều quyết định khác nhau, ví dụ như quyết định mua sắm, lựa chọn âm nhạc, hoặc đọc tin tức trực tuyến. Hình thức này được ứng dụng rộng rãi trong nhiều lĩnh vực, từ YouTube giới thiệu video, Shopee và Tiki giới thiệu sản phẩm liên quan, đến Netflix đề xuất phim theo sở thích, và Facebook giới thiệu bạn bè và sản phẩm quảng cáo. Các đề xuất có thể được cá nhân hóa hoặc không cá nhân hóa.

Đối với các đề xuất cá nhân hóa, chúng thường được hiển thị dưới dạng danh sách xếp hạng dựa trên sở thích và ràng buộc cá nhân của người dùng. Để thực hiện điều này, hệ thống thu thập thông tin về sở thích của người dùng, có thể dựa trên hành động trước đó hoặc thông tin rõ ràng mà người dùng cung cấp. Sự phát triển của hệ thống đề xuất bắt đầu từ quan sát rằng con người thường dựa vào đề xuất từ người khác khi đưa ra quyết định hàng ngày. Để mô phỏng hành vi này, các hệ thống đề xuất đã sử dụng thuật toán để tận dụng đề xuất của cộng đồng người dùng và tạo ra đề xuất cho người dùng đang hoạt động.

RS đã chứng minh giá trị của mình trong việc giải quyết vấn đề quá tải thông tin trên web và trong các dịch vụ kinh doanh điện tử. Chúng giúp người dùng tìm kiếm và khám phá mặt hàng mới, giảm thiểu rủi ro quyết định sai lầm. Đồng thời, RS có khả năng cá nhân hóa đề xuất theo nhu cầu và ngữ cảnh cụ thể của người dùng, tạo ra một trải nghiệm tìm kiếm độc đáo và hữu ích.2 Lợi ích Hệ thống gợi ý (Recommender System) đã trở thành một phần không thể thiếu trong cuộc sống hiện đại, đem lại nhiều lợi ích quan trọng cho cả người dùng và doanh nghiệp. Bằng cách cải thiện trải nghiệm người dùng thông qua việc đưa ra các đề xuất thú vị và phù hợp, hệ thống tạo ra sự tương tác tích cực giữa người và máy tính.

Việc 4 này không chỉ tăng cường đánh giá và hài lòng từ người dùng mà còn thúc đẩy sự sử dụng hệ thống và chấp nhận các đề xuất. Hệ thống gợi ý cũng đóng góp vào việc tối ưu hóa doanh thu thông qua chiến lược up-sale và cross-sale. Bằng cách nhận biết sở thích và hành vi mua sắm của người dùng, hệ thống đề xuất những sản phẩm cao cấp hơn, tăng cơ hội up-sale và làm tăng giá trị đơn hàng. Đồng thời, sự phân tích liên quan giữa các sản phẩm giúp đề xuất cross-sale, cung cấp trải nghiệm mua sắm toàn diện và tăng giá trị đơn hàng.

Hệ thống gợi ý không chỉ chuyển đổi khách hàng tiềm năng thành khách hàng thực sự bằng cách cung cấp trải nghiệm mua sắm cá nhân hóa và khuyến mãi đặc biệt, mà còn xây dựng mối quan hệ liên tục qua tương tác tích cực. Cuối cùng, bằng cách thu thập dữ liệu về hành vi mua sắm và sở thích của người dùng, hệ thống hỗ trợ business intelligence, giúp doanh nghiệp hiểu rõ hơn về khách hàng, thị trường, từ đó đưa ra quyết định chiến lược thông minh. Tóm lại, hệ thống gợi ý là một công cụ mạnh mẽ, không chỉ tối ưu hóa trải nghiệm mua sắm mà còn góp phần vào sự phát triển và thành công của doanh nghiệp trong nền kinh tế số ngày nay.3 Các kỹ thuật chính trong hệ thống gợi ý Hệ thống gợi ý gồm 3 phương pháp chính: Lọc theo nội dung (content-based recommenders), lọc cộng tác (collaborative filtering recommender) và phương pháp kết hợp (hybrid recommenders).Với mỗi phương pháp có nhiều dạng cơ bản được mô tả chi tiết theo sơ đồ dưới đây [2].1 Sơ đồ biểu diễn các thuật toán chính trong hệ thống gợi ý 1.1 Content based filtering Content-based filtering là một phương pháp quan trọng trong Recommendation System. Content-based filtering tập trung vào tính toán similarity (sự tương đồng) dựa trên dữ liệu của sản phẩm.

Mục tiêu chính của phương pháp nảy là đề xuất các sản phẩm có sự tương đồng cao với những sản phẩm mà người dùng đã thích trước đó [4]. Để thực hiện Content-based filtering, người ta thường áp dụng phương pháp Text Vectorization.1 Text Vectorization Text vectorization là quá trình chuyển đổi văn bản thành các vector số, giúp cho việc xử lý và phân tích văn bản trở nên dễ dàng hơn trong các ứng dụng Text Processing, Text Mining và Natural Language Processing [4]. Hai phương pháp phổ biến để biểu diễn văn bản dưới dạng vector là Count Vector và TF-IDF Count Vector: Bước 1: Tạo ma trận từ tài liệu • Mỗi từ duy nhất trong tập dữ liệu được đại diện bởi một cột. • Mỗi tài liệu trong tập dữ liệu được đại diện bởi một hàng.

6 Bước 2: Điền tần suất xuất hiện của từ • Các ô trong ma trận được điền bởi số lần từ xuất hiện trong tài liệu tương ứng TF-IDF: TF-IDF thực hiện quá trình chuẩn hóa trên tần suất của các từ cả trong văn bản của chúng và trong toàn bộ tập dữ liệu, tức là trong dữ liệu mà chúng ta tập trung vào. Nói cách khác, nó tạo ra một tiêu chuẩn tổng quát cho các vector từ mà chúng ta sẽ tạo ra, xem xét ma trận văn bản - từ, toàn bộ tập dữ liệu, tất cả các tài liệu và tần suất của các từ. Điều này loại bỏ một số sự thiên lệch có thể xảy ra do Count Vector [4]. Bước 1: Tính toán Count Vector Bước 2: Tính toán TF (Term Frequency) 𝑡ầ𝑛 𝑠𝑢ấ𝑡 𝑥𝑢ấ𝑡 ℎ𝑖ệ𝑛 𝑐ủ𝑎 𝑡ừ 𝑡𝑟𝑜𝑛𝑔 𝑣ă𝑛 𝑏ả𝑛 𝑇𝐹 = 𝑡ổ𝑛𝑔 𝑠ố 𝑡ừ 𝑡𝑟𝑜𝑛𝑔 𝑣ă𝑛 𝑏ả𝑛 Bước 3: Tính toán IDF (Inverse Document Frequency) 𝑡ổ𝑛𝑔 𝑠ố 𝑣ă𝑛 𝑏ả𝑛 𝐼𝐷𝐹 = 𝑙𝑜𝑔( ) 𝑠ố 𝑙ượ𝑛𝑔 𝑡à𝑖 𝑙𝑖ệ𝑢 𝑐ℎứ𝑎 𝑡ừ Nếu một từ t có tần suất quan sát cao trong toàn bộ tập dữ liệu, điều này có nghĩa rằng từ tương ứng này ảnh hưởng đến toàn bộ tập dữ liệu.

Trong trường hợp này, tiến hành một quá trình chuẩn hóa đối với tần suất xuất hiện cả bên trong các từ và trong toàn bộ tập dữ liệu. Bước 4: Tính toán TF*IDF Ví dụ TF-IDF: Tạo ma trận Count-Vector phim hành động kịch tính Phim hành động 1 1 1 0 0 Hành động kịch tính 0 1 1 1 1 Phim kịch tính 1 0 0 1 1 7 Tính TF (Term Frequency) phim hành động kịch tính Phim hành động 0.333 0 0 Hành động kịch tính 0 0.25 Phim kịch tính 0.333 Tính IDF (Inverse Document Frequency): ! • Số tài liệu chứa từ “phim”=2 ® IDF(“phim”) = log " ≈ 0.1760 ! • Số tài liệu chứa từ “hành”=2 ® IDF(“phim”) = log " ≈ 0.1760 ! • Số tài liệu chứa từ “động”=2 ® IDF(“phim”) = log " ≈ 0.1760 ! • Số tài liệu chứa từ “kịch”=2 ® IDF(“phim”) = log " ≈ 0.1760 ! • Số tài liệu chứa từ “tính”=2 ® IDF(“phim”) = log " ≈ 0.1760 Tính TF-IDF=TF*IDF phim hành động kịch tính Phim hành động 0.059 0 0 Hành động kịch tính 0 0.044 Phim kịch tính 0.2 Calculate Similarities Giả sử chúng ta có m bộ phim và n từ duy nhất trong mô tả của những bộ phim này. Trước khi chúng ta tìm sự tương đồng dựa trên nội dung của các bộ phim này thông qua lập trình, hãy xem cách chúng ta có thể thực hiện điều đó một cách thực tế: Chúng ta có thể sử dụng Euclidean Distance hoặc cosine similarity để tìm sự tương đồng của các bộ phim đã được biểu diễn dưới dạng vector. Euclidean Distance: 8 Bằng cách tính toán Euclidean Distance, chúng ta có thể tìm giá trị khoảng cách giữa hai bộ phim, biểu thị sự tương đồng giữa chúng.

Quan sát cho thấy rằng khi khoảng cách giảm, tương đồng tăng lên. Bằng cách này, quá trình đề xuất có thể được thực hiện [4]. $ 𝑑(𝑝, 𝑞) = RS(𝑞# − 𝑝# )" #%& Cosine Similarity: 𝐴∙𝐵 ∑$#%& 𝐴# 𝐵# 𝑠𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦 = 𝑐𝑜𝑠(𝜃) = = [|𝐴|[ [|𝐵|[ ^∑$#%& 𝐴# " ^∑$#%& 𝐵# " Trong khi Euclidean Distance biểu thi cho khoảng cách, thì khái niệm về tương đồng xuất hiện trong Cosine Similarity. Distance-closeness và similarity-dissimilarity tương ứng với các khái niệm giống nhau trong trường hợp này.

Trong loại dựa trên bộ nhớ, chúng ta có thể nhìn nhận qua hai thuật toán quan trọng là user- based và item-based. Trong khi đó, hướng tiếp cận dựa trên mô hình được đại diện bởi thuật toán matrix factorization.2 Sơ đồ biểu diễn các thuật toán lọc cộng tác 9 1.1 Memory Based Collaborative Filtering (Neighbourhood Based) 1.1 Lọc cộng tác dựa trên user (User Based CF) User Based Collaborative Filtering (CF) là một phương pháp được ứng dụng để dự đoán các mục (items) mà người dùng (user) có thể quan tâm dựa trên xếp hạng (ratings) được cung cấp cho mục đó bởi các người dùng khác có sở thích tương tự [2].3 Hình mô tả chung về ý tưởng thuật toán User based Các bước chính của phương pháp lọc cộng tác dựa trên người dùng (User Based Collaborative Filtering) bao gồm: Bước 1: Tính độ tương đồng (similarity) giữa các users: Xác định độ tương đồng giữa các cặp users, sử dụng các phương pháp như Pearson Correlation hoặc Cosine Similarity. Điều này đo lường mức độ giống nhau trong hành vi xếp hạng của họ. Độ tương đồng giữa hai user u và user 𝑢, có thể được tính theo hai phương pháp Pearson và Cosine như sau [2]: 𝛴#./!!, (𝑟0,# )" 10 Trong đó: • 𝑟0# và 𝑟0,# là giá trị đánh giá tương ứng của user u và user u’ với item i.

• 𝐼00, là tập hợp các items được cả user u và user u’ đánh giá (rated). • 𝑟0 là giá trị đánh giá trung bình trên tất cả các items của user u. • r0, là giá trị đánh giá trung bình trên tất cả các items của user u’. Bước 2: Chọn các user lân cận.

Dựa vào độ tương đồng, chọn ra một số lượng users lân cận nhất định với mỗi user. Bước 3: Dự đoán đánh giá còn thiếu (missing rating) của một item. Sử dụng xếp hạng đã biết của các users lân cận để dự đoán xếp hạng (rating) còn thiếu cho một item mà user chưa đánh giá. Dự đoán xếp hạng (rating) của user u cho item i được tính bằng công thức sau: 𝛴0,.2! |𝑠𝑖𝑚(𝑢, 𝑢, )| Trong đó: • 𝑠𝑖𝑚(𝑢, 𝑢, ) là độ tương đồng của user u và 𝑢,.

• 𝐾0 là số lượng users có độ tương đồng gần với user u(k láng giềng của u). Bước 4: Xây dựng ma trận dự đoán: Kết hợp các dự đoán đã được tính toán để tạo ra một ma trận dự đoán hoặc một vector xếp hạng dự đoán cho tất cả các item còn thiếu.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ