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

Tiểu luận Khai phá dữ liệu : sử dụng phần mềm WEKA cho bộ dữ liệu Tic Tac Toe

10 1,1K 3
Tài liệu đã được kiểm tra trùng lặp

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tiểu luận khai phá dữ liệu : sử dụng WEKA cho bộ dữ liệu Tic Tac Toe
Thể loại Tiểu luận
Định dạng
Số trang 10
Dung lượng 415,25 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài toán: Tic Tắc Toe 1. Mô tả tập dữ liệu a. Nguồn gốc Bộ dữ liệu được David W. Aha tạo ra gồm 958 thế cờ trên bàn cờ 3*3 Các bài báo liên quan đến bộ dữ liệu này [1][2][3] b. Cấu trúc Tic-tac-toe là một trò chơi phổ biến dùng viết trên bàn cờ giấy có chín ô, 3x3. Hai người chơi, người dùng ký hiệu O, người kia dùng ký hiệu X, lần lượt điền ký hiệu của mình vào các ô. Người thắng là người thể tạo được đầu tiên một dãy ba ký hiệu của mình, ngang dọc hay chéo đều được. Các thuộc tính của tập dữ liệu: 1. top-left-square: {x,o,b} 2. top-middle-square: {x,o,b} 3. top-right-square: {x,o,b} 4. middle-left-square: {x,o,b} 5. middle-middle-square: {x,o,b} 6. middle-right-square: {x,o,b} 7. bottom-left-square: {x,o,b} 8. bottom-middle-square: {x,o,b} 9. bottom-right-square: {x,o,b} 10. Class: {positive,negative} Trong đó : - x là quân x đánh - o là quân o đánh

Trang 1

Bài toán: Tic Tắc Toe

1 Mô tả tập dữ liệu

a Nguồn gốc

Bộ dữ liệu được David W Aha tạo ra gồm 958 thế cờ trên bàn cờ 3*3

Các bài báo liên quan đến bộ dữ liệu này [1][2][3]

b Cấu trúc

Tic-tac-toe là một trò chơi phổ biến dùng viết trên bàn cờ giấy có chín ô, 3x3 Hai

người chơi, người dùng ký hiệu O, người kia dùng ký hiệu X, lần lượt điền ký hiệu

của mình vào các ô Người thắng là người thể tạo được đầu tiên một dãy ba ký hiệu của mình, ngang dọc hay chéo đều được

Các thuộc tính của tập dữ liệu:

1 top-left-square: {x,o,b}

2 top-middle-square: {x,o,b}

3 top-right-square: {x,o,b}

4 middle-left-square: {x,o,b}

5 middle-middle-square: {x,o,b}

6 middle-right-square: {x,o,b}

7 bottom-left-square: {x,o,b}

8 bottom-middle-square: {x,o,b}

9 bottom-right-square: {x,o,b}

10 Class: {positive,negative}

Trong đó :

- x là quân x đánh

- o là quân o đánh

Trang 2

- b là ô trống

- positive là thuật lợi

- negative là bất lợi

Các thuộc tính của tập dữ liệu đều có kiểu dữ liệu là rời rạc

2 Bài toán phân lớp

- Phân lớp theo tình trạng của nước cờ, trong đó có 2 trạng thái Positive (thuận lợi)

và Negative( bất lợi)

3 Giải quyết bài toán sử dụng các bộ phân lớp

Xử lý dữ liệu đầu vào: Tất cả các thuộc tính đầu vào này là thuộc tính rời rạc do vậy

nó phù hợp với hầu hết các thuật toán liên quan đến việc phân lớp

Các mô hình huấn luyện cho bài toán phân lớp

Trong lĩnh vực máy học (machine Learning) và nhận dạng mẫu (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) 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à một 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

Test set

Trang 3

Quy trình thực hiện huấn luyện bộ phân lớp với mẫu dữ liệu Tic Tac Toe.arff

- Dữ liệu xây dựng mô hình

- 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 (categorical attribute) Dữ liệu gốc sẽ được chia thành 2 phần

là Training Set (để xây dựng model) và Test Set (để kiểm định mẫu - Model)

