ทำไม Data Scientist ควรอ่านหนังสือชื่อ “The Signal and the Noise” และคิดตามแบบจริงจัง (ตอนที่ 1)

“The Signal and the Noise: Why So Many Predictions Fail — but Some Don’t” Nate Silver

ขอออกตัวก่อนว่าผมไม่เคยเขียน Blog นี้คือการเขียนฉบับแรกครับ วันนี้เราจะมาสรุปสิ่งที่หนังสือ The Signal and the Noise: Why So Many Predictions Fail — but Some Don’t ซึ่งเป็นหนังสือที่นาย Nate Silver (คนที่ทายว่า Donald Trump จะแพ้การเลือกตั้งแบบย่อยยับ)เป็นคนเขียน ถถถถถถถถถถถ แต่เอาจริงพี่แกอาจจะมีผิดบ้างถูกบ้างแต่โดยรวมแล้วถือว่าแกทายอะไรแม่นกว่าชาวบ้านเยอะ เช่น การทำนายว่าในปี 2012 Obama จะชนะ Rommey แบบถูกหมดเลยทุกรัฐ เอาแบบว่าจิ้มรัฐไหนทายว่าใครแพ้หรือชนะพี่แกเล่นทายถูกหมดไม่มีผิด อีกเรื่องคือวิธีการวิเคราะห์และเครื่องมือในการวิเคราะห์ข้อมูล พี่ Nate ใช้วิธีการแบบบ้านๆชาวออฟฟิศซึ่งแม้ใครก็สามารถนำไปใช้ได้ เช่นการเขียน Excel ทำ machine learning เป็นต้น แต่ที่สำคัญพี่แกไม่เน้นหลักคณิตศาสตร์ระดับสูงที่คนส่วนใหญ่นิยมใช้กัน แต่กลับใช้สิ่งที่เรามองข้ามมาตลอดคือ common sense นั้นเอง หากใครมีโอกาสอ่านหนังสือเล่มนี้แล้ว ซึ่งผมแนะนำทุกคนหรือน้องๆที่สนใจสายอาชีพ AI และData Analyst/Scientist ควรเข้าใจสิ่งพี่แกเขียนให้มากเพราะทำให้เราคิดพัฒนาวิธีการแก้ปัญหาของเราอยู่เสมอๆ สำหรับส่วนตัวผมเองก็เป็น Data Scientist เข้าปีที่สามแล้วจึงอยากขอใช้โอกาสตรงนี้สรุปหนังสือบวกกับประสบการณ์ตรงที่เจอระหว่างการทำงาน ประยุกต์รวมกับวิชาที่ผมได้เรียนมาสรุปลงเป็นข้อๆให้ทุกคนได้คิดตามครับ

How to Think Like a Fox ?

ในโลกใบนี้เราสามารถแบ่งวิธีการคิดในการหาคำตอบหรือเพื่อแก้ปัญหาออกเป็นได้สองแบบ โดยหนังสือยกตัวอย่างสัตว์สองกลุ่มเพื่อให้เห็นความแตกต่างกัน

Specialized, Stalwart, Stubborn, Order-seeking, Confident, and Ideological “Hedgehogs are weaker forecasters.” Nate Silver

Hedgehogs (สัตว์เลี้ยงลูกด้วยนม): กลุ่มนี้มั่นใจว่ามีแค่วิธีเดียว (Stalwart) หากคุณเชิญคนกลุ่มนี้ไปแก้ปัญหาทางคณิตศาสตร์ เขากล้าตอบเพราะมั่นใจ (Confident) ว่าสิ่งที่ตัวเองเชื่อหรือกำลังทำนั้นคือวิธีการแก้ปัญหาที่ดีที่สุด โดยไม่มองวิธีการแก้ปัญหาแบบอื่นเลย ไม่แม้จะหันมามองหรือเปิดใจให้กับการแก้ปัญหาที่คนภายนอก (Outsider) นิยมใช้กัน เพราะไม่คิดว่าคนนอกจะมีความเข้าใจในการแก้ปัญหาเท่ากับตัวเอง

Multidisciplinary, Adaptable, Self-critical, Tolerant of complexity, Cautious, and Empirical “Foxes are better forecasters.” Nate Silver

