Title | orange machine learning |
---|---|
Author | So Good Point |
Course | Programming |
Institution | Chulalongkorn University |
Pages | 136 |
File Size | 8.4 MB |
File Type | |
Total Downloads | 72 |
Total Views | 128 |
Orange machine learning visualization and data mining...
Orange: A Visual Programming Tool for Machine Learning and Data Analytics A Guide to Mastering Orange for Research First Edition
Olarik Surinta
Orange: A Visual Programming Tool for Machine Learning and Data Analytics A Guide to Mastering Orange for Research First Edition
Olarik Surinta Department of Information Technology Faculty of Informatics, Mahasarakham University Maha Sarakham, Thailand
Orange: เครื่องมือสหรับกรโปรแกรมแบบวิชวล สหรับกรเรียน นรู รู้เครื่องจักรและกรวิเคระห์ข้อมูล คู่มือกรเรียนรู้ Orange สหรับกรทวิจัย
โอฬริก สุรินต๊ะ สขวิชเทคโนโลยีสรสนเทศ คณะวิทยกรสรสนเทศ มหวิทยลัยมหสรคม มหสรคม ประเทศไทย
คน ด้ว ยควมก้ วหน้ ทงเทคโนโลยีสรสนเทศ จึง ทให้มีข้อมูลเผยแพร่ผ่นทงอินเทอร์เน็ต อย่งรวดเร็ว เช่น ข้อมูลที่โพสต์ในเฟซบุ๊ค ทวิสเตอร์ หรือตมเว็บไซต์พันทิป ไม่ว่จะเป็นข้อมูลที่เป็น ข้อควมหรือรูปภพ ทให้ผู้คนบงกลุ่มต้องกรที่จะเข้ถึงข้อมูลเหล่นั้น เพื่อที่จะนมวิเคระห์ และ ใช้ข้อมูลเหล่นั้นให้เกิดประโยชน์ เช่น นมช่วยในกรวงแผนกรตลด และกรเจะกลุ่มเป้ หมย จึงทให้เกิดศสตร์ใหม่ขึ้นมเพื่อช่วยในกรเรียนรู้ และบริหรจัดกรข้อมูล เรียกว่ วิทยกร ข้อมูล (Data Science) ซึ่ง ในอดีตเรจะรู้จักกับคว่ "เหมืองข้อมูล (Data Mining)" และ "กรเรียนรู้ เครื่อ งจั ก ร (Machine Learning)" โดยทั้งสองแขนงมุ่งเน้นที่อัลกอริทึมที่จะนมใช้เพื่อกรเรียนรู้ และกรพยกรณ์ข้อมูล แต่อยู่บนพื้นฐนของกรคนวณด้วยวิธีเดียวกัน หกพูดถึงวิทยกรข้อมูล เปรียบได้กับกรนข้อมูลที่มีอยู่มผ่นกระบวนกรวิเคระห์ทงธุรกิจ เพื่อให้ธุรกิจเกิดควมได้เปรียบ ในกรแข่งขัน ปัจจุบันมีเครื่องมือมกมยที่สมรถนมใช้ในกรวิเคระห์ข้อมูล โดยโปรแกรม Orange มี ลัก ษณะกรทงนแบบ Visualization ทให้ผู้ใช้งนสมรถเรียกใช้งนได้อย่งสะดวกและรวดเร็ว โดยไม่จเป็นต้องเขียนโค้ด อีกทั้งยังเป็นโปรแกรมที่สมรถดวน์โหลดและใช้งนได้ฟรี ผู้เขียนจึงมี วัตถุประสงค์เพื่อเขียนหนังสือคู่มือกรใช้โปรแกรม Orange เพื่อให้ผู้อ่นสมรถที่จะอ่นและปฏิบัติ ตมขั้นตอนได้อย่งถูกต้อง
โอฬริก สุรินต๊ะ
สรบัญ กรติดตั้ง (Installation).........................................................................................................................1 เริ่มต้นใช้งน Orange (Getting Started with Orange)...........................................................................5 เปิดดูตัวอย่ง (Examples)................................................................................................................ 5 เปิดไฟล์เก่ (Open).......................................................................................................................... 7 สร้งไฟล์ใหม่ (New)........................................................................................................................8 กล่องเครื่องมือ (Toolbox)............................................................................................................... 10 ไฟล์และตรงข้อมูล (File and Data Table)........................................................................................13 ตัวอย่งไฟล์และตรงข้อมูล (Example of File and Data Table)...................................................13 เพิ่มไอคอน Visualize (Add Visualize Icon)................................................................................... 16 กรแสดงข้อมูลเชิงโต้ตอบ (Interactive Visualizations)......................................................................19 กรแสดงข้อมูลย่อย (Visualizations of Data Subsets)........................................................................ 23 กรแสดงรยละเอียดข้อมูล (Data Information)................................................................................. 27 กรแสดงกรกระจยข้อมูล (Data Distributions)............................................................................... 29 กรประมวลผลข้อมูลเบื้องต้น (Data Preprocessing)........................................................................... 33 ต้นไม้จแนก (Classification Tree)..................................................................................................... 37 กรวิเคระห์องค์ประกอบหลัก (Principal Component Analysis: PCA)..............................................43 แสดง Principal Component ที่ดีที่สุด (Present Best Principal Components)..................................46 กรเลือกจนวน Principal Component ที่ใช้ในกรคนวณ (Selecting the Number of Principal Components)..................................................................................................................................49 กรเรียกดูค่ของ Principal Component (Show Value of Principal Components).........................50 กรเรียงตัวแปรตมลดับควมสคัญ (Feature Ranking).................................................................. 51 กรเพิ่มไอคอน Data Table (Add Data Table Icon)........................................................................52 กรสร้งกรเชื่อมต่อเส้นระหว่งไอคอน (Create New Link to Icons).......................................... 57 กรแบ่งข้อมูลเพื่อทดสอบประสิทธิภพของโมเดล (Cross-Validation)...............................................61 Cross Validation.............................................................................................................................64 Random Sampling..........................................................................................................................66 Leave One Out............................................................................................................................... 67 Confusion Matrix................................................................................................................................69 K-Nearest Neighbor (KNN)............................................................................................................... 71 กรพยกรณ์ด้วยวิธี KNN (KNN Prediction)............................................................................... 77 KNN Parameter Tuning (กรปรับค่พรมิเตอร์ของ KNN)........................................................ 80 กรวิเคระห์กรถดถอย (Linear Regression).....................................................................................83 K-Means Clustering............................................................................................................................87 Interactive k-Means............................................................................................................................ 93 กรติดตั้งโปรแกรม Add-on (Installing Add-on Program).............................................................93 กรสร้งข้อมูลด้วยไอคอน Paint Data (Creating Data using Paint Data Icon)..............................94 Support Vector Machine (SVM).........................................................................................................97 Kernel Function ที่ใช้ใน SVM (SVM Kernel Functions)..............................................................98 Neural Network................................................................................................................................ 105 Deep Neural Network.................................................................................................................. 109 กรวิเคระห์รูปภพ (Image Analytics)............................................................................................ 111 Deep Convolutional Neural Network (Deep CNN)..................................................................... 116 Inception v3................................................................................................................................. 116 VGG-16........................................................................................................................................118
VGG-19........................................................................................................................................119 กรจัดหมวดหมู่รูปภพใบหน้ (Face Image Classification)............................................................ 121 OpenFace..................................................................................................................................... 123
สมรถดวน์โหลดตัวอย่งโปรแกรม และหนังสือเล่มนี้ ได้จกเว็บไซต์ github https://github.com/mrolarik/Orange-visualprogramming
กรติดตั้ง (Installation)
•
สมรถดวน์โหลด Orange ได้จกเว็บไซต์ https://orange.biolab.si
•
คลิกที่เมนู Download หรือที่ปุ่ม Download Orange
•
สมรถเลือกดวน์โหลดโปรแกรมได้ทั้งหมด 3 OS ประกอบด้วย Windows, macOS และ Linux / Source เมื่อเลือก OS เสร็จเรียบร้อย จกนั้นให้เลือกที่ Download Orange
•
2 Orange: A Visual Programming Tool for Machine Learning and Data Analytics • •
จกนั้นไฟล์โปรแกรมที่ดวน์โหลดจะถูกเก็บไว้ที่โฟลเดอร์ Downloads ตัวอย่งได้ดวน์โหลดไฟล์ของ macOS โดยไฟล์ชื่อ Orange3-3.140.dmg โดยที่ 3.14.0 คือ version ของโปรแกรม orange ที่ได้ดวน์โหลด
• •
จกนั้นให้ดับเบิ้ลคลิกที่ไฟล์ Orange3-3.14.0.dmg เพื่อติดตั้งโปรแกรม เมื่อติดตั้งเสร็จเรียบร้อยสมรถเปิดโปรแกรมขึ้นมใช้งน โดยโปรแกรมที่ติดตั้งเรียกว่ Orange3
A Guide to Mastering Orange for Research 3
•
เมื่อคลิกเปิดโปรแกรมจะแสดงโลโก้ของโปรแกรม
•
เมื่อแสดงโลโก้ของโปรแกรมเสร็จเรียบร้อยจะเปิดโปรแกรม Orange เพื่อให้ใช้งน
4 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
เริ่มต้นใช้งน Orange (Getting Started with Orange) •
เมื่อเรียกโปรแกรม Orange จะแสดงหน้ต่ง Welcome to Orange Data Mining
•
จกหน้ต่ง Welcome to Orange Data Mining สมรถเลือกเมนูต่ง ๆ เช่น ◦ สร้งไฟล์ใหม่ (New) ◦ เปิดไฟล์เก่ (Open) ◦ เปิดไฟล์ล่สุด (Recent) ◦ เปิดดูตัวอย่ง (Examples)
เปิดดูตัวอย่ง (Examples) •
ในกรณีที่คลิกที่ Examples จะปรกฎตัวอย่งในกรทงนของโปรแกรม Orange ดังตัวอย่ง ต่อไปนี้
6 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
A Guide to Mastering Orange for Research 7
•
เมื่อเลือกตัวอย่งที่ต้องกร ให้คลิกที่ปุ่ม Open เพือเปิดดูตัวอย่งนั้น
เปิดไฟล์เก่ (Open) •
หกต้องกรเปิดไฟล์เดิมที่มีอยู่แล้วสมรถคลิกที่ Open
8 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
• •
เมื่อคลิกที่ปุ่ม Open โปรแกรมจะให้เลือกไฟล์ของโปรแกรม Orange ซึ่งไฟล์จะมีนมสกุล .ows จกนั้นคลิกที่ปุ่ม Open เพื่อเปิดไฟล์ที่ต้องกรจะทงน
สร้งไฟล์ใหม่ (New) • •
•
หกต้องกรสร้งไฟล์ใหม่สมรถคลิกที่ New เมื่อคลิกที่ New จกนั้นจะปรกฎหน้ต่ง Workflow Info ให้พิมพ์รยละเอียดของโปรเจคที่ ต้องกรจะทงน ประกอบด้วย Title และ Description ◦ Title - ชื่อของโปรเจค ◦ Description – รยละเอียดของโปรเจค เมื่อพิมพ์รยละเอียดที่ต้องกรให้คลิกที่ปุ่ม OK เพื่อเริ่มต้นกรทงน
A Guide to Mastering Orange for Research 9
•
เมื่อคลิกที่ OK จะปรกฎโปรแกรม Orange ที่พร้อมทงน
10 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
กล่องเครื่องมือ (Toolbox) Data
Visualize
Model
A Guide to Mastering Orange for Research 11
Evaluate
Unsupervised
12 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
ไฟล์และตรงข้อมูล (File and Data Table) ตัวอย่งไฟล์และตรงข้อมูล (Example of File and Data Table) •
คลิกที่เมนู Help > Examples โปรแกรม Orange จะเปิดตัวอย่งของกรใช้โปรแกรม
•
จกนั้นให้เลือกที่ File and Data Table และกดที่ปุ่ม Open
14 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
•
เมื่อคลิกที่ Open จะปรกฎตัวอย่งกรใช้งนไอคอน (Icon) หรือวิดเจท (Widget) File และ Data Table
จกตัวอย่งเริ่มต้นโดย • ดับเบิ้ลคลิกที่ไอคอน File จกนั้นจะปรกฎหน้ต่งที่แสดงชุดข้อมูล (Dataset) ◦ ในตัวอย่งนี้จะเป็นชุดข้อมูลที่ชื่อ iris ซึ่งเป็นชุดข้อมูลดอกไม้ที่ประกอบไปด้วย 4 attribute และ 3 class
A Guide to Mastering Orange for Research 15
• •
หกต้องกรเลือกข้อมูลชุดอื่นสมรถทได้โดยคลิกที่รูปโฟลเดอร์ จกนั้นจะปรกฎหน้ต่งให้เลือกข้อมูลชุดอื่น
• • •
เมื่อเลือกชุดข้อมูลเสร็จเรียบร้อยให้คลิกที่ปุ่ม Open ในกรณีนี้ เลือกใช้ข้อมูลชุด iris จกนั้นให้ดับเบิ้ลคลิกที่ไอคอน Data Table จะปรกฎหน้ต่งดังต่อไปนี้
16 Orange: A Visual Programming Tool for Machine Learning and Data Analytics •
โดยหน้ต่งจะแสดงข้อมูลทั้งหมดของชุดข้อมูล iris ซึ่งประกอบด้วยข้อมูลทั้งสิ้น 150 ชุด ◦ ข้อมูลแต่ละแถว (Instance) จะประกอบไปด้วย 4 attribute / feature คือ ▪ Sepal length ▪ Sepal width ▪ Petal length ▪ Petal width ◦ ข้อมูลมีทั้งหมด 3 กลุ่ม (Class / Label) ประกอบด้วย ▪ iris-setosa ▪ iris-versicolor ▪ iris-virginica
[ที่ม: https://rpubs.com/wjholst/322258] ◦
เพิ่มไอคอน Visualize (Add Visualize Icon) • •
จกนั้นทกรเพิ่มไอคอน Visualize เพื่อที่จะดูลักษณะของข้อมูลของ iris dataset ทได้โดยเลือกที่แทป (Tab) Visualize และคลิกที่ไอคอน Scatter Plot จกนั้น Scatter Plot จะ ไปปรกฎใน Workflow ของโปรแกรม
A Guide to Mastering Orange for Research 17
•
ดับเบิ้ลคลิกที่ไอคอน Scatter Plot เพื่อดูกรฟ ◦ โดยกรฟแสดงให้เห็นถึงกรกระจยของข้อมูล
18 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
กรแสดงข้อมูลเชิงโต้ตอบ (Interactive Visualizations) • • •
ในส่วนนี้เป็นกรแสดงให้เห็นถึงวิธีกรแสดงข้อมูลแบบ Visualization คลิกที่เมนู Help > Examples โปรแกรม Orange จะเปิดตัวอย่งของกรใช้โปรแกรม ให้คลิกเลือก Interactive Visualizations และคลิกที่ปุ่ม Open
•
เมื่อคลิกที่ Open จะปรกฎตัวอย่งกรใช้งน Interactive Visualizations ดังตัวอย่งต่อไปนี้
20 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
ขั้นตอนในกรท Interactive Visualizations ทได้ด ังต่อไปนี้ • ดับเบิ้ลคลิกที่ไอคอน File เพื่อเลือกชุดข้อมูลที่ต้องกรใช้งน ◦ ตัวอย่งกหนดให้ใช้ชุดข้อมูล iris
•
ขั้นตอนต่อไปดับเบิ้ลคลิกที่ไอคอน Scatter Plot โปรแกรมจะแสดงหน้ต่งเพื่อแสดงข้อมูล แบบ Visualization
A Guide to Mastering Orange for Research 21
•
จกหน้ต่งข้งต้นสมรถ คลิกข้อมูลแต่ละจุด หรือ ใช้เมส์คลิกเพื่อเลือกข้อมูลแบบกลุ่ม ◦ ตัวอย่งแสดงให้เห็นถึงกรเลือกข้อมูลบงส่วน จกนั้นให้คลิกเพื่อปิดหน้ต่ง
22 Orange: A Visual Programming Tool for Machine Learning and Data Analytics •
จกนั้นดับเบิ้ลคลิกที่ไอคอน Data Table ◦ โปรแกรมจะเปิดหน้ต่ งเพื่อแสดงข้อมูลที่ได้เลือกไว้ในขั้นตอน Scatter Plot
กรแสดงข้อมูลย่อย (Visualizations of Data Subsets) • • •
ในส่วนนี้แสดงให้เห็นถึงกร Visualization ของชุดข้อมูลย่อย คลิกที่เมนู Help > Examples โปรแกรม Orange จะเปิดตัวอย่งของกรใช้โปรแกรม ให้คลิกเลือก Visualization of Data Subsets และคลิกที่ปุ่ม Open
•
เมื่อคลิกที่ Open จะปรกฎตัวอย่งกรใช้งน Visualization of Data Subsets ดังตัวอย่งต่อไป นี้
24 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
ขั้นตอนในกรท Visualization of Data Subsets ทได้ดังต่อไปนี้ • ดับเบิ้ลคลิกที่ไอคอน File เพื่อเลือกชุดข้อมูลที่ต้องกรใช้งน ในตัวอย่งใช้ข้อมูล iris • ดับเบิ้ลคลิกที่ไอคอน Data Table และเลือกข้อมูลที่ต้องกรนไป Visualization
A Guide to Mastering Orange for Research 25
•
ดับเบิ้ลคลิกที่ เส้นเชื่อมต่อระหว่ง Data Table และ Scatter Plot ◦ ให้สังเกตกรเชื่อม (Link) ข้อมูลระหว่ง Data Table และ Scatter Plot
•
สุดท้ย ดับเบิ้ลคลิกที่ Scatter Plot เพื่อดูข้อมูลชุดย่อยที่ได้เลือกไว้
26 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
กรแสดงรยละเอียดข้อมูล (Data Information) •
หกต้องกรทรบรยละเอียด (Information) ของข้อมูลที่นมใช้งน สมรถทได้โดยเลือก ที่ไอคอน Data Info โดยทตม workflow ดังต่อไปนี้
28 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
กรแสดงกรกระจยข กรแสดงกรกระจยข้้อมูล (Data Distributions)
•
โปรแกรม Orange มีเครื่องมือ (Tool) ที่ช่วยให้ผู้ใช้งนสมรถดูกรกระจยของข้อมูล เช่น จนวนของข้อมูลในแต่ละ Class จนวนของข้อมูลในแต่ละ Attribute เป็นต้น ผู้ใช้งนสมรถเห็นข้อมูลในลักษณะ Visualize ทให้เข้ใจลักษณะของข้อมูลมกขึ้น
•
กรกระจยข้อมูล สมรถทได้ดัง workflow ต่อไปนี้
• • •
ในกรณีนี้ ข้อมูลที่นมใช้เพื่อแสดงกรกระจยคือชุดข้อมูล iris ผู้ใช้งนสมรถดับเบิ้ลคลิกที่ไอคอน File และเลือกชุดข้อมูลที่ต้องกรแสดงได้ตมต้องกร จกนั้นดับเบิ้ลคลิกที่ไอคอน Distributions จะปรกฎหน้ต่งดังตัวอย่งต่อไปนี้
•
ตัวอย่งข้งต้น แสดงให้เห็นถึงกรกระจยข้อมูลของ Attribute ที่ชื่อ Sepal Length ทให้รู้ถึง ช่วงควมกว้งของ Sepal (Sepal Length) ของดอกไม้ iris ในแต่ละสยพันธุ์ (Setosa, Versicolor และ Virginica) เป็นต้น
•
30 Orange: A Visual Programming Tool for Machine Learning and Data Analytics •
ตัวอย่งต่อไปแสดงให้เห็นถึงจนวนของสยพันธุ์ดอกไม้ iris ในแต่ละ Class โดยในชุดข้อมูล iris มีจนวนดอกไม้ 150 ดอก แบ่งออกเป็น 3 Class และมี Class ละ 50 ดอก
A Guide to Mastering Orange for Research 31
•
ตัวอย่งต่อไปนี้ แสดงให้เห็นถึงกรกระจยข้อมูลของสัตว์แต่ละประเภท
32 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
กรประมวลผลข้อมูลเบื้องต้น (Data Preprocessing)
•
กรประมวลผลข้อมูลเบื้องต้น คือกรเตรียมข้อมูลให้พร้อมสหรับกรเรียนรู้ เช่น ◦ บงครั้งข้อมูลที่จะนมใช้มีข้อมูลบงส่วนที่สูญหยไป เรียกว่ Missing Value ◦ ข้อมูลที่จะนมใช้ยังไม่ผ่นกร Normalize ให้อยู่ในช่วงข้อมูลเดียวกัน ◦ ข้อมูลที่นมใช้มีจนวน Feature/Attribute เยอะจนเกินไป อจต้องใช้วิธีกร เช่น เลือก Feature ที่มีควมสัมพันธ์ (Relevant) หรือใช้วิธี PCA เพื่อห Component ที่เหมะสมที่สุด
•
ตัวอย่งต่อไปนี้ เป็นกรประมวลผลข้อมูลเบื้องต้น โดยกร Normalize ข้อมูล Feature สมรถ ทได้ดัง workflow ต่อไปนี้
•
ตัวอย่งเลือกใช้ข้อมูล iris ในกรทดสอบ สมรถทได้โดยดับเบิ้ลคลิกที่ไอคอน File และ เลือกที่ข้อมูล iris ดับเบิ้ลคลิกที่ไอคอน Data Table เพื่อดูชุดข้อมูล iris ก่อนกรเปลี่ยนแปลง
•
34 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
•
จกนั้นดับเบิ้ลคลิกที่ไอคอน Preprocess
A Guide to Mastering Orange for Research 35
• •
จกตัวอย่งข้งต้น ได้เลือกใช้วิธีกร Preprocess ด้วยวิธีกร Normalize ข้อมูล ◦ วิธีกรเลือกคือใช้เมส์คลิก วิธีกรทงฝั่งซ้ย และนมวงหน้ต่งทงฝั่งขวมือ จกนั้นดับเบิ้ลคลิกที่ไอคอน Data Table (1) เพื่อดูกรเปลี่ยนแปลงของข้อมูล
36 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
ต้นไม้จแนก (Classification Tree) • • •
ในส่วนนี้แสดงให้เห็นถึงวิธีกรจแนก (Classification) ข้อมูลด้วยวิธีต้นไม้ (Tree) คลิกที่เมนู Help > Examples โปรแกรม Orange จะเปิดตัวอย่งของกรใช้โปรแกรม ให้คลิกเลือก Classification Tree และคลิกที่ปุ่ม Open
•
เมื่อคลิกที่ Open จะปรกฎตัวอย่งกรใช้งน Classification Tree ดังตัวอย่งต่อไปนี้
38 Orange: A Visual Programming Tool for Machine Learning and Data Analytics
ขั้นตอนในกรท Classification Tree ทได้ดัง ต่อไปนี้ • ดับเบิ้ลคลิกที่ไอคอน File เพื่อเลือกชุดข้อมูลที่ต้องกรใช้งน ในตัวอย่งใช้ข้อมูล iris • ดับเบิ้ลคลิกที่ไอคอน Scatter Plot เพื่อดูข้อมูลแบบ Visualize • ดับเบิ้ลคลิกที่ไอคอน Classification Tree จะปรกฎหน้ต...