รู้เบื้องต้นเกี่ยวกับการเรียนรู้ของเครื่องด้วย scikit-learn
ชุดวิดีโอนี้จะสอนวิธีแก้ปัญหา Machine Learning โดยใช้ไลบรารี scikit-learn ยอดนิยมของ Python มี วิดีโอฝึกสอน 10 รายการ รวมทั้งหมด 4.5 ชั่วโมง โดยแต่ละรายการมี สมุดบันทึก Jupyter ที่เกี่ยวข้อง
คุณสามารถรับชมซีรีส์ทั้งหมดบน YouTube และดูสมุดบันทึกทั้งหมดได้โดยใช้ nbviewer
นอกจากนี้ซีรีส์นี้ยังมีให้บริการในรูปแบบหลักสูตรออนไลน์ฟรีซึ่งประกอบด้วยเนื้อหาที่อัปเดต แบบทดสอบ และใบรับรองการจบหลักสูตร
หมายเหตุ: สมุดบันทึกในพื้นที่เก็บข้อมูลนี้ได้รับการอัปเดตให้ใช้ Python 3.9.1 และ scikit-learn 0.23.2 สมุดบันทึกต้นฉบับ (แสดงในวิดีโอ) ใช้ Python 2.7 และ scikit-learn 0.16 และสามารถดาวน์โหลดได้จากสาขาเก็บถาวร คุณสามารถอ่านเกี่ยวกับวิธีที่ฉันอัปเดตโค้ดได้ในบล็อกโพสต์นี้
สารบัญ
Machine Learning คืออะไร และทำงานอย่างไร? (วิดีโอ สมุดบันทึก)
- การเรียนรู้ของเครื่องคืออะไร?
- Machine Learning มี 2 ประเภทหลักๆ อะไรบ้าง
- ตัวอย่างของการเรียนรู้ของเครื่องมีอะไรบ้าง
- แมชชีนเลิร์นนิง "ทำงาน" อย่างไร
การตั้งค่า Python สำหรับการเรียนรู้ของเครื่อง: scikit-learn และ Jupyter Notebook (วิดีโอ สมุดบันทึก)
- scikit-learn มีข้อดีและข้อเสียอย่างไร?
- ฉันจะติดตั้ง scikit-learn ได้อย่างไร
- ฉันจะใช้ Jupyter Notebook ได้อย่างไร
- มีแหล่งข้อมูลที่ดีสำหรับการเรียนรู้ Python มีอะไรบ้าง
เริ่มต้นใช้งาน scikit-learn ด้วยชุดข้อมูลม่านตาอันโด่งดัง (วิดีโอ สมุดบันทึก)
- ชุดข้อมูลม่านตาที่มีชื่อเสียงคืออะไร และเกี่ยวข้องกับ Machine Learning อย่างไร
- เราจะโหลดชุดข้อมูล iris ลงใน scikit-learn ได้อย่างไร
- เราจะอธิบายชุดข้อมูลโดยใช้คำศัพท์การเรียนรู้ของเครื่องได้อย่างไร
- ข้อกำหนดหลักสี่ประการของ scikit-learn สำหรับการทำงานกับข้อมูลคืออะไร
ฝึกอบรมโมเดล Machine Learning ด้วย scikit-learn (วิดีโอ สมุดบันทึก)
- โมเดลการจำแนกเพื่อนบ้าน K-ที่ใกล้ที่สุดคืออะไร?
- สี่ขั้นตอนสำหรับการฝึกโมเดลและการทำนายใน scikit-learn คืออะไร
- ฉันจะใช้รูปแบบนี้กับโมเดล Machine Learning อื่นๆ ได้อย่างไร
การเปรียบเทียบโมเดล Machine Learning ใน scikit-learn (วิดีโอ สมุดบันทึก)
- ฉันจะเลือกแบบจำลองที่จะใช้สำหรับงานการเรียนรู้ภายใต้การดูแลของฉันได้อย่างไร
- ฉันจะเลือกพารามิเตอร์การปรับแต่งที่ดีที่สุดสำหรับรุ่นนั้นได้อย่างไร?
- ฉันจะประมาณประสิทธิภาพที่เป็นไปได้ของโมเดลของฉันกับข้อมูลนอกตัวอย่างได้อย่างไร
ไปป์ไลน์วิทยาศาสตร์ข้อมูล: แพนด้า สัตว์ทะเล scikit-learn (วิดีโอ สมุดบันทึก)
- ฉันจะใช้ไลบรารี pandas เพื่ออ่านข้อมูลลงใน Python ได้อย่างไร
- ฉันจะใช้ไลบรารี Seaborn เพื่อแสดงข้อมูลเป็นภาพได้อย่างไร
- การถดถอยเชิงเส้นคืออะไร และทำงานอย่างไร
- ฉันจะฝึกและตีความโมเดลการถดถอยเชิงเส้นใน scikit-learn ได้อย่างไร
- อะไรคือตัวชี้วัดการประเมินสำหรับปัญหาการถดถอย?
- ฉันจะเลือกคุณสมบัติที่จะรวมไว้ในโมเดลของฉันได้อย่างไร
การตรวจสอบข้ามสำหรับการปรับพารามิเตอร์ การเลือกรุ่น และการเลือกคุณสมบัติ (วิดีโอ โน้ตบุ๊ก)
- ข้อเสียเปรียบของการใช้ขั้นตอนการแยกรถไฟ/การทดสอบสำหรับการประเมินแบบจำลองคืออะไร
- การตรวจสอบข้าม K-fold เอาชนะข้อจำกัดนี้ได้อย่างไร
- การตรวจสอบความถูกต้องข้ามสามารถนำมาใช้ในการเลือกพารามิเตอร์การปรับแต่ง การเลือกระหว่างรุ่น และการเลือกคุณสมบัติได้อย่างไร
- การปรับปรุงการตรวจสอบข้ามที่เป็นไปได้มีอะไรบ้าง
ค้นหาพารามิเตอร์การปรับแต่งที่เหมาะสมที่สุดอย่างมีประสิทธิภาพ (วิดีโอ โน้ตบุ๊ก)
- การตรวจสอบข้าม K-fold สามารถใช้เพื่อค้นหาพารามิเตอร์การปรับแต่งที่เหมาะสมที่สุดได้อย่างไร
- กระบวนการนี้จะทำให้มีประสิทธิภาพมากขึ้นได้อย่างไร?
- คุณจะค้นหาพารามิเตอร์การปรับแต่งหลายรายการพร้อมกันได้อย่างไร
- คุณทำอะไรกับพารามิเตอร์การปรับแต่งเหล่านั้นก่อนทำการคาดการณ์จริง
- ค่าใช้จ่ายในการคำนวณของกระบวนการนี้จะลดลงได้อย่างไร?
การประเมินแบบจำลองการจำแนกประเภท (วิดีโอ สมุดบันทึก)
- วัตถุประสงค์ของการประเมินแบบจำลองคืออะไร และขั้นตอนการประเมินทั่วไปมีอะไรบ้าง
- ความแม่นยำในการจำแนกประเภทมีประโยชน์อย่างไร และมีข้อจำกัดอะไรบ้าง
- เมทริกซ์ความสับสนอธิบายประสิทธิภาพของลักษณนามอย่างไร
- เมตริกใดที่สามารถคำนวณได้จากเมทริกซ์ความสับสน
- คุณจะปรับประสิทธิภาพของลักษณนามโดยการเปลี่ยนเกณฑ์การจัดหมวดหมู่ได้อย่างไร
- จุดประสงค์ของเส้นโค้ง ROC คืออะไร?
- พื้นที่ใต้เส้นโค้ง (AUC) แตกต่างจากความแม่นยำในการจำแนกประเภทอย่างไร
การสร้างเวิร์กโฟลว์แมชชีนเลิร์นนิง (วิดีโอ สมุดบันทึก)
- เหตุใดคุณจึงควรใช้ไปป์ไลน์?
- คุณจะเข้ารหัสคุณสมบัติหมวดหมู่ด้วย OneHotEncoder ได้อย่างไร
- คุณจะใช้ OneHotEncoder กับคอลัมน์ที่เลือกด้วย ColumnTransformer ได้อย่างไร
- คุณจะสร้างและตรวจสอบความถูกต้องของ Pipeline ได้อย่างไร
- คุณจะคาดการณ์ข้อมูลใหม่โดยใช้ไปป์ไลน์ได้อย่างไร
- เหตุใดคุณจึงควรใช้ scikit-learn (แทนที่จะเป็นแพนด้า) ในการประมวลผลล่วงหน้า
วิดีโอโบนัส
ที่การประชุม PyCon 2016 ฉันสอน บทช่วยสอน 3 ชั่วโมง ที่สร้างจากชุดวิดีโอนี้และมุ่งเน้นไปที่ ข้อมูลที่เป็นข้อความ คุณสามารถชมวิดีโอแนะนำการใช้งานบน YouTube
นี่คือหัวข้อที่ฉันกล่าวถึง:
- การสร้างโมเดลใน scikit-learn (ทบทวนความรู้)
- การแสดงข้อความเป็นข้อมูลตัวเลข
- การอ่านชุดข้อมูลแบบข้อความเป็นแพนด้า
- การทำเวกเตอร์ชุดข้อมูลของเรา
- การสร้างและประเมินแบบจำลอง
- เปรียบเทียบรุ่น
- การตรวจสอบแบบจำลองเพื่อความเข้าใจเพิ่มเติม
- ฝึกเวิร์กโฟลว์นี้กับชุดข้อมูลอื่น
- การปรับ vectorizer (การสนทนา)
เยี่ยมชมพื้นที่เก็บข้อมูล GitHub นี้เพื่อเข้าถึงสมุดบันทึกบทช่วยสอนและแหล่งข้อมูลที่แนะนำอื่นๆ อีกมากมาย