Category: เทคโนโลยี

ทำไมการตัดคำไทยในประโยคถึงมีความสำคัญนัก ?

ความสำคัญของการตัดคำไทยอยู่ตรงที่ปัจจุบันธุรกิจมีการรับข้อมูลจากลูกค้าในหลายรูปแบบ อาจจะเป็นข้อความ text, message หรือข้อความใน Social Media ข้อความที่ถูกแปลงมาจากเสียง Call Center ซึ่งเราคงไม่สามารถให้คนมานั่งอ่านและแปลความหมายได้ทั้งหมด เนื่องจากปริมาณข้อมูลที่เข้ามาในปัจจุบันมีมหาศาล หรือที่ชอบเรียกกันว่า Big Data นั่นแหละครับ เราจึงสามารถให้เครื่องทำการตัดคำและนำคำที่ได้รวมถึงจำนวนคำและตำแหน่งที่คำปรากฏในประโยคมาทำการวิเคราะห์เพื่อเข้าใจบริบทของข้อความนั้นๆ ซึ่งการที่เราสามารถให้คอมพิวเตอร์เข้าใจและแปลผลออกมาได้เองนั้นมีความสำคัญอย่างยิ่งยวดในการหา Insight ที่เป็นประโยชน์กับธุรกิจ หรือในทุกๆ วงการเลยก็ว่าได้

ตั้งแต่อดีตที่ผ่านมา การตัดคำไทยเป็นเรื่องที่ยากเย็นเมื่อเทียบกับหลายๆ ภาษา (ง่ายสุดอาจจะเป็นภาษาอังกฤษ) เนื่องจากความซับซ้อนของไวยากรณ์ สระ และลักษณะการต่อคำแบบไม่มีช่องไฟ เช่น

นั่งตากลม >> “นั่ง” “ตาก” “ลม”

อาจจะถูกตัดออกเป็น

นั่งตากลม >> “นั่ง” “ตา” “กลม”

ความยากนี้คงได้รับการแก้ไขไปแล้ว ถ้าภาษาไทยเป็นภาษาที่มีคนนิยมใช้ทั่วโลก แต่เนื่องจากมันไม่ใช่ คนที่ให้ความสำคัญกับการตัดคำไทยจึงมักเป็นคนไทยเรานี่แหละ แต่เนื่องด้วยขีดจำกัดทางความสามารถ จึงทำให้ปัญหายังไม่ถูกแก้ไขได้เสียที จนช่วงหลังที่เรื่อง Machine Learning ที่สามารถทำความเข้าใจเชิงลึกได้ (Deep Learning) เข้ามามีบทบาทมากขึ้น Google ได้ทำการเปิด Library (เครื่องมือที่นักพัฒนาเอาไปใช้ต่อยอดได้) ที่ชื่อว่า Tensorflow ออกมา นักพัฒนาจึงสามารถต่อยอดจนเกิดการนำ Deep Learning ไปใช้แก้ปัญหาในหลากหลายรูปแบบ

ซึ่งล่าสุดนักวิทยาศาสตร์ข้อมูล (Data Scientist) จาก True คุณ Rakpong Kittinaradorn ก็ได้ทำการคิดค้น Library ที่ต่อยอดจากการใช้งาน TensorFlow ในชื่อ Deepcut และเปิดให้คนทั่วไปใช้ได้ ดูรายละเอียดเพิ่มเติมที่นี่ครับ วันนี้เลยเอามาลองตัดคำเล่นดูตามภาพด้านล่างครับ

ซึ่งถ้าดูคร่าวๆ แล้วผลก็เป็นที่น่าพอใจมากที่เดียว มีบางจุดที่เค้ายังไม่ได้ cover เช่นภาษาวิบัติ “ก็” >> “ก้อ” ซึ่งเชื่อว่า Algorithm คงมีวิวัฒนาการไปพร้อมกับภาษาอยู่แล้ว ซึ่งถือเป็นนิมิตรหมายที่ดีในการใช้ประโยชน์ของศาสตร์ด้าน Machine Learning กับภาษามนุษย์ครับ

 

Big Data คืออะไร ทำไมต้อง Big แล้วมันมีประโยชน์ยังไง ?

