คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 3
ถ้าคุณมาทาง Econ นี่ผมว่ามีจุดเริ่มที่ดีระดับหนึ่งครับ องค์ความรู้ที่ควรเน้นคือ
1. สถิติ โดยเฉพาะสถิติเชิงอนุมาน (Inferential Statistics) ซึ่งคณะคุณคงมีสอนอยู่แล้ว ไม่จำเป็นต้องเข้าใจระดับพิสูจน์ทฤษฎีหรือเข้าใจสมการทางคณิตศาสตร์ได้ทั้งหมด แต่ให้เข้าใจหลักการทดสอบสมมติฐาน สิ่งควรระวัง error แบบต่าง ๆ การสร้างโมเดล error/bias ของโมเดล เข้าใจในภาพรวมก็พอครับ เรียนรู้ทำความเข้าใจ regression model ที่ผมคิดว่าทางคณะคุณสอนแน่นอน (linear regression, logistic regression, generalized linear model) รวมถึงพวก regularization ต่าง ๆ (ridge, lasso, พวกนั้น) เอาให้แน่นเลยเพราะเนื้อหาส่วนนี้ใกล้เคียงกับที่สอนกันในคณะคุณที่สุด
2. ภาษาโปรแกรม แนะนำ Python ครับ ไม่ต้องไปใช้โปรแกรมสำเร็จรูปทางสถิติ (เช่น SPSS หรือ STATA) หรือภาษาเฉพาะทางใด ๆ มันต่อยอดยาก และไม่ได้เป็นสิ่งที่ใช้งานแพร่หลายในวงการ Data Science เรียน Python แล้วให้เรียนไลบรารีด้าน Data Science อีกสองสามตัว คือ 1. Pandas (จำเป็น) 2. scikit-learn (สำหรับงานด้าน machine learning) 3. statsmodel (สำหรับงานด้านการสร้างโมเดลทางสถิติอื่น) 4. seaborn/plotly สำหรับงานด้านการสร้างแผนภาพ (visualization) 2-4 นี่อาจจะเลือกเรียนซักตัวนึงก่อนก็ได้ครับที่สนใจที่สุด
3. กระบวนการทำงานด้าน data science ตั้งแต่ data gathering, cleaning, transformation, modeling, visualization และฝึกทำด้วยภาษาโปรแกรมในข้อ 2. งานด้าน data science ไม่ใช่การวิเคราะห์ข้อมูลอย่างเดียว มีสิ่งอื่นที่คุณต้องทำอีกเยอะ จะต้องทำมากน้อยแค่ไหนขึ้นกับว่าคุณมีคนอื่นทำให้หรือเปล่า ส่วนมากแล้ว data scientist มักต้องทำขั้นตอนอื่นบ้างเช่นกัน ลองทำดูว่าชอบทำขั้นตอนไหนมากกว่ากัน gathering/cleaning หรือ modeling หรือ visualization
ถ้าจะมาด้าน modeling/analysis
4. องค์ความรู้ด้าน machine learning กระบวนการสร้างและทดสอบและปรับจูนโมเดล รวมถึง algorithm ต่าง ๆ ในการสร้างโมเดล เช่น K-Nearest Neighbors, algorithm ตระกูล Tree (decision tree, random forest, gradient boosted tree), Support Vector Machine, Naive Bayes แนะนำว่าเรียนรู้แบบค่อย ๆ สะสมไป ศึกษาอัลกอริทึมสัปดาห์ละตัว ทดลองใช้ Python สร้างโมเดลจริงตาม algorithm นั้น สัปดาห์หน้าลองอีกตัว พอผ่านไป 3 เดือนกลับมาอ่านมาศึกษาตัวแรกใหม่ (ด้วยแหล่งข้อมูลอื่นที่ไม่ซ้ำกับรอบแรก) ผมรับประกันได้เลยว่าคุณเรียนรอบแรกไม่มีทางเข้าใจประเด็นของอัลกอริทึมแต่ละตัวได้หมดแน่นอนครับ แนะนำว่ารอบแรกเรียนให้เข้าใจ concept และไอเดียการทำงานของอัลกอริทึมก่อน รอบสองมาทำความเข้าใจเชิงลึก จุดดีจุดเสียเทียบกับอัลกอริทึมอื่น รอบสามมาทำความเข้าใจคณิตศาสตร์เบื้องหลัง อัลกอริทึมหลายตัวอาจจะไม่ได้มีประสิทธิภาพที่ดีสู้ตัวอื่นแล้วตอนนี้ แต่ก็ยังแนะนำให้เรียนเพื่อเป็นพื้นฐานสำหรับอัลกอริทึกรุ่นใหม่ที่ส่วนมากก็พัฒนาต่อจากของเดิม
5. ข้อนี้อาจเป็นความเห็นที่ไม่เหมือนคนทั่วไป คือผมคิดว่ายังไม่จำเป็นต้องเน้นคณิตศาสตร์ รอจนถึงตอนที่ศึกษาอัลกอริทึมรอบสามถึงค่อยมาดูคณิตศาสตร์เบื้องหลังอย่างละเอียด เพราะอัลกอริทึมแทบทั้งหมดมีคนอื่นสร้างไลบรารีให้เราเรียกใช้เองอยู่แล้ว ช่วงแรกนั้นเราเข้าใจคณิตศาสตร์ให้พอที่จะปรับจูนโมเดลได้ก็พอ แน่นอนว่าถ้ารู้คณิตศาสตร์ด้วยก็ดีกว่า แต่มันยังไม่จำเป็นมากในช่วงแรก และคณิตศาสตร์ของแต่ละอัลกอริทึมก็ไม่เหมือนกัน ดังนั้นรอจนคุณจะเจาะลึกอัลกอริทึมตัวใดก็ค่อยเรียนคณิตศาสตร์ของอัลกอริทึมนั้นก็ได้
1. สถิติ โดยเฉพาะสถิติเชิงอนุมาน (Inferential Statistics) ซึ่งคณะคุณคงมีสอนอยู่แล้ว ไม่จำเป็นต้องเข้าใจระดับพิสูจน์ทฤษฎีหรือเข้าใจสมการทางคณิตศาสตร์ได้ทั้งหมด แต่ให้เข้าใจหลักการทดสอบสมมติฐาน สิ่งควรระวัง error แบบต่าง ๆ การสร้างโมเดล error/bias ของโมเดล เข้าใจในภาพรวมก็พอครับ เรียนรู้ทำความเข้าใจ regression model ที่ผมคิดว่าทางคณะคุณสอนแน่นอน (linear regression, logistic regression, generalized linear model) รวมถึงพวก regularization ต่าง ๆ (ridge, lasso, พวกนั้น) เอาให้แน่นเลยเพราะเนื้อหาส่วนนี้ใกล้เคียงกับที่สอนกันในคณะคุณที่สุด
2. ภาษาโปรแกรม แนะนำ Python ครับ ไม่ต้องไปใช้โปรแกรมสำเร็จรูปทางสถิติ (เช่น SPSS หรือ STATA) หรือภาษาเฉพาะทางใด ๆ มันต่อยอดยาก และไม่ได้เป็นสิ่งที่ใช้งานแพร่หลายในวงการ Data Science เรียน Python แล้วให้เรียนไลบรารีด้าน Data Science อีกสองสามตัว คือ 1. Pandas (จำเป็น) 2. scikit-learn (สำหรับงานด้าน machine learning) 3. statsmodel (สำหรับงานด้านการสร้างโมเดลทางสถิติอื่น) 4. seaborn/plotly สำหรับงานด้านการสร้างแผนภาพ (visualization) 2-4 นี่อาจจะเลือกเรียนซักตัวนึงก่อนก็ได้ครับที่สนใจที่สุด
3. กระบวนการทำงานด้าน data science ตั้งแต่ data gathering, cleaning, transformation, modeling, visualization และฝึกทำด้วยภาษาโปรแกรมในข้อ 2. งานด้าน data science ไม่ใช่การวิเคราะห์ข้อมูลอย่างเดียว มีสิ่งอื่นที่คุณต้องทำอีกเยอะ จะต้องทำมากน้อยแค่ไหนขึ้นกับว่าคุณมีคนอื่นทำให้หรือเปล่า ส่วนมากแล้ว data scientist มักต้องทำขั้นตอนอื่นบ้างเช่นกัน ลองทำดูว่าชอบทำขั้นตอนไหนมากกว่ากัน gathering/cleaning หรือ modeling หรือ visualization
ถ้าจะมาด้าน modeling/analysis
4. องค์ความรู้ด้าน machine learning กระบวนการสร้างและทดสอบและปรับจูนโมเดล รวมถึง algorithm ต่าง ๆ ในการสร้างโมเดล เช่น K-Nearest Neighbors, algorithm ตระกูล Tree (decision tree, random forest, gradient boosted tree), Support Vector Machine, Naive Bayes แนะนำว่าเรียนรู้แบบค่อย ๆ สะสมไป ศึกษาอัลกอริทึมสัปดาห์ละตัว ทดลองใช้ Python สร้างโมเดลจริงตาม algorithm นั้น สัปดาห์หน้าลองอีกตัว พอผ่านไป 3 เดือนกลับมาอ่านมาศึกษาตัวแรกใหม่ (ด้วยแหล่งข้อมูลอื่นที่ไม่ซ้ำกับรอบแรก) ผมรับประกันได้เลยว่าคุณเรียนรอบแรกไม่มีทางเข้าใจประเด็นของอัลกอริทึมแต่ละตัวได้หมดแน่นอนครับ แนะนำว่ารอบแรกเรียนให้เข้าใจ concept และไอเดียการทำงานของอัลกอริทึมก่อน รอบสองมาทำความเข้าใจเชิงลึก จุดดีจุดเสียเทียบกับอัลกอริทึมอื่น รอบสามมาทำความเข้าใจคณิตศาสตร์เบื้องหลัง อัลกอริทึมหลายตัวอาจจะไม่ได้มีประสิทธิภาพที่ดีสู้ตัวอื่นแล้วตอนนี้ แต่ก็ยังแนะนำให้เรียนเพื่อเป็นพื้นฐานสำหรับอัลกอริทึกรุ่นใหม่ที่ส่วนมากก็พัฒนาต่อจากของเดิม
5. ข้อนี้อาจเป็นความเห็นที่ไม่เหมือนคนทั่วไป คือผมคิดว่ายังไม่จำเป็นต้องเน้นคณิตศาสตร์ รอจนถึงตอนที่ศึกษาอัลกอริทึมรอบสามถึงค่อยมาดูคณิตศาสตร์เบื้องหลังอย่างละเอียด เพราะอัลกอริทึมแทบทั้งหมดมีคนอื่นสร้างไลบรารีให้เราเรียกใช้เองอยู่แล้ว ช่วงแรกนั้นเราเข้าใจคณิตศาสตร์ให้พอที่จะปรับจูนโมเดลได้ก็พอ แน่นอนว่าถ้ารู้คณิตศาสตร์ด้วยก็ดีกว่า แต่มันยังไม่จำเป็นมากในช่วงแรก และคณิตศาสตร์ของแต่ละอัลกอริทึมก็ไม่เหมือนกัน ดังนั้นรอจนคุณจะเจาะลึกอัลกอริทึมตัวใดก็ค่อยเรียนคณิตศาสตร์ของอัลกอริทึมนั้นก็ได้
แสดงความคิดเห็น
สอบถาม learning path ของการเป็น Data science หรือ Data analysis
พวก mathematic ต้องศึกษาเรื่องไหนเป็นพิเศษ
การใช้โปรแกรม เขียนโปรแกรม มีภาษาไหนต้องศึกษาเป็นพิเศษไหม
skill ที่ควรมี ควรมีอะไรบ้าง