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

tạo luật kết hợp trong cơ sơ dữ liệu bank-data.csv với phần mềm weka

28 910 4

Đ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

Định dạng
Số trang 28
Dung lượng 1,25 MB

Nội dung

Click chuột trái hoặc click chuột phải chọn show properties… sẽ xuất hiện một hộp thoại cho phép bạn thiết lập các tham số: • AttributeIndex: Vị trí của thuộc tính cần thêm vào trong bả

Trang 1

ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC SƯ PHẠM

KHOA TIN HỌC 

BÁO CÁO BÀI TẬP NHÓM

Đề tài:

TẠO LUẬT KẾT HỢP TRONG CƠ SƠ DỮ LIỆU BANK-DATA.CSV VỚI PHẦN MỀM WEKA

Giáo viên hướng dẫn Sinh viên thực hiện

Th.S Nguyễn Hương Giang Lưu Hải Phong

Trịnh Thị Hiền Nguyễn Thị Hằng Huế, 12/2009

I GIỚI THIỆU WEKA

Trang 2

 Weka là môi trường thử nghiệm KPDL do các nhà khoa học thuộc trường Đại học Waitako, NZ, khởi xướng và được sự đóng góp của rất nhiều nhà nghiên cứu trên thế giới Weka là phần mềm mã nguồn mở, cung cấp công cụ trực quan

và sinh động cho mọi người tìm hiểu về KPDL Weka còn cho phép các giải thuật học mới phát triển có thể tích hợp vào môi trường của nó Hệ thống được viết bằng java Nó chạy được hầu hết trên tất cả hệ điều hành

 Weka cung cấp nhiều giải thuật khác nhau với nhiều phương thức cho quá trình xử lý để ước lượng kết quả bằng sơ đồ cho bất kì một dữ liệu nào

 Weka cung cấp những tính năng chính sau:

+ Bao gồm nhiều công cụ đa dạng để thay đổi tập dữ liệu, xử lý dữ liệu, giải thuật học và phương pháp đánh giá

+ Giao diện đồ họa người dùng (trực quan hóa dữ liệu)

+ Môi trường để so sánh các giải thuật học

 Bạn có thể xử lý trước tập dữ liệu, cho vào trong một sơ đồ, và phân chia các lớp kết quả và thực hiện nó mà không cần viết bất cứ một chương trình nào

 Weka lấy dữ liệu từ các file có định dạng arff, nó được phát sinh từ một file hoặc một bảng cơ sở dữ liệu

 Cách sử dụng Weka là thông qua giao diện đồ họa của nó

Hình 1: Giao diện đồ họa của Weka

 Các phiên bản của Weka

+ WEKA 3.0: “book version”: Chỉ cho phép viết các câu lệnh

+ WEKA 3.2: “GUI version”- Graphical User interfaces (Phiên bản giao diện

đồ họa) : Ngoài việc viết các câu lệch có thể sử dụng giao diện đồ họa

+ WEKA 3.3: “Development version” (Phiên bản phát triển) :Với nhiều cải tiến

Trang 3

Trong phần Applications có 4 phần:

1 Explorer: Sử dụng menu lựa chọn Explorer chỉ sử dụng cho những bộ dữ

liệu vừa và nhỏ

2 Experimeter: Cho phép người dùng thực hiện những bài tập cơ bản khi ứng

dụng phân lớp và kĩ thuật hồi quy, với những công việc có giá trị, phương pháp và tham số tốt nhất cho vấn đề đã cho

Cho phép bạn tự động hóa xử lý, làm cho nó phân lớp và lọc dễ dàng với những cách thiết lập tham số khác nhau trên toàn thể bảng dữ liệu

3 KnowledgeFlow: cho phép người dùng kéo thả những chiếc hộp tượng

trưng cho các giải thuật và dữ liệu để kết nối chúng lại với nhau và đưa ra cấu trúc

4 Simple CLI: Sử dụng câu lệnh

Trang 4

II EXPLORER

Trong giao diện của Explorer có 6 tab