เชื่อแน่ว่าหลายคนโดยเฉพาะคนที่ต้องทำงานเกี่ยวข้องกับเทคโนโลยี หรือผู้บริหารขององค์กรต่างๆ จะต้องเคยได้ยินคำว่า Big Data (ข้อมูลขนาดใหญ่) กันมาบ้างไม่มากก็น้อย เพราะการทำธุรกิจทั้งในอดีตและปัจจุบันนั้น ข้อมูลถือว่าเป็นสิ่งสำคัญในการบอกถึงสิ่งที่เกิดขึ้น เช่น ยอดขายในปีที่ผ่านมาเป็นอย่างไร แล้วอะไรมีผลกระทบโดยตรงกับยอดขายนั้น ? แต่ในปัจจุบัน (เอาจริงๆ คือตั้งแต่ Google เริ่มครองโลกตามด้วย Facebook, Amazon และอีกมากมาย) แนวทางการเก็บและใช้ข้อมูลนั้นต่างไปจากเดิมตรงที่จากการตั้งคำถามแค่ว่า “เกิดอะไรขึ้น” และ “ทำไมมันถึงเกิดขึ้น” ต่อยอดมาเป็น “แล้วอะไรจะเกิดขึ้นต่อไป” และ “เราจะทำยังไงให้มันเกิดอย่างที่เราต้องการ” เรียกว่าเรามีความสามารถในการมองเห็นอนาคตได้มากกว่าที่เคยเป็นมานั่นเอง

ตัวอย่างเบสิคง่ายๆ เช่น ร้านขายของออนไลน์ Amazon (หรือในไทยอาจมอง Lazada แทนก็ได้) สามารถเก็บพฤติกรรมคนที่เข้ามาตั้งแต่เปิดเว็บ (ยันเข้าเว็บอื่น) ไม่ว่าจะซื้อหรือไม่ก็ตาม เพราะทุกๆ การคลิกดูสินค้า เค้าก็กำลังเก็บว่าเราดูสินค้าอะไร ใช้เวลาเท่าไหร่ ในการดูแล้ว ต่อจากนั้นก็เก็บต่อไปว่าหลังจากเราดูสินค้าหนึ่งแล้ว เราไปดูสินค้าอะไรต่อ เค้าก็จะได้รูปแบบการเลือกดูสินค้าของเรา จากนั้นเค้าก็จะมีช่องสินค้าที่แนะนำ โดยยิ่งระบบฉลาดเท่าไหร่ การแนะนำสินค้าของเค้าก็จะแม่นยำและมีโอกาสที่เราจะซื้อสินค้าของเค้ามากขึ้นอีก ธุรกิจอย่าง Amazon ก็มีโอกาสขายของได้มากขึ้น

หรือตัวอย่างที่คลาสสิคที่สุดตัวอย่างนึงคือที่ร้านค้าปลีก Wal-Mart ซึ่งมักพบว่าผู้ชายช่วงวัย 30-40 ที่มาซื้อของตอนวันศุกร์ ที่มาซื้อผ้าอ้อมเด็ก มักจะซื้อเบียร์ด้ว!? ทำให้ Wal-Mart สามารถวางถังเบียร์ไว้ใกล้กับผ้าอ้อมเด็ก และเพิ่มยอดขายได้ขึ้นอีก 35%

แต่เราต้องมีข้อมูลใหญ่แค่ไหนถึงจะเพียงพอในการทำการวิเคราะห์ให้เห็นสิ่งเหล่านี้ล่ะ ?

ลองมาดูตัวอย่าง Facebook ที่เราใช้ๆ นะครับ วันๆ นึง เรากด like หรือ comment ไปกี่ครั้ง ? และถ้าคำนวณว่าคนที่ใช้ Facebook บนโลกนี้มีกี่คนที่สร้างข้อมูลจากกิจกรรม like และ comment (ยังไม่นับการอัพโหลดภาพกับวีดีโอนะ) ทาง Facebook จะต้องเก็บข้อมูลขนาดไหน ?

ปัจจุบันการเก็บข้อมูลที่เราคุ้นเคยอยู่ในรูปแบบหน้าตาประมาณนี้ใช่ไหมครับ ?

