Lớp Not Spam trước và sau Smoothing

Một phần của tài liệu Ứng dụng tóm tắt dữ liệu cho bài toán phân lớp và dự báo (Trang 43 - 48)

3 THỬ NGHIỆM VÀ ĐÁNH GIÁ

2.8 Lớp Not Spam trước và sau Smoothing

Vậy ta tính được: P(S|E4) α P(S) 7 Y i=1 P(wi|S) α 1 3 × 2 12 × 1 12 α 0.0046 P(N|E4) α P(N) 7 Y i=1 P(wi|N) α 2 3 × 2 17 × 2 17 α 0.0092

Vậy xác suất tương ứng sẽ là:

P(S|E4) = 0.0046

0.0046 + 0.0092 ≈0.334 P(N|E4) = 0.0092

0.0046 + 0.0092 ≈ 0.666 Do đó ta phân loại E4 là Not Spam (N).

Ta test lại kết quả vừa tính được bằng thư viện scikit-learn bằng đoạn code Python sau:

f r o m s k l e a r n . n a i v e _ b a y e s i m p o r t M u l t i n o m i a l N B i m p o r t n u m p y as np

# t r a i n data e1 = [1 , 2 , 1 , 0 , 1 , 0 , 0] e2 = [0 , 2 , 0 , 0 , 1 , 1 , 1] e3 = [1 , 0 , 1 , 1 , 0 , 2 , 0] t r a i n _ d a t a = np . a r r a y ([ e1 , e2 , e3 ]) l a b e l = np . a r r a y ([" N ", " N ", " S "]) # test data e4 = np . a r r a y ([[1 , 0 , 0 , 0 , 0 , 0 , 1]]) clf1 = M u l t i n o m i a l N B ( a l p h a =1) # t r a i n i n g clf1 . fit ( t r a i n _ d a t a , l a b e l ) # test p r i n t(" X á c su ấ t c ủ a E4 t r o n g m ỗ i l ớ p : ", clf1 . p r e d i c t _ p r o b a ( e4 ) ) p r i n t(" D ự đ o á n l ớ p E4 : ", s t r( clf1 . p r e d i c t ( e4 ) [0]) )

Chạy đoạn code trên thu được kết quả in ra màn hình trùng khớp với tính toán trước đó:

X á c su ấ t c ủ a E4 t r o n g m ỗ i l ớ p : [ [ 0 . 6 6 5 8 9 5 9 5 0 . 3 3 4 1 0 4 0 5 ] ] D ự đ o á n l ớ p E4 : N

2.5 Một số ưu điểm của phương pháp Naive Bayes

- Tính xác suất rõ ràng cho các giả định. - Kết hợp nhiều dự đoán của nhiều giả định.

- Các thuộc tính trong tập mẫu học phải độc lập với điều kiện.

- Độ chính xác thuật toán phân lớp phụ thuộc nhiều vào tập dữ liệu học ban đầu.

- Yêu cầu một lượng nhỏ dữ liệu đào tạo. Vì vậy việc đào tạo mất ít thời gian hơn.

- Xử lý dữ liệu liên tục và rời rạc và không nhạy cảm với các tính năng không liên quan.

- Rất đơn giản, nhanh chóng và dễ thực hiện.

- Có thể được sử dụng cho cả hai bài toán phân loại nhị phân và nhiều lớp.

- Khả năng mở rộng cao vì nó mở rộng tuyến tính với số lượng các tính năng và điểm dữ liệu dự đoán.

- Khi giả định về tính độc lập có điều kiện của Naive Bayes đúng, nó sẽ hội tụ nhanh hơn các mô hình phân biệt như hồi quy logistic.

- Giả định về các yếu tố/tính năng dự đoán độc lập. Naive Bayes mặc nhiên giả định rằng tất cả các thuộc tính là độc lập lẫn nhau mà hầu như không thể tìm thấy trong dữ liệu còn lại.

