K-Nearest Neighbour Algorithm

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
ระบบสมการเชิงเส้น F M B N เสถียร วิเชียรสาร.
Advertisements

ครั้งที่ 9 Function(ต่อ).
คณิตศาสตร์ประยุกต์ 2 ค่ามัธยฐาน จัดทำโดย อ.เทวี บัวแย้ม.
ป.2 บทที่ 1 “จำนวนนับ ไม่เกิน1,000”
ป.3 บทที่ 1 “จำนวนนับ ไม่เกิน100,000”
บทที่ 6 การใช้สีสำหรับเว็บไซต์
ลิมิตและความต่อเนื่อง
ตารางแฮช Hash Table.
สถิติ และ การวิเคราะห์ข้อมูล
การทดสอบไคกำลังสอง (Chi-square)
สมการเชิงเส้นตัวแปรเดียว
ป.4 บทที่ 1 “จำนวนนับ เกิน100,000”
การวิเคราะห์ข้อสอบ อาจารย์ปรีชา เครือวรรณ อาจารย์สมพงษ์ พันธุรัตน์
Hashing Function มีหลายฟังก์ชั่น การเลือกใช้ขึ้นอยู่กับความเหมาะสมของข้อมูล ตัวอย่างของฟังก์ชั่นแฮชมีดังนี้ 1. Mod คือการนำค่าคีย์มา mod ด้วยค่า n ใด.
Control structure part II
Functional programming part II
ทฤษฏีพฤติกรรมผู้บริโภค
การเรียงลำดับและการค้นหาแบบง่าย
Decision Tree.
การวิเคราะห์ข้อมูลโดยสถิติเชิงพรรณนา (Descriptive Statistics)
การจัดเรียงข้อมูล Sorting.
จำนวนนับ และการบวก การลบ การคูณ การหารจำนวนนับ
อสมการ.
การประยุกต์สมการเชิงเส้นตัวแปรเดียว
จำนวนจริง F M B N ขอบคุณ เสถียร วิเชียรสาร.
บทที่ 4 การตัดสินใจในการเขียนโปรแกรม
PHP LANGUAGE.
คณิตศาสตร์และสถิติธุรกิจ
Chapter 3 Graphics Output primitives Part II
Image Processing & Computer Vision
Image Processing & Computer Vision
กลุ่มสาระการเรียนรู้คณิตศาสตร์ โรงเรียนอัสสัมชัญอุบลราชธานี
Digital Image Processing Part 3 – Pixel Relationship
การควบคุมทิศทางการทำงานของโปรแกรม
วิธีการทำงานของผังงาน
บทที่ 4 การโปรแกรมเชิงเส้น (Linear Programming)
ตัวอย่างงานวิจัย องค์ประกอบที่มีความสัมพันธ์กับการใช้ห้องสมุดของนักเรียนมัธยมศึกษา ตารางที่ 4-7 ตารางที่
2.5 ตัวแปรชุดมิติเดียวและตัวแปรชุดสองมิติ
จำนวนทั้งหมด ( Whole Numbers )
ระบบจำนวนเต็ม โดย นางสาวบุณฑริกา สูนานนท์
การใช้งานเบื้องต้นของเครื่องคิดเลขทางการเงิน
(Applications of Derivatives)
สถิติเชิงสรุปอ้างอิง(Inferential or Inductive Statistics)
ครูรัตติยา บุญเกิด.
คณิตศาสตร์คอมพิวเตอร์
การวัดการกระจาย (Measures of Dispersion)
ภาควิชาวิศวกรรมไฟฟ้า คณะวิศวกรรมศาสตร์ มหาวิทยาลัยสยาม
สัปดาห์ที่ 7 การแปลงลาปลาซ The Laplace Transform.
การแจกแจงปกติ NORMAL DISTRIBUTION
การแจกแจงปกติ.
การใช้ Word เพื่อการคำนวณ
การวิเคราะห์กลุ่ม (Cluster Analysis)
รู้จักกับTimeline, Layer และ Scene รู้จักกับTimeline, Layer และ Scene
Week 10 การเขียนโปรแกรมเบื้องต้น #2
ค21201 คณิตศาสตร์เพิ่มเติม 1
Classification Data mining การทำเหมืองข้อมูลแบบจำแนก
PHP การตรวจสอบเงื่อนไข.
Week 11 Basic Programs 2.
การสร้างแบบสอบถาม และ การกำหนดเงื่อนไข.
adversarial Search Techniques
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
การทำเหมืองข้อมูล (Data Mining)
หลักการเขียนโปรแกรม ( )
Chi-Square Test การทดสอบไคสแควร์ 12.
เรื่อง จัดทำโดย กราฟ นายเทวา หาระโคตร ปวช.2 กลุ่ม.2 คอมพิวเตอร์ธุรกิจ
ขอนำเสนอ แผนภูมิกราฟ.
หลักการเขียนโปรแกรมเบื้องต้น
การจัดเรียงข้อมูล (sorting)
ตัวอย่าง : ประสิทธิภาพในการผลิต คำถาม : ให้การผลิตสินค้าชนิดหนึ่งมีผู้ผลิต 2 ราย ที่มี Production function เหมือนกันดังนี้ q = K 0.25 L 0.75 ราย A ใช้
ใบสำเนางานนำเสนอ:

K-Nearest Neighbour Algorithm

Introduction K-Nearest Neighbour คือ วิธีการในการจัดแบ่งคลาส เทคนิคนี้จะ ตัดสินใจ ว่าคลาสใดที่จะแทนเงื่อนไขหรือกรณีใหม่ๆ ได้บ้าง โดยการ ตรวจสอบจำนวนบางจำนวน (“K” ใน K-nearest neighbor) ของ กรณีหรือเงื่อนไขที่เหมือนกันหรือใกล้เคียงกันมากที่สุด โดยจะหาผลรวม (Count Up)ของจำนวนเงื่อนไข หรือกรณีต่างๆสำหรับแต่ละคลาส และ กำหนดเงื่อนไขใหม่ๆ ให้คลาสที่เหมือนกันกับคลาสที่ใกล้เคียงกันมากที่สุด

Introduction(2) ในการนำเทคนิคของ  K-NN ไปใช้ในนั้นเป็นการหาวิธีการวัด ระยะห่างระหว่างแต่ละAttributeในข้อมูลให้ได้ และจากนั้นคำนวณค่า ออกมา ซึ่งวิธีนี้จะเหมาะสำหรับข้อมูลแบบตัวเลข แต่ตัวแปรที่เป็นค่าแบบไม่ ต่อเนื่องนั้นก็สามารถทำได้ เพียงแต่ต้องการการจัดการแบบพิเศษเพิ่มขึ้น อย่างเช่น ถ้าเป็นเรื่องของสี เราจะใช้อะไรวัดความแตกต่างระหว่างสีน้ำเงิน กับสีเขียว ต่อจากนั้นเราต้องมีวิธีในการรวมค่าระยะห่างของ Attribute ทุกค่าที่วัดมาได้ เมื่อเราสามารถคำนวณระยะห่างระหว่างเงื่อนไขหรือกรณี ต่างๆ ได้จากนั้นเราเลือกชุดของเงื่อนไข ที่ใช้จัดคลาสมาเป็นฐานสำหรับการ จัดคลาสในเงื่อนไขใหม่ๆ ได้แล้วเราจะตัดสินได้ว่าขอบเขตของจุดข้างเคียงที่ ควรเป็นนั้น ควรมีขนาดใหญ่เท่าไร และอาจตัดสินใจได้ด้วยว่าจะนับจำนวน จุดข้างเคียงตัวมันได้อย่างไร

TWO MAIN OPERATION Distance Function เป็นการคำนวณค่าระยะห่างระหว่างสองเรคคอร์ด เพื่อที่จะมาวัด ความคล้ายคลึงกันของข้อมูล Combination Function เป็นการรวมกันของผลลัพธ์ที่ได้จากการคำนวณค่าDistance โดยทำ การเรียงลำดับค่าDistanceจากน้อยไปมาก หลังจากนั้นดูจากค่า “K” ว่ากำหนดเป็นเท่าไร แล้วนำลำดับที่เรียงได้มาเทียบกับคลาสข้อมูลที่ เรียงแล้วนำมาตอบ

