ช่วงเดือนที่ผ่านมาผมมีโอกาสได้บรรยายและพูดคุยกับคนไอทีจำนวนมากเรื่อง Big Data พอพูดถึงปัญหาเรื่องการขาดบุคลากรด้าน Data Scientist ดูเหมือนหลายๆคนไม่เข้าใจว่าตำแหน่งงานนี้ทำอะไร บ้างก็บอกว่าองค์กรมี Business Intelligence (BI) Analyst ที่เชี่ยวชาญอยู่แล้ว บ้างก็บอกว่าองค์กรมีโปรแกรมเมอร์ที่เก่งด้านการพัฒนาโปรแกรมอย่าง MapReduce บน Hadoop อยู่มาก นั้นละคือ Data Scientist พอเมื่อวันก่อนได้อ่านบทความของ ดร.อธิป อัศวานันท์ ผู้บริหารของ True และ รองประธานกรรมการธุรกิจเทคโนโลยีสารสนเทศและการสื่อสาร หอการค้าไทย เรื่อง “ความเข้าใจที่ผิดๆ เกี่ยวกับ Big Data และ Analytics (1)” ยิ่งทำให้เห็นสอดคล้องกับท่านว่า บ้านเรากำลังเข้าใจเรื่องนี้ผิดกันไปใหญ่
เพื่อความเข้าใจเกี่ยวกับงานทางด้าน Data Scientist คงจะขอเริ่มจากความหมายของ Big Data ซึ่งเคยให้ความหมายไปหลายครั้งว่า โลกในปัจจุบันกำลังเผชิญกับข้อมูลขนาดใหญ่ (Volume) หลากหลายรูปแบบ (Variety) ที่มีการเปลี่ยนแปลงอย่างรวดเร็ว (Velocity) ดังนั้นการจะได้ประโยชน์จากข้อมูลแบบนี้จำเป็นจะต้องหาเครื่องมือใหม่ๆมาใช้งานเช่น Hadoop, NoSQL หรือ NewSQL ซึ่งการทำ Big Data ก็มีระดับของ Maturity Level ดังแสดงในรูปที่ 1 ขึ้นอยู่กับว่าเราจะการนำข้อมูลมาใช้แบบใด โดยระดับต่้นๆก็จะเป็นการทำ Business Monitor หรือขั้นต่อมาก็อาจเป็นการทำ Business Insight ที่ต้องใช้ BI ไปจนถึงระดับอย่าง Business Optimization ที่ต้องมีการทำ Analytics ดังนั้นการทำ Big Data ในระดับต้นก็อาจไม่มีด้าน Analytic มากนักแต่ก็จะไม่ได้ประโยชน์จากข้อมูลเท่าที่ควร เพราะการคาดการณ์อนาคตได้จากข้อมูลมหาศาลคือความได้เปรียบเหนือคู่แข่ง
รูปที่ 1 Big Data Maturity Level จากหนังสือ Big Data: Understanding How Data Powers Big Business
คราวนี้ก็อาจเริ่มมีคำถามว่า Business Insight ที่ใช้ BI Analyst และ Business Optimization ที่ใช้ Data Scientist มีความต่างกันอย่างไร เพื่อความเข้าใจในการวิเคราะห์ทั้งสองส่วนนี้ลองพิจารณาดูรูปที่ 2 เราจะเห็นว่าทั้งสองกรณีเป็นการวิเคราะห์ข้อมูล แต่กรณีของ BI จะเป็นการวิเคราะห์ข้อมูลที่มีอยู่เพื่อมาดูสถานภาพปัจจุบันดูข้อมูลที่ผ่านมา อาจเอานักสถิติมาวิเคราะห์ข้อมูล เขียนกราฟในมิติต่างๆ เพื่อทำให้เราเข้าใจข้อมูลได้ดีขึ้นซึ่งก็จะมีประโยชน์ในระดับหนึ่ง แต่เมื่อพูดถึง Data Scientist คือการวิเคราะห์ข้อมูลที่เป็นการคาดการณ์สิ่งที่น่าจะเกิดขึ้นจากข้อมูลในอดีตจำนวนมากที่มีอยู่เช่น การคาดการณ์สินค้าที่ผู้ใช้จะซื้อ การคาดการณ์การตลาด การพยากรณ์เหตุการณ์ต่างๆทางวิทยาศาสตร์ สิ่งเหล่านี้คือ Predictive Analytic ที่ต้องการนักวิจัยทีมีความรู้ด้าน Algorithm อย่างเช่น Machine Learning เป็นอย่างดี
รูปที่ 2 ความแตกต่างระหว่าง BI และ Data Scientist จากหนังสือ Big Data: Understanding How Data Powers Big Business
ผมเองเคยทำวิจัยปริญญาเอกและเขียนบทความเรื่อง Optimal Power Dispatch in Multinode Electricity Market Using Genetic Algorithm ซึ่งเป็นการคาดการณ์การผลิตไฟฟ้าโดยใช้ทฤษฎีอย่าง Genetic Algorithm ซึ่งต้องใช้โมเดลคณิตศาสตร์ในการคาดการณ์อนาคต ที่เป็นเรื่องค่อนข้างยาก แม้วันนี้ผมจะเป็นนักไอทีที่เล่นเครื่องมือ Big Data หลายตัวไม่ว่าจะเป็น Hadoop การพัฒนาโปรแกรมอย่าง Map Reduce, Hive หรือ Big แต่ก็ไม่กล้าที่จะเรียกตัวเองว่าเป็น Data Scientist เพราะแม้จะมีความรู้ด้าน Predictive Algorithm มาบ้างแต่ก็ล้ามือมานานและวันนี้ไม่ใช้คณิตศาสตร์มากแบบเดิมแล้ว
เพื่อให้เข้าใจเรื่องความแตกต่างเดี่ยวกับ BI และ Data Scientist มากขึ้น ผมขอยกตัวอย่างในกรณีที่มีข้อมูลการขายของร้านบน E-Commerce ของเราอยู่ ถ้าเรามีคำถามอย่างเช่น
- ยอดขายสินค้าเราในเดือน หรือไตรมาสที่ผ่านมาเป็นอย่างไร
- ผู้ซื้อสินค้ามีอายุเฉลี่ยเท่าไร เพศอะไร
- ผู้ที่เข้าเยี่ยมชมเว็บไซต์มีค่าเฉลี่ยการซื้อจริงเท่าไร
การวิเคราะห์ข้อมูลเหล่านี้คือ BI เราอาจใช้นักสถิติมาวิเคราะห์ มาเขียนกราฟ หรือถ้าข้อมูลเป็นแบบ unstructure ที่อยู่บน Hadoop เราก็อาจให้ Programmer เขียนโปรแกรม MapReduce มาวิเคราะห์ได้
คราวนี้ถ้าคำถามเราเปลี่ยนไปเป็นแบบการคาดการณ์อนาคต อาทิเช่น
- ผู้ซื้อคนนี้ควรจะซื้อสินค้าอะไรในอนาคต (Next Thing to Buy)
- เราควรสั่งสินค้าอะไรมาขายเพิ่มเติม
- ยอดขายในไตรมาสหน้าน่าจะประมาณการเท่าไร
คำถามแบบนี้ คนที่เป็น BI หรือ Programmer ทั่วไป คงจะให้คำตอบไม่ได้ เพราะจะต้องถามว่าแล้วฉันจะรู้ได้อย่างไร การจะหาคำตอบเหล่านี้ได้นี้คนที่จะวิเคราะห์ต้องมีความรู้ด้าน Predictive Analytic หรือ Machine Learning ต้องรู้ว่าจะเอาข้อมูลอะไรมาวิเคราะห์และต้องใช้ Algorithm อะไร ซึ่งคนที่ไม่ได้ศึกษาทางด้านนี้ย่อมไม่เข้าใจและทำไม่ได้โดยง่าย
ปัจจุบันผมกำลังให้คำปรึกษานักศึกษาปริญญาโทคนหนึี่งเรื่องของ Big Data Analytic นอกจากให้ศึกษาการติดตั้ง Hadoop การพัฒนาโปรแกรมอย่าง MapReduce หรือ Hive แล้ว ผมต้องให้เขาศึกษา Machine Learning และเครืองมืออย่าง Apache Mahout เพื่อที่จะทำ Predictive Analytic ในการคาดการณ์ข้อมูลในอนาคต และพอมาอ่านหนังสืออย่าง Mahout ที่จะพูดถึงโมเดลทางคณิตศาสตร์ด้าน Classification อย่าง Hidden Markov Models คนที่ล้างานวิจัยด้านคณิตศาสตร์อย่างผมมานานก็เริ่มงง
หลายๆท่านอาจแปลกใจว่า แล้วบริษัทใหญ่ๆทั่วโลก เขาหา Data Scientist มาจากไหน ผลสำรวจของ NewVantage Partner เมื่อปี2013 ก็ระบุว่าตำแหน่งนี้หายากมาก 6% บอกว่าไม่มีทางที่จะหาได้ 60% บอกว่าหายากมาก และส่วนมากก็จะต้องหาคนที่จบปริญญาเอกด้านคณิตศาสตร์ หรืออาจต้องดึงตัวมาจากบริษัทใหญ่ๆอย่าง Facebook หรือ Google ดังนั้นจึงมีการบอกกันว่าตำแหน่งงาน Data Scientist ในปัจจุบันเป็นงานที่ดีมากให้เงินเดือนสูงๆ และหาคนได้ยากมาก ผมเคยได้ยินว่าบริษัทอย่าง Singtel ของสิงคโปร์หา Data Scientist มาโดยการดึงคนจบปริญญาเอกด้านคณิตศาสตร์จากยุโรปตะวันออก
รูปที่ 3 Big Data Talent Survey
สุดท้ายหลายคนก็ตั้งคำถามว่า ถ้าเราไม่มี Data Scientist เราจะทำ Big Data ได้ไหม จริงๆเราก็คงทำได้ละครับในมุมของ Business Insight แต่ถ้าจะเป็นมุมของ Analytic ที่ต้องการ Predictive Analytic ก็คงจะเหนื่อยหน่อยครับอาจต้องหาคนไปศึกษาโมเดลคณิตศาสตร์และ Algorithm เหล่านี้ แต่ยังไงเราก็ควรต้องเริ่มต้น ผมเองวันนี้ก็เน้นในการจัดอบรมสร้่าง IT Prefessional ด้าน Big Data โดยเน้นเทคโนโลยีอย่าง Hadoop และหวังว่าในอนาคตจะมี Data Scientist ที่เก่งๆจำนวนมากขึ้น
ธนชาติ นุ่มนนท์
IMC Institute
ตุลาคม 2557
แล้วคนที่เรียน statistics ที่มีเนื้อหาการเรียนการสอนในการคาดการณ์อนาคต จะมีโอกาสไปทางด้าน data scientist ได้ไหมคะ ทั้งที่มีความรู้ในเรื่อง programer น้อยมาก
ผมว่าน่าจะไปได้ดีครับ คนกลุ่มนี้ทำ Data Science ได้ดี