weka introducing

30
DR. UREERAT SUKSAWATCHON 321641 DATA MINING Weka Introducing

Upload: clara

Post on 21-Jan-2016

116 views

Category:

Documents


9 download

DESCRIPTION

Weka Introducing. DR. UREERAT SUKSAWATCHON 321641 DATA MINING. What is Weka?. W aikato E nvironment for K nowledge A nalysis Since 1997 by Waikato University, New Zealand Opensource software used for data analysis by data mining techniques - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Weka Introducing

DR. UREERAT SUKSAWATCHON321641 DATA MINING

Weka Introducing

Page 2: Weka Introducing

What is Weka?

Waikato Environment for Knowledge AnalysisSince 1997 by Waikato University, New

ZealandOpensource software used for data analysis

by data mining techniquesThe system is written in JAVA and distributed

under the terms of the GNU General Public License

It runs on any platform Linux, Windows, Mac OS, PDA

Page 3: Weka Introducing

How do we get?

http://www.cs.waikato.ac.nz/ml/wekaFree Weka tutorial on Web and book

Page 4: Weka Introducing

Starting Weka

Weka’s GUI

Page 5: Weka Introducing

Weka Explorer

Tab สำ��หรั�บก�รัเรัยกใช้�ง�น

Workspace

Status Bar

Page 6: Weka Introducing

Weka Explorer

PreprocessClassifyClusterAssociateSelect AttributesVisualize

Page 7: Weka Introducing

Preparing the data

ข้�อมู�ล Instance Attribute

ก�รัโหลดข้�อมู�ลเข้��ไปในโปรัแกรัมู Weka ไฟล� CSV (Comma-Separated Value) ไฟล� ARFF (Attribute-Relation File Format) ฐ�นข้�อมู�ล

Data Preprocessing with Weka แปลงข้�อมู�ลที่�เป นตั�วเลข้ให�เป นช้#วง เพิ่%�มูข้�อมู�ลที่�ข้�ดห�ย ค้�นห�ข้�อมู�ล Outliers

Page 8: Weka Introducing

Ex: Customer Data

ใช้�ข้�อมู�ลเก�ยวก�บล�กค้��ซึ่)�งปรัะกอบไปด�วยข้�อมู�ลด�งตั#อไปน+

หมายเลขสมาชิก

ชิ� อสมาชิก เพศ อาย� รายได้�

1 สำมูช้�ย ช้�ย 25 12

000

2 สำมูพิ่รั หญิ%ง 18 70,00

3 สำมูอ�รั หญิ%ง 35 35,000

4 สำมูสำ-ภ�พิ่ เด/ก 15 40,00

5 สำมูศรั หญิ%ง 300

20,000

Instance : ใช้�สำ��หรั�บแสำดงข้�อมู�ลแตั#ละค้น

Attribute : ใช้�สำ��หรั�บค้-ณล�กษณะตั#�ง ๆ ข้องข้�อมู�ล

Page 9: Weka Introducing

Ex: Customer Data

ปรัะเภที่ข้�อมู�ลในแตั#ละ Attribute Numeric

ข้�อมู�ลที่�เป นตั�วเลข้ ค้#�ว�ดเช้%งปรั%มู�ณ ได�แก# attribute หมู�ยเลข้สำมู�ช้%ก อ�ย- และรั�ยได�

Non-numeric หรั4อ Categorical ข้�อมู�ลปรัะเภที่ตั#�ง ๆ ไมู#มูล��ด�บก#อนหล�ง ได�แก# attribute ช้4�อสำมู�ช้%ก และเพิ่ศ

Page 10: Weka Introducing

Ex: Customer Data

ก�รัน��เข้��ข้�อมู�ลในโปรัแกรัมู Weka

Open file :น��เข้��ไฟล� CSV หรั4อ ARFF ที่�ได�จั�ดเตัรัยมูไว�แล�วOpen URL : น��เข้��ไฟล� CSV หรั4อ ARFF ผ่#�นเค้รั4อข้#�ยOpen DB : ด)งข้�อมู�ลจั�กฐ�นข้�อมู�ลGenerate : สำรั��งข้�อมู�ลตั�วอย#�ง เพิ่4�อใช้�ในก�รัที่ดสำอบ โดยก�รัรัะบ-

