1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ Án Kì thứ 3

37 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Nghiên cứu và xây dựng hệ thống khuyến nghị thuốc dựa trên bệnh (triệu chứng bệnh)
Tác giả Nguyễn Quý Nhận
Người hướng dẫn TS. Phạm Minh Chuẩn, Nguyễn Văn Hậu
Trường học Trường Đại học Sư phạm Kỹ thuật Hưng Yên
Chuyên ngành Khoa học máy tính
Thể loại Đồ án
Năm xuất bản 2024
Thành phố Hưng Yên
Định dạng
Số trang 37
Dung lượng 1,28 MB

Cấu trúc

  • CHƯƠNG 1: TÌM HIỂU VỀ ĐỀ TÀI (10)
    • 1.1 Lý do chọn đề tài (10)
    • 1.2 Mục tiêu của đề tài (11)
    • 1.3 Giới hạn và phạm vi của đề tài (11)
      • 1.3.1 Đối tượng nghiên cứu (11)
      • 1.3.2 Phạm vi nghiên cứu (11)
    • 1.4 Nội dung thực hiện (11)
    • 1.5 Phương pháp tiếp cận (12)
  • CHƯƠNG 2: TÌM HIỂU CÁC KỸ THUẬT HỌC MÁY (13)
    • 2.1. Khái niệm khai phá dữ liệu và học máy (13)
      • 2.1.1. Khái niệm khai phá dữ liệu (13)
      • 2.1.2. Khái niệm học máy (14)
      • 2.1.3. Liên hệ giữa khai phá dữ liệu và học máy (14)
    • 2.2. Các kỹ thuật khai phá dữ liệu (15)
      • 2.2.1. Kỹ thuật tiền xử lý dữ liệu (15)
      • 2.2.2. Phân tích thống kê dữ liệu (16)
      • 2.2.3. Mô hình hóa dữ liệu (17)
    • 2.3. Các thuật toán học máy (18)
      • 2.3.1. Content-Based Filtering (18)
      • 2.3.2. Collaborative Filtering (19)
      • 2.3.3. Hybrid Models Recommendation System (21)
      • 2.3.4. Mô hình Navie Bayes (22)
      • 2.3.5. KNN (23)
      • 2.3.6. Decision Tree (24)
    • 2.4. Tổng kết chương (25)
    • 3.1. Thu thập dữ liẹu (27)
      • 3.1.1. Dữ liệu thu thập (27)
    • 3.2. Khai phá dữ liệu (27)
      • 3.2.1. Thông tin dữ liệu (27)
      • 3.2.2. Trực quan hóa dữ liệu (30)
    • 3.3. Xây dựng mô hình (33)
      • 3.3.1. Chuẩn bị dữ liệu (33)
      • 3.3.2. Mô hình LinearRegression (34)
      • 3.3.3 Mô hình Decision Tree (34)
      • 3.3.5. Mô hình Random forest (36)

Nội dung

chọn đề tài: “Áp dụng các kỹ thuật học máy để dự đoán giá của máy tính” nhằm ứngdụng những gì đã được học, góp phần làm căn cứ hỗ trợ cho những công ty, những cánhân tập thể có mục đích

TÌM HIỂU VỀ ĐỀ TÀI

Lý do chọn đề tài

Trong thời kỳ phát triển 4.0 hiện nay, chúng ta đang chứng kiến sự phát triển vượt bậc của của các ngành, lĩnh vực Đặc biệt là ngành khoa học công nghệ, một ngành phát triển cực kỳ nhanh chóng, sự phát triển của nó thay đổi theo hàng ngày hàng giờ Từ sự phát triển đó giúp ích rất nhiều trong công việc, trong đời sống tinh thần và và một số việc khác trong đời sống hàng ngày Và việc thế giới đang ngày càng số hóa và công nghiệp hóa thì máy tính đã trở thành một phần không thể thiếu trong cuộc sống Từ đó nhu cầu sử dụng máy tính của con người ngày tăng cao, nó đã tạo ra sự phát triển về sự ra đời của các công ty sản xuất máy tính Mỗi năm có hàng trăm ngàn công ty sản xuất máy tính được thành lập và có hàng triệu máy tính được sản xuất ra nhằm phục vụ cho nhu cầu của con người Nhu cầu tăng cao thì máy tính càng được sản xuất nhiều, từ đó xuất hiện nhiều mẫu mã nhiều giá cả khiến chúng ta phân vân không biết lựa chọn một máy tính sao cho phù hợp với mục đích sử dụng của chúng ta