ใช่แล้ว เรามักเก็บข้อมูลในรูปแบบตาราง เพราะมันง่ายต่อการกลับไปดูและค้นนั่นเอง ส่วนใหญ่เรามักเก็บในรูปแบบ Excel ใช่ไหมครับ ? (ถ้าคนที่ใช้ระบบฐานข้อมูลก็อาจบอกว่าไม่ๆ เราเก็บใน SQL) แต่อยากให้ลองจินตนาการว่าถ้าเราต้องเก็บข้อมูลแบบ Facebook คือ ผู้ใช้ Like โพสอะไร ที่เวลาอะไร (และสถานที่ไหน… และอื่นๆ …) เค้าจะยัดเข้าไปเก็บยังไงล่ะ

แบบนี้รึเปล่า ?

สมมติว่าข้อมูลมีแค่นี้ก็ได้ ถามว่าถ้าวันนี้มีคนใช้ Facebook 1 พันล้านคน โดยเฉลี่ยคนนึงสร้างข้อมูล 2 แถว หมายความว่าวันนี้ Facebook ต้องเก็บข้อมูลถึง 2 พันล้านแถว ??!! (ซึ่งในความเป็นจริงแล้วเยอะกว่านี้มาก)

สมมติว่า Facebook ยัดข้อมูลลง Excel คิดว่าไฟล์จะเป็นอย่างไรครับ ?

เฉลย ก็ยัดได้นะ Excel เก็บได้มากสุด 1 ล้านแถว ก็จะมีไฟล์ Excel 2 พันไฟล์ต่อ 1 วัน ถ้ารวมหนึ่งปีก็ไม่มากไม่น้อย แค่ 730,000 ไฟล์ (ย้ำว่าไฟล์ละล้านแถว ขนาดไฟล์ใหญ่มากก)

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

ลองเพิ่มอีกสักตัวอย่าง สมมติว่าผมต้องการวิเคราะห์ใบหน้าของลูกค้าและให้ระบบที่เชื่อมต่อกับกล้องส่งข้อมูลมาให้ผมรู้ในตอนนั้นเลย (Real-Time) ในภาพด้านล่าง ผมทำการวิเคราะห์ใบหน้าท่านผู้นำ ซึ่งระบบที่ผมใช้ก็ฉลาดพอที่จะวิเคราะห์ว่าเขาน่าจะเป็นบุคคลและเป็นทหาร (แถมอารมณ์ดีเสียด้วย..)

และนี่คือข้อมูลที่ระบบจะส่งออกมาครับ (เรียกว่า JSON) ถามว่าผมจะยัดข้อมูลหน้าตาประมาณนี้ลงในตารางได้ไหม ?

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

เริ่มเห็นปัญหาแล้วใช่ไหมครับ…

จริงๆ มันมีวิธีในการเก็บข้อมูลเยอะๆ และเรียกมาใช้เร็วๆ ได้ในนาม “NoSQL” (ถ้า SQL คือการเก็บในรูปแบบมีโครงสร้างชัดเจน NoSQL ก็คืออะไรก็ตามที่ไม่ต้องมีโครงสร้างชัดเจนนั่นเอง แต่จะยังไม่ขอลงรายละเอียดในตอนนี้) แต่ทั้งนี้ทั้งนั้นการประมวลผลข้อมูลเยอะๆ นี่ต้องใช้พลังการประมวลมหาศาลเกินกว่าเครื่อง Server หรือคอมพิวเตอร์เทพๆ จะทำได้ด้วยตัวมันเองตามลำพัง การพยายามเอาคอมพิวเตอร์หลายเครื่องมาประมวลผลงานพร้อมๆ กัน และแบ่งข้อมูลไปเก็บในหลายๆ เครื่องจึงเริ่มบังเกิด

ซึ่งเจ้าแรกที่เห็นปัญหานี้และลงมือจัดการก็ไม่ใช่ใครที่ไหน “Google” นั่นเอง เพราะเค้าพยายามเก็บข้อมูลเว็บทั้งหมดบนโลกนี้ซึ่งมีมหาศาล จึงเกิดการค้นคว้าและพัฒนา algorithm ในการจัดการจนได้เป็นงานวิจัยชื่อ MapReduce: Simplified Data Processing on Large Clusters จากนั้นก็มีวิศวกร Yahoo! นาม Doug Cutting ต่อยอดจนได้เป็นระบบที่สามารถเปิดให้ชาวโลกใช้ในนาม “Hadoop” (ตั้งชื่อตามของเล่นรูปช้างของลูกชายตัวเอง)