คุณสมบัติของDISTANCE FUNCTION ค่าระยะทาง(ความห่าง)ที่คำนวณได้ต้องไม่ติดลบ ถ้าตำแหน่งเดียวกันฟังก์ชันต้องเป็นศูนย์(ค่าเหมือนกัน) การคำนวณวัดระยะทางไปกลับต้องเท่ากัน

การคำนวณค่า DISTANCE FUNCTION ใส่ค่าสัมบูรณ์(Absolute)ให้กับค่าDistance: |A-B| ยกกำลังสองให้กับค่าDistance: (A-B)2 ทำการNormalized Absolute Value: |A-B|/(maximum difference) ทำการปรับให้เป็นค่ามาตรฐาน: |(A-mean)/(SD)-(B-mean)/(SD)|

การรวมค่า DISTANCE ใน Record Manhattan distance or summation: เป็นการนำค่าที่คำนวณได้ในหนึ่งRecordมารวมกัน Normalized summation: เป็นการนำค่าที่ได้จากข้อแรกมาหารด้วยค่าMaxของAttribute Euclidean distance: เป็นการหารากที่สอง(Square Root)ในแต่ละAttributeแล้วนำมา รวมกัน แล้วนำค่าที่คำนวณได้ในหนึ่งRecordมารวมกัน

Case Study No. Gender Age Salary inactive 1 F 27 19,000 No 2 M 51 64,000 Yes 3 52 105,000 4 33 55,000 5 45 45,000 new 100,000 ???

Case Study(2) Identical Gender |A-B| Age Salary Distance dsum d(1,n) 18 81,000 81018 d(2,n) 1 6 36,000 36007 d(3,n) 7 5,000 5008 d(4,n) 12 45,000 45012 d(5,n) 55,000 55001 >>> เรียงdsumจากน้อยไปหามากจะได้เป็น 3 2 4 5 1

Case Study(3) Identical Gender |A-B| Age Salary Distance dnormal 18 81,000 1 d(2,n) 6 36,000 0.444432102 d(3,n) 7 5,000 0.061813424 d(4,n) 12 45,000 0.555580241 d(5,n) 55,000 0.678873831 >>> เรียงdsumจากน้อยไปหามากจะได้เป็น 3 2 4 5 1

Case Study(4) Identical Gender |A-B| Age |A-B| Salary Distance deuclid d(1,n) 18 81,000 6,561,000,324 d(2,n) 1 6 36,000 1,296,000,037 d(3,n) 7 5,000 25,000,050 d(4,n) 12 45,000 2,025,000,144 d(5,n) 55,000 3,025,000,001 >>> เรียงdsumจากน้อยไปหามากจะได้เป็น 3 2 4 5 1

Case Study(5) Neigh-bour Neighbour Attribute K=1 K=2 K=3 K=4 K=5 dsum 3,2,4,5,1 Y,Y,Y,N,N Yes dnormal Deu-clid

การวัดค่าPerformance สมมติข้อมูลค่าTrainingคือ No. Gender Age Salary inactive 1 F 27 19,000 No 2 M 51 64,000 Yes 3 52 105,000 4 33 55,000 5 45 45,000 new_1 100,000 new_2 35 55,500 new_3 48

การวัดค่าPerformance(2) New_1 New_2 New_3 Performance K=1 Y N 2/3x100 = 66.67% K=2 ??? 1/3x100 = 33.33% K=3 3/3x100 = 100% ควรจะเลือก K = 3 เนื่องจากมีค่าPerformanceมากที่สุด

ข้อดี-ข้อเสียของ KNN ข้อเสีย ข้อดี หากเงื่อนไขการตัดสินใจมีความซับซ้อนวิธีนี้สามารถสร้างโมเดล ที่มีประสิทธิภาพได้ ข้อเสีย ใช้ระยะเวลาในการคำนวณนาน ถ้าAttributeมีจำนวนมากจะเกิดปัญหาในการคำนวณค่า