ปี 2020 กับ Skills ของ Data Scientist ที่ต้องเจอ

หยิบกระดาษขึ้นมาแล้วทำ Checklist กันได้เลย
.


📚 1. Machine Learning และ Deep Learning
จริงๆก็เป็น Main Skills หลักที่ต้องมีเลยนะ
เพราะได้ใช้ในการทำงานสายนี้โดยตลอด
ส่วน Machine Learning เริ่มต้นได้จาก
Traditional Model ง่ายๆเช่น
Linear Regression เจ้าเส้นตรง หรือ
Decision Tree เจ้าต้นไม้
ซึ่งสามารถอธิบายเป็นเหตุเป็นผลได้ไม่ยาก
ให้กับคนที่อยู่นอกสาย Data
.
ส่วน Deep Learning รู้ไว้มีประโยชน์กว่าไม่รู้แน่นอน
เพราะโลกเรา Data เยอะขึ้นเรื่อยๆ
และบางงานเราเน้น Model แม่นๆ
มากกว่าการอธิบายว่าทำไมมันถึงต้องแม่น
.
ส่วน Framework ที่ใช้เขียนก็มีหลายตัวด้วยกัน
เริ่มแบบง่าย ก็ ScikitLearn
หรือระดับกลาง Keras (ปัจจุบันรวมกับ Tensorflow ใช้ง่ายขึ้นเยอะ)
ถ้ายากขึ้นมาหน่อยก็ Pytorch + Tensorflow
ซึ่งทั้งสามตัวเขียนผ่านภาษา Python นั่นเอง
.
สำหรับ ML + DL แอดใช้ตอนทำงานช่วงปีที่หนึ่งตลอดเลย !!
อาจจะลงเป็น ML 80 % DL 20 %
.


📚 2. Natural Language Processing (NLP)
คือการใช้ประโยชน์ จากข้อมูลพวก Text
หรือสอนคอมส์พิวเตอร์ให้เข้าใจภาษามนุษย์
โดย Model ที่เราต้องเจอจะค่อนข้างยากขึ้นมาอีกระดับ
ส่วนใหญ่จะเจอพวก Sequential Model
เช่น LSTM, Bi-LSTM, Transformer, BERT,
Elmo, GPT เป็นต้น
.
ความยากในการศึกษาในเรื่องนี้คือการลงมือทำ
เพราะเราต้องเจอกับภาษา RegularExpression
ใช้ในการจัดการข้อมูล หรือดึง Text ที่ต้องการ
.
ด้วยความที่ NLP เกี่ยวข้องกับภาษา
มันจึงเกี่ยวพันธ์กับ Voice หรือเสียงด้วยนะ
ซึ่ง Data ก็อยู่ในรูปแบบของ Sequential อีกนั่นเอง
น่าสนุกใช่ไหมล่ะ 5555555+
.
สำหรับ NLP แอดใช้ตอนทำงานช่วงปีที่สองค่อนข้างเยอะเลยล่ะ !!
.


📚 3. Statistics สถิติ หนีไม่พ้นหร่อกนะ ฮ่าๆๆๆ
.
คำแนะนำง่ายๆคือเข้าใจ ว่าต้องใช้ตอนไหน
เช่นเราเจอข้อมูล อยากทราบ Insight ง่ายๆ
ก็หมุนข้อมูลไปมา ดูค่า Mean, Min, Max, Range,
Mode, Median, Quantile บลาๆๆๆ
เท่านี้ก็ช่วยระดับนึงแล้ว
.
สถิติ ช่วยให้เราคิดอย่างเป็นระบบ
และไม่เชื่อข้อมูลอะไรง่ายๆ หากไม่มีข้อมูลมากเพียงพอนั่นเอง
.
สำหรับแอดแล้ว Stats ใช้ตลอดการทำงานเลยนะ ^^
.


📚 4. Programming Skills หนีไม่พ้นอีกเช่นกันกับการ Code
.
เรามีให้เลือกมากมายเลยนะไม่ว่าจะเป็น
R, Python, Julia, Matlab
ซึ่งจะเริ่มอย่างไรดี
ก็ลองเลือกก่อนละกันว่าจะเริ่มอะไรก่อนให้ได้ซัก Project
แล้วค่อยเรียน SQL ต่อยอดเพิ่มเติม
.
การเขียนโค้ดช่วยให้เราทำงานยากๆง่ายขึ้น
ทำงานซ้ำๆน่าเบื่อ ให้กลายเป็นอัตโนมัติ
ทำงานที่คำนวณยากให้กลายเป็นงานน่าทึ่ง
และจัดระบบความคิดการทำงานให้เป็นเหตุเป็นผล
.
ก่อนเข้ามาสายงานนี้แอดเรียนตลอด 3 เดือน
จาก Data Camp โดย 3 เดือนนั้น
ตั้งใจเรียนตั้งแต่เช้ายันดึก
+ กับการทำ Project จนมันซึมไปเอง
.


📚 5. MLOps & Workflow
.
ว่าด้วยเรื่องงานของ Data Scientist
หลังจากเราทำ Model เจ๋งๆได้ซักอย่างแล้ว
เราก็คงอยากให้มันทำงานได้เองอัตโนมัติ
นั่นคือการทำ Model Deploying
.
การเขียนโค้ดก็จะมีความละเอียดมากขึ้น
มีความเข้าใจในเรื่องของ Inflastructure มากขึ้น
เข้าใจการ Track Error ที่เกิดขึ้น
รวมไปถึง Cycle ของการทำงาน Model
ว่าเราจะทำการ Train Model ใหม่อีกรอบเมื่อใดดี
.
เรื่องนี้แอดทำมาตั้งแต่ทำงานปีแรกจนถึงปัจจุบันเลยล่ะ
เพราะได้เห็นความ Automation
และ Model เรารันใน Business ได้ โคตรจะฟินเลย
ซึ่ง Skill ด้านนี้จะค่อนข้างยากหน่อยน้า
แต่รับรองเป็นแล้วสนุกแน่นอนนน !
.