จั��นวน instances และจั��นวน attributes

Page 11: Weka Introducing

Ex: Customer Data

รั� �จั�กไฟล� CSV (Comma-Separated Value) ใช้�เค้รั4�องหมู�ย Comma (,) แบ#งรัะหว#�ง attribute สำ�มู�รัถใช้� Excel ในก�รัสำรั��งไฟล� CSV (เล4อก Save เป น CSV Format)

ไฟล�ข้�อมู�ลใน Excel

ไฟล�ข้�อมู�ลในรั�ปแบบ CSV

***ที่ดลองสำรั��ง CSV ตั�มูตั�วอย#�ง

Page 12: Weka Introducing

Ex: Customer Data

รั� �จั�กไฟล� ARFF (Attribute-Relation File Format) เป นไฟล�ที่� Weka ก��หนดข้)+นเอง แบ#งเป น 2 สำ#วน สำ#วน Header: เป นสำ#วนแสำดงรั�ยละเอยดตั#�ง ๆ

ช้4�อข้องช้-ดข้�อมู�ล (relation) ช้4�อข้องแตั#ละ attribute ปรัะเภที่ข้องข้�อมู�ลในแตั#ละ attribute (data type)

สำ#วน Data: เป นสำ#วนข้องข้�อมู�ลในแตั#ละ attribute ที่�ตั�องก�รัใช้�ในก�รัว%เค้รั�ะห�

Page 13: Weka Introducing

Ex: Customer Data

Tag พิ่%เศษที่�มูในสำ#วน header ในไฟล� ARFF @relation <relation-name>

ใช้�ในก�รับอกช้4�อเรัยกข้องช้-ดข้�อมู�ล @attribute <attribute-name> <data type>

ใช้�ในก�รับอกช้4�อ attribute และช้น%ดข้องข้�อมู�ลTag พิ่%เศษที่�มูในสำ#วน Data ในไฟล� ARFF

@data หมู�ยค้ว�มูว#� บรัรัที่�ดตั#อไปจั�กน+จัะเป นสำ#วนข้องข้�อมู�ล โดยใช้�เค้รั4�องหมู�ย comma ค้� �น

รัะหว#�ง attribute

% แที่น comment หรั4อค้��อธิ%บ�ย

Page 14: Weka Introducing

Ex: Customer Data

Page 15: Weka Introducing

Ex: Customer Data

ปรัะเภที่ข้�อมู�ลในแตั#ละ attribute ข้�อมู�ลที่�เป นตั�วเลข้

จั��นวนเตั/มู และจั��นวนจัรั%ง ใช้� keyword numeric

ข้�อมู�ลที่�ไมู#ใช้#ตั�วเลข้ (nominal) ที่�ไมู#มูล��ด�บ เช้#น ช้4�อค้น สำ%�งข้อง สำถ�นที่� เพิ่ศ มู�กรัะบ-ค้#�ที่�เป นไปได�ที่� +งหมูดในรั�ปแบบข้อง set เช้#น sex {0,1,2} เป นตั�น

ลองเปรัยบเที่ยบค้ว�มูแตักตั#�งรัะหว#�ง CSV และ ARFF

Page 16: Weka Introducing

Ex: Weather Data

ใช้�ข้�อมู�ลช้4�อ weather.arff อย�#ใน C:\Program Files\Weka-3-6\data

เป นข้�อมู�ลสำภ�พิ่อ�ก�ศมูผ่ลตั#อก�รัแข้#งข้�นเบสำบอลในอเมูรั%ก�

เก/บข้�อมู�ลสำภ�พิ่อ�ก�ศย�อนหล�ง 14 ว�น

ที่�มู� http://www.theweatherprediction.com/habyhints/285/

Page 17: Weka Introducing

Ex: Weather Data

ใช้�ข้�อมู�ลช้4�อ weather.arff อย�#ใน C:\Program Files\Weka-3-6\data