Học máy đang nổi lên như một công cụ chủ chốt để giải quyết các vấn đề liên quan đến dữ liệu lớn Với sự phát triển của công nghệ, con người tạo ra ngày càng nhiều dữ liệu, dẫn đến khối lượng lớn và đa dạng Điều này gây ra thách thức trong việc phân loại, lựa chọn, khai thác và sử dụng dữ liệu Học máy là lĩnh vực nghiên cứu cách mô hình hóa bài toán cho phép máy tính tự hiểu, xử lý và học từ dữ liệu để thực hiện nhiệm vụ Nó cũng khám phá cách đánh giá để cải thiện hiệu suất Học máy được ứng dụng rộng rãi, giải quyết các vấn đề phức tạp và tạo ra các giải pháp mới cho tương lai.

Sau quãng thời gian học tập và chăm chỉ tại trường, em đã nhận được nhiều kiến thức quý giá từ thầy cô và bản thân em tích luỹ được Sự phát triển mạnh mẽ củaKhoa học máy tính đặc biệt những ứng dụng của học máy trong lĩnh vực chuẩn đoán giá cả máy tính trên thị trường đã khơi dậy cho em tò mò và khao khát áp dụng học máy vào cuộc sống hằng ngày Sau thời gian trao đổi và nhờ sự chỉ bảo tận tình của thầy Nguyễn Văn Hậu, người đã trực tiếp hướng dẫn đồ án 2 của em, em đã quyết định chọn đề tài: “Áp dụng các kỹ thuật học máy để dự đoán giá của máy tính” nhằm ứng dụng những gì đã được học, góp phần làm căn cứ hỗ trợ cho những công ty, những cá nhân tập thể có mục đích mua máy tính trở nên dễ dàng hơn.

Mục tiêu của đề tài

- Nghiên cứu và cài đặt một số mô hình phân lớp như Logistic Regression (Hồi quy tuyến tính), Support Vector Machine (Máy Vectơ hỗ trợ), Decision Trees (Cây quyết định).

- Thu thập và xử lý dữ liệu ở trên Kaggle

- Cài đặt một số mô hình Học Máy cho bài toán chẩn đoán giá máy tính và đánh giá hiệu quả của các mô hình này.

Giới hạn và phạm vi của đề tài

- Ứng dụng một số mô hình Học Máy hỗ trợ chẩn đoán giá cả của mỗi chiếc máy tính

- 3 mô hình Học Máy: Logistic Regression, Support Vector Machine, Decision Trees

Nội dung thực hiện

- Chương 1: Tìm hiểu về đề tài

+ Lý do chọn đề tài

+ Mục tiêu của đề tài

+ Giới hạn và phạm vi của đề tài

- Chương 2: Tìm hiểu các kỹ thuật học máy

+ Nghiên cứu một số kỹ thuật học máy được áp dụng trong bài toán

- Chương 3: Xây dựng mô hình học máy

+ Xây dựng mô hình học máy

+ Phân tích kết quả thực nghiệm

- Chương 4: Xây dựng ứng dụng khai phá dữ liệu

+ Xây dựng hệ thống để ứng dụng mô hình học máy đã xây dựng được vào thử nghiệm và kiểm thử hệ thống.

Phương pháp tiếp cận

- Tham khảo và lấy dữ liệu trên Kaggle

- Tham khảo thông tin trên các trang internet

TÌM HIỂU CÁC KỸ THUẬT HỌC MÁY

Khái niệm khai phá dữ liệu và học máy

2.1.1 Khái niệm khai phá dữ liệu