📚 6. Git & Agile หนีไม่พ้นอีกเช่นกันกับการ Code
.
การใช้ Git เพื่อใช้งานเขียนโค้ดหรือทำ Project กันเป็นทีม
ข้อนี้อาจจะไม่คุ้นนัก หรือเห็นแล้วต้องเรียนด้วยหรอ
อยากจะบอกว่ารู้ไว้ก็ดีกว่าครัช
แต่ไม่จำเป็นต้องรู้ก่อนเป็นอันดับแรก
.
Git ช่วยให้โค้ดเราไม่ปนเปกับโค้ดคนอื่น
และเป็นที่ให้เราแก้ไข และเซฟโค้ดในแต่ละ Version
ซึ่งถ้าไม่มีเจ้า Git ก็เหมือนไม่มี Backup โค้ด
หรือหากโค้ดเราเสีย อยากได้ Version เก่าคืนมา
ก็ทำไม่ได้นั่นเอง !!
.
ส่วน Agile เป็นวิธีการทำงานรูปแบบหนึ่ง
ซึ่งมาจากทางฝั่ง Tech Company
โดยเน้นการทำงานเป็น Cycle
มีการ Feedback งานกันตลอด
และมีการ Deliver งานออกตลอดเช่นกัน
โดยที่งานนั้น ไม่จำเป็นต้องเสร็จ 100 %
แต่เน้น Feedback ช่วยให้งานค่อยสมบูรณ์ขึ้นนั่นเอง
.
เอาจริงข้อนี้แอดอาจจะพูดได้ไม่เต็มปากว่าใช้
เอาเป็นว่าใช้ประมาณ 30 % ละกัน อิอิ
.


📚 7. Big Data & Cloud
.
เมื่อคอมส์เครื่องเดียวไม่พอ
และการทำ Deploy Model อยู่รอบตัวเรา
การเรียนรู้เรื่องพวกนี้จึงเป็นเรื่อง พื้นฐานก็ว่าได้
โดยเรื่องที่เราต้องเจอเพิ่มขึ้นคือ
การเขียนภาษาเพื่อประมวลผลคอมส์หลายๆตัว
หรือ Spark, Scala, Hadoop, Hive
.
อีกด้านหนึ่งคือเรื่องของ Cloud
เช่น Google, Cloudera, Azure, AWS
ซึ่งแต่ละเจ้าก็มีข้อดีข้อเสียต่างกัน
หรือความถนัดในการใช้แตกต่างกันไป
.
ถามแอดว่าจำเป็นไหม
ก็จำเป็นกลางๆนะ
ถ้าเราไม่เจอข้อมูลขนาดใหญ่นัก ก็คงไม่จำเป็น
แต่ถ้าเราอยู่ Enterprise บ. ใหญ่ๆ
ก็ได้ใช้แน่นอนครับ
.


📚 8. Visualization & Data Wrangling
.
สุดท้ายคือสกิลในการงัด Insight ออกมา
ซึ่งคือการ Process Data และแสดงผล
โดยผลที่ออกมาเราจะต้องนำเสนอให้คนอื่นเข้าใจ
พูดง่ายๆก็คือ อธิบายงานที่เราทำให้เด็กๆเข้าใจได้นั่นเอง
.
และผลที่ออกมา…
สามารถทำให้เกิด Business Impact ได้ !!
ซึ่งข้อนี้สำคัญมากๆๆๆๆๆๆๆ
โคตรมากเลย และแอดก็ใช้ข้อนี้ตลอดการทำงาน
.
.
.
สุดท้ายแล้ว เราอาจจะมี Skill ใน List ทั้งหมด
หรือมี Skill แค่อย่างเดียว หรือจะไม่มีเลยก็ตาม
ทั้งหมดนี้มันแค่ส่วนเดียวเองนะที่ต้องเจอในการทำงาน
เพราะ Skills ต่างๆขึ้นกับงานที่ได้รับมอบหมาย
รวมถึงบริษัทที่ได้ไปทำด้วย
ดังนั้น ดูให้แน่ชัดว่าที่เราต้องไปทำต้องใช้ Skills อะไรบ้าง
แล้วเรามีตรงกันไหม ถ้ามีก็เรียนของใหม่เพิ่ม
แต่ถ้าขาดก็ต้องรีบเติม หรือ
หาที่เหมาะกับ Skills ที่เรามีก่อนนั่นเองฮับ
.
อยากฝากไว้ว่า
งานสาย Data Scientist นั้น
เป็นงานที่ต้องเรียนรู้ตลอดเวลา
และพยายามย่อย Data ให้เป็นภาษาคนที่เข้าใจง่าย
โดยที่สามารถสร้าง Business Impact ขึ้นมา ^^
และจริงๆแล้ว List ทั้งหมดนี้ก็เป็นแค่ส่วนเดียวเท่านั้นเอง
เพราะในการทำงานต้องใช้ Soft Skills อีกเยอะเลยล่ะ !!
.
ยังไงบอยด์เป็นกำลังใจให้กับทุกคนที่อยากเข้ามาในสาย Data Scientist นะครับ ❤🌟
.

Reference:
https://towardsdatascience.com/what-skills-new-and-seasoned-data-scientists-should-learn-in-2020-233876b852fa