เป นข้�อมู�ลสำภ�พิ่อ�ก�ศมูผ่ลตั#อก�รัแข้#งข้�นเบสำบอลในอเมูรั%ก�

เก/บข้�อมู�ลสำภ�พิ่อ�ก�ศย�อนหล�ง 14 ว�น

เป9ด weather.arff ด�วย editorที่�มู�

http://www.theweatherprediction.com/habyhints/285/

Page 18: Weka Introducing

Ex: Weather Data

เป9ด Weka เล4อก Explorer -> กดป-:มู Open file -> เล4อกไฟล� weather.arff

1

2

3

4

5

6

Page 19: Weka Introducing

Ex: Weather Data

สำ#วนที่�สำ��ค้�ญิข้อง Preprocess ค้4อเมูน� Filter แปลงข้�อมู�ล เน4�องจั�กบ�งเที่ค้น%ค้ที่��ง�นได�เฉพิ่�ะข้�อมู�ลที่�เป น nominal เที่#�น�+น

Discretize: แปลงข้�อมู�ลตั�วเลข้ (numeric or real) ใหเป นข้�อมู�ลปรัะเภที่ (nominal)

StringToNominal: แปลงข้�อมู�ลที่�เป นล�กษณะข้�อค้ว�มู (string ) ให�เป นข้�อมู�ลล�กษณะปรัะเภที่ (nominal) แก�ไข้ข้�อมู�ลที่�ผ่%ดพิ่ล�ด

แก�ไข้ข้�อมู�ลที่�ผ่%ดพิ่ล�ด ReplaceMissingValue: เพิ่%�มูข้�อมู�ลที่�ข้�ดห�ยไป

ก�รัค้�นห� Outliers InterquartileRange: พิ่%จั�รัณ�จั�กก�รักรัะจั�ยตั�วข้องข้�อมู�ล

Page 20: Weka Introducing

Ex: Weather Data

Discretization : แปลงข้�อมู�ลตั�วเลข้ (numeric or real) ใหเป นข้�อมู�ลปรัะเภที่ (nominal)

Discretize

Page 21: Weka Introducing

Ex: Weather Data

Missing Value ข้�อมู�ลบ�งสำ#วนห�ยไป อ�จัเก%ด

จั�ก ค้ว�มูผ่%ดพิ่ล�ดในก�รักรัอก

ข้�อมู�ล ค้ว�มูจังใจัในก�รัให�ข้�อมู�ลจัรั%ง

ข้�อมู�ลไมู#น#�เช้4�อถ4อในก�รัว%เค้รั�ะห�หรั4อที่��น�ย

จั�กตั�วอย#�ง Cutomer มูตั�วอย#�งใดไมู#น#�เช้4อ#ถ4อ

หมายเลข

สมาชิก

ชิ� อสมาชิก

เพศ อาย� รายได้�

1 สำมูช้�ย ช้�ย 2

5

12

00

0

2 สำมูพิ่รั หญิ%ง1

8

70,00

3 สำมูอ�รั หญิ%ง3

5

35,00

0

4 สำมูสำ-ภ�พิ่ เด/ก 1

5

40,00

5 สำมูศรั หญิ%ง3

0

0

20,00

0

Page 22: Weka Introducing

Ex: Weather Data

ก�รั Replace missing value ใช้�เค้รั4�องหมู�ย ? แที่นข้�อมู�ลที่�ห�ยไปหรั4อข้�อมู�ลที่�ตั�องก�รัให�มูก�รั replace ถ��ข้�อมู�ลเป นตั�วเลข้ แที่นที่�ด�วย ค้#�เฉล�ย (mean) ข้องค้#�ใน attribute น�+น ๆ ถ��ข้�อมู�ลเป นปรัะเภที่ แที่นที่�ด�วย ข้�อมู�ลที่�ปรั�กฏบ#อยที่�สำ-ด (mode) ใน

attribute น�+น ๆ

Page 23: Weka Introducing

Ex: Weather Data

ก�รั Replace missing value

หมายเลข

สมาชิก

ชิ� อสมาชิก

เพศ อาย� รายได้�

1 สำมูช้�ย ช้�ย 2

5

12

00

0

2 สำมูพิ่รั หญิ%ง 1

8

70,00

3 สำมูอ�รั หญิ%ง 3

5

35,00

0

4 สำมูสำ-ภ�พิ่ ? 1

5

40,00

5 สำมูศรั หญิ%ง ? 20,00

0

Page 24: Weka Introducing

Ex: Weather Data

ก�รั Replace missing value

หมายเลข

สมาชิก

ชิ� อสมาชิก

เพศ อาย� รายได้�

1 สำมูช้�ย ช้�ย 2

5

12

00

0

2 สำมูพิ่รั หญิ%ง 1

8

70,00

3 สำมูอ�รั หญิ%ง 3

5

35,00

0

4 สำมูสำ-ภ�พิ่ หญิง 1

5

40,00

5 สำมูศรั หญิ%ง 22.25

20,00

0

Page 25: Weka Introducing

Ex: Weather Data

ที่ดลองที่��โดยก�รัแก�ไฟล� CustomerData.arff Save ไฟล�ในช้4�อ CustomerData_wmissing.arffกดป-:มู Choose -> filters->unsupervised->attribute-

>ReplaceMissingValues แล�วกดป-:มู Apply

Page 26: Weka Introducing

Ex: Weather Data

Detect Outlier Outlier ค้4อข้�อมู�ลที่�มูค้ว�มูผ่%ดปกตั%ที่�แปลกแยกจั�กข้�อมู�ลสำ#วนใหญิ# อ�จัจัะถ4อว#�

เป นข้�อมู�ลจัรั%งหรั4อ noise ก/ได� ใช้�ว%ธิที่�เรัยกว#� Interquartile range (IQR) ที่ดลองก�รัใช้� outlier จั�กไฟล� customer_outlier.arff Edit ด�ข้�อมู�ลก#อน ก#อนที่�� outlier ค้วรัลบข้�อมู�ลที่�ไมู#เก�ยวข้�องออก ในที่�ค้4อ attribute

Customer_ID และ Name กดป-:มู Choose -> filters->unsupervised->attribute-

>InterquartileRange แล�วกดป-:มู Apply

Page 27: Weka Introducing

Memory Error

ซึ่อฟตั�แวรั� Weka จัะที่��ก�รัอ#�นข้�อมู�ลทั้��งหมด้เข้��ไปเก/บไว�ในหน#วยค้ว�มูจั�� (memory) ภ�ยในเค้รั4�องก#อน แล�วจั)งน��ข้�อมู�ลเหล#�น+ไปปรัะมูวลผ่ลตั#อไป

อ�จัเก%ด error ได� เน4�องจั�กหน#วยค้ว�มูจั��ไมู#พิ่อก�รัค้��นวณข้น�ดข้องหน#วยค้ว�มูจั��ที่�ตั�องใช้� ค้��นวณได�จั�กApprox_mem = number of attributes * number of

instances * 8ตั�วอย#�งเช้#น ข้�อมู�ล 10000000, , instances มู 10

attributes จัะตั�องใช้�หน#วยค้ว�มูจั�� = 10,000,000*10*8 = 800,000,000 = 800 MB

Page 28: Weka Introducing

Memory Error

ให�ที่��ก�รัสำรั��งข้�อมู�ลตั�วอย#�ง โดยก�รักดป-:มู Gernerate… เล4อก numExamples เป น 1000000, , แล�วกดป-:มู Gernerate

เมู��สำ� Click เพิ่4�อแก�ไข้ parameters

Page 29: Weka Introducing

Memory Error

จัะปรั�กฎหน��ตั#�งด�งน+

Page 30: Weka Introducing

Memory Error

ที่��ก�รัเพิ่%�มูข้น�ดโดยก�รัแก�ไข้ในไฟล� C:\Program Files\Weka-3-6\RunWeka.ini

ที่��ก�รัเปล�ยน maxheap ให�มู�กข้)+น แตั#ไมู#เก%นข้น�ดข้องหน#วยค้ว�มูจั��ภ�ยในเค้รั4�อง