Chào mừng đến với BIS Đăng nhập | Đăng ký | Trợ giúp
trong Tìm kiếm

Building a Classification Model with Weka

Bài cuối 07-31-2018 01:41 AM của TrinhDuy. 10 trả lời.
Trang 1 trong số 1 (11 nội dung)
Sắp xếp bài viết: Trước Tiếp theo
  • 11-10-2010 03:52 PM

    • chucnv
    • 10 thành viên năng nổ nhất
    • Tham gia 12-05-2008
    • Điểm 9,920

    Building a Classification Model with Weka

      Building a Classification Model with Weka

    Sử dụng Weka trong xây dựng mô hình phân lớp dữ liệu

    1. Tóm lược lý thuyết về phân lớp (Classification)

     Trong lĩnh vực máy học (machine Learning) và nhận dạng (pattern recognition), bài toán phân lớp (classification) đề cập đến các thuật toán (algorithms) nhằm xác định lớp (class) của đối tượng đã cho sẽ thuộc về lớp nào trong các lớp đã cho trước (Given Categories). Một điều cần chú ý là khác với bài toán phân cụm (clustering), dữ liệu dùng để xây dựng mô hình (Training Data) trong bài toán phân lớp phải được xác định lớp trước (pre-Labeled).

    Ví dụ, xác định một email thuộc “spam” hoặc “non-spam”, hay xác định loại bệnh của bệnh nhân dựa vào các triệu chứng của họ.

    Một thuật toán thực hiện việc phân lớp được gọi là bộ phân lớp (classifier). Hình sau mô tả qui trình xây dựng mô hình phân lớp các đối tượng.

     

    Qui trình Train và Test một classifier

    -        Dữ liệu để xây dựng mô hình: dữ liệu gốc (original dataset), dữ liệu này phải có thuộc tính phân lớp gọi là categorical attribute

    -        Dữ liệu gốc sẽ được chia thành 2 phần là Training Set (để xây dựng model) và Testing Set (để kiểm định Model)

    -        Cuối cùng là tính toán lỗi để đánh giá Model

     

     

     

    Cross Validation (CV) trong Training and Testing Phase

     Đây là kỹ thuật chủ yếu được sử dụng trong xây dựng predictive Model. Trong đó dữ liệu gốc sẽ được chia thành n phần bằng nhau (n-fold), và quá trình Train/Test Model thực hiện lặp lại n lần. Tại mỗi lần Train/Test Model, 1 phần dữ liệu dùng để Test và (n-1) phần còn lại dùng để Train.

    (Người ta đã chứng minh 10-fold Cross –Validation là tối ưu)

    Hình dưới đây mô tả CV với 3-fold.

    Hình dưới đây mô tả 10-fold Cross Validation của Iris Dataset.

    Iris dataset là bộ dữ liệu về hoa dung để kiểm tra các classification models.

    Iris Dataset gồm 150 samples (instances), thuộc 3 lớp (classes| categories) là setosa, vesicolor và virginica, mỗi lớp có 50 samples

    Cấu trúc của Iris dataset như sau:

    Attributes x Instances = 5 x150

    Number of classes : 3

    Distribution for each class : 50 (mỗi lớp có 50 instances)

    Số thuộc tính là 5, trong đó có 1 thuộc tính phân loại có tên class (categorical Attribute)

    Sepallength: Độ dài đài hoa

    Sepalwidth: Độ rộng đài hoa

    Petallength: Độ dài cánh hoa

    Petalwidth: Độ rộng cánh hoa

    Class: thuộc tính phân loại hoa (setosa, vesicolor và virginica)

    Xem và download Iris dataset và nhiều dataset khác theo link dưới đây

    http://archive.ics.uci.edu/ml/datasets/Iris

     

     

    2. Thực hiện bài toán phân lớp với Weka

    Phần này trình bày xây dựng mô hình phân lớp  với phần mềm Weka, trên bộ dữ liệu hoa Iris đã giới thiệu ở trên

     Download Weka tại đây http://www.cs.waikato.ac.nz/ml/weka/

     

     

    Chọn tab: Prerprocess để thực hiện các bước tiền xử lý trong data Mining như (Load data, Filter, …)

     Sau khi nộp dữ liệu, chọn Tab classify để chọn các mô hình phân loại. Ở đây ta sẽ sử dụng và so sánh hiệu quả của 2 mô hình phân lớp của cây quyết định (Decision tree) là J48 và SimpleCART và mô hình MultilayerPerceptron của mạng Neuron (Neural network)

     Chú ý: Việc lựa chọn thuật toán nào  để có một model tốt phụ thuộc rất nhiều yếu tố, trong đó cấu trúc của dataset có ý nghĩa quan trọng đến việc lựa chọn thuật toán. Ví dụ thuật toán cây hồi qui phân loại (CART – Classification And Regression Tree)  và J48 cho kết quả tốt trên các dữ liệu kiểu số (Numerical Data), trong khi đó thuật toán ID3 cho kết quả tốt đối với dữ liệu định danh (nominal Data).

     

    (P.S. Next Topic: Building a Predictive Model with KnowledgeFlow in Weka. All comments please send to chucnv@ud.edu.vn)

    • Điểm chủ đề: 95
  • 11-11-2010 08:22 AM trả lời

    Re: Building a Classification Model with Weka

    Cảm ơn Anh Chức Rất nhiều về các bài viết Data Mining, em dang học master về Khoa học máy tinh, em có ý định làm thesis về DM nhưng em thấy mơ hồ quá khi đọc tài liệu do lĩnh vực này liên quan đến nhiều khoa học khác nhau (thống kê, Database, machine learning) mà tài liệu tiếng việt lại không có. Bài viết của anh đã giúp em rất nhiều trong tiếp cận lĩnh vực mới này.
    Mong được đọc các bài viết sắp tới của anh về Data Mining
    Hiền Giang,
     
    • Điểm chủ đề: 35
  • 11-11-2010 09:44 PM trả lời

    • TuDN
    • 500 thành viên năng nổ nhất
    • Tham gia 11-11-2010
    • Điểm 20

    Re: Building a Classification Model with Weka

    Thanks anh Chức nhiều! Em cũng đang quan tâm đến lĩnh vực này mà không biết bắt đầu từ đâu. Em đang học Đại học nhưng đọc các bài viết của anh rất dễ hiểu và thấy rất hay mặc dù lĩnh vực này hơi khó với bọn em.
    Hy vọng nhận được sự giúp đỡ của anh khi em cần tư vấn về lĩnh vực này.
    Nguyễn Quang Tú - Đà Nẵng
    • Điểm chủ đề: 20
  • 04-24-2012 10:59 PM trả lời

    • gagaru
    • 500 thành viên năng nổ nhất
    • Tham gia 04-24-2012
    • Điểm 35

    Re: Building a Classification Model with Weka

    em vẫn chưa hiểu ở chỗ là weka chỉ đọc được 2 định dạng là csv và arff, em down cái Iris dataset về nhưng nó không có file như thế. Bây giờ e đang rất cần, em mong được sự chỉ giúp. Có pro nào biết giúp em với, xin gửi vào mail cho em: truongtho17@hotmail.com.
    P/S Em đang rất cần, em xin chân thành cảm ơn!
    • Điểm chủ đề: 35
  • 03-24-2013 10:08 AM trả lời

    Re: Building a Classification Model with Weka

    Em vẫn chưa hiểu ở chỗ là weka chỉ đọc được 2 định dạng là csv và arff.
    - Sau khi cài WEKA lên có cần cài môi trường gì nữa không? Em muốn chỉnh sửa code có sẵn của weka thì làm thế nào ah?
    - Ví dụ em xây dựng lớp phân biệt được người dân ở xóm A có trình độ đại học chiếm 80%, cao đẳng chiếm 15%, Trung cấp chiếm . Các bước em phải làm những gì để chạy được ứng dụng này?
    - Sau khi đưa lớp vào rồi và chạy thì thực hiện bước chạy nó như thế nào?
    Có ai chỉ bảo giúp em chi tiết được không? Em cũng đang rất cần. Em cảm ơn!

     


    • Điểm chủ đề: 35
  • 04-01-2013 03:03 PM trả lời

    • tutruong
    • 25 thành viên năng nổ nhất
    • Tham gia 03-30-2013
    • Điểm 255

    Re: Building a Classification Model with Weka

    Có phải sử dụng Classification Algorithms trên tập dữ liệu đầu vào (dataset) chủ yếu là để đánh giá hiệu quả của tập dataset đầu vào đó có được phân loại tốt hay không (độ chính xác 100% hay 70%, ....). Em hiểu như vậy có đúng hay không? Vân còn mơ mơ hồ hồ, mong được anh và các bạn giải thích thêm.
     
    Và Anh có thể giải thích rõ hơn một chút về kết quả của mô hình ở trên để hiểu kỹ hơn, được không a?
    • Điểm chủ đề: 20
  • 04-02-2013 08:13 PM trả lời

    • tutruong
    • 25 thành viên năng nổ nhất
    • Tham gia 03-30-2013
    • Điểm 255

    Re: Building a Classification Model with Weka

    Cho hỏi trong bảng kết quả các tham số TP Rate , FP Rate, Precision, Recall, F-Measure, ROC Area nói lên ý nghĩa gì?

    • Điểm chủ đề: 35
  • 04-04-2013 09:01 PM trả lời

    • chucnv
    • 10 thành viên năng nổ nhất
    • Tham gia 12-05-2008
    • Điểm 9,920

    Re: Building a Classification Model with Weka

    Chào bạn,
    Tham khảo cách sử dụng các tham số trên để đánh giá mô hình dự đoán tại đây
    http://bis.net.vn/forums/t/366.aspx
     
    Từ khóa đại diện: ,
    • Điểm chủ đề: 20
  • 04-11-2013 01:20 PM trả lời

    Re: Building a Classification Model with Weka

    Chào anh Chức,
     Em đã xây dựng được tập huấn luyện và đã huấn luyện được 1 model bởi tập huấn luyện đó. Anh có thể trình bày em cách lập trình code java dùng tập model ấy để xác định class của 1 instance bất kỳ ko. Anh chỉ rõ dùng class nào và hàm nào trong thư viện weka. Cám ơn anh
    • Điểm chủ đề: 20
  • 04-11-2013 09:37 PM trả lời

    Re: Building a Classification Model with Weka

    Chào anh!
    Em cũng đang thắc mắc việc áp dụng thuật toán nào với những datasets nào.Em mới tìm hiểu về khai phá dữ liệu nên cũng không rõ lắm.
    Ví dụ như với bộ dữ liệu http://archive.ics.uci.edu/ml/datasets/Meta-data này thì em sẽ khai phá như thế nào?và sử dụng những thuật toán nào cho phù hợp?
    Rất mong câu trả lời của anh!
    Chân thành cảm ơn! 
    Từ khóa đại diện:
    • Điểm chủ đề: 20
  • 07-31-2018 01:41 AM trả lời

    • TrinhDuy
    • Không xếp hạng
    • Tham gia 07-31-2018
    • Điểm 20

    Re: Building a Classification Model with Weka

    Xin chào, Cho mình hỏi: khi chọn more options và setup output predictions là plaintext thì ở bảng kết quả có hiện dong Prediction on test set vậy các thông số đó là gì? Cám ơn nhiều.
    • Điểm chủ đề: 20
Trang 1 trong số 1 (11 nội dung)
Powered by Community Server (Commercial Edition), by Telligent Systems