Hình 2: Giao diện đồ họa của Exporer

 Preprocess: Tiền xử lý dữ liệu.

 Classify: Tạo ra những chương trình để phân loại.

 Cluster: Tạo phân cụm cho cơ sở dữ liệu.

 Associate: Tạo luật kết hợp cho dữ liệu và đánh giá chúng.

 Select attributes: Lựa chọn những thuộc tính liên quan nhất trong tập dữ liệu.

 Visualize: (Nhìn thấy sự khác nhau hai chiều của dữ liệu và sự tương tác giữa

chúng)View different two-dimensional plots of the data and interact with them

1 Đưa dữ liệu vào

Trong tab Preprocess có:

− Nút mở các file có sẵn trên máy

− Nút mở file từ máy khác

− Nút đọc dữ liệu từ một cơ sở dữ liệu

Trang 5

− Nút Phần mềm tự tạo ra dữ liệu cho bạn theo những sự lựa chọn của bạn.

Sử dụng nút bạn có thể đọc các tập tin ở nhiều định dạng như: định dạng ARFF, định dạng CSV, định dạng C4.5

Khi bạn mở một file từ mục open file sẽ hiện ra một cửa sổ như sau:

Hình 3: Mở file trong Exporer

2 Preprocess

Trong cửa sổ của Preprocess có 4 vùng

Vùng Filter

Cho bạn biết được giải thuật dùng để tiền xử lý dữ liệu đang được sử dụng Bạn

có thể thay đổi giải thuật đó bằng cách click vào button

Trang 6

Vùng Current Relation (Các mối quan hệ hiện tại)

Relation (Quan hệ): Cho biết tên của bảng dữ liệu

Instances (Trường hợp): Số lượng các bản ghi

Attributes.(Những thuộc tính): Số lượng các thuộc tính trong dữ liệu.

Sum of weights: Tổng trọng lượng của mỗi bản ghi.

Ví dụ: Khi file đã được mở, màn hình sẽ được thể hiện trong hình 3, nó cho bạn biết về tên bảng bảng dữ liệu: Trong trường hợp này bảng dữ liệu có tên là

Weather nó có 14 bản ghi và 5 thuộc tính Tên các thuộc tính là outlook,

temperature, humidity, windy và play Đầu tiên, theo mặc định là thuộc tính

outlook và bạn có thể chọn những thuộc tính khác bằng cách click chuột vào nó

Vùng Attributes (Những thuộc tính)

Ở dưới hộp Current Relation là hộp Attributes Có bốn nút để thay đổi sự

chọn lựa

All: Tất cả đều được chọn.

None: Tất cả các hộp đều không được chọn.

Invert: Những thuộc tính trước đây không được chọn sẽ trở thành được

chọn và ngược lại

Pattern: Cho phép người dùng lựa chọn các thuộc tính bằng cách nhập tên

thuộc tính vào

Vùng Selected Attribute:

 Name: Tên thuộc tính.

 Type: Kiểu dữ liệu của thuộc tính đó.

 Missing: cho biết số lượng và phần trăm tương ứng của số bản ghi có giá

trị rỗng trong thuộc tính

 Distinct: Cho biết số lượng các giá trị trong thuộc tính.

 Unique: cho biết số lượng và phần trăm tương ứng của các giá trị không

bị lặp lại trong thuộc tính

Trang 7

Nếu thuộc tính bạn đang chọn có kiểu dữ liệu là Nominal thì bạn sẽ nhìn thấy trong vùng này một table gồm có các trường số thứ tự (NO.), tên các giá trị (lable), số lượng mỗi giá trị (Count) và trọng lượng của chúng (Weight) như sau:

Nếu thuộc tính bạn đang chọn có kiểu dữ liệu là numeric thì table có hai trường là số liệu thống kê (Statistic) và giá trị tương ứng (Value) Ở trường Statistic có các giá trị Minimum (Giá trị nhỏ nhất), Maximum (Giá trị lớn nhất), mean (Giá trị trung bình), Độ lệch chuẩn (StdDev) như hình sau:

Sau khi đưa dữ liệu vào, bạn có thể thự hiện các thao tác để xử lý dữ liệu trước khi thực hiện những công việc khác như phân cụm, tạo cây quyết định, luật kết hợp… Để thực hiện xử lý dữ liệu trước hết bạn click vào button , một cây thư mục đổ xuống, trong cây thưc mục đổ xuống như hình dưới đây:

Trang 8

Từ cây thư mục này bạn có thể thực hiện các thao tác để tiền xử lý dữ liệu của bạn Ở đây chúng tôi chỉ trình bày một số mục trong phần

Unsupervised/Attribute của cây thư mục.

Cho phép bạn chèn thêm một thuộc tính cho bảng dữ liệu

Chọn mục Add trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ Add -N unnamed -C last Click chuột trái (hoặc click chuột phải chọn show

properties…) sẽ xuất hiện một hộp thoại cho phép bạn thiết lập các tham số:

AttributeIndex: Vị trí của thuộc tính cần thêm vào trong bảng dữ liệu mặc

định là cuối bảng dữ liệu (Last)

AttributeName: Tên của thuộc tính mới.

AttributeType: kiểu dữ liệu của thuộc tính mới.

DateFormat : định dạng ngày

• NominalLabels: Giá trị của thuộc tính nếu thuộc tính có kiểu dữ liệu là

Nominal, các giá trị được cách nhau bằng dấu phẩy

thoại cho phép bạn thiết lập các tham số:

Trang 9

Debug: Nếu chọn False thì chương trình sẽ không kiểm tra lỗi trong quá

trình thực hiện

Expression: Nơi để nhập biểu thức toán học.Biểu thức có thể sử dụng các

phép toán và các hàm sau: +, -, *, /, ^, log, abs, cos, exp, sqrt, floor, ceil, rint, tan,

sin…Mặc định là a1^2, a1 là thuộc tính thứ 1.

Name: Tên của thuộc tính mới.

II.3 AddID

Cho phép bạn chèn vào một trường ID

Chọn mục AddID trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ AddID -C first -N ID Click chuột trái (hoặc click chuột phải chọn show

properties…) vào dòng chữ này sẽ xuất hiện một hộp thoại cho phép bạn thiết lập

các tham số:

Trang 10

IDIndex: Vị trí của thuộc tính ID được thêm vào bảng dữ liệu Mặc định là

vị trí đầu tiên (first)

AttributeName: Tên của thuộc tính ID mới.

II.4 AddValues

Chèn thêm giá trị cho một thuộc tính

Chọn mục AddValue trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ AddValues -C last -L Click chuột trái (hoặc click chuột phải chọn

show properties…) vào dòng chữ này sẽ xuất hiện một hộp thoại cho phép bạn

thiết lập các tham số:

AttributeIndex: Vị tri của thuộc tính cần thêm giá trị trong bảng dữ liệu.

Labels: các giá trị của thuộc tính cần thêm vào, mỗi giá trị cách nhau bằng

dấu phẩy

Sort: chọn False thì các giá trị trong thuộc tính không được sắp xếp mà giữ

nguyên vị trí như lúc đưa vào Chọn true thì các giá trị trong thuộc tính được sắp xếp tăng dần như trong từ điển

II.5 ChangeDateFormat

Thay đổi định dạng kiểu ngày tháng

Chọn mục ChangeDateFormat trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ ChangeDateFormat -C last -F yyyy-MM-dd'T'HH:mm:ss Click chuột trái (hoặc click chuột phải chọn show properties…) vào dòng chữ này

sẽ xuất hiện một hộp thoại cho phép bạn thiết lập các tham số:

Trang 11

AttributeIndex: Vị trí thuộc tính cần thay đổi định dạng

DateFormat: Thiết lập định dạng mới cho thuộc tính được chọn.

dòng chữ này sẽ xuất hiện một hộp thoại cho phép bạn thiết lập các tham số:

AttributeIndices: vị trí của thuộc tính cần copy nếu chọn false ở mục

invertSelection hoặc không cần copy nếu chọn true ở mục invertSelection

II.7 Discretize

Chỉ thực hiện trên các thuộc tính có giá trị là kiểu dữ liệu numeric Cho phép bạn chia khoảng giá trị của thuộc tính đó từ min đến max thành các khoảng giá trị nhỏ hơn

Trang 12

Chọn mục Discretize trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ Discretize -B 10 -M -1.0 -R first-last Click chuột trái (hoặc click chuột phải chọn show properties…) vào dòng chữ này sẽ xuất hiện một hộp thoại cho

