สวัสดีคนที่หลงเข้ามาในบทความนี้ทุกคนค่ะ เดือนก.ค.นี้ (ปี 2018) เราก็ทำงานในตำแหน่ง Data Scientist ที่ FINNOMENA มาได้ครบ 1 ปีละ เลยอยากจะเขียนบทความรีวิวชีวิตตัวเองเก็บไว้ พร้อมๆกับแชร์ประสบการณ์ให้กับคนอื่นๆที่สนใจอาชีพนี้ด้วย โดยบทความของเราจะแบ่งเป็น 3 ส่วน คือ Show
เผื่อใครไม่สนใจ part ไหนก็ข้ามๆไปเลยและบทความนี้จะไม่มีส่วนที่เป็น Technical เลยค่ะ จุดเริ่มต้นของการเป็น Data Scientist ของเราก็เริ่มจากรูปโฆษณาด้านล่างนี่แหละค่ะ (โดนดูดมาเพราะติดเกมชัดๆ) ถ้าพร้อมแล้วก็ไปผจญภัยกันเล้ยยยยย Disclaimer: ปัจจุบันผู้เขียนไม่ได้ทำงานที่ FINNOMENA แล้วนะคะ ข้อมูลอาจมีการเปลี่ยนแปลงค่ะ Data Scientist ที่ FINNOMENA ทำอะไรบ้าง ก่อนอื่นขอแนะนำบริษัทสั้นๆ … FINNOMENA เป็น FinTech Startups ด้าน Wealth Advisory Platform ให้คำแนะนำในการจัดพอร์ตกองทุนรวม นอกจากนั้นเรายังมีข้อมูลกองทุนและหุ้นที่ช่วยให้นักลงทุนมาหาข้อมูล และมีบทความสำหรับผู้ที่สนใจด้านการลงทุนอีกด้วย Data Scientist ที่ FINNOMENA จะอยู่ในทีม Business Intelligence (BI) ซึ่งหน้าที่ของเราก็คือเอาข้อมูลที่เรามีทุกประเภทจากทุกแหล่งที่เรามีมาวิเคราะห์หรือหา Insight ให้กับทีมต่างๆในบริษัทค่ะ ที่ FINNOMENA ทีมที่ไม่ใช่ Tech เราจะถือว่าเป็นทีมฝั่ง Business ทั้งหมดรวมทั้ง BI ด้วย (ในบทความนี้คำว่า Business จะหมายถึงทีมที่อยู่ด้านบนในรูปค่ะ) ตัวอย่างงานที่เราทำกับทีมต่างๆก็เช่น
นอกจากนี้ยังมีงานจิปาถะจากทุกภาคส่วน คืออะไรที่เกี่ยวกับ Data ก็เดินมาที่ทีมนี้เลยจ้าาาา … เราก็ต้องทำให้ upon request นั่นแหละค่ะ ลักษณะงานของ Data Scientist ที่นี่จึงไม่ได้แค่นั่งเขียน Python ทำโมเดลไปเรื่อยๆอย่างเดียว แต่จะควบตำแหน่ง Data analyst ที่เขียน SQL ดึงข้อมูล มาวิเคราะห์ง่ายๆบน Excel หรือทำ Dashboard ให้ Insight กับทีมอื่นๆด้วยค่ะ ด้วยตัวงานแล้ว Data Scientist ที่นี่จะไม่ได้ออกหน้างานหรือคุยกับลูกค้าโดยตรงมากนัก เป็นเหมือนเป็นฝ่าย Support ทีม Business อื่นๆ ทำงานได้ง่ายขึ้นและมีประสิทธิภาพมากขึ้น เวลาสัมภาษณ์น้องๆ ก็จะบอกว่าเราเป็นเหมือนโจ๊กเกอร์ที่ต้องไปทำงานร่วมกับทีมไหนก็ได้ (อาจจะเวลาไหนก็ได้ด้วยแหละ …) สิ่งที่เรียนรู้จากการเป็น Data Scientist มา 1 ปี เราจะไม่พูดถึง Technical skill พวก Machine Learning, Deep Learning หรือ AI บลาบลา เพราะคนที่สนใจด้านนี้ก็คงรู้แล้วก็พยายามศึกษากันอยู่แล้วแหละ แต่เราอยากเล่าอะไรที่มันนอกเหนือจากนั้นบ้าง …. Technical skill ก็สำคัญ แต่ Analytical & Problem solving skill สำคัญกว่า !สำหรับคนที่สนใจเรื่อง Data science คงจะเคยเห็น Venn Diagram นี้กันมาบ้าง ก็ขอคอนเฟิร์มแหละว่าทั้ง 3 อย่างเป็นสิ่งที่ Data Scientist ควรจะมี แต่สิ่งที่หายไปจากรูปนี้และเป็นสิ่งที่สำคัญมากๆของอาชีพนี้ก็คือ Analytical & Problem solving skill ทำไมเราถึงคิดว่ามันสำคัญมากๆ? เกือบทุกโปรเจคของเราจะเริ่มต้นด้วยวิเคราะห์และกำหนดปัญหาทาง Business ให้ได้ จากนั้นก็มานั่งคิดว่าใช้ข้อมูลที่มีอะไรบ้าง จะแก้ปัญหานั้นด้วยวิธีไหน และสุดท้ายที่สำคัญที่สุด คือ
เพราะทาง Business ไม่ได้ต้องการแค่ตัวเลขหรือกราฟที่ดูสวยเท่านั้น แต่เราต้องบอกเขาด้วยว่า ผลวิเคราะห์ที่เราทำมาเนี่ย ให้ Insight อะไรที่เป็นประโยชน์กับเขาบ้าง เขาควรทำยังไงต่อไป ต้องแก้ไข process ตรงจุดไหนรึป่าว หลายครั้งเลยค่ะ พอทำข้อมูลเสร็จก็มานั่งจ้องกราฟหรือตัวเลขตาปริบๆ แล้วก็คิดในใจว่า … แล้วยังไงต่อวะ ?? ไอ้ผลนี่จะสรุปว่ายังไงดี มันให้ Insight อะไรที่เป็นประโยชน์บ้างมั้ยเนี่ย สิ่งที่จะช่วยให้เราหา Insight จากข้อมูลได้ดีขึ้นคือส่วนของ Business Expertise ค่ะ ยิ่งเราเข้าใจ Business ดีมากเท่าไหร่ เราก็ยิ่งรู้ว่าปัญหาของ Business คืออะไร ทำให้เราวิเคราะห์และแก้ปัญหาได้ถูกจุดมากขึ้นค่ะ Business Value สำคัญกว่า Machine Learning Algorithm ล้ำๆถ้าพูดถึง Data Science สิ่งที่มาด้วยกันก็คือ Machine Learning, Deep Learning หรือ AI อะไรพวกนั้น คนที่โดน buzz word พวกนี้เข้าไปก็จะไปเน้นลงคอร์สเรียนออนไลน์, นั่งเล่น Kaggle, ลอง TensorFlow ข้อดีก็คือพวกนี้จะเพิ่ม Technical skill ได้ แต่ในการทำงานจริง โจทย์ที่ได้มาจากทาง Business อาจจะไม่จำเป็นต้องใช้ Algorithm ยากๆพวกนั้นเลยค่ะ สุดท้ายฝั่ง Business ก็ไม่สนใจหรอกว่าจะใช้ Algorithm เจ๋งขนาดไหน อธิบายไปเขาก็ไม่เข้าใจหรอกค่ะ และทาง Business ไม่ได้ต้องการโมเดลที่เพอเฟ็กต์มากขนาด Accuracy 99.99% ถ้าสุดท้ายเราอธิบายไม่ได้ว่าสิ่งที่เราทำออกมามันให้ Business Value อะไร อีกอย่าง หลายครั้งเลยที่ทาง Business เองก็ต้องการ Model ที่ตีความได้ ถ้าเราใส่รูป Node กับเส้นที่พันกันยุ่งเหยิงของ Neural Network ลงไปก็คงจะไม่ดีแน่ๆ แต่ถ้าเรา Back to basic ใช้พวก Logistic Regression หรือโมเดลพวก Tree ธรรมดา ก็จะทำให้เราอธิบาย Value Insight กับทาง Business ได้มากกว่า สรุปจากสองข้อบนสั้นๆ
ออกไปคุยกับลูกค้าบ้าง จะได้เข้าใจ Data มากขึ้นอย่างที่อธิบายไปใน Part ที่แล้ว ตัวงานของ Data Scientist ที่นี่จริงๆไม่ค่อยได้ออกไปเจอลูกค้าหรอกค่ะ แต่งานเราส่วนหนึ่งต้องวิเคราะห์พฤติกรรมของลูกค้าบนแพลตฟอร์มเราด้วย บางทีเราทำข้อมูลออกมามันก็พอจะเข้าใจพฤติกรรมลูกค้าได้ในระดับหนึ่ง แต่มันจะมีโมเม้นที่พอเรานั่งคุยกัน แล้วมีคนพูดว่า “เราคิดว่าที่ข้อมูลมันเป็นแบบนี้เพราะ ….” หรือ “หนูคิดว่าลูกค้าน่าจะ…” เราจะนั่งเดาต่อไปก็ได้ แต่เราก็ค้นพบวิธีที่ดีกว่านั้น คือ
บริษัทของเราจะมีจัด Event โปรโมท product เรื่อยๆอยู่แล้ว เราก็จะหาโอกาสนี้ไปคุยกับลูกค้า ดูลูกค้าเล่นเว็บหรือแอปของเรา ทำให้เราเห็นพฤติกรรมของเขาได้ตรงๆ มันจะดีกว่าการที่เรามานั่งเดาพฤติกรรมของเขาจากข้อมูลหรือประสบการณ์ของเราเอง เป็นการเลี่ยง Bias จากตัวเราเองด้วยค่ะ คอนเฟิร์ม! 80%++ ของงาน Data Scientist คือการเตรียมข้อมูลจ้าชีวิตช่างน่าเศร้าอันนี้ก็คงไม่ได้ต้องพูดไรมาก น่าจะเคยได้ยินกันมาแล้ว ก็ขอคอนเฟิร์มอีกครั้งว่า ส่วนที่ใช้เวลามากที่สุด ก็คือ Data preparation, Data cleansing, Data wrangling … ศัพท์อะไรไม่รู้มากมาย เอาเป็นว่ามันคือการเตรียมข้อมูลก่อนทำ Analytic หรือเข้าโมเดล นั่นแหละค่ะ
แต่มันเริ่มตั้งแต่ที่เรามานั่งคิดว่า โปรเจคนี้ต้องใช้ข้อมูลอะไรบ้าง ต้องไปเอามาจากที่ไหน ถ้าเราไม่มีข้อมูลนี้จะใช้ข้อมูลอื่นแทนได้รึป่าว พอไปรวบรวมข้อมูลมาแล้วถึงจะค่อยเข้ากระบวนการ Cleansing ตามตัวอย่างออนไลน์ทั่วไปค่ะ พอนั่งเตรียมข้อมูลไปเรื่อยๆ เราอาจจะพบว่าข้อมูลเคยเก็บมาใช้ไม่ได้เลยก็ได้! เราก็ต้องไปขอให้ Tech แก้ให้ หรือถ้าเราอยากได้ข้อมูลเพิ่ม ก็ต้องไปเขียน Requirement ว่าจะเก็บอะไรบ้าง เก็บยังไงรูปแบบไหน ซึ่งก็ต้องใช้เวลาในการ Implement และเก็บข้อมูลอีก ก็เลยทำให้ขั้นตอนการเตรียมข้อมูลกินเวลาไปมากๆ อย่างที่เขาว่ากันน่ะแหละค่ะ Skill สำคัญที่ Data Scientist ควรจะมีในความคิดของเรา Ref: https://blog.udacity.com/2014/11/data-science-job-skills.htmlก็ตามด้านบนแหละค่ะ จากประสบการณ์เรา Data Scientist ค่อนข้างที่เป็น Avenger ในตัวสูงมากๆ คือต้องรู้และทำได้หลายๆอย่าง ขึ้นอยู่กับโปรเจคว่าจะใช้ skill ไหน ในประเทศไทยเองก็เพิ่งมีหลักสูตรที่สอน Data Science โดยตรง ทำให้คนที่มี Skill ครบพอที่จะเป็น Data Scientist นั้นหายากมากๆ เราเลยอยากพูดถึงสกิลที่เราคิดว่าสำคัญ แต่ทุกคนมักจะมองข้ามกันค่ะ SQLถ้าถามว่าเป็น Data Scientist ต้องใช้ภาษาอะไร ก็จะมีคนเถียงกันระหว่าง R หรือ Python แต่ก่อนจะไปถึงตรงนั้นได้ เราคิดว่า Data Scientist ทุกคนควรใช้ SQL กันให้เป็นก่อน ถึงแม้ว่าเทรนด์ NoSQL จะมา แต่บริษัทส่วนใหญ่ก็ยังเก็บข้อมูลอยู่ในรูปแบบ Relational Database อยู่ เวลาจะดึงข้อมูลออกมาใช้ในการวิเคราะห์ก็ต้องใช้ภาษา SQL ค่ะ ซึ่งจริงๆเป็นภาษาที่ง่ายมาก เรียนแป๊บเดียวก็ใช้เป็นแล้ว แต่จะบอกว่า ในชีวิตจริงไม่ใช่ join แค่ 2 ตารางจบนะ บางทีข้อมูลที่เราเราอยากได้อยู่กระจัดกระจายกัน ก็อาจจะต้อง join ถึง 4–5 ตารางเลยก็ได้ กด run query ทีเดินไปกินข้าวกลับมายังไม่เสร็จเลยจ้า บางบริษัทจะให้ Data Engineer เป็นคนดึงข้อมูลให้ก็จริง แต่ถ้า Data Scientist สามารถดึงข้อมูลเองได้ ก็จะทำให้ทำงานได้เร็วขึ้นและเล่นกับข้อมูลได้มากขึ้นค่ะ Analytical & Problem solvingอย่างที่บอกไปใน part ที่แล้ว เท่าที่เราเห็นทุกคนจะไปเน้นที่ Technical skill กันมาก ซึ่งเรามองว่าเป็นสิ่งที่หาเรียนได้ทั่วไปและสอนกันได้ แต่จากประสบการณ์และจากที่สัมภาษณ์น้องๆมาหลายคน สิ่งที่ทุกคนมองข้ามและยังขาดๆกันคือ Analytical & Problem solving skill ซึ่งเป็นสิ่งที่หาเรียนออนไลน์ไม่ได้ ต้องสะสมจากประสบการณ์การทำงานเวลาเจอปัญหาทาง Business จริงๆเท่านั้น ตำแหน่ง Data Scientist จึงไม่ค่อยรับเด็กจบใหม่ เพราะว่าไม่มีประสบการณ์ทาง Business ค่ะ สำหรับน้องจบใหม่ที่สนใจจะเป็น Data Scientist แต่ว่าไม่มีประสบการณ์ทำ Analytic มาเลยหรือคิดว่ายังมีไม่พอ ก็ลองไปเริ่มที่ตำแหน่ง Data Analyst ก่อนก็ได้ จะได้เก็บประสบการณ์และสกิลส่วนนี้ค่ะ Visualization & Communicationปัญหาที่เจอในทีมเราบ่อยๆก็คือ พอได้ผลออกมาแล้ว เราจะอธิบายให้ Business เข้าใจง่ายๆได้ยังไง พี่หัวหน้าเลยชอบบอกน้องๆในทีมว่า
Communication เลยเป็นสิ่งสำคัญของ Data Scientist คือเราต้องสามารถอธิบายเรื่องยากๆให้เป็นเรื่องที่เข้าใจง่ายได้ ถ้าเราคุยกันในทีม เราจะพูดถึง ANN, Correlation Matrix, boxplot, p-value, Matrix กี่ dimension ก็ได้หมด แต่พอไปคุยกับ Business แล้ว เราจะพูดอะไรพวกนี้ไม่ได้เลย จะต้องย่อยให้เป็นภาษาที่คนทั่วไปเข้าใจได้ และสรุปให้เขาฟังว่าได้อะไรบ้าง สิ่งที่ช่วยได้ก็คือการเลือก Visualization ที่เหมาะสมกับข้อมูลและสิ่งที่เราต้องการจะอธิบายให้ Business รับรู้ แล้วพยายามเรียบเรียงผลวิเคราะห์ให้เป็น Story มีเหตุและผลทำให้ Business เชื่อในสิ่งที่เราทำค่ะ Self-developmentจริงๆข้อนี้เป็นสิ่งที่ทุกอาชีพต้องมีแหละ แต่เพราะงาน Data Scientist มันกว้างมาก เราเองยังเจอโปรเจคที่ไม่ค่อยจะซ้ำกันทุกเดือน และเทคโนโลยีในสาย Data ก็เยอะมาก พัฒนาไปไวมาก พี่ในทีมก็ไม่ได้มีเวลามาสอนเพราะทุกคนยุ่งมากๆ สำหรับเราเลยเป็นเรื่องยากที่เราจะตาม Trend ให้ทัน อะไรเยอะแยะเลยเนี่ย !
ที่ตัวเราเองพยายามทำก็คือ กด Like แล้ว See first ทุกเพจที่เกี่ยวกับ Data บนเฟสบุ๊ค, พยายามอ่าน case study, หาเวลาเรียนรู้เทคโนโลยีและอัลกอริทึมใหม่ๆ เผื่อเจออะไรที่น่าสนใจ พอจะมาประยุกต์ใช้กับธุรกิจเราได้บ้าง ก็ต้องลองเล่นไปเรื่อยๆค่ะ จบแล้วค่ะ สำหรับสรุปประสบการณ์ Data Scientist ของเราใน 1 ปีของเรา หวังว่าทุกๆคนคงเห็นภาพมากขึ้นนะคะว่า Data Scientist ในธุรกิจจริงๆ ทำอะไรกันบ้าง |