20210209 [CHULA MOOC] Data Science 2019 Pathway

เรียนจบแล้วจ้าสำหรับคอร์ส Data Science Pathway ของ Chula MOOC Achieve โดยในบทความนี้เป็นการตกผลึกความคิดจากหลังการเรียนของผมนะครับ ^^

ในบทความนี้เป็นการตกผลึกความคิดจากหลังการเรียนซึ่งอาจจะไม่ได้เกี่ยวข้องโดยตรงกับเนื้อหาการเรียนการสอนโดยตรงนะครับ ^^ ส่วนสำหรับใครที่สนใจรายละเอียดของคอร์สสามารถดูรายละเอียดเพิ่มเติมได้ ที่นี่

ปล. Certificated of my Data Science Pathway

การรู้จัก Tools ที่มากและลึกย่อมมีความได้เปรียบในการทำ Data Science

เนื่องจากในคอร์สช่วงที่เรียนเกี่บวกับการพัฒนาโมเดลต่างๆนั้นใช้โปรแกรม Rapid Miner เป็นหลัก (ตอนแรกแอบหวังว่าจะใช้ Python 555+) สิ่งหนึ่งที่พบคือ โปรแกรมบางโปรแกรมในที่นี่ขอเรียกว่าเครื่องมือ (Tool) ก็ถูกออกแบบมาเพื่อการใช้งานของ user ได้อย่างง่ายๆ โดยมีฟีเจอร์ (Feature) หรือฟังก์ชั่น (Function) ที่พร้อมสำหรับการใช้งานแล้ว !!

ดังนั้น การรู้จัก Tools ที่มากประกอบกับความเข้าใจในเครื่องมือแต่ละอย่าง จะช่วยให้ในการทำงานจริงเราสามารถประยุกต์ใช้เครื่องมือต่างๆได้อย่างมีประสิทธิภาพ และผลลัพธ์ของมันก็คือ ช่วยลดระยะเวลาการทำงานของเราได้ ลองจินตนาการว่าถ้าเราจะทำโมเดล Clustering ใน python คุณต้องไปเขียนเองตั้งแต่ import data, cleansing data, developing model รวมถึง evaluating model แต่ถ้าคุณใช้ Rapid Miner ทุกอย่างมีเป็น Operator ให้เรียบร้อยแล้ว คุณก็จะสามารถทำงานได้อย่างสะดวกสบายมากขึ้น

 

80% หมดเวลาไปกับการเตรียม Data คือเรื่องจริง 555

ข้อนี้ถ้าเป็นสาย Data Science ก็คงจะรู้กันดีอยู่แล้วโดยที่ไม่ต้องอธิบายเพิ่มเติม เพราะในชีวิตจริงข้อมูล (Data) หลายๆอย่างไม่ได้ถูกจัดระเบียบให้อยู่ใน Format ที่พร้อมสำหรับการใช้งานสักเท่าไหร่  ประกอบกับ Model แต่ละอันก็ไม่ได้รองรับกับทุกรูปแบบของ data ไม่นับระหว่างทางต้องมา Normalized ค่าแล้ว Denormalized เพื่อแสดงผลอีก ดังนั้นกว่าจะได้ถึงขั้นพัฒนาโมเดลก็แทบอ้วกแล้ว 555

อย่างไรก็ตาม จากข้อนี้ประกอบกับจากการเรียนในคอร์สอยู่ดีๆผมก็เกิดความรู้สึกนึงขึ้นมาว่า การจัดเตรียมข้อมูลในบางครั้งก็สนุกกว่าการพัฒนาหรือทำโมเดล ทำให้ปัจจุบันเริ่มสนใจสายงานฝั่ง Data Engineer มากขึ้น

ปล. ชอบทริคเรื่องการ take log เพื่อแปลงข้อมูลที่ไม่ใช่ Normal Distribution ให้เป็น Normal Distribution

 

Debug Please !!

การ Debug ในขั้นต้นที่ง่ายที่สุดและสามารถทำได้ด้วยตัวเองคือ การอ่านคู่มือ!! เนื่องจากในระหว่างการเรียนก็มีบ้างที่ผลลัพธ์ได้ไม่ตรงกับผู้สอนบ้าง แล้วเวลาได้ผลลัพธ์ไม่ตรงผลที่ตามมาคือ หัวร้อน (555) มันจะมีคำถามว่า “ทำไมไม่ตรง? ทำอะไรผิด?” ซึ่งเอาจริงๆร้อยทั้งร้อยก็เกิดจากการตั้งค่า Setting ของตัวเราเอง ซึ่งอาจจะมีผิดพลาดบ้างในจุดเล็กๆน้อยๆ ก็ค่อยๆหากันไป 

