ในกรณีใดดีกว่าที่จะใช้แผนผังการตัดสินใจและกรณีอื่นเป็น KNN
เหตุใดจึงต้องใช้หนึ่งในนั้นในบางกรณี และอื่น ๆ ในกรณีที่แตกต่างกันอย่างไร (โดยดูที่ฟังก์ชันการทำงานไม่ใช่ที่อัลกอริทึม)
ใครมีคำอธิบายหรือการอ้างอิงเกี่ยวกับเรื่องนี้บ้าง?
ในกรณีใดดีกว่าที่จะใช้แผนผังการตัดสินใจและกรณีอื่นเป็น KNN
เหตุใดจึงต้องใช้หนึ่งในนั้นในบางกรณี และอื่น ๆ ในกรณีที่แตกต่างกันอย่างไร (โดยดูที่ฟังก์ชันการทำงานไม่ใช่ที่อัลกอริทึม)
ใครมีคำอธิบายหรือการอ้างอิงเกี่ยวกับเรื่องนี้บ้าง?
คำตอบ:
พวกเขาตอบสนองวัตถุประสงค์ที่แตกต่าง
KNN ไม่ได้รับการดูแล Decision Tree (DT) ได้รับการดูแล ( KNN ได้รับการดูแลการเรียนรู้ในขณะที่ K-mean ไม่ได้รับการดูแลฉันคิดว่าคำตอบนี้ทำให้เกิดความสับสน ) KNN ใช้สำหรับการรวมกลุ่ม, DT เพื่อการจัดหมวดหมู่ ( ทั้งคู่ใช้สำหรับการจัดหมวดหมู่ )
KNN กำหนดย่านที่คุ้นเคยดังนั้นจะต้องมีการวัดระยะทาง หมายความว่าฟีเจอร์ทั้งหมดจะต้องเป็นตัวเลข การวัดระยะทางอาจได้รับผลกระทบจากสเกลที่แตกต่างกันระหว่างคุณลักษณะและพื้นที่มิติสูง
ในทางกลับกัน DT ทำนายคลาสสำหรับอินพุตเวกเตอร์ที่กำหนด คุณลักษณะอาจเป็นตัวเลขหรือระบุ
ดังนั้นหากคุณต้องการค้นหาตัวอย่างที่คล้ายกันคุณสามารถใช้ KNN หากคุณต้องการจำแนกตัวอย่างคุณสามารถใช้ DT
knn
และk-means
เป็นอัลกอริธึมที่แตกต่างกันและคำตอบนี้โชคไม่ดี (และผิดพลาด) พลาดทั้งสองขั้นตอนขึ้นไป knn
ไม่มีการสำรองหรือใช้สำหรับการรวมกลุ่ม! ดูQ: Diff kNN และ kMean
ตัวแยกประเภทเช่นDecision Tree, Bayesian, Back-propagation, Support Vector Machineมาอยู่ในหมวดหมู่ของ"Eager Learners"เพราะพวกเขาสร้างแบบจำลองการจำแนกในชุดข้อมูลการฝึกอบรมก่อนที่จะสามารถจำแนกการสังเกต [unseen] จากชุดข้อมูลทดสอบได้ รูปแบบการเรียนรู้ในขณะนี้คือ "กระตือรือร้น" (อ่านหิว) เพื่อจำแนกการสังเกตที่มองไม่เห็นก่อนหน้านี้จึงชื่อ
อย่างไรก็ตามตัวจําแนกที่ใช้ KNN ไม่ได้สร้างรูปแบบการจัดประเภทใด ๆ มันเรียนรู้โดยตรงจากอินสแตนซ์การฝึกอบรม (การสังเกต) มันเริ่มต้นประมวลผลข้อมูลหลังจากได้รับการสังเกตการทดสอบเพื่อจัดประเภทแล้ว ดังนั้น KNN มาภายใต้หมวดหมู่ของ"ขี้เกียจเรียน"วิธีการ
จากความแตกต่างพื้นฐานด้านบนเราสามารถสรุปได้ดังนี้: -
เนื่องจาก KNN ทำการเรียนรู้ ณ จุดนั้นจึงต้องใช้การค้นหาฐานข้อมูลบ่อยครั้งดังนั้นอาจมีค่าใช้จ่ายในการคำนวณ ตัวตัดสินใจลักษณนามของต้นไม้ไม่ต้องการการค้นหาดังกล่าวเนื่องจากมีรูปแบบการจัดหมวดหมู่ในหน่วยความจำพร้อม
เนื่องจาก KNN ทำการเรียนรู้ตามอินสแตนซ์ K ที่ได้รับการปรับแต่งอย่างดีสามารถจำลองพื้นที่การตัดสินใจที่ซับซ้อนซึ่งมีขอบเขตการตัดสินใจที่ซับซ้อนโดยพลการซึ่งไม่ได้เป็นแบบอย่างโดยผู้เรียน "กระตือรือร้น" คนอื่น ๆ เช่น Decision Trees
ผู้เรียน "กระตือรือร้น" ทำงานเป็นกลุ่มโดยการสร้างแบบจำลองกลุ่มการสังเกตการฝึกอบรมครั้งละกลุ่ม ดังนั้นพวกเขาจึงไม่เหมาะสำหรับการเรียนรู้ที่เพิ่มขึ้น แต่ KNN สนับสนุนการเรียนรู้แบบเพิ่มหน่วย (สตรีมข้อมูล) ตามธรรมชาติเนื่องจากเป็นผู้เรียนแบบใช้อินสแตนซ์
นอกจากนี้ตัวจําแนก KNN ยังให้อัตราความผิดพลาดในการทดสอบใกล้เคียงกับตัวจําแนกเบส์ (มาตรฐานทองคำ) ตามที่ยกมาในISLR :
อัตราความผิดพลาดของ Bayes นั้นคล้ายคลึงกับข้อผิดพลาดที่ลดลงไม่ได้
จากการเรียนรู้ของเครื่อง Pythonของ Sebastian Raschka :
ข้อได้เปรียบหลักของวิธีการใช้หน่วยความจำ [KNN] คือตัวจําแนกจะปรับทันทีเมื่อเรารวบรวมข้อมูลการฝึกอบรมใหม่ อย่างไรก็ตามข้อเสียคือความซับซ้อนในการคำนวณสำหรับการจัดกลุ่มตัวอย่างใหม่เพิ่มขึ้นเป็นเส้นตรงกับจำนวนตัวอย่างในชุดข้อมูลการฝึกอบรมในสถานการณ์ที่เลวร้ายที่สุดกรณีที่ชุดข้อมูลมีมิติน้อยมาก (คุณสมบัติ) และอัลกอริทึมถูกนำมาใช้ โครงสร้างเช่นต้นไม้ KD JH Friedman, JL Bentley และ RA Finkel อัลกอริทึมสำหรับการค้นหาคู่ที่ดีที่สุดในเวลาที่คาดการณ์ลอการิทึม ธุรกรรม ACM เกี่ยวกับซอฟต์แวร์ทางคณิตศาสตร์ (TOMS), 3 (3): 209–226, 1977 นอกจากนี้เราไม่สามารถละทิ้งตัวอย่างการฝึกอบรมได้เนื่องจากไม่มีขั้นตอนการฝึกอบรมที่เกี่ยวข้อง ดังนั้นพื้นที่เก็บข้อมูลอาจกลายเป็นเรื่องท้าทายหากเราทำงานกับชุดข้อมูลขนาดใหญ่
ต้นไม้การตัดสินใจสามารถจำแนกตัวอย่างใหม่ได้อย่างรวดเร็ว คุณแค่ใช้ชุดการเปรียบเทียบบูลีน
ฉันจะเพิ่มต้นไม้การตัดสินใจที่สามารถใช้สำหรับงานการจำแนกและการถดถอย ในอีกทางหนึ่ง DT คาดการณ์คลาสในคำตอบที่ยอมรับจะมีความเฉพาะเจาะจงมากขึ้นโดยการอธิบายต้นไม้ประเภทซึ่งเป็นเทคนิคย่อยของแนวคิด DT ทั่วไป การอ้างอิงหนึ่งรายการ (ละเว้นเลเยอร์ด้านล่างที่กล่าวถึงการใช้งานเฉพาะ):
จากที่นี่: http://www.simafore.com/blog/bid/62482/2-main-differences-between-classification-and-regression-trees