ซึ่ง Hadoop นี้เป็น Open Source ภายใต้เงื่อนไขของ Apache เราเลยคุ้นเคยในชื่อว่า “Apache Hadoop” ซึ่งหมายความว่าเราสามารถนำมาใช้ได้ “ฟรี” ตรงจุดนี้ทำให้คนที่คุ้นเคยกับซอฟท์แวร์เสียเงินแบบเคยๆ เกิดคำถามว่าแล้วฟรีนี่มันจะดีเหรอ ? คำตอบก็ย้อนกลับไปว่าแล้ว Linux นี่ฟรีใช่ไหม ? แล้วรู้ไหมว่า Web Server ที่เราๆ ท่านๆ ใช้กันอยู่เนี่ย เกือบทั้งโลก run อยู่บน Linux !!

แต่แน่นอนระบบที่ซับซ้อนขนาดนี้ย่อมใช้ไม่ง่าย และการที่จะนำมามาใช้จึงต้องมีผู้เชี่ยวชาญในการนำเจ้า Hadoop นี้มาประยุกต์ใช้งาน ซึ่งจริงๆ ตอนนี้ก็มีหลายเจ้าที่ให้บริการ (ที่ผม prefer หน่อยจะเป็น Cloudera) และด้วยความที่ Big Data เป็นสิ่งที่ธุรกิจกำลังสนใจอย่างมาก แม้แต่ Microsoft ที่เปิดให้บริการ Cloud ของตัวเองในนาม Azure ก็ยังเปิดให้บริการ Hadoop ในนาม HDInsight

Big Data ไม่ได้แปลว่า Hadoop แต่มันจะเกิด Big Data ไม่ได้ ถ้าปราศจาก Hadoop

ซึ่งถ้าเรามาสรุปแบบง่ายๆ เราจะใช้ Hadoop ก็ต่อเมื่อเราต้องจัดการกับข้อมูลที่มีความหลากหลายสูง และมีปริมาณมากซะจนเราไม่สามารถจัดการเก็บข้อมูลได้ด้วยวิธีเดิมๆ อีกต่อไป ซึ่งไม่ใช้แค่การจัดการ แต่รวมไปถึงการวิเคราะห์อีกด้วย

ปิดท้ายด้วยภาพด้านล่างซึ่งเป็น Joke ของการอยากใช้ “Big Data” แต่ใช้ไม่เป็น ไม่เข้าใจมัน ก็เลยกลายเป็น “Big Problems” แทนครับ

6 ขั้นตอนของ Digital Transformation สู่การเป็นองค์กรดิจิตอลอย่างสมบูรณ์

จากบทความคราวก่อนเรื่อง Digital Transformation คืออะไร ทำไมต้องทำ ทำแล้วได้อะไร คงพอได้คำตอบในระดับนึง เรียกได้ว่าสิ่งใหม่ๆ ทุกอย่างที่เราพบเจอในเวลานี้ ล้วนเป็นผลจาก Digital Transformation แทบทั้งสิ้น วันนี้เลยมาทำภาคต่อว่าก่อนที่องค์กรใดๆ จะเข้าสู่ความเป็นดิจิตอลอย่างสมบูรณ์นั้นจะต้องผ่านขั้นตอนอย่างไรบ้าง โดยสิ่งเหล่านี้เป็นผลการศึกษาของคุณ Brain Solis นักวิเคราะห์ชื่อดังจาก Prophet ซึ่งมีประสบการณ์ในการวัดผลของธุรกิจจำนวนมากที่ผ่านกระบวนการ Transformation โดยสามารถชี้ให้เห็นถึงสถานะความเป็นองค์กรดิจิตอลได้เป็น 6 ระยะ ดังต่อไปนี้