Khai phá dữ liệu (Data Mining) là một quá trình mạnh mẽ trong lĩnh vực khoa học dữ liệu và phân tích dữ liệu Nó là quá trình tự động hoá để khám phá thông tin ẩn, mẫu, kiến thức, và tri thức từ các tập dữ liệu lớn, đa dạng, và thường là phức tạp Mục tiêu chính của khai phá dữ liệu là biến dữ liệu thô thành thông tin giá trị và thậm chí là tri thức để hỗ trợ quyết định và dự đoán trong nhiều lĩnh vực, từ kinh doanh và khoa học đến chăm sóc sức khỏe và ngành công nghiệp

Khai phá dữ liệu đặc biệt hữu ích để xử lý dữ liệu lớn và phức tạp, những dữ liệu mà không thể dễ dàng hiểu bằng các phương pháp truyền thống Quá trình này thường sử dụng nhiều kỹ thuật và công cụ như học máy, thống kê, trí tuệ nhân tạo và cơ sở dữ liệu.

Một số ứng dụng thường thấy của khai phá dữ liệu bao gồm:

1 Dự đoán và phân tích dự đoán: Khai phá dữ liệu cho phép xây dựng các mô hình dự đoán dựa trên dữ liệu lịch sử Ví dụ, trong ngành tài chính, nó có thể được sử dụng để dự đoán giá cổ phiếu hoặc tình hình thị trường tài chính trong tương lai

2 Phân loại và gom cụm: Khai phá dữ liệu có khả năng phân loại các đối tượng vào các nhóm hoặc phân cụm dựa trên các đặc điểm chung Ví dụ, trong chăm sóc sức khỏe, nó có thể được sử dụng để phân loại bệnh nhân vào các nhóm rủi ro khác nhau

3 Phân tích mẫu và chuỗi sự kiện: Đặc biệt hữu ích cho các tập dữ liệu có tính chất chuỗi thời gian hoặc dạng đồ thị, khai phá dữ liệu có thể giúp xác định mẫu và chuỗi sự kiện đáng chú ý

4 Tối ưu hóa quy trình: Khai phá dữ liệu giúp cải thiện quy trình kinh doanh, ví dụ, tối ưu hóa quản lý tồn kho, lập lịch sản xuất, và quản lý chuỗi cung ứng

5 Tìm kiếm tri thức và bất thường: Nó có thể được sử dụng để tìm ra tri thức mới và xác định các điểm bất thường trong dữ liệu, giúp phát hiện vấn đề hoặc cơ hội quan trọng Khai phá dữ liệu không chỉ là một quá trình phức tạp mà còn là một quá trình đòi hỏi sự hiểu biết sâu rộng về dữ liệu, mô hình hóa, và các kỹ thuật liên quan Nó đóng vai trò quan trọng trong việc tạo ra giá trị từ dữ liệu và cung cấp cơ hội phân tích sâu hơn và định hướng cho nhiều ngành công nghiệp và lĩnh vực nghiên cứu

Học máy (Machine Learning) là một lĩnh vực của trí tuệ nhân tạo (AI) tập trung vào việc phát triển các thuật toán và mô hình có khả năng học từ dữ liệu và cung cấp các dự đoán và quyết định dựa trên học hỏi đó Điều đặc biệt về học máy là khả năng tự cập nhật và cải thiện hiệu suất sau mỗi lần huấn luyện.

Học máy chủ yếu được chia thành ba loại chính:

1 Học máy có giám sát (Supervised Learning): Trong loại này, mô hình được huấn luyện trên một tập dữ liệu đã được gán nhãn Nó học từ các cặp đầu vào- vào ra để tạo ra một bản đồ hàm từ đầu vào đến đầu ra Mục tiêu cuối cùng là học được một quy tắc tổng quát từ dữ liệu huấn luyện để có thể đưa ra dự đoán chính xác trên dữ liệu mới chưa từng thấy.

2 Học máy không giám sát (Unsupervised Learning): Ngược lại, trong học máy không giám sát, mô hình được huấn luyện trên dữ liệu không có nhãn Mục tiêu là tìm ra các mẫu, cấu trúc hoặc phân cụm tự nhiên trong dữ liệu mà không cần biết trước

3 Học máy bán giám sát (Semi-Supervised Learning): Loại này kết hợp cả hai phương pháp trên, sử dụng cả dữ liệu có nhãn và dữ liệu không có nhãn để huấn luyện mô hình