- Nếu một biến phân loại không có giá trị xuất hiện trong tập dữ liệu thử nghiệm và được quan sát trong tập dữ liệu huấn luyện, thì mô hình sẽ gán cho nó một xác suất bằng không và sẽ không thể đưa ra dự đoán. Đây là những gì chúng tôi gọi là "Vấn đề tần số không" và có thể được giải quyết bằng cách sử dụng các kỹ thuật làm mịn.

2.6 Kết luận Chương 2

Trong Chương 2, chúng tôi đã trình bày về việc phân loại dữ liệu và việc phân loại dữ liệu với mạng Bayesian. Đã trình bày các bước giải bài toán dự báo sử dụng kỹ thuật phân lớp NB để thực nghiệm trong Chương 3. Trình bày các mô hình thuật toán NB, đưa ra ví dụ mẫu với số lượng ít các bản ghi để mô tả dự đoán bằng kỹ thuật phân lớp. Cuối chương là một số ưu điểm của phương pháp phân lớp dữ liệu NB.

Chương 3

THỬ NGHIỆM VÀ ĐÁNH GIÁ

Ngày nay, nhờ tiến bộ của khoa học và công nghệ, lượng dữ liệu con người thu thập được là rất lớn và ở rất nhiều dạng khác nhau như: Dạng số, từ ngữ, hình ảnh, âm thanh,... Trong đó, kho dữ liệu số nhìn vào tưởng như không mang một ý nghĩa gì nhưng nó ẩn chứa nhiều thông tin hữu ích khác nhau trong đó có những thông tin khi được phân loại, tách lớp, tóm tắt từ đó có thể rút ra được những thông tin nhìn nhận, dự báo bổ ích, cần thiết cho công tác quản lí, công tác lãnh đạo, điều khiển tự động và ra quyết định. Chương này sẽ đi trình bày việc phân tích và cài đặt kỹ thuật phân lớp dữ liệu dựa trên mạng Bayesian như đã trình bày trong Chương 2 để đưa ra các dự báo của các dữ liệu số mà mắt thường chúng ta không nhìn thấy được.

Trong cuộc sống nói chung và trong giáo dục nói riêng để có được thành công cũng như kết quả học tập tốt cần một quá trình nỗ lực học tập, trau dồi theo thời gian. Đối với các em học sinh phổ thông, để có kết quả học tập đạt kết quả cao trong từng môn học thì đòi hỏi các em phải có được những điểm số cao nhất định trong mỗi bài kiểm tra đối với từng môn học. Để hỗ trợ cho học sinh và giáo viên bộ môn định hướng việc học tập của mình trong kỳ học hiện tại hoặc các kỳ học sau. Tôi xây dựng chương trình dự đoán kết quả học tập dựa trên dữ liệu thực tế là bảng điểm bộ môn đã có của một môn học tại trường phổ thông nơi tôi đang công tác. Dữ liệu thử nghiệm là sổ điểm lớn học kỳ 2 năm học 2020-2021 của 20

lớp học trường THPT Trần Cao Vân, Chư Sê, Gia Lai, với 829 học sinh (tương ứng là 829 bản ghi dữ liệu các loại điểm số của một môn học cụ thể).

3.1 Mô tả bài toán

3.1.1 Bài toán

Dự đoán kết quả học tập của một môn học của học sinh trên một học kỳ. Thông tin dữ liệu đầu vào là Điểm học tập trong học kỳ của học sinh gồm: Điểm miệng (M), kiểm tra thường xuyên (TX), kiểm tra giữa kỳ (GK) và điểm cuối kỳ (CK). Dự đoán kết quả cuối cùng của học sinh sẽ đạt được trong quá trình học tập.

Dữ liệu thu thập là 20 file excel dữ liệu lưu Sổ gọi tên và ghi điểm của 20 lớp học kỳ 2 năm học 2020-2021 của trường THPT Trần Cao Vân, Gia Lai.

Một phần của tài liệu Ứng dụng tóm tắt dữ liệu cho bài toán phân lớp và dự báo (Trang 43 - 48)

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

(62 trang)