APPENDIX II (PHỤ LỤC II) GIỚI THIỆU VỀ WEKA

Một phần của tài liệu BÀI GIẢNG HỌC MÁY Ngành Khoa học Máy tính (Trang 119 - 122)

III. Bài tập và thí nghiệm chương

APPENDIX II (PHỤ LỤC II) GIỚI THIỆU VỀ WEKA

j 1 N 1 đối với các mẫu trong D mà Ck phân lớp

APPENDIX II (PHỤ LỤC II) GIỚI THIỆU VỀ WEKA

GIỚI THIỆU VỀ WEKA

Weka là phần mềm được viết bằng ngôn ngữ JAVA do Witten và Frank xây dựng phục vụ lĩnh vực học máy và khai phá dữ liệu. Weka là phần mềm miễn phí được rất nhiều người dùng được xếp hạng như hình 2.1:

Hình 2.2 Biểu diễn số lượng người dùng các phần mềm trong DM[8]

1. Weka gồm các phương pháp học máy cơ bản phục vụ cho các mục tiêu sau: Tiền xử lý dữ liệu, các phương pháp học máy và đánh giá mơ hình.

Sử dụng đồ họa để biểu diễn dữ liệu.

Là môi trường dùng để so sánh các giải thuật học máy, khai phá dữ liệu. 2. Weka website:

http://www.cs.waikato.ac.nz/ml/weka/ 3. Tài liệu hướng dẫn sử dụng weka:

http://www.cs.waikato.ac.nz/ml/weka/documentation.html. 4. Cơ sở dữ liệu:

Hình 2.3. Giao diện chính của Weka

Các mơi trường chính của phần mềm Weka:

Experimenter: Môi trường cho phép tiến hành các thí nghiệm và thực hiện các kiểm tra

thống kê (Statistical Tests) giữa các mơ hình học máy.

KnowledgeFlow: Môi trường cho phép tương tác đồ họa kiểu kéo/thả để thiết kế các bước

(các thành phần) của một thí nghiệm.

Simple CLI: Giao diện đơn giản kiểu dòng lệnh (như MS-DOS).

Explorer: Môi trường sử dụng các khả năng của Weka để khai phá dữ liệu. 2.2. Định dạng dữ liệu (ARFF)

ARFF (Attribute Relation File Format) là định dạng dữ liệu chuyên biệt của Weka, tổ chức dữ liệu theo cấu trúc được quy định trước.

Cấu trúc tập tin *.ARFF gồm 2 phần:

 Head file: chứa khai báo quan hệ, danh sách các thuộc tính (tên, kiểu dữ liệu).

 Data: gồm nhiều dòng, mỗi dịng thể hiện giá trị các thuộc tính cho một mẫu học Learning Pattern).

2.2.1 Head file

Comments: bắt đầu bằng dấu % Relations: @relation <relationname>

Trong đó, <relationname>: là một xâu cho biết tên của tập dữ liệu. Nếu một xâu chứa dấu cách thì xâu phải nằm trong dấu ‘?’ hoặc “?”. Xâu không thể bắt đầu bằng các kí tự ‘!’, ‘{’, ‘}’, ‘,’, ‘%’

Khai báo kiểu dữ liệu (Data Declaration):

@attribute <tên thuộc tính/đặc trưng> <kiểu dữ liệu>

<Tên thuộc tính/đặc trưng>: là xâu bắt đầu bằng chữ cái. Nếu tồn tại dấu cách trong xâu thì xâu phải nằm trong dấu ‘?’ hoặc “?”.

Kiểu dữ liệu:

+ integer: số nguyên + real: số thực

+ numeric: là kiểu dữ liệu số bao gồm số nguyên và số thực. + string: là kiểu dữ liệu dạng chuỗi

+ nominal (categorical data): là kiểu dữ liệu danh sách, dữ liệu dạng ngơn ngữ (chữ)

Ví dụ: (adsbygoogle = window.adsbygoogle || []).push({});

@attribute outlook: {sunny, overcast, rainy}: Thuộc tính kiểu định danh, đặc trưng đầu vào; @attribute play: {yes, no}:

Thuộc tính phân lớp (mặc định là thuộc tính cuối cùng, đầu ra hay nhãn) + date: kiểu dữ liệu thời gian (ngày tháng năm, giờ phút giây)

Cấu trúc:

@attribute <name> date [<date-format>]

Ví dụ: @ATTRIBUTE timestamp DATE "yyyyMMdd HH:mm:ss"

+ Relational

Cấu trúc:

@attribute <name> relationa <further attribute definitions> @end <name>

2.2.2 Dữ liệu

-Các giá trị nằm trong phần data phải tuyệt đối theo đúng thông tin sẽ khai báo trong header. - Dữ liệu thiếu được biểu diễn bằng dấu?

- Dữ liệu quan hệ phải được kèm theo trong dấu ngoặc kép "..." Ví dụ: MUSK-188,"42,...,30",1. Ví dụ minh họa:

@DATA

5.1,3.5,1.4,0.2, Iris-setosa

4.9,3.0,1.4,0.2, Iris-setosa 4.7,3.2,1.3,0.2, Iris-setosa

Một phần của tài liệu BÀI GIẢNG HỌC MÁY Ngành Khoa học Máy tính (Trang 119 - 122)