- Cuối cùng là tính toán lỗi để đánh giá mô hình phân lớp (classification model)

- Chia nhỏ tập dữ liệu theo phương pháp CV (Cross-Validation) trong quá trình huấn luyện và kiểm lỗi mô hình phân lớp

Đâ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

Training set

Learn classifier

Test set

Model

Trang 4

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à giá trị tối ưu - theo GJ, McLachlan; K.A Do, C Ambroise (2004) Analyzing microarray gene expression data Wiley)

- Tính toán lỗi cho bộ phân lớp

Trang 5

- Kết quả nhận được là những bộ phân lớp

- Các bộ phân lớp được weka hỗ trợ :

Bayes:

- NavieBayesMiltinominal

Functions:

- Logistic

- MultilayerProceptron

- SimpleLogistic

Lazy:

- IBk

Meta:

- FilteredClassifier

- LogitBoots

Misc

- InputmappedClassifier

- SerialzedClassifier

Rules

- DecisionTable

- JRip

- OneR

Trang 6

- J48

- DecisionStump

4 Thực nghiệm

Dữ liệu sẽ được chia làm 10 Folds và quá trình Train/Test Model thực hiện lặp lại 10 lần Tại mỗi lần Train/Test Model, 1 phần dữ liệu dùng để Test và 9 phần còn lại dùng

để Train

Sử dụng công cụ KnowledgeFlow

Xác định nguồn và định dạng dữ liệu (DataSources): chọn ArffLoader để load nạp dữ liệu từ file tic tac toe.arff

Chọn tab Evaluation và chọn ClassAssigner để xác định thuộc tính phân lớp

(Category variable) của mô hình Để nạp dữ kiệu từ dataset vào mô hình bấm phải chuột vào TicTacToe Dataset và chọn dataset rồi kéo và thẻ đến ClassAssigner

Chọn kỹ thuật Train và Test Mô hình (ở đây sử dụng kỹ thuật CV – CrossValidation) Trong Tab Evaluation chọn CrossValidation FoldMaker Nạp dữ liệu vào CV giống như nạp dữ liệu từ Tic Tac Toe Dataset vào ClassAssigner

Trang 7

Chọn Tab Classifiers và chọn các thuật toán để xây dựng mô hình (trước tiên chọn

thuật toán J48) Sau đó nạp dữ liệu để train và Test mô hình, bấm phải chuột vào

CrossValidation FoldMaker chọn TrainingSet nối với J48, sau đó chọn TestSet (chú ý

là phải chọn TraningSet trước)

Hiệu chỉnh tham số của thuật toán bằng cách double click và thuật toán

Trang 8

Chọn Tab Evaluation chọn ClassifierPerformanceEvaluator để đánh giá hiệu quả của

mô hình phân lớp

Trang 9

Chọn Tab: Visualization và chọn Text Viewer hoặc GraphViewer để xem kết quả của

mô hình dưới dạng Text hay dưới dạng trực quan quan bằng hình ảnh

Làm tương tự với thuật toán Naviebayes ta được mô hình như sau:

Sau đây là kết quả thực nghiệm:

Scheme: NaiveBayes

Correctly Classified Instances 667 69.6242 %

Incorrectly Classified Instances 291 30.3758 %

Trang 10

Scheme: J48

Options: -C 0.25 -M 2

Correctly Classified Instances 815 85.0731 %

Incorrectly Classified Instances 143 14.9269 %

5 Reference

[1]: Matheus, C.J., & Rendell, L.A (1989) Constructive induction on decision trees In Proceedings

of the Eleventh International Joint Conference on Artificial Intelligence (pp 645 650) Detroit, MI: Morgan Kaufmann

[Web Link]

[2] : Matheus, C.J (1990) Adding domain knowledge to SBL through feature construction In Proceedings of the Eighth National Conference on Artificial Intelligence (pp 803 808) Boston, MA: AAAI Press

[Web Link]

[3] : Aha, D W (1991) Incremental constructive induction: An instance-based approach In

Proceedings of the Eighth International Workshop on Machine Learning (pp 117 121) Evanston, ILL: Morgan Kaufmann

[Web Link]

Ngày đăng: 03/12/2013, 16:03

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w