–ระยะที่ 1: ทำธุรกิจไปเหมือนเคยๆ – ซึ่งก็ไม่ได้แปลว่าองค์กรไม่ได้ใส่ใจเรื่องดิจิตอลนะครับ แต่การลงทุนส่วนใหญ่จะหมดไปกับการลงทุนใน platforms เพื่อให้องค์กรสามารถประยุกต์ใช้เทคโนโลยีได้ดีขึ้นเท่านั้น ดิจิตอลถูกมองเป็นอีก Line หนึ่งของธุรกิจ ยังขาดความเชื่อมโยงกับภาพรวมของธุรกิจ ซึ่งสิ่งที่เห็นได้ชัดในระยะนี้คือผู้นำองค์กรก็ยังไม่ได้ให้ความสำคัญกับไอเดียใหม่ๆ เท่าที่ควร (คือไม่ได้มองว่าเป็นวาระเร่งด่วนอะไร)

–ระยะที่ 2: เริ่มเห็นและปรากฏ – องค์กรเริ่มตระหนักถึงการ disrupt ในทางธุรกิจมากขึ้นเรื่อยๆ และตอนนี้ก็เริ่มพร้อมที่จะเข้าสู่กระบวนการทดสอบและเรียนรู้ไปกับมันแล้ว อย่างไรก็ดี องค์กรก็ยังมีแนวโน้มที่จะทำงานแบบ silos (แยกส่วนงาน) เหมือนเคยๆ และการตัดสินใจกับลงทุนส่วนใหญ่ก็ยังใช้ไปกับรูปแบบการวัดผลเดิมๆ การเปลี่ยนแปลงทางดิจิตอลที่เกิดขึ้นในองค์กร ยังไม่ได้ถูกจัดให้เป็นระบบ แต่การเปลี่ยนแปลงดังกล่าวนี้เริ่มส่งแรงกระเพื่อมให้ผู้บริหารเริ่มออกจาก comfort zone แล้ว

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

–ระยะที่ 4: มุ่งมั่นที่จะเปลี่ยนแปลง – ในระยะนี้ องค์กรได้ยอมรับการเปลี่ยนแปลงไปสู่ความเป็นดิจิตอล มีการวางแผนใช้ทรัพยากรอย่างมีจุดมุ่งหมายที่ชัดเจนขึ้น สามารถเห็นภาพเป้าหมายระยะสั้นและระยะยาว ว่าองค์กรจะใช้ดิจิตอลไปในทางใดบ้าง และได้รับการสนับสนุนการลงทุนในโครงสร้างพื้นฐานอย่างเต็มที่

–ระยะที่ 5: แปลงร่างองค์กร – ถึงตอนนี้ Digital Transformation ได้เข้ามาเป็นส่วนหนึ่งของ DNA องค์กร และองค์กรก็มีการพัฒนาไอเดีย disrupt ใหม่ๆ ตลอดเวลา มีการลงทุนลงแรงใน digital initiative ที่เกิดคุณค่าจริงๆ ผู้นำองค์กรเริ่มหายใจเข้าออกเป็น transformation แล้ว รวมถึงมีการพัฒนารูปแบบการทำงานใหม่ๆ ให้สอดคล้องกับความต้องการของตลาดอยู่ตลอดเวลา

–ระยะที่ 6: องค์กรนวัตกรรม – ในระยะขั้นสุดนี้ องค์กรได้ดูดซับวัฒนธรรมแห่งการสร้างนวัตกรรม และมีการแปลงร่างองค์กรอย่างสมบูรณ์ พร้อมที่จะเร่งสปีดกระบวนการทำงาน การลงทุน จนสามารถกระโดดเข้าสู่การเติบโตและการแข่งขันใหม่ๆ ได้อย่างเต็มที่ ทำให้เกิดความยั่งยืนขององค์กรอย่างแท้จริง

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

คำว่า DO or DIE ก็ยังคงใช้ได้เสมอ แต่ DIE ช้า DIE เร็ว นั้นก็ขึ้นประเภทธุรกิจและอุตสาหกรรมนั่นเอง ถ้าเป็น SMEs ที่คู่แข่งเข้ามาได้ง่ายก็ DIE ง่าย ถ้าเป็น Corporate ที่ยังมีข้อได้เปรียบในการแข่งขันก็ DIE ช้า แต่จะมัวรอให้ DIE ทำไม ในเมื่อเราสามารถ DO ได้ตั้งแต่วันนี้ จริงไหมครับ

ข้อมูลอ้างอิง
Prophet