phép bạn thiết lập các tham số:

AttributeIndices: vị trí của thuộc tính cần chia khoảng giá trị

Bins: Số khoảng sẽ được chia

II.8 MathEpression

Chỉ thực hiện trên các thuộc tính có giá trị là kiểu dữ liệu numeric

Cho phép bạn thay đổi giá trị của các thuộc tính thông qua các biểu thức toán học Có thể sử dụng các phép toán và hàm sau: +, -, *, /, pow, log,abs, cos, exp, sqrt, tan, sin, ceil, floor, rint, (, ),A,MEAN, MAX, MIN, SD, COUNT, SUM, SUMSQUARED, ifelse

Ví dụ: pow(A,6)/(MEAN+MAX)*ifelse(A<0,0,sqrt(A))+ifelse(![A>9 && A<15])

Chọn mục MathEpression trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ MathExpression -E (A-MIN)/(MAX-MIN) Click chuột trái (hoặc

Trang 13

click chuột phải chọn show properties…) vào dòng chữ này sẽ xuất hiện một hộp

thoại cho phép bạn thiết lập các tham số:

Expression: Cho phép bạn nhập các biểu thức toán học

IgnoreRange: Vị trí của thuộc tính sẽ được bỏ qua sự thay đổi giá trị nếu

chọn False ở InvertSelection và ngược lại.

II.9 MergerTwoValues

Gộp hai giá trị bất kỳ của một thuộc tính có kiểu dữ liệu Nominal thành một giá

trị, tên của giá trị mới có dạng: <tên giá trị 1>_<tên giá trị 2>

Chọn mục MergerTwoValues trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ MergeTwoValues -C last -F first -S last Click chuột trái (hoặc click chuột phải chọn show properties…) vào dòng chữ này sẽ xuất hiện

một hộp thoại cho phép bạn thiết lập các tham số:

Trang 14

II.10 Chuyển đổi kiểu dữ liệu

NominalToBinary: Đổi kiểu Nominal sang kiểu Binary

NominalToString: Đổi kiểu Nominal sang kiểu String

NumericToBinary: Đổi kiểu Numeric sang kiểu Binary

NumericToNominal: Đổi kiểu Numeric sang kiểu Nominal

StringToNominal: Đổi kiểu String sang kiểu Nominal

II.11 Remove

Xóa các thuộc tính không cần thiết đối với quá trình xử lí dữ liệu

Chọn mục Remove trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ Remove Click chuột trái (hoặc click chuột phải chọn show

properties…) vào dòng chữ này sẽ xuất hiện một hộp thoại cho phép bạn thiết lập

các tham số:

Trang 15

AttributeIndices: Lựa chọn những thuộc tính mà bạn muốn xóa, các thuộc

tính cách nhau bằng dấu phẩy, nếu nhiều thuộc tính liên tục nhau thì sử dụng dấu gạch ngang (-)

InvertSelection: Nếu như bạn chọn là False thì những thuộc tính bạn chọn

sẽ bị xóa, còn nếu bạn chọn là true thì những thuộc tính bạn chọn sẽ không bị xóa

mà sẽ xóa những thuộc tính bạn không chọn

II.12 SwapValues

Đổi vị trí của hai giá trị của một thuộc tính

Chọn mục SwapValues trong cây thư mục, ở bên phải nút Choose sẽ xuất hiện dòng chữ SwapValues -C last -F first -S last Click chuột trái (hoặc click chuột phải chọn show properties…) vào dòng chữ này sẽ xuất hiện một hộp thoại cho

Trang 16

Sau khi thiết lập các tham số, click vào để hoàn thành Tiếp đó click vào

để thực hiện

3 Tab Classify

Trong tab này có 4 vùng là Classifier, Test Opions, Result list và Classifier

output, ngoài ra còn có một list box cho phép bạn chọn thuộc tính làm kết quả của

việc phân lớp, một button để bắt đầu thực hiện việc phân lớp và button

để kết thúc việc phân lớp

Vùng Classifier:

Vùng này cho biết tên của thuật toán phân loại đang được chọn, mặc định là

