Machine Learning
วิธีเรียน Machine Learning โดยไม่ต้องมีปริญญา
ใช่แล้ว คุณสามารถเรียน machine learning (ML) ได้โดยไม่ต้องมีปริญญา Machine learning คือการสร้างระบบที่ค้นหารูปแบบจากข้อมูลและทำนายผลลัพธ์ ซึ่งทักษะหลักๆ ส่วนใหญ่สามารถเรียนรู้ได้ด้วยตัวเองผ่านการเรียนออนไลน์และการลงมือทำโปรเจกต์ สิ่งที่ข้ามไม่ได้เลยคือความพยายาม นั่นคือการฝึกฝนอย่างสม่ำเสมอทั้งด้านคณิตศาสตร์ การเขียนโค้ด และการทำงานกับชุดข้อมูลจริง ปริญญาเป็นเพียงหนึ่งเส้นทาง แต่พอร์ตโฟลิโอที่แข็งแกร่งและทักษะที่พิสูจน์ได้นั้นมีความสำคัญต่อนายจ้างและลูกค้าหลายรายมากกว่าใบปริญญาเพียงอย่างเดียว
Machine learning ต้องใช้อะไรบ้างจริงๆ
ก่อนจะเริ่มเรียน ควรรู้ก่อนว่าองค์ประกอบพื้นฐานมีอะไรบ้าง Machine learning อยู่ตรงจุดตัดของสามด้าน ได้แก่
- คณิตศาสตร์: พีชคณิตเชิงเส้น ความน่าจะเป็น สถิติ และแคลคูลัสพื้นฐาน คุณแค่ต้องเข้าใจมากพอที่จะรู้ว่าโมเดลเรียนรู้อย่างไร ไม่ต้องเก่งระดับปริญญาเอก
- การเขียนโปรแกรม: Python เป็นภาษามาตรฐาน พร้อมกับไลบรารีอย่าง NumPy, pandas, scikit-learn และในภายหลังก็ TensorFlow หรือ PyTorch
- ทักษะด้านข้อมูล: การทำความสะอาดข้อมูลที่ยุ่งเหยิง การสำรวจข้อมูล และการแปลงปัญหาจริงให้เป็นโจทย์การทำนายผล
คุณไม่จำเป็นต้องเชี่ยวชาญทุกอย่างก่อนจะสร้างโมเดลแรกของคุณ เรียนแค่พอให้เริ่มต้นได้ แล้วค่อยเจาะลึกความรู้ตามที่โปรเจกต์เรียกร้อง
แผนการเรียนแบบทีละขั้นตอน
1. สร้างพื้นฐานการเขียนโปรแกรม
ถ้าคุณเพิ่งเริ่มเขียนโค้ด ให้ใช้เวลาสักสองสามสัปดาห์เรียนพื้นฐาน Python ได้แก่ ตัวแปร ลูป ฟังก์ชัน และการทำงานกับไฟล์ จากนั้นค่อยขยับไปที่ไลบรารีที่เน้นเรื่องข้อมูล คุณควรจะโหลดไฟล์ CSV และสร้างกราฟง่ายๆ ได้อย่างคล่องแคล่วก่อนที่จะไปต่อ
2. เรียนคณิตศาสตร์ที่จำเป็น
ให้เรียนคณิตศาสตร์ควบคู่ไปกับการเขียนโค้ด ไม่ใช่แยกกันเรียน โดยเน้นที่
- สถิติเชิงพรรณนาและความน่าจะเป็น (การแจกแจง ค่าเฉลี่ย ความแปรปรวน)
- พื้นฐานพีชคณิตเชิงเส้น (เวกเตอร์ เมทริกซ์ ดอทโปรดักต์)
- ความเข้าใจเชิงสัญชาตญาณเกี่ยวกับอนุพันธ์และเกรเดียนต์
เป้าหมายคือความเข้าใจ ไม่ใช่การท่องจำ การรู้ว่าทำไมโมเดลถึง overfit สำคัญกว่าการแก้สมการด้วยมือ
3. เรียนแนวคิดหลักของ ML
ค่อยๆ เรียนชุดเครื่องมือมาตรฐานตามลำดับที่เป็นเหตุเป็นผล
- Supervised learning: regression และ classification
- การประเมินโมเดล: การแบ่งข้อมูล train/test, accuracy, precision, recall และ cross-validation
- อัลกอริทึมที่ใช้บ่อย: linear และ logistic regression, decision trees, random forests และ gradient boosting
- Unsupervised learning: clustering และ dimensionality reduction
- Neural networks และ deep learning: เมื่อพื้นฐานแน่นแล้ว
4. ลงมือทำโปรเจกต์จริง
โปรเจกต์คือจุดที่ความรู้กลายเป็นทักษะ หลังจากเรียนแต่ละแนวคิด ให้นำไปประยุกต์กับชุดข้อมูลที่คุณสนใจ เช่น ราคาบ้าน การเลิกใช้บริการของลูกค้า หรือการจำแนกภาพ โปรเจกต์ที่ดีควรมีโจทย์ที่ชัดเจน ชุดข้อมูลที่ทำความสะอาดแล้ว โมเดลที่ผ่านการเทรน และการประเมินผลลัพธ์อย่างตรงไปตรงมา
5. สร้างพอร์ตโฟลิโอ
เผยแพร่ผลงานของคุณสู่สาธารณะ repository บน GitHub ที่มีโค้ดสะอาดตาและคำอธิบายสั้นๆ ของแต่ละโปรเจกต์จะแสดงให้นายจ้างเห็นว่าคุณทำอะไรได้บ้าง โปรเจกต์ที่ตั้งใจทำและมีเอกสารประกอบครบสองสามอันดีกว่าโน้ตบุ๊กที่ทำไม่เสร็จเป็นสิบอัน
วิธีเลือกแหล่งเรียนรู้
อินเทอร์เน็ตมีเนื้อหา ML มากเกินกว่าที่ใครจะเรียนหมดได้ ให้เลือกแหล่งเรียนรู้ที่มีโครงสร้างและเน้นการทำโปรเจกต์ แทนที่จะกระโดดไปมาระหว่างบทเรียนแบบสุ่ม คอร์สออนไลน์ ที่ราคาย่อมเยาและเรียนได้ตามจังหวะตัวเองสามารถให้ลำดับการเรียนที่ชัดเจนแก่คุณ ซึ่งช่วยป้องกันการหลงทางไร้จุดหมายที่ทำให้ผู้เรียนด้วยตัวเองหลายคนหยุดชะงัก ไม่ว่าคุณจะเลือกอะไร ให้ให้ความสำคัญกับแหล่งที่ทำให้คุณได้เขียนโค้ด ไม่ใช่แค่ดูวิดีโอ
ใบประกาศนียบัตรสำคัญไหม
ใบประกาศนียบัตรช่วยได้ในบางแง่ แต่ไม่ใช่ยาวิเศษ ใบประกาศนียบัตรบ่งบอกว่าคุณเรียนจบหลักสูตรที่มีโครงสร้าง และเป็นส่วนเสริมที่มีประโยชน์ในเรซูเม่หรือโปรไฟล์ LinkedIn อย่างไรก็ตาม มันไม่ได้การันตีงาน การเลื่อนตำแหน่ง หรือเงินเดือนที่แน่นอน ในสาย machine learning นายจ้างมักให้น้ำหนักกับทักษะที่พิสูจน์ได้และโปรเจกต์เป็นหลัก ให้มองใบประกาศนียบัตรเป็นส่วนเสริมของพอร์ตโฟลิโอที่แข็งแกร่ง ไม่ใช่สิ่งทดแทน ถ้าคุณอยากดูว่าใบรับรองการเรียนจบหน้าตาเป็นอย่างไร ลองดู ตัวอย่างใบประกาศนียบัตร ก่อนสมัครเรียนที่ไหน
ความคาดหวังและกรอบเวลาที่สมจริง
การเรียน ML ให้เก่งต้องใช้เวลาเป็นเดือน ไม่ใช่เป็นวัน ด้วยความพยายามอย่างสม่ำเสมอสัปดาห์ละไม่กี่ชั่วโมง ผู้เรียนด้วยตัวเองหลายคนสามารถไปถึงระดับที่ใช้งานได้พื้นฐานในราวหกเดือนถึงหนึ่งปี ความก้าวหน้าขึ้นอยู่กับจุดเริ่มต้นของคุณ ความสม่ำเสมอ และปริมาณที่คุณลงมือทำมากกว่าแค่อ่าน
จงซื่อสัตย์กับตัวเองเกี่ยวกับช่องว่างที่การเรียนด้วยตัวเองอาจทิ้งไว้ หากไม่มีโปรแกรมที่มีโครงสร้าง ก็ง่ายมากที่จะข้ามพื้นฐานหรือหลบเลี่ยงคณิตศาสตร์ที่ยากลำบาก แก้ปัญหานี้ได้ด้วยการ
- เรียนตามหลักสูตรที่กำหนดไว้ตั้งแต่ต้นจนจบ
- กลับไปทบทวนแนวคิดที่คุณคิดว่ายากแทนที่จะหลบเลี่ยง
- เข้าร่วมชุมชนออนไลน์เพื่อถามคำถามและรับฟีดแบ็ก
- อ่านโค้ดของคนอื่นเพื่อเรียนรู้แนวทางปฏิบัติที่ดีกว่า
ข้อผิดพลาดที่พบบ่อยและควรหลีกเลี่ยง
- กระโดดไปมาระหว่างบทเรียน: เริ่มคอร์สใหม่ไม่รู้จบโดยไม่เคยเรียนจบหรือสร้างอะไรเลย
- ข้ามพื้นฐาน: กระโดดไปเรียน deep learning ก่อนจะเข้าใจ regression และการประเมินผล
- มองข้ามงานด้านข้อมูล: ML จริงส่วนใหญ่คือการทำความสะอาดข้อมูลและการตั้งโจทย์ ไม่ใช่โมเดลหวือหวา
- ไม่มีพอร์ตโฟลิโอ: เรียนอยู่เงียบๆ โดยไม่มีอะไรมาแสดงผลงาน
สรุปแล้ว
ปริญญาไม่ใช่ข้อบังคับในการเรียน machine learning สิ่งที่สำคัญคือเส้นทางที่มีวินัย ได้แก่ พื้นฐานที่แน่น การเรียนที่มีโครงสร้าง และนิสัยการสร้างโปรเจกต์จริงที่คุณสามารถนำมาแสดงได้ จงมุ่งเน้นที่ทักษะที่แท้จริง อดทนกับกรอบเวลา และปล่อยให้พอร์ตโฟลิโอเป็นตัวบอกเล่าสิ่งที่คุณได้เรียนรู้มา