Foxes (สัตว์นักล่า): กลุ่มนี้ตรงข้ามกับกลุ่ม Hedgehogs คือเชื่อในหลายๆวิธี (Multidisciplinary) เชื่อว่าการแก้ปัญหาในโลกนี้มีหลายวิธี และไม่มีวิธีไหนดีที่สุดมีแต่ดีในบางเวลาเท่านั้น ทำให้คำตอบที่ดีที่สุดเปลี่ยนได้เสมอ ในขณะเดียวกันเมื่อได้คำตอบที่แน่ใจแล้ว ก็ยังตั้งคำถามและขี้สงสัยในคำตอบอยู่เสมอ นี้ละครับคุณสมบัติการคิดแบบ Foxes ที่นาย Nate ชื่นชมและพยามยามให้ผู้อ่านได้คิดตามอยู่เสมอ

คุณคิดว่าคิดแบบ Hedgehog หรือ Foxes ดีกว่ากัน?

นานมาแล้วมีอาจารย์ดังด้าน AI ชื่อ Andrew Ng สอนวิธีการทำโมเดล neural network ผ่าน Coursera (Telsa, Uber และ Googleใช้โมเดลนี้ในการทำรถยนต์ไร้คน) โดยตัววิชานั้นเน้นสอนวิธีการทำแต่โมเดลอย่างเดียว แบบจบมาแล้วเป็น Specialized ในด้านนี้แถมอาจารย์ Andrew แกเป็นเด่นคนดังในวงการ AI สอนอะไรคนก็ต้องตาม บวกกับตัวคอนเซ็ปของโมเดลที่เลียนแบบวิธีทำงานของสมองคน ว่ากันว่าเจ้าโมเดล neural network คือโมเดลที่เป็นที่ยอมรับว่าดีที่สุดในปัจจุบัน แต่ในความเป็นจริงแล้วคนส่วนใหญ่มักมองข้ามความจริงหลายประการไป เช่นการสร้างโมเดลเลียนแบบสมองของคนนั้นต้องใช้ทั้งทรัพยากรของเครื่องจักรและเวลาจำนวนมาก เป็นไปได้ยากที่องค์กรขนาดเล็กจะมีเครื่องไม้เครื่องมือเทียบเท่า Google ได้ ยิ่งหากใครมีโอกาสเรียนคณิตศาสตร์มาก็จะเข้าใจต่ออีกว่า โมเดลนี้ใช้เวลาค่อนข้างนานในการสอนเพื่อให้มันเรียนรู้เทียบกับโมเดลตัวอื่นๆ โดยเฉพาะการเก็บข้อมูลนั้น ต้องเก็บข้อมูลคุณภาพดีจำนวนไม่น้อย ก่อนจะทำให้เจ้าโมเดลนี้ฉลาดเทียบเท่าโมเดลอื่นๆได้ สุดท้ายยังต้องอาศัย server หรูแบบใช้ GPU หลายตัว (ที่ใช้เล่นเกมส์กัน) ซึ่งมีราคาสูงมากหรือจะไปแบบประหยัดเงินหน่อยก็เช่า AWS server เอา

การสอนคนสร้างแต่โมเดล neural network แต่ไม่สอนให้คนเข้าใจถึงสถานการณ์ในปัจจุบัน ก็เหมือนสอนว่ารถ Ferrari ต้องดีกว่ารถ Toyota อย่างแน่นอน อันนี้หลักความคิดแบบ Hedgehogsโดยที่ไม่รู้ว่าคำว่าดีนั้น ตามความเป็นจริงๆแล้วดีกว่าอย่างไรบ้าง ไม่ได้หมายความว่ารถ Ferrari ไม่ดีนะครับ คิดง่ายๆคงไม่มีเจ้าของรถ Ferrai คนไหนยอมขับรถช่วงน้ำท่วมในกรุงเทพช่วงไปทำงานอย่างแน่ ในขณะเดียวกันคงไม่เจ้าของรถราคาแพงคนไหนจะขับรถ Toyota ไปรับแฟนสาวคนสวยกินข้าวเย็นกับเพื่อนเช่นกัน สิ่งที่หนังสือพยายามจะสอนให้เราคิดคือไม่ควรไปยึดติดสิ่งใดสิ่งหนึ่งเพียงอย่างเดียว เราต้องเป็น Foxes ซึ่งเป็นนักล่าที่ต้องพยามยามปรับเปลี่ยนวิถีการล่าของตัวเองอยู่เสมอ