Học máy có ứng dụng rộng rãi trong nhiều lĩnh vực như nhận diện hình ảnh, xử lý ngôn ngữ tự nhiên, dự báo thị trường tài chính, y học, xe tự lái, và nhiều lĩnh vực khác Đặc biệt, việc sử dụng học máy để tạo ra các hệ thống gợi ý đã trở thành một ứng dụng phổ biến và hữu ích trong thế giới công nghệ ngày nay

2.1.3 Liên hệ giữa khai phá dữ liệu và học máy

Khai phá dữ liệu và học máy là hai khía cạnh quan trọng của quá trình trích xuất giá trị từ dữ liệu Mặc dù chúng có mục tiêu chung là tìm ra thông tin hữu ích từ dữ liệu, nhưng chúng tiếp cận mục tiêu này từ các góc độ khác nhau.

Khai phá dữ liệu tập trung vào việc tìm kiếm, phân tích, và rút ra thông tin ẩn từ các tập dữ liệu lớn và phức tạp Đây là quá trình phân loại, phân cụm, dự đoán và phát hiện mẫu trong dữ liệu Các kỹ thuật khai phá dữ liệu thường sử dụng thống kê, biểu đồ, và các phương pháp truyền thống khác để tìm ra cấu trúc và tri thức từ dữ liệu

Học máy, mặt khác, là một lĩnh vực của trí tuệ nhân tạo tập trung vào việc xây dựng mô hình và thuật toán có khả năng học hỏi từ dữ liệu Chúng ta huấn luyện mô hình học máy trên dữ liệu huấn luyện đã có nhãn và sau đó sử dụng mô hình đã học để dự đoán hoặc phân loại dữ liệu mới Học máy thường sử dụng các thuật toán như mạng nơ-ron, máy vector hỗ trợ (SVM), và cây quyết định để xây dựng mô hình

Các kỹ thuật khai phá dữ liệu

2.2.1 Kỹ thuật tiền xử lý dữ liệu

- Xử lý dữ liệu khuyết thiếu (Handling Missing Data): là quá trình đối phó với dữ liệu bị thiếu hoặc không đầy đủ trong tập dữ liệu Dữ liệu có thể bị thiếu vì nhiều lý do như lỗi trong quá trình thu thập, thông tin không được ghi lại, hoặc dữ liệu bị hỏng. Việc xử lý dữ liệu khuyết thiếu là một phần quan trọng trong quá trình tiền xử lý dữ liệu trước khi áp dụng các mô hình học máy hoặc thực hiện phân tích dữ liệu.

- Chuẩn hóa dữ liệu (Data Normalization): là quá trình biến đổi dữ liệu trong tập dữ liệu thành một định dạng cụ thể hoặc khoảng giá trị nhất định để tạo ra một phạm vi đồng nhất hoặc chuẩn hóa cho dữ liệu Mục tiêu chính của việc chuẩn hoá dữ liệu là đảm bảo rằng các biến số có trong tập dữ liệu có cùng phạm vi hoặc đơn vị đo lường, giúp tránh hiện tượng các biến có trọng số khác nhau hoặc ảnh hưởng quá mức trong quá trình phân tích dữ liệu hoặc xây dựng mô hình.

Loại bỏ nhiễu là quá trình giảm hoặc loại bỏ các yếu tố không mong muốn, gây nhiễu hoặc làm nhiễm dữ liệu Việc loại bỏ tiếng ồn cải thiện chất lượng và độ tin cậy của dữ liệu, giúp đảm bảo thông tin trích xuất hoặc sử dụng trong mô hình hóa và ra quyết định là chính xác.

2.2.2 Phân tích thống kê dữ liệu

Phân tích thống kê dữ liệu (Statistical Data Analysis) là quá trình áp dụng các phương pháp, công cụ và kỹ thuật thống kê để khám phá, tóm tắt, diễn giải và đưa ra những hiểu biết từ dữ liệu Mục tiêu chính của phân tích thống kê là biến dữ liệu thành thông tin hữu ích và giúp người dùng hiểu sâu hơn về tính chất, mối quan hệ và biểu đồ của dữ liệu Phân tích thống kê dữ liệu thường được áp dụng trong nhiều lĩnh vực, từ khoa học, kinh doanh, y học, xã hội học đến công nghệ và nhiều lĩnh vực khác.

