Blockdit Logo
Blockdit Logo (Mobile)
สำรวจ
ลงทุน
คำถาม
เข้าสู่ระบบ
มีบัญชีอยู่แล้ว?
เข้าสู่ระบบ
หรือ
ลงทะเบียน
เขียนโค๊ดกับมากะปิ
•
ติดตาม
14 ธ.ค. 2021 เวลา 03:00 • การศึกษา
Machine Hee-hee 101 EP2
Overview create Machine Learning
เกริ่นก่อน
บทความที่แล้วเราพูดถึงเรื่องของ Machine Learning คืออะไรและเรียนเกี่ยวกับอะไร (҂◡̀_◡́)ᕤ....
วันนี้ผมจะมาปรับพื้นฐานของกระบวนการ "การสร้าง Machine Learning" คร่าวๆก่อนนะครับ เรามาเริ่มกันเลยครับ
สำหรับคนที่ไม่ได้อ่านบทความที่แล้ว ผมแนะนำให้กลับไปอ่านก่อนนะครับ เพราะเนื้อหานั้นมีความต่อเนื่องกัน (ɔ◔︣‿◔︣)ɔ
ภาพรวมของ ML ทั้งหมด
สิ่งสำคัญที่เราต้องมีในการที่จะสร้าง ML คือข้อมูลครับ
โดยในที่นี้ข้อมูลจะต้องมีผลเฉลย เพื่อที่เราจะได้เอามาใช้ร่วมกับ Algorithm ที่เราเลือกมาและทำการฝึกฝน (ในส่วนการฝึกฝนนี้ คอมพิวเตอร์จะทำเองครับ)
ผลลัพธ์ที่ได้จากการฝึกฝนจะเรียกว่า "โปรแกรม"
หลังจากที่เราได้โปรแกรมมาแล้วก็จำเป็นต้องมีการทดสอบกับข้อมูล โดยข้อมูลในขั้นตอนนี้จะเป็นคนละส่วนของข้อมูลที่ใช้ในการฝึก
ทั้งนี้เนื่องจาก หากเรานำข้อมูลที่ใช้ในการฝึกฝนมาทดสอบจริง ข้อมูลจะถูกต้อง 100% เนื่องจากข้อมูลที่ใช้มีอยู่ในความจำอยู่แล้ว
ยกตัวอย่างเช่น หากเราทำการทดสอบคณิตศาสตร์ ถ้าข้อสอบนั้นเป็นโจทย์ที่เราเคยทำมาก่อนแล้ว เราก็สามารถทำได้แน่นอนเนื่องจากเรามีความจำในส่วนตรงนั้น แต่หากเราเจอโจทย์ที่เราไม่เคยทำแต่มีความเกี่ยวข้องกัน การทำโจทย์แบบนี้จะถือว่าเป็นการทดสอบ
ดังนั้นเราต้องใช้ข้อมูลที่ไม่ได้ถูกใช้ในการฝึก เพื่อวัดการทดสอบ (ไม่ใช่วัดความจำ)
ผลลัพธ์ที่เราได้จากข้อมูลที่ทดสอบจริงเมื่อนำไปใส่ในโปรแกรม จะถูกเรียกว่า Label สามารถสรุปได้ดังนี้ครับ
1.
ข้อมูลที่ใช้ เราจะเรียกว่า feature
2.
Program เกิดจากการ เอา feature X (ข้างในมีเฉลย) รวมกับ algorithm ที่เลือกมา ซึ่งกระบวนการนี้จะเกิดการ Training
3.
การนำข้อมูลทดสอบไปใช้ใน Program เราจะเรียกว่า "Testing"
4.
ผลลัพธ์ที่ได้จากการ "Testing" จะเรียกว่า label
การฝึก Training
จะขอเรียกข้อมูลว่า x และ ผลเฉลยคือ y นะครับ
จากตอนต้นที่มีการพูดถึงว่า "ข้อมูลจะต้องมีผลเฉลย"
ดังนั้นข้อมูลและผลเฉลยจะต้องมาเป็น "คู่ลำดับ"
เราสามารถเขียนได้ดังนี้
Data = {(x1,y1),(x2,y2),….,(xn,yn)}
Note: อย่าลืมนะครับว่าข้อมูลไม่ได้มีแค่อันเดียว
เพิ่มเติม Feature X จริงๆต้องเรียกว่า Feature Vector X
หมายความยังไง ?
ผมขอยกตัวอย่าง การทำนายเกรด
สมมุติว่าเราอยากทำนายเกรด นาย เ ก เ ร 💪(◡̀_◡́҂) ของวิชาจักรกลสังหารในปลายภาคที่กำลังมาถึง โดยอิงจากข้อมูลเก่า
หากเราใช้ข้อมูลแค่ "เกรดเฉลี่ย" คงไม่พอสำหรับการนำมาใช้
ดังนั้นข้างในข้อมูลจะต้องมี columns เพิ่มเพื่อแบ่งประเภท เช่น คะแนนเก็บ คะแนนสอบครั้งที่ 1,2,3 คะแนนสอบกลางภาค และผลลัพธ์ของคะแนนสอบปลายภาค
โดยสิ่งที่กล่าวมาทั้งหมดนี้เรียกว่า dimension หรือ มิติของข้อมูล
หมายความว่า Feature Vector X นอกจากจะบอกข้อมูลแล้วเราจะต้องรู้ dimension ของข้อมูลด้วย
Label หรือ ผลลัพธ์
ผลลัพธ์ของการทำนายจะส่งผลต่อการเลือก Algorithm ที่จะถูกนำมาใช้ ดังนั้นเราจำเป็นต้องรู้ประเภทของผลลัพธ์
หากยกตัวอย่างเรื่องการทำนายเกรดข้างต้น
ผลลัพธ์ของเกรดเฉลี่ยหากเป็นตัวเลข จะถูกเรียกว่าปัญหา Regression
หากผลลัพธ์อยู่ในรูปแบบตัวเลือก เช่น ผ่าน หรือ ไม่ผ่าน จะถูกเรียกว่า ปัญหา Binary Classification
สามารถสรุปประเภทของ ผลลัพธ์ได้ดังนี้
1.
Y ={0,1} Y ={-1,1} เรียกว่า Binary Classification
2.
Y ={0,1,….,k-1} เรียกว่า MultiClass Classification
3.
Y = R (real number) เรียกว่า regression
สรุปของวันนี้✍(◔◡◔)
วันนี้เราได้เรียนรู้ภาพรวมการทำงานของ Machine Learning, ความหมายของข้อมูล และ ผลลัพธ์ คราวหน้าเราจะมายกตัวอย่างประเภทของ feature X (ประเภทของข้อมูล) กันครับ
หลังจากนี้เนื้อหาจะเน้นไปในทางคณิตศาสตร์มากขึ้น ดังนั้นผมอาจจะไม่อธิบายความเป็นมาของสูตร (แต่อาจจะเขียนพิสูจน์สูตรไว้ให้) นะครับ
เนื่องจากจุดประสงค์ของผมเป็นการทำให้ผู้อ่านที่ไม่มีพื้นฐานในด้านนี้สามารถอ่านได้ ดังนั้นผมจึงคิดว่านี่เป็นวิธีที่ดีที่สุดครับ
ถ้าหากมีข้อสงสัยหรืออยากพูดคุยสามารถติดต่อได้ทางเพจ Facebook ได้นะครับ สำหรับวันนี้ขอบคุณผู้อ่านทุกท่านครับ สวัสดีครับ
อย่าลืมติดตามในเพจด้วยนะ
เยี่ยมชม
facebook.com
登录 Facebook
登录 Facebook,与好友、家人和认识的人分享和建立联系。
การศึกษา
คอมพิวเตอร์
วิทยาศาสตร์
บันทึก
ดูเพิ่มเติมในซีรีส์
Machine Learning Hee-Hee 101
โฆษณา
ดาวน์โหลดแอปพลิเคชัน
© 2025 Blockdit
เกี่ยวกับ
ช่วยเหลือ
คำถามที่พบบ่อย
นโยบายการโฆษณาและบูสต์โพสต์
นโยบายความเป็นส่วนตัว
แนวทางการใช้แบรนด์ Blockdit
Blockdit เพื่อธุรกิจ
ไทย