เหตุการณ์จริงคล้ายกรณีขับ Ferrari ลุยน้ำท่วมก็เคยเกิดขึ้นกับตัวผม เมื่อต้นปีก่อนผมมีงานต้องช่วยบริษัทในการแก้ปัญหาการโกงไม่จ่ายเงินของลูกค้า ปกติบริษัทจะมีนโยบายลดราคามือถือ 30–40% ให้สำหรับลูกค้าซื้อโทรศัพท์เครื่องแรกผ่านร้านค้าออนไลน์ โดยใช้บัตรประชาชนของลูกค้าเป็นการยืนยันว่าลูกค้าซื้อได้เพียงหนึ่งเครื่องต่อหนึ่งคนเท่านั้นเพื่อป้องกันลูกค้าซื้อโทรศัพท์ไปขายต่อ

ปัญหาสองสามเดือนแรกยังไม่มีอะไร แต่พอเข้าเดือนที่สี่ของแคมเปญมีลูกค้าจำนวนมากแจ้งว่าไม่ได้ซื้อเครื่อง แต่กลับโดนบิลเรียกเก็บชำระเงินจากทางบริษัท สืบไปสืบมาพบว่ามีคนสวมสิทธิ์บัตรประชาชนลูกค้าและนำตัวเครื่องไปขายต่อ ปัญหาใหญ่อีกข้อคือลูกค้าที่ฉลาดแกมโกงนั้นไล่ซื้อบัตรประชาชนในราคาใบละ 500 บาทและนำบัตรไปลงทะเบียนรับส่วนลดทางร้านค้า ว่ากันว่ากำไรต่อการขายโทรศัพท์นั้นสูงถึงเครื่องละ 2,000–3,000 บาท ทำเพียง 20 เครื่องต่อเดือนก็ได้เงินเยอะแล้ว โจทย์ของผมในตอนนั้นคือเสนอทางแก้ปัญหาให้กับทางบริษัทโดยเร่งด่วน จำได้ว่ามีเวลาหลักอาทิตย์เนื่องจากปัญหาเริ่มใหญ่โตขึ้นเรื่อยๆ ต้องอาศัยทรัพยากรคนมานั้งอ่านตรวจดูว่าลูกค้าคนไหนมีโอกาสจะโกง ตอนนี้แหละที่เจ้าตัว Hedgehog ในตัวผมแสดงออกมาอย่างชัดเจนเลย นั้งคิดอยู่นานแต่ก็เชื่อแบบเดิมๆ (Stubborn) อยู่อย่างเดียวว่าปัญหาที่ซับซ้อนขนาดนี้ต้องแก้ไขโดยใช้เจ้าโมเดลเท่ๆ (Order-seeking) แบบ neural network ของอาจารย์ Andrew แน่นอนไม่ผิดหวัง ถถถถถถถถถถ ตอนได้ข้อมูลการซื้อของลูกค้าที่โกงมานั้น ผมทำโมเดลและนำไปใช้จริง จำได้ผลออกมาคือพังย่อยยับ โมเดลไม่สามารถทำนายได้เลยว่าลูกค้าคนไหนมีแนวโน้มจะโกงบ้าง หลักๆแล้วส่วนนึงมาจากข้อมูลที่มีน้อยมาก(หลักพัน) และแถมคุณภาพมีไม่มากพอ บวกกับข้อมูลที่มีก็อยู่ในรูปแบบที่ไม่สามารถใช้ได้จริง เลยต้องอาศัยแรงมหาศาลในการ process จนสุดท้ายต้องกลับมานั้งคิดกันใหม่ หนังสือเรียกขบวนการนี้ว่า Self-critical เพื่อจะแก้ปัญหาที่แท้จริง

Foxes: Multidisciplinary, Adaptable, Self-critical, Tolerant of complexity, Cautious, and Empirical

ผมเลยใช้เวลาประมาณ 1 อาทิตย์ในการคิดแก้ปัญหาแบบชาว Foxes คือเปลี่ยนจากมุมมองของ Data Scientist ซึ่งใช้การมองข้อมูลเป็นหลัก มาเป็นการรับฟังผู้อื่นหรือนำวิธีแก้ปัญหาเฉพาะหน้าของคนอื่นมาขัดเกลา ในหนังสือเรียกลักษณะนี้ของ Foxes ว่า Adaptable หรือการเปลี่ยนแนวทางการแก้ปัญหาเพื่อใช้ต่างมุมมองในการแก้ปัญหา คิดง่ายๆว่าพนักงานที่ใช้คอมพิวเตอร์ไม่เป็น เขาจะรู้ได้อย่างไรว่าลูกค้ารายไหนจะโกงบริษัทแต่หลักการแก้ปัญหาของพนักงานนั้นเรียบง่าย คือทุกเช้าก่อนเริ่มงานพนักงานจะนำรายชื่อส่งของที่อยู่มานั่งเรียง ว่าที่อยู่จัดส่งไหนมีการจัดสั่งใกล้เคียงกันมากที่สุด เพราะลูกค้าส่วนใหญ่จะให้ไปรษณีย์ไปส่งที่บ้านตัวเอง หรือใกล้ๆกับบ้านของตัวเองเพื่อความสะดวกในการรับของ(ตอนนั้นบริษัทไม่มีนโยบายให้ลูกค้ารับของที่ร้าน ส่งถึงบ้านได้อย่างเดียว)

