AI 101
อะไรคือ Machine Learning?

Machine learning เป็นหนึ่งในสาขาเทคโนโลยีที่เติบโตเร็วที่สุด แต尽管คำว่า “machine learning” ถูกใช้บ่อย แต่ก็ยากที่จะเข้าใจว่า machine learning คืออะไรอย่างแน่นอน
Machine learning ไม่ได้หมายถึงสิ่งเดียว มันเป็นคำที่ครอบคลุมหลายแนวคิดและเทคนิค การเข้าใจ machine learning หมายถึงการคุ้นเคยกับการวิเคราะห์แบบจำลอง ตัวแปร และอัลกอริทึม มาทำความเข้าใจ machine learning กันเพื่อเข้าใจว่ามันครอบคลุมอะไร
อะไรคือ Machine Learning?
แม้ว่าคำว่า machine learning จะใช้ได้กับหลายสิ่ง แต่โดยทั่วไปแล้ว หมายถึงการทำให้คอมพิวเตอร์สามารถทำงานได้โดยไม่ต้องได้รับคำสั่งแบบบรรทัดต่อบรรทัด มืออาชีพด้าน machine learning ไม่ต้องเขียนคำสั่งทั้งหมดที่จำเป็นในการแก้ปัญหาเพราะคอมพิวเตอร์สามารถ “เรียนรู้” ได้โดยการวิเคราะห์รูปแบบภายในข้อมูลและทั่วไปของรูปแบบเหล่านั้นไปยังข้อมูลใหม่
ระบบ machine learning มีส่วนประกอบพื้นฐาน 3 ส่วน:
- ข้อมูลเข้า
- อัลกอริทึม
- ข้อมูลออก
ข้อมูลเข้าเป็นข้อมูลที่ป้อนเข้าไปในระบบ machine learning และข้อมูลเข้าสามารถแบ่งออกเป็นป้ายกำกับและคุณลักษณะ คุณลักษณะคือตัวแปรที่เกี่ยวข้อง ซึ่งจะถูกวิเคราะห์เพื่อเรียนรู้รูปแบบและสรุปผล ในขณะที่ป้ายกำกับเป็นชั้นเรียน/คำอธิบายที่ให้กับกรณีของข้อมูลแต่ละรายการ
คุณลักษณะและป้ายกำกับสามารถใช้ได้ในสองประเภทของปัญหา machine learning: การเรียนรู้แบบมีคำแนะนำและแบบไม่มีคำแนะนำ
การเรียนรู้แบบไม่มีคำแนะนำ vs การเรียนรู้แบบมีคำแนะนำ
ในการเรียนรู้แบบมีคำแนะนำ ข้อมูลเข้าจะ伴随ด้วยความจริงบนพื้นฐาน การเรียนรู้แบบมีคำแนะนำจะมีค่าผลลัพธ์ที่ถูกต้องเป็นส่วนหนึ่งของชุดข้อมูล ดังนั้นชั้นเรียนที่คาดหวังจึงทราบล่วงหน้า ซึ่งทำให้สามารถตรวจสอบประสิทธิภาพของอัลกอริทึมได้โดยการทดสอบข้อมูลบนชุดข้อมูลทดสอบและดูว่ารายการใดถูกจัดประเภทอย่างถูกต้อง
ในทางกลับกัน การเรียนรู้แบบไม่มีคำแนะนำไม่มีป้ายกำกับความจริงบนพื้นฐาน อัลกอริทึม machine learning ที่ฝึกอบรมเพื่อทำงานแบบไม่มีคำแนะนำต้องสามารถอนุมานรูปแบบที่เกี่ยวข้องในข้อมูลได้เอง
อัลกอริทึมการเรียนรู้แบบมีคำแนะนำมักใช้สำหรับปัญหาในการจัดประเภท โดยที่มีชุดข้อมูลขนาดใหญ่ที่เต็มไปด้วยกรณีที่ต้องจัดเรียงเป็นหนึ่งในหลายชั้นเรียน อีกประเภทหนึ่งของการเรียนรู้แบบมีคำแนะนำคืองานการถดถอย โดยที่ค่าผลลัพธ์ที่ให้โดยอัลกอริทึมเป็นค่าต่อเนื่องแทนที่จะเป็นค่าตามหมวดหมู่
ในขณะที่อัลกอริทึมการเรียนรู้แบบไม่มีคำแนะนำใช้สำหรับงานเช่นการประมาณความหนาแน่น การจัดกลุ่ม และการเรียนรู้การแสดงผล ชุดทาสก์เหล่านี้ต้องการให้โมเดล machine learning อนุมานโครงสร้างของข้อมูล ไม่มีชั้นเรียนที่กำหนดไว้ล่วงหน้าให้กับโมเดล
มาทำความรู้จักกับอัลกอริทึมที่ใช้บ่อยที่สุดในการเรียนรู้แบบไม่มีคำแนะนำและแบบมีคำแนะนำ
ประเภทของการเรียนรู้แบบมีคำแนะนำ
อัลกอริทึมการเรียนรู้แบบมีคำแนะนำที่ใช้บ่อย ได้แก่:
- Naive Bayes
- Support Vector Machines
- Logistic Regression
- Random Forests
- Artificial Neural Networks
Support Vector Machines เป็นอัลกอริทึมที่แบ่งชุดข้อมูลออกเป็นชั้นเรียนต่างๆ จุดข้อมูลจะถูกจัดกลุ่มเป็นกลุ่มโดยการวาดเส้นที่แยกชั้นเรียนออกจากกัน จุดบนหนึ่งด้านของเส้นจะอยู่ในชั้นเรียนหนึ่ง ในขณะที่จุดบนอีกด้านหนึ่งจะอยู่ในชั้นเรียนที่แตกต่างกัน Support Vector Machines มีเป้าหมายเพื่อเพิ่มระยะห่างระหว่างเส้นและจุดที่อยู่ทั้งสองด้านของเส้น และระยะห่างที่มากขึ้นจะทำให้คลาสสิฟายเออร์มั่นใจว่าจุดนั้นอยู่ในชั้นเรียนหนึ่งและไม่อยู่ในชั้นเรียนอื่น
Logistic Regression เป็นอัลกอริทึมที่ใช้ในการจัดประเภทแบบทวินาม โดยที่จุดข้อมูลต้องจัดประเภทเป็นหนึ่งในสองชั้นเรียน Logistic Regression ทำงานโดยการป้ายกำกับจุดข้อมูลเป็น 1 หรือ 0 หากค่าของจุดข้อมูลนั้นต่ำกว่า 0.49 จะถูกจัดประเภทเป็น 0 ในขณะที่หากค่ามากกว่าหรือเท่ากับ 0.5 จะถูกจัดประเภทเป็น 1
Decision Tree algorithms ทำงานโดยการแบ่งชุดข้อมูลออกเป็นชิ้นเล็กๆ และเล็กๆ คุณสมบัติที่ใช้ในการแบ่งข้อมูลขึ้นอยู่กับวิศวกร machine learning แต่เป้าหมายคือการแบ่งข้อมูลออกเป็นจุดข้อมูลเดียว ซึ่งจะถูกจัดประเภทโดยใช้ป้ายกำกับ
อัลกอริทึม Random Forest เป็นเพียงตัวคลาสสิฟาย Decision Tree เดี่ยวที่เชื่อมต่อกันเป็นคลาสสิฟายที่มีพลังมากขึ้น
ตัวคลาสสิฟาย Naive Bayes คำนวณความน่าจะเป็นที่จุดข้อมูลจะเกิดขึ้นตามความน่าจะเป็นของเหตุการณ์ก่อนหน้า มันอยู่บนพื้นฐานของทฤษฎีของเบย์ และจัดจุดข้อมูลเข้าในชั้นเรียนตามความน่าจะเป็นที่คำนวณได้ เมื่อใช้ตัวคลาสสิฟาย Naive Bayes จะถือว่าตัวทำนายทั้งหมดมีอิทธิพลต่อผลลัพธ์ของชั้นเรียนเท่ากัน
Artificial Neural Network หรือที่เรียกว่า multi-layer perceptron เป็นอัลกอริทึม machine learning ที่ได้รับแรงบันดาลใจจากโครงสร้างและหน้าที่ของสมองมนุษย์ Artificial Neural Networks ได้รับการตั้งชื่อตามข้อเท็จจริงที่ว่าพวกมันประกอบด้วยโหนด/นิวรอนหลายตัวที่เชื่อมต่อกัน โหนด/นิวรอนแต่ละตัวจะจัดการข้อมูลด้วยฟังก์ชันทางคณิตศาสตร์ ใน Artificial Neural Networks มีระดับข้อมูลเข้า ระดับซ่อน และระดับข้อมูลออก
ระดับซ่อนของเครือข่ายนิวรัลคือที่ที่ข้อมูลถูกตีความและวิเคราะห์สำหรับรูปแบบ ในอีกคำหนึ่ง คือที่ที่อัลกอริทึมเรียนรู้ โหนด/นิวรอนมากขึ้นที่เชื่อมต่อกันทำให้เครือข่ายที่ซับซ้อนสามารถเรียนรู้รูปแบบที่ซับซ้อนมากขึ้น
ประเภทของการเรียนรู้แบบไม่มีคำแนะนำ
อัลกอริทึมการเรียนรู้แบบไม่มีคำแนะนำ ได้แก่:
- K-means clustering
- Autoencoders
- Principal Component Analysis
K-means clustering เป็นเทคนิคการจำแนกประเภทที่ไม่มีคำแนะนำ และมันทำงานโดยการแยกจุดข้อมูลออกเป็นกลุ่มหรือคลัสเตอร์ตามคุณลักษณะ K-means clustering วิเคราะห์คุณลักษณะที่พบในจุดข้อมูลและแยกแยะรูปแบบในคุณลักษณะเหล่านั้นซึ่งทำให้จุดข้อมูลที่อยู่ในชั้นเรียนเดียวกันคลัสเตอร์มากกว่าที่จะอยู่ในคลัสเตอร์ที่มีจุดข้อมูลอื่น สิ่งนี้ทำได้โดยการวางจุดศูนย์กลางที่เป็นไปได้สำหรับคลัสเตอร์ หรือเซนทรอยด์ ในกราฟของข้อมูลและกำหนดตำแหน่งของเซนทรอยด์ใหม่จนกว่าตำแหน่งที่ลดระยะห่างระหว่างเซนทรอยด์และจุดที่อยู่ในชั้นเรียนของเซนทรอยด์จะถูกพบ นักวิจัยสามารถระบุจำนวนคลัสเตอร์ที่ต้องการได้
Principal Component Analysis เป็นเทคนิคที่ลดจำนวนคุณลักษณะ/ตัวแปรจำนวนมากลงเป็นพื้นที่คุณลักษณะที่เล็กลง/คุณลักษณะที่น้อยลง “ส่วนประกอบหลัก” ของจุดข้อมูลจะถูกเลือกให้ сохраรักษา ในขณะที่คุณลักษณะอื่นๆ จะถูกบีบอัดลงเป็นนิพจน์ที่เล็กลง ความสัมพันธ์ระหว่างจุดข้อมูลเดิมจะถูก сохраรักษา แต่เนื่องจากความซับซ้อนของจุดข้อมูลนั้นง่ายกว่า จุดข้อมูลจึงง่ายต่อการปริมาณและอธิบาย
อัตลักษณ์เป็นรูปแบบหนึ่งของเครือข่ายนิวรัลที่สามารถนำไปใช้กับงานการเรียนรู้แบบไม่มีคำแนะนำ อัตลักษณ์สามารถรับข้อมูลที่ไม่มีป้ายกำกับและเปลี่ยนข้อมูลให้กลายเป็นข้อมูลที่เครือข่ายนิวรัลสามารถใช้ได้ โดยพื้นฐานแล้วการสร้างชุดข้อมูลฝึกอบรมที่มีป้ายกำกับของตนเอง เป้าหมายของอัตลักษณ์คือการแปลงข้อมูลเข้าและสร้างใหม่ให้แม่นยำที่สุด ดังนั้นจึงมีแรงจูงใจให้เครือข่ายกำหนดคุณลักษณะที่สำคัญที่สุดและดึงคุณลักษณะเหล่านั้นออกมา