นอกจากนี้ หากทำงานที่มีความซับซ้อนมากขึ้นหรือมี Operating Process ที่มากขึ้น การส่งถ่ายข้อมูลจากส่วนหนึ่งไปอีกส่วนหนึ่ง ควรมีการเช็คผลลัพธ์ในแต่ละขั้นว่ามีการทำงานหรือมีผลลัพธ์ที่ถูกต้องไหม

ซึ่งหนึ่งใน Featured สำคัญของ Rapid Miner ของทุก Operation Node คือ สามารถ Show example set results หรือโชว์ผลลัพธ์จากการทำงานต่างๆได้ซึ่งจะช่วยให้เราตรวจสอบการทำงานใน Process ได้ถูกต้องยิ่งขึ้น เพราะมันไม่มีความสำคัญเลยถ้าผลลัพธ์ของโมเดลคุณจะสวยหรู แต่ข้างในบัคเพียบ 555

 

การพัฒนาโมเดลเป็น 2 ways Communication

หลายคนมักมองว่าการพัฒนาโมเดลทำครั้งเดียวแล้วจบแต่ในความเป็นจริงกลับไม่เป็นเช่นนั้น เพราะในกระบวนการ Research & Develope นั้น ผลลัพธ์จากการทำโมเดลหนึ่งๆนั้นนอกจากตัวโมเดลแล้ว เรายังได้ข้อมูลหรือ insight อะไรบางอย่างที่เกิดจากโมเดลนั้นๆ เมื่อเป็นข้อมูล (information) สำหรับการพัฒนาโมเดลครั้งถัดๆไปด้วย

หรือแม้กระทั่งเราได้โมเดลที่สมบูรณ์และถูกนำไปใช้งานจริงแล้ว (Deploy) เราก็ยังต้องมีกระบวนการในการตรวจสอบโมเดล (Model Evaluation) อยู่ตลอดเวลาว่าโมเดลยังคงประสิทธิภาพเหมือนเดิมอยู่หรือไม่

 

คุณสมบัติที่แยก Programmer ชั้นนำออกจากค่าเฉลี่ยคือ คณิตศาสตร์

คำพูดนี้ผมได้ยินครั้งแรกจากคลิป why you NEED math for programming ของ Joma Tech ซึ่งเป็นการ Render Donut จาก Terminal ส่วนวิธีการขอข้ามไปก่อนผมยังเข้าไม่ถึง แต่มีประโยคนึงโดนใจคือ ถึงแม้ว่า 99% ของการเขียนโค้ดไม่ได้ใช้คณิตศาสตร์ แต่อีก 1% ที่เหลือ ณ โมเมนต์นั้นจะเป็นการแยกระหว่าง The Great Programmer ออกจาก Programmer ทั่วๆไป

กลับเข้าเรื่องของเรา ณ พาร์ทสุดท้ายตอนที่ ผศ.ดร.สุกรี สินธุภิญโญ อาจาร์ยภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ จุฬาลงกรณ์มหาวิทยาลัย สอนเรื่อง Matrix Operation ทำให้เห็นประโยชน์ของการเก็บข้อมูลในรูปของ Metrix และเวลาเอามาทำ Operation ต่างๆทางคณิตศาสตร์จะสะดวกสบายมากขึ้นกว่าการแยกคิดทีละส่วนเยอะมาก (หลายคนอาจจะรู้อยู่แล้ว แต่ผมพึ่งรู้เลยตื่นเต้น 555)

 

สุดท้ายนี้ ก็ขอขอบคุณอาจารย์ผู้สอนทุกท่านที่ให้ความรู้ใหม่ๆครับ 😀

จบแล้วสุดท้ายนี้ ก็ขอขอบคุณอาจารย์ผู้สอนทุกท่านที่ให้ความรู้ใหม่ๆครับ ได้ความรู้มากๆ เรียนสนุกดี พี่ๆ TA ก็ช่วยเหลือเต็มที่ (สังเกตได้จากใน Guide) ทั้งนี้ใครที่สนใจ Data Science ก็ลองสมัครไปดูกันนะครับ

 

***

Copyright © 2021 siglines - All Rights Reserved