แม้แต่ลูกค้าที่จะพยายามโกงโดยใช้บัตรประชาชนของผู้อื่นก็ตาม จะพยายามหาที่อยู่ใกล้บ้านตัวเองมากที่สุด เช่น รับของที่สุขุมวิท 71 แต่เปลี่ยนเลขที่บ้านจาก 125/25 เป็น 126/25 หรือเปลี่ยนชั้นที่อยู่ของคอนโดจากชั้น 15 เป็นชั้น 14 แต่ให้คิดตามหลักสถิติแล้วมันมีโอกาสน้อยมากที่เหตุการณ์แบบนี้จะเกิดขึ้นในวันเดียว เหมือนคุณสั่ง pizza แล้วรอบๆบ้านหรือคอนโดห้องข้างๆคุณก็สั่งตาม เกิดเหตุการณ์แบบนี้ติดต่อกันเกือบทุกวันแต่เปลี่ยนแค่เวลา ไม่พอบางวันยังสั่งรวมกันเกิน 7–8 ถาดอีก มันมีโอกาสน้อยมากๆยกเว้นว่า pizza จะให้ฟรีครับ ถถถถถถถถถถถถ คราวนี้พอเห็นการแก้ปัญหาแบบนี้ ทุกอย่างก็ง่ายละครับ ตอนนั้นผมเลยเลือกใช้ algorithm บ้านๆคือคำนวณหา Levenshtein Distance วิธีคิดของ algorithm ซับซ้อนพอสมควรแต่หลักแล้วคิดหาว่าการเขียนสองแบบต้องใช้ความพยายามในการแก้ไขมากน้อยแค่ไหน เช่น Hello World เป็น Hello Wod สองอันนี้จะใกล้กันมากเพราะตัว rl ที่หายไปนั้นใช้การตัดออกแค่สองครั้ง สุดท้ายผมรวมคะแนนที่อยู่ที่ใกล้กันมากที่สุดทำเป็น list ออกมาส่งให้พนักงานดูแม้มันจะใช้การแก้ปัญหาที่ยั่งยืนสมบูรณ์ที่สุด แต่ก็แก้ปัญหาได้อยู่ดีเพราะสุดท้ายแล้วเราก็ต้องเปลี่ยนวิธีการล่า เพราะปัญหาของโลกใบนี้มันไม่ได้หยุดนิ่งอยู่ที่ใดที่หนึ่งตลอดเวลา หากเราจะแก้ปัญหาได้เราตัดใจจากวิธีการเดิมๆหรือที่เชื่อตามคนอื่นเขามาโดยที่ไม่ได้รับการคิดถี่ถ้วน

หัวใจของหนังสือเล่มนี้จริงๆแล้วพยามยามจะสื่อกับเราว่าไม่ให้ยึดติดกับความคิดของตัวเอง และผมก็ชื่อเสมอว่า นี่เป็นสิ่งที่ Data Scientist ทุกคนควรพึงปฏิบัติ

อยากฝากข้อคิดให้กับผู้อ่านทุกคนสั้นๆว่า “ไม่ยึดติดกับความคิดของตัวเอง” นั้นละดีที่สุด นี้คือหัวใจของชาว Foxes ก็เหมือนผมก่อนหน้านี้คิดว่าอย่างไรในโลกใบนี้คงมีแต่เจ้าโมเดล neural network ที่สามารถแก้ปัญหาทุกอย่างได้หมดเอาเข้าจริงก็อย่างที่ว่า ตอนจบนี้อ่านหนังสือแล้วมันเหมือนง่ายแต่ลึกๆก็ยากที่จะปฎิบัติ หลายครั้งสำหรับตัวเราก็เช่นกัน ต้องออกมาจากมุมความคิดเดิมๆให้ได้

Have a question?

Drop us a line and we will get back to you