Các hoạt động chính trong phân tích thống kê dữ liệu bao gồm:

1 Mô tả dữ liệu: Điều này bao gồm việc sử dụng các thống kê mô tả như trung bình, phương sai, phân phối tần số, biểu đồ dạng histogram, biểu đồ hộp (box plot), và biểu đồ phân tán để tóm tắt và biểu diễn dữ liệu một cách trực quan.

2 Kiểm định giả thuyết (Hypothesis Testing): Các kiểm định giả thuyết được sử dụng để kiểm tra các giả thuyết về dữ liệu Ví dụ, kiểm định t làm cho bạn có thể xác định xem có sự khác biệt ý nghĩa giữa hai nhóm dữ liệu hay không

3 Phân tích biểu đồ và biểu đồ: Sử dụng biểu đồ và biểu đồ thống kê như biểu đồ cột, biểu đồ đường, biểu đồ tròn, biểu đồ dạng scatter plot để hiểu mối quan hệ và xu hướng trong dữ liệu

4 Mô hình hóa và dự đoán: Sử dụng các mô hình thống kê như hồi quy tuyến tính, phân tích phương sai (ANOVA), và các mô hình học máy để dự đoán hoặc mô hình hóa dữ liệu

5 Phân tích thời gian chuỗi: Trong trường hợp dữ liệu là chuỗi thời gian, phân tích thống kê giúp xác định xu hướng, mùa vụ, và các biến đổi theo thời gian.

6 Phân tích đa biến và phân tích phân nhóm: Trong trường hợp có nhiều biến số hoặc nhóm dữ liệu, phân tích đa biến và phân tích phân nhóm giúp hiểu mối quan hệ và sự khác biệt giữa các biến số hoặc nhóm

Phân tích thống kê dữ liệu là một công cụ mạnh mẽ trong việc tạo ra kiến thức, dự đoán, và ra quyết định dựa trên dữ liệu, cung cấp cơ sở cho việc ra quyết định dựa trên bằng chứng số liệu và giúp chúng ta hiểu sâu hơn về thế giới xung quanh.

2.2.3 Mô hình hóa dữ liệu

Mô hình hóa dữ liệu (Data Modeling) là quá trình tạo ra một biểu đồ hoặc mô hình biểu diễn dữ liệu trong một hình thức cụ thể để hiểu, mô tả, hoặc dự đoán các mối quan hệ, mẫu, và thông tin bên trong dữ liệu

Mô hình hóa dữ liệu giúp biểu diễn dữ liệu một cách trực quan và thường được sử dụng để phân tích, đánh giá, và thậm chí dự đoán các biểu hiện trong dữ liệu Mô hình hóa dữ liệu có thể thực hiện trong nhiều lĩnh vực và có các dạng khác nhau, bao gồm:

1 Biểu đồ và biểu đồ thống kê: Đây là một hình thức phổ biến của mô hình hóa dữ liệu Biểu đồ và biểu đồ thường được sử dụng để trực quan hóa dữ liệu dưới dạng cột, đường, tròn, scatter plot, biểu đồ hộp (box plot), và nhiều loại biểu đồ khác Chúng giúp hiểu mối quan hệ giữa các biến số và biểu diễn mẫu dữ liệu

2 Mô hình hóa thống kê: Sử dụng các mô hình thống kê như mô hình hồi quy tuyến tính, mô hình phân tích phương sai (ANOVA), và các mô hình khác để diễn giải và dự đoán dữ liệu Các mô hình này giúp xác định mối quan hệ thống kê giữa các biến số và có thể dự đoán giá trị dựa trên dữ liệu đầu vào

Các thuật toán học máy

Content-Based Filtering là một thuật toán trong lĩnh vực Học Máy, được sử dụng trong hệ thống gợi ý để đề xuất các mục (sản phẩm, nội dung) cho người dùng dựa trên sự tương quan giữa nội dung của mục và sở thích của người dùng Thuật toán này dựa trên việc tạo ra một biểu diễn số hóa của nội dung của các mục và sử dụng biểu diễn này để so sánh với hồ sơ (profile) của người dùng

