|
|
4 months ago | |
|---|---|---|
| .. | ||
| README.md | 4 months ago | |
| assignment.md | 7 months ago | |
README.md
เทคนิคของการเรียนรู้ของเครื่อง
กระบวนการสร้าง ใช้งาน และดูแลรักษาโมเดลการเรียนรู้ของเครื่องและข้อมูลที่ใช้เป็นกระบวนการที่แตกต่างจากเวิร์กโฟลว์การพัฒนารูปแบบอื่นมาก ในบทเรียนนี้ เราจะอธิบายกระบวนการและวางกรอบเทคนิคหลักที่คุณจำเป็นต้องรู้ คุณจะได้:
- เข้าใจกระบวนการพื้นฐานของการเรียนรู้ของเครื่องในระดับสูง
- สำรวจแนวคิดพื้นฐาน เช่น 'โมเดล' 'การทำนาย' และ 'ข้อมูลการฝึกอบรม'
แบบทดสอบก่อนการบรรยาย
🎥 คลิกที่ภาพด้านบนเพื่อดูวิดีโอสั้นที่ชี้แจงบทเรียนนี้
บทนำ
ในภาพรวม การสร้างกระบวนการเรียนรู้ของเครื่อง (ML) ประกอบด้วยขั้นตอนหลายขั้นตอน:
- กำหนดคำถาม กระบวนการ ML ส่วนใหญ่เริ่มต้นด้วยการตั้งคำถามที่ไม่สามารถตอบได้ด้วยโปรแกรมเงื่อนไขง่ายๆ หรือเครื่องยนต์ที่ใช้กฎเบื้องต้น คำถามเหล่านี้มักเกี่ยวข้องกับการทำนายโดยอิงจากชุดข้อมูล
- รวบรวมและเตรียมข้อมูล เพื่อที่จะตอบคำถามของคุณ คุณต้องมีข้อมูล คุณภาพและบางครั้งปริมาณของข้อมูลจะเป็นตัวกำหนดว่าคุณจะตอบคำถามแรกของคุณได้ดีแค่ไหน การแสดงข้อมูลเป็นภาพเป็นส่วนสำคัญของขั้นตอนนี้ ขั้นตอนนี้ยังรวมถึงการแบ่งข้อมูลเป็นกลุ่มสำหรับฝึกอบรมและทดสอบเพื่อสร้างโมเดล
- เลือกวิธีการฝึกอบรม ขึ้นอยู่กับคำถามและลักษณะของข้อมูล คุณต้องเลือกวิธีการฝึกโมเดลที่สะท้อนข้อมูลอย่างดีที่สุดและทำการทำนายที่แม่นยำ ส่วนนี้ของกระบวนการ ML ของคุณต้องใช้ความเชี่ยวชาญเฉพาะและมักต้องมีการทดลองจำนวนมาก
- ฝึกโมเดล โดยใช้ข้อมูลฝึกอบรมของคุณ คุณจะใช้หลายอัลกอริทึมเพื่อฝึกโมเดลให้รู้จำรูปแบบในข้อมูล โมเดลอาจใช้ค่าน้ำหนักภายในที่สามารถปรับเปลี่ยนเพื่อเน้นข้อมูลบางส่วนเหนือส่วนอื่นเพื่อสร้างโมเดลที่ดียิ่งขึ้น
- ประเมินโมเดล คุณใช้ข้อมูลที่ไม่เคยเห็นมาก่อน (ข้อมูลทดสอบ) จากชุดข้อมูลที่รวบรวมมาตรวจสอบประสิทธิภาพของโมเดล
- ปรับค่าพารามิเตอร์ จากประสิทธิภาพของโมเดล คุณสามารถทำกระบวนการซ้ำโดยใช้พารามิเตอร์ต่างๆ หรือ ตัวแปรที่ควบคุมพฤติกรรมของอัลกอริทึมที่ใช้ฝึกโมเดล
- ทำนาย ใช้ข้อมูลป้อนเข้าที่ใหม่เพื่อทดสอบความแม่นยำของโมเดล
คำถามที่ควรถาม
คอมพิวเตอร์มีความเชี่ยวชาญพิเศษในการค้นหารูปแบบที่ซ่อนอยู่ในข้อมูล ประโยชน์นี้ช่วยนักวิจัยที่มีคำถามเกี่ยวกับโดเมนที่ไม่สามารถตอบได้ง่าย ๆ ด้วยการสร้างเครื่องยนต์กฎที่มีเงื่อนไข ตัวอย่างเช่น ในงานเกี่ยวกับการคำนวณความเสี่ยง นักวิทยาศาสตร์ข้อมูลอาจสร้างกฎเฉพาะเกี่ยวกับอัตราการตายของผู้สูบบุหรี่เทียบกับไม่สูบบุหรี่ได้
แต่เมื่อมีตัวแปรอื่นๆ เข้ามาเกี่ยวข้อง โมเดล ML อาจมีประสิทธิภาพมากกว่าในการทำนายอัตราการตายในอนาคตโดยอิงจากประวัติสุขภาพที่ผ่านมา ตัวอย่างที่มีความสุขกว่าอาจเป็นการทำนายสภาพอากาศของเดือนเมษายนในสถานที่หนึ่งๆ โดยใช้ข้อมูลที่รวมถึงละติจูด ลองจิจูด การเปลี่ยนแปลงสภาพภูมิอากาศ ความใกล้ชิดกับทะเล รูปแบบของกระแสเจ็ต และอื่นๆ
✅ สไลด์การบรรยาย เกี่ยวกับโมเดลสภาพอากาศ นำเสนอแง่มุมประวัติศาสตร์ในการใช้ ML วิเคราะห์สภาพอากาศ
งานเตรียมก่อนการสร้างโมเดล
ก่อนเริ่มสร้างโมเดล คุณต้องทำภารกิจหลายอย่างเพื่อทดสอบคำถามและตั้งสมมติฐานโดยอิงจากการทำนายของโมเดล คุณต้องระบุและกำหนดองค์ประกอบหลายอย่าง
ข้อมูล
เพื่อที่จะตอบคำถามของคุณด้วยความแน่นอน คุณต้องมีข้อมูลจำนวนมากที่เหมาะสม มีสองสิ่งที่คุณต้องทำตอนนี้:
- รวบรวมข้อมูล จดจำบทเรียนก่อนหน้าเกี่ยวกับความยุติธรรมในการวิเคราะห์ข้อมูล รวบรวมข้อมูลอย่างระมัดระวัง รู้แหล่งที่มาของข้อมูล ความลำเอียงที่อาจมี และบันทึกต้นกำเนิดของข้อมูลไว้
- เตรียมข้อมูล ขั้นตอนหลายขั้นตอนของการเตรียมข้อมูล อาจจำเป็นต้องรวบรวมข้อมูลและปรับข้อมูลให้อยู่ในรูปแบบปกติหากมาจากหลายแหล่ง คุณสามารถปรับปรุงคุณภาพและปริมาณข้อมูลได้ด้วยวิธีต่าง ๆ เช่น การแปลงสตริงเป็นตัวเลข (ตามที่ทำใน Clustering) คุณอาจสร้างข้อมูลใหม่จากข้อมูลเดิม (เช่นใน Classification) คุณสามารถทำความสะอาดและแก้ไขข้อมูล (เหมือนในบทเรียน Web App) สุดท้าย คุณอาจต้องสุ่มและสลับข้อมูล ขึ้นอยู่กับเทคนิคการฝึกอบรมของคุณ
✅ หลังจากรวบรวมและประมวลผลข้อมูลแล้ว ให้ลองพิจารณาว่ารูปร่างของข้อมูลจะช่วยให้คุณตอบคำถามของคุณได้หรือไม่ อาจเป็นไปได้ว่าข้อมูลอาจทำงานได้ไม่ดีในงานที่คุณกำหนดไว้ เช่นที่เราได้พบในบทเรียน Clustering
คุณลักษณะและเป้าหมาย
คุณลักษณะ คือคุณสมบัติที่สามารถวัดได้ของข้อมูลมักแสดงเป็นชื่อคอลัมน์เช่น 'date' 'size' หรือ 'color' ตัวแปรคุณลักษณะของคุณ ซึ่งมักแสดงในโค้ดเป็น X คืออินพุตที่ใช้ฝึกโมเดล
เป้าหมายคือสิ่งที่คุณพยายามทำนาย เป้าหมาย ซึ่งมักแสดงเป็น y ในโค้ด คือคำตอบของคำถามที่คุณถามข้อมูล เช่น ในเดือนธันวาคม ลูกฟักทองสีใดจะถูกที่สุด? ในซานฟรานซิสโก ย่านใดจะมีราคาอสังหาริมทรัพย์ที่ดีที่สุด? บางครั้งเป้าหมายก็เรียกว่าคุณสมบัติป้ายชื่อ (label attribute)
การเลือกตัวแปรคุณลักษณะ
🎓 การเลือกคุณลักษณะและการสกัดคุณลักษณะ คุณจะรู้ได้อย่างไรว่าควรเลือกตัวแปรใดเมื่อสร้างโมเดล? โดยปกติคุณจะผ่านกระบวนการเลือกคุณลักษณะหรือสกัดคุณลักษณะเพื่อเลือกตัวแปรที่เหมาะสมสำหรับโมเดลที่มีประสิทธิภาพสูงสุด อย่างไรก็ตามพวกมันไม่เหมือนกัน: "การสกัดคุณลักษณะจะสร้างคุณลักษณะใหม่จากฟังก์ชันของคุณลักษณะเดิม ในขณะที่การเลือกคุณลักษณะจะคืนชุดย่อยของคุณลักษณะ" (ที่มา)
แสดงข้อมูลของคุณเป็นภาพ
เครื่องมือสำคัญของนักวิทยาศาสตร์ข้อมูลคือความสามารถในการแสดงข้อมูลด้วยไลบรารียอดเยี่ยมหลายอย่าง เช่น Seaborn หรือ MatPlotLib การแสดงข้อมูลเป็นภาพอาจช่วยให้คุณค้นพบความสัมพันธ์ที่ซ่อนอยู่ที่สามารถนำไปใช้ประโยชน์ได้ นอกจากนี้ภาพของคุณอาจช่วยให้คุณค้นพบอคติหรือความไม่สมดุลของข้อมูล (ตามที่เราพบใน Classification)
แบ่งชุดข้อมูลของคุณ
ก่อนการฝึกอบรม คุณต้องแบ่งชุดข้อมูลเป็นสองส่วนหรือมากกว่าที่มีขนาดไม่เท่ากันแต่ยังแทนข้อมูลได้ดี
- ฝึกอบรม ส่วนของชุดข้อมูลนี้จะนำไปสร้างโมเดล ฝึกโมเดล ชุดนี้คือส่วนใหญ่ของชุดข้อมูลต้นฉบับ
- ทดสอบ ชุดข้อมูลทดสอบเป็นกลุ่มข้อมูลอิสระซึ่งมักมาจากข้อมูลต้นฉบับ ใช้เพื่อยืนยันประสิทธิภาพของโมเดลที่สร้างขึ้น
- ตรวจสอบค่าความถูกต้อง ชุดตรวจสอบค่าความถูกต้องเป็นกลุ่มตัวอย่างอิสระขนาดเล็กที่ใช้ปรับแต่งไฮเปอร์พารามิเตอร์หรือสถาปัตยกรรมของโมเดลเพื่อปรับปรุงประสิทธิภาพ ขึ้นอยู่กับขนาดข้อมูลและคำถามที่คุณถาม บางครั้งคุณอาจไม่จำเป็นต้องสร้างชุดที่สามนี้ (ตามที่ระบุใน Time Series Forecasting)
สร้างโมเดล
ใช้ข้อมูลฝึกอบรมของคุณ เป้าหมายคือการสร้างโมเดล หรือการแทนข้อมูลแบบทางสถิติ โดยใช้หลายอัลกอริทึมเพื่อ ฝึก โมเดล การฝึกโมเดลคือการเปิดเผยโมเดลกับข้อมูลและอนุญาตให้โมเดลทำสมมติฐานเกี่ยวกับรูปแบบที่ค้นพบ ตรวจสอบ และยอมรับหรือปฏิเสธ
เลือกวิธีการฝึกอบรม
ขึ้นอยู่กับคำถามและลักษณะของข้อมูล คุณจะเลือกวิธีฝึกอบรม โดยดูจาก เอกสารของ Scikit-learn ซึ่งเราใช้ในหลักสูตรนี้ คุณสามารถสำรวจหลายวิธีฝึกอบรมโมเดล ขึ้นอยู่กับประสบการณ์ คุณอาจต้องลองหลายวิธีเพื่อสร้างโมเดลที่ดีที่สุด คุณน่าจะผ่านกระบวนการที่นักวิทยาศาสตร์ข้อมูลประเมินประสิทธิภาพโมเดลโดยป้อนข้อมูลใหม่ที่ไม่เคยเห็นมาก่อน ตรวจสอบความแม่นยำ อคติ และปัญหาเรื่องคุณภาพอื่น ๆ จากนั้นเลือกวิธีฝึกอบรมที่เหมาะสมที่สุดสำหรับงาน
ฝึกโมเดล
พร้อมข้อมูลฝึกอบรมของคุณ คุณพร้อมที่จะ 'ฟิต' ข้อมูลเพื่อสร้างโมเดล คุณจะพบว่าในไลบรารี ML หลายแห่งมีโค้ด 'model.fit' ซึ่งเป็นช่วงเวลาที่คุณส่งตัวแปรคุณลักษณะในรูปแบบอาร์เรย์ (มักเป็น 'X') และตัวแปรเป้าหมาย (มักเป็น 'y')
ประเมินโมเดล
เมื่อกระบวนการฝึกเสร็จสิ้น (อาจต้องใช้หลายรอบหรือ 'epochs' เพื่อฝึกโมเดลขนาดใหญ่) คุณจะสามารถประเมินคุณภาพโมเดลโดยใช้ข้อมูลทดสอบเพื่อวัดประสิทธิภาพ ข้อมูลนี้เป็นส่วนย่อยของข้อมูลต้นฉบับที่โมเดลไม่เคยวิเคราะห์มาก่อน คุณสามารถพิมพ์ตารางเมตริกเกี่ยวกับคุณภาพโมเดลของคุณได้
🎓 การฟิตโมเดล
ในบริบทของการเรียนรู้ของเครื่อง การฟิตโมเดลหมายถึงความแม่นยำของฟังก์ชันพื้นฐานของโมเดลขณะที่พยายามวิเคราะห์ข้อมูลที่ไม่เคยรู้จักมาก่อน
🎓 การฟิตต่ำเกินไป และ การฟิตสูงเกินไป เป็นปัญหาที่พบบ่อยที่ทำให้ประสิทธิภาพโมเดลลดลง เนื่องจากโมเดลฟิตไม่ดีพอหรือฟิตดีเกินไป ทำให้โมเดลทำนายได้ใกล้เกินไปหรือลวกเกินไปกับข้อมูลฝึกอบรม โมเดลที่ฟิตสูงเกินไปจะทำนายข้อมูลฝึกอบรมได้ดีมากเพราะเรียนรู้รายละเอียดและเสียงรบกวนในข้อมูลดีเกินไป โมเดลที่ฟิตต่ำเกินไปไม่แม่นยำเนื่องจากไม่สามารถวิเคราะห์ข้อมูลฝึกหรือข้อมูลที่ไม่เคยเห็นได้อย่างถูกต้อง
กราฟิกโดย Jen Looper
การปรับค่าพารามิเตอร์
เมื่อการฝึกเบื้องต้นเสร็จสิ้น ให้สังเกตคุณภาพของโมเดลและพิจารณาปรับปรุงโดยการปรับแต่ง 'ไฮเปอร์พารามิเตอร์' อ่านรายละเอียดเพิ่มเติมเกี่ยวกับกระบวนการได้ใน เอกสาร
การทำนาย
นี่คือช่วงเวลาที่คุณสามารถใช้ข้อมูลใหม่ทั้งหมดเพื่อทดสอบความแม่นยำของโมเดล ในสภาพแวดล้อมการใช้ ML จริง ที่คุณสร้างเว็บแอปเพื่อใช้โมเดลในงานจริง กระบวนการนี้อาจรวมถึงการรวบรวมข้อมูลผู้ใช้ (เช่น การกดปุ่ม) เพื่อกำหนดตัวแปรและส่งให้โมเดลทำการสรุปหรือประเมิน
ในบทเรียนเหล่านี้ คุณจะค้นพบวิธีใช้ขั้นตอนเหล่านี้เพื่อเตรียมข้อมูล สร้าง ทดสอบ ประเมิน และทำนาย—ซึ่งเป็นท่าทางของนักวิทยาศาสตร์ข้อมูลและอื่น ๆ ขณะที่คุณเดินทางสู่การเป็นวิศวกร ML 'เต็มสแตก'
🚀ความท้าทาย
วาดแผนภูมิแสดงขั้นตอนของผู้ปฏิบัติการ ML คุณเห็นตัวเองอยู่จุดไหนในกระบวนการนี้? คุณคาดว่าจะพบความยากลำบากที่ไหน? อะไรที่ดูง่ายสำหรับคุณ?
แบบทดสอบหลังการบรรยาย
ทบทวน & การศึกษาด้วยตนเอง
ค้นหาออนไลน์สำหรับสัมภาษณ์นักวิทยาศาสตร์ข้อมูลที่พูดถึงงานประจำวันของพวกเขา นี่คือ ตัวอย่างหนึ่ง
งานมอบหมาย
ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษาด้วย AI Co-op Translator แม้ว่าเราจะพยายามให้ความถูกต้องสูงสุด โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาต้นทางควรถูกพิจารณาเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ควรใช้การแปลโดยมนุษย์มืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดขึ้นจากการใช้การแปลนี้