zero Bạn có thể thay đổi thuật toán bằng cách click chuột vào trong vùng này và chọn một thuật toán mà bạn muốn Để thay đổi các thuộc tính cho thuật

toán, click chuột trái (hoặc click chuột phải rồi chọn Show properties…) vào dòng

chữ bên phải button

Trang 17

Vùng Test Option

Vùng này cho phép bạn lựa chọn các kiểu kiểm tra như:

+ Use training set:

+ Supplied test set:

đó sẽ xuất hiện một danh sách cho phép bạn chọn như hình sau:

View in main window: Mở kết quả ở vùng classifies output

View in separate window: Mở kết quả ở một cửa sổ khác

Save result buffer: Lưu kết quả vào bộ nhớ

Delete result buffer: Xóa kết quả

Load model:

Save model:

Re-evaluate model on current test set:

Visualize classifier errors:

Trang 18

Visualize tree: Mở cây quyết định

Visualize margin cuve:

Visualize threshold cuve:

Visualize cost cuve:

Vùng Classifier output

Đây là nơi hiện thị kết quả sau khi thực hiện phân lớp

3 Associate (luật kết hợp)

Gồm có 3 vùng: Associator, Associator output, Result list Ngoài ra còn có

một button để bắt đầu thực hiện việc tạo ra luật kết hợp, button để kết thúc

Associator:

Vùng này cho biết tên của thuật toán sẽ được sử dụng để tạo luật kết hợp Bạn

có thể thay đổi thuật toán bằng cách click chuột vào trong vùng này và chọn một thuật toán mà bạn muốn Để thay đổi các thuộc tính cho thuật toán, click

chuột trái (hoặc click chuột phải rồi chọn Show properties…) vào dòng chữ bên

phải button

Trang 19

View in main window: Mở kết quả ở vùng Associator output

View in separate window: Mở kết quả ở một cửa sổ khác

Save result buffer: Lưu kết quả vào bộ nhớ

Delete result buffer: Xóa kết quả

III TẠO LUẬT KẾT HỢP VỚI CƠ SỞ DỮ LIỆU BAN-DATA.CSV

1 Cơ sở dữ liệu

Cơ sơ dữ liệu sử dụng để tạo luật kết hợp là “bank- data.cvs” CSDL này gồm

100 bản ghi, với 12 thuộc tính: ID (mã số), TUOI (tuổi), GIOI TINH (giới tính), KHU VUC (khu vực), THU NHAP (thu nhập), KET HON (kết hôn), CON (số con), XE (xe), TKTK (tài khoản tiết kiệm), TK_HIEN TAI (Tài khoản hiện tại), THE CHAP (thế chấp)

Sử dụng phần mềm Weka để tạo ra luật kết hợp quyết định cho một khách hàng được vay vốn hay không

2 Preprocess (Tiền xử lý )

2.1 Mở bảng dữ liệu bank- data.csv: sau khi khởi động Weka, chọn Exploer

Preproces open, sau đó chọn đường dẫn đến file bank-data.csv

2.2 Loại bỏ thuộc tính ID khỏi CSDL: Click chuột vào checkbox ở thuộc tính

ID, sau đó click vào

Trang 20

2.3 Chuyển đổi kiểu dữ liệu của thuộc tính TUOI thành kiểu Nominal với 3 giá

trị Thanh nien (Thanh niên), Trung nien (Trung niên), Gia(Già)

Bước 1: Chọn mục MathExpression trong cây thư mục rồi thiết lập các

thông số trong hộp thoại của nó như sau:

Click vào để hoàn thành Tiếp đó click vào để thực hiện

Bước 2: Chuyển đổi kiểu dữ liệu của trường TUOI sang kiểu Nominal

Sử dụng mục NumericToNominal

Bước 3: Thêm các giá trị Thanh nien, Trung nien, Gia vào thuộc tính TUOI

Chọn mục AddValues ở cây thư mục và thiết lập các thông số trong hộp thoại

của nó như sau:

Bước 4: Click vào button ở phía trên vùng Filter, sẽ xuất hiện một

bảng dữ liệu như sau:

Ngày đăng: 14/10/2014, 00:58

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN

w