Content-Based Filtering hoạt động như sau :

1 Biểu diễn nội dung: Đầu tiên, mỗi mục trong hệ thống phải được biểu diễn thành một tập hợp các đặc trưng (features) có thể đo lường được Ví dụ, trong hệ thống gợi ý phim, các đặc trưng có thể bao gồm thể loại, diễn viên, đạo diễn, năm sản xuất, và mô tả về nội dung

2 Xây dựng hồ sơ người dùng: Hệ thống sẽ tạo ra một hồ sơ cho mỗi người dùng dựa trên sở thích của họ Hồ sơ người dùng có thể được tạo ra thông qua việc thu thập thông tin về các mục mà người dùng đã tương tác hoặc đánh giá Ví dụ, nếu người dùng thích những bộ phim có thể tưởng tượng (fantasy) và có diễn viên A, thì hồ sơ của họ sẽ có trọng số cao cho các đặc trưng liên quan

3 Tính toán điểm tương quan: Để đề xuất các mục cho người dùng, hệ thống sẽ tính toán điểm tương quan giữa hồ sơ người dùng và các mục trong cơ sở dữ liệu dựa trên biểu diễn nội dung của mục và hồ sơ người dùng Các phương pháp tính toán tương quan có thể bao gồm sử dụng độ đo tương quan như Cosine Similarity hoặc Pearson Correlation

4 Lựa chọn và đề xuất mục: Các mục với điểm tương quan cao nhất với hồ sơ người dùng sẽ được đề xuất cho người dùng Thường thì chỉ có một số mục có điểm tương quan cao được đề xuất Ưu điểm của Content-Based Filtering bao gồm:

- Không yêu cầu lịch sử tương tác của người dùng, nó có thể hoạt động cho người dùng mới

- Có khả năng giới thiệu các mục mới dựa trên nội dung tương tự với những mục người dùng đã thích.

Hạn chế của Content-Based Filtering:

- Khả năng gợi ý bị hạn chế bởi dữ liệu đầu vào, và nó không thể đề xuất các mục ngoại trừ loại mục đã được người dùng thích trước đó

- Không thể xem xét sở thích mới hoặc đột ngột thay đổi sở thích của người dùng.

Lọc theo sở thích cộng tác (CF) là thuật toán được sử dụng trong các hệ thống gợi ý CF hoạt động bằng cách đề xuất những mục tương thích dựa trên tương tác với người dùng khác Nếu người dùng A có sở thích giống người dùng B trước đó, các mục mà người dùng B tương tác có thể phù hợp với người dùng A.

Collaborative Filtering thường được chia thành hai loại chính:

1 User-Based Collaborative Filtering (UBCF): Trong UBCF, các đề xuất mục cho một người dùng được tính toán dựa trên các người dùng tương tự với người dùng đó Điều này được thực hiện bằng cách so sánh sự tương tác và sở thích của người dùng hiện tại với các người dùng khác trong cơ sở dữ liệu và đề xuất các mục mà những người dùng tương tự đã thích

2 Item-Based Collaborative Filtering (IBCF): Trong IBCF, các đề xuất mục được tính toán bằng cách so sánh sự tương tứng của các mục với nhau Thuật toán này dựa trên giả định rằng nếu người dùng đã thích một mục, họ có thể thích các mục tương tự với nó IBCF sử dụng độ tương tự giữa các mục để đề xuất các mục có độ tương tự cao với những mục đã được người dùng thích

Cách làm việc của Collaborative Filtering thường bao gồm các bước sau:

1 Thu thập dữ liệu: Thu thập thông tin về sở thích và tương tác của người dùng với các mục (ví dụ: xem phim, mua hàng) hoặc thông tin về các mục (ví dụ: thể loại phim, mô tả sản phẩm)

2 Tạo ma trận tương tác: Xây dựng ma trận tương tác để biểu diễn mức độ tương tác của các người dùng với các mục Mỗi phần tử trong ma trận thể hiện mức độ tương tác (ví dụ: xem hay không xem) của người dùng với một mục cụ thể.

3 Tính toán độ tương tự: Sử dụng các phương pháp tính độ tương tự (ví dụ:Cosine Similarity) để đo độ giống nhau giữa các người dùng hoặc các mục

4 Dự đoán và đề xuất: Tính toán điểm số hoặc dự đoán cho các mục chưa được người dùng tương tác dựa trên độ tương tự với các người dùng hoặc mục đã tương tác Ưu điểm của Collaborative Filtering bao gồm:

- Khả năng gợi ý cho người dùng mới

- Khả năng tìm ra sở thích tiềm năng của người dùng

Hạn chế của Collaborative Filtering:

- Vấn đề lạm dụng (sparsity) của dữ liệu

- Khó khảo sát (cold start problem) cho người dùng mới.

Hệ thống gợi ý Hybrid (Hybrid Recommendation System) là một loại hệ thống gợi ý kết hợp nhiều phương pháp và thuật toán khác nhau để cung cấp đề xuất mục tốt hơn cho người dùng Hybrid Recommendation Systems kết hợp các phương pháp gợi ý khác nhau, chẳng hạn như Collaborative Filtering, Content-Based Filtering, và các kỹ thuật khác, để tận dụng ưu điểm của từng phương pháp và giảm điểm yếu

Có hai loại chính của Hybrid Recommendation Systems:

1 Model-Based Hybrid Systems: Trong loại này, các mô hình từ các phương pháp gợi ý riêng biệt được xây dựng và sau đó kết hợp để tạo ra một mô hình kết hợp.

Tổng kết chương

Mô hình Naive Bayes (NB) được tập trung trong bài toán này vì có nhiều ưu điểm phù hợp với tính chất của bài toán gợi ý cây trồng NB là một thuật toán dựa trên xác suất và phân loại dựa trên giả định về độc lập giữa các đặc trưng Điều này có nghĩa rằng

NB có khả năng xử lý dữ liệu có nhiều đặc trưng và không yêu cầu nhiều sự điều chỉnh khi bổ sung dữ liệu mới.

Khả năng lý giải của mô hình NB cũng đối với những người không chuyên về

Để đảm bảo tính hiệu quả của mô hình Naive Bayes (NB) trong dự án "Gợi ý cây trồng", cần cân nhắc kỹ lưỡng quá trình tiền xử lý dữ liệu và lựa chọn kỹ thuật phù hợp để tăng độ chính xác của mô hình Ngoài ra, có thể xem xét sử dụng các biến thể của NB, chẳng hạn như Multinomial Naive Bayes hoặc Bernoulli Naive Bayes, để phù hợp với đặc điểm của dữ liệu cụ thể Bởi vì NB giả định sự độc lập mạnh mẽ giữa các đặc điểm, do đó có thể không phù hợp với tất cả các loại dữ liệu.

CHƯƠNG 3: XÂY DỰNG MÔ HÌNH HỌC MÁY CHO BÀI TOÁN

DỰ ĐOÁN GIÁ CỦA MÁY TÍNH XÁCH TAY

Thu thập dữ liẹu

-Giới thiệu về tập dữ liệu

Trong thời đại chuyển số hiện nay, mọi thứ đều phát triển nhanh do nhu cầu của con người.Trong đó, máy tính cũng là một thứ được sử dụng rất nhiều và từ đó rất nhiều hãng máy tính cùng các loại máy được phát triển và sản xuất ra Nhưng chúng khi quá nhiều chúng ta không biết lựa chọn sao cho phù hợp với hoàn cảnh và tính chất công việc của mình Từ đây, tôi có một bộ dữ liệu cho phép người dùng xây dựng mô hình dự đoán để có thể có cho mình sự lựa chọn phù hợp nhất với nhu cầu cũng như mục đích của mình.

Bộ dữ liệu bao gồm các thông số quan trọng về máy tính

Khai phá dữ liệu

- TypeName : Kiểu, thuộc tính nhóm tên máy tính

- Ram : Thông số ram của máy

- Price : Gía của máy tính

- TouchScreen : Màn hình cảm ứng

- Ppi : Số điểm ảnh hiển thị trên màn hình

- Cpu_brand : Bộ xử lý trung tâm xử lý của máy

- HDD : Ổ cứng HHD của máy

- SSD : Ổ cứng SSD của máy

- Gpu_brand : Cạc đồ họa của máy

- Os : Là phần mềm chuyên quản lý, ứng dụng của máy tính

- Dữ liệu được lấy trên Kagle

Hình 1: Tổng quan về data Để hiểu Dữ liệu, tác giả luận văn sử dụng một số hàm trong thư viện Sklearn của Python

- Xem cấu trúc Dữ liệu: Sử dụng hàm duLieu.info() và duLieu.describe():

Hình 2: Các thuộc tính kiểu dữ liệu

Hình 3: Tổng Quan về dữ liệu

-Kiểm tra dữ liệu có bị rỗng hay không

Hình 4: Kiểm tra dữ liệu rỗng

-Kiểm tra xem dữ liệu có bị trùng lặp không

Hình 5: Kiểm tra dữ liệu bị trùng lặp

-Xóa đi dữ liệu bị trùng lặp

Hình 6: Xóa đi dữ liệu bị trùng lặp 3.2.2 Trực quan hóa dữ liệu

- Trực quan về 1 số cột trong bảng đữ liệu

- Phân tích và xử lý cột “Company”

Hình 7: Dữ liệu cột “Company”

Trên biểu đồ trên, ta có thể thấy hầu hết mọi người có xu hướng sử dụng các loại máy tính của Dell, Asus, Lenovo, HP, Acer hay MSI và Toshiba.

- Phân tích cột “Cpu_brand” với cột “Price”

Ta có thể thấy rằng các đời cpu càng cao thì giá sẽ cao hơn, nhưng các giá của các đời không chênh lệch nhau quá lớn

- Số lượng các đời cpu được dùng

Các đời i7 hay i5 được chuộng dùng rất nhiều do sự phát triển không ngừng của công nghệ Bên cạnh đó, các chip cpu khác vẫn được sử dụng mặc dù độ phổ biến không cao bằng cpu i7 và i5.

RAM và Giá có mối tương quan dương mạnh mẽ, nghĩa là RAM cao hơn có liên quan đến giá cao hơn.

Trọng lượng có mối tương quan dương yếu với Giá, cho thấy máy tính xách tay nặng hơn có thể có giá cao hơn một chút.

Màn hình cảm ứng, IPS và PPI có mối tương quan dương với Giá, cho thấy tính năng hiển thị tốt hơn có liên quan đến giá cao hơn.

SSD có mối tương quan tích cực mạnh mẽ với Giá, cho thấy dung lượng lưu trữ SSD lớn hơn có liên quan đến giá cao hơn. Ổ cứng HDD có mối tương quan nghịch yếu với Giá, ngụ ý rằng dung lượng ổ cứng lớn hơn có thể dẫn đến giá thấp hơn một chút.

Xây dựng mô hình

- Chia tập train và test

- Kết quả của mô hình

- Test mô hình Ở đây ta thấy thuật toán bị overfitting, vì vậy tôi sẽ cố gắng tìm siêu tham số tốt nhất bằng GridSearchCV

- Cuối cùng sau khi xử lý kết quả thu được đã cải thiện hơn

Ta thấy mô hình này cũng bị overfitting, vì vậy ta cần xử lý để mô hình đạt kết quả tốt hơn

Ngày đăng: 29/08/2024, 15:24

HÌNH ẢNH LIÊN QUAN

Hình 1: Tổng quan về data - Đồ Án Kì thứ 3
Hình 1 Tổng quan về data (Trang 28)
Hình 2: Các thuộc tính kiểu dữ liệu - Đồ Án Kì thứ 3
Hình 2 Các thuộc tính kiểu dữ liệu (Trang 28)
Hình 3: Tổng Quan về dữ liệu - Đồ Án Kì thứ 3
Hình 3 Tổng Quan về dữ liệu (Trang 29)
Hình 6: Xóa đi dữ liệu bị trùng lặp 3.2.2. Trực quan hóa dữ liệu - Đồ Án Kì thứ 3
Hình 6 Xóa đi dữ liệu bị trùng lặp 3.2.2. Trực quan hóa dữ liệu (Trang 30)
Hình 7: Dữ liệu cột “Company” - Đồ Án Kì thứ 3
Hình 7 Dữ liệu cột “Company” (Trang 31)
w