BLOGS

ดุดันไม่เกรงใจใคร พาทำ AI แบบไม่ต้อง Coding ด้วย Google Sheets

Suwat.T • 30/12/2022
Google Cloud Solutions Specialist

ในปัจจุบันเทคโนโลยีในด้าน AI/ML ได้พัฒนาไปอย่างรวดเร็ว ซึ่ง AI/ML ถือเป็นอีกหนึ่งเครื่องมือที่ช่วยให้หลาย ๆ องค์กรขับเคลื่อนธุรกิจได้อย่างมีประสิทธิภาพ แต่การที่จะสร้าง AI/ML นั้นก็ยังมีข้อจำกัดภายในองค์กรที่จำเป็นต้องมีนักพัฒนาที่มีความเชี่ยวชาญในการสร้างโมเดล AI/ML โดยการเขียน Python ได้ ทว่าข้อจำกัดนี้ Google ทำให้มันง่ายขึ้นด้วยการสร้างโมเดล AI/ML ที่ไม่ต้องพึ่งพา Data Scientist, ML Engineer หรือการ Coding ใด ๆ เลยด้วย Simple ML for Sheets

Simple ML for sheets คืออะไร ?

           Simple ML for Sheets จะช่วยให้ทุกคนสามารถสร้าง Machine Learning Model บน Google Sheets ได้ แม้ว่าผู้ใช้จะไม่เคยเขียน Code หรือสร้างโมเดล Machine Learning มาก่อน โดย Simple ML จะมาในรูปแบบ Add-On ที่สามารถใช้ฟรีบน Google Sheets

           Simple ML รองรับการทำโมเดลกับข้อมูลที่เป็น Structured Data (ข้อมูลเชิงโครงสร้างที่ลักษณะเป็นตาราง) โดยโมเดลที่ Simple ML สร้างได้จะเป็นลักษณะโจทย์ Regression และ Classification ซึ่ง Google ก็มีหลายโมเดลให้เราสามารถเลือก Algorithms ในการ train โมเดลเองได้โดยจะประกอบไปด้วย 

  1. Gradient Boosted Trees
  2. Random Forest
  3. Decision Tree

เริ่มต้นใช้งาน Simple ML กันเลย !

1.  Install Simple ML for Sheets ให้เราเข้ามาที่
      Simple ML for Sheets in Google’s Marketplace
      และคลิก Install

2. จากนั้นให้เราทำการ Grant The Permission เพื่อเป็นการอนุญาตให้ใช้สิทธิ์การเข้าถึง Google Drive เพื่อเป็นการเก็บ Machine Learning Models ซึ่งเวลาที่เรามีการ Train Model เสร็จเรียบร้อยจะมีการสร้าง Directory บน Google Drive ที่ชื่อว่า Simple_ML_for_Sheets ให้อัตโนมัติ

3. เมื่อเข้ามาที่หน้า Google Sheets ให้เราเลือกเมนู Extensions > Simple ML for Sheets > Start จะเห็นว่ามี Extensions เพิ่มขึ้นมาแสดงว่าเราสามารถใช้งาน Simple ML ได้แล้ว

มาทดลองสร้างโมเดลด้วย Simple ML กันเถอะ !

ในวันนี้การทำโมเดลจะเป็นตัวอย่างง่าย ๆ ให้ทุกคนสามารถลองทำตามกันได้โดยในตัวอย่างจะเป็นการสร้างโมเดลทำนายดูว่าใครมีโอกาสที่จะเสียชีวิตหลังจากหัวใจวายโดยสามารถโหลดข้อมูลได้ที่ Kaggle Dataset หรือใครจะใช้ Tutorial ที่ Google จัดเตรียม Data มาให้ก็ได้ที่เป็นการทำนาย Species ของแพนกวินก็ได้เช่นกัน

1. เริ่มต้น Import Data จากไฟล์ที่ดาวน์โหลด

นำไฟล์จากที่ดาวน์โหลดนำเข้า Google Sheets โดย dataset ที่ใช้คือข้อมูล Heart Failure Prediction และทำการแบ่งข้อมูล Train/Test โดยข้อมูล Train ใช้สำหรับเทรนโมเดล ส่วน Test เอาไว้ใช้ทดสอบโมเดลเป็น unseen data และเอาไว้ใช้ประเมินผลลัพธ์จากโมเดลว่ามีความแม่นยำในการนำไปใช้ต่อมากน้อยเพียงใด

2. ใช้งาน Simple ML for Sheets

หลังจากที่เรามีการ Add-ons extensions เรียบร้อยแล้วเมื่อเราเข้ามาที่แถบ Extensions > Simple ML for Sheets > Start

หลังจากที่เราทำการ Start แล้วจะแสดงดังรูปข้างต้น

จากรูปประกอบเราจะพบว่ามีหลาย Feature ให้เราเลือกใช้โดยประกอบไปด้วย

  1.  Predict Missing Values ที่เป็นการทำนายแบบ Supervised Classification โดย Feature นี้สามารถทำนายค่า Missing Value ใน Google Sheets ที่เป็น Empty Cell ได้ ตัวอย่างเช่น หากมีคอลัมน์ประกอบด้วยจำนวนเงินที่ลูกค้าแต่ละรายใช้ซื้อของ เราสามารถใช้การ Predict Missing Values นี้เพื่อคาดการณ์ว่าลูกค้าใหม่คนใดจะใช้จ่ายเท่าไหร่ด้วยวิธีนี้ช่วยให้เราสามารถกำหนดเป้าหมายกลุ่มลูกค้าในอนาคตได้ดีขึ้น
  2. Spot Abnormal Values เป็น Feature ที่เอาไว้จัดการกับข้อมูลพวกที่เป็น Outlier สามารถใช้ดูข้อมูลในแต่ละ Transaction ว่าข้อมูลไหนเป็นค่าที่มีความผิดปกติซึ่งจะเหมาะกับการทำโมเดลตรวจสอบความผิดปกติหรือ Fraud Detection นั่นเอง

ทำโมเดลแบบ Advanced คาดการณ์ธุรกิจ

หาก 2 Features ข้างต้นยังไม่ตอบโจทย์ปัญหาทางธุรกิจของเรา สามารถเลือกทำโมเดลแบบ Advanced ได้ โดยในวันนี้เราจะใช้การทำโมเดลแบบ Advanced ทำนายดูว่าใครมีโอกาสที่จะเสียชีวิตหลังจากหัวใจวาย

โดยมีขั้นตอนดังนี้

1. Train a model เป็นการกำหนดขั้นตอนต่าง ๆ ในการ Train a model ตั้งแต่การตั้งชื่อโมเดล,การเลือกคอลัมน์ที่ใช้ทำนาย, การเลือก Feature ที่จะใช้ Train a model และสุดท้ายทำการเลือก Learning Algorithm โดยในการสร้างโมเดลวันนี้เลือกเป็น Gradient Booted Trees ซึ่งกระบวนการต่าง ๆ ถ้าหากใครเคยใช้ AutoML บน Google Cloud Platform หลักการก็จะคล้าย ๆ กันเลยในการจัดการข้อมูลที่เป็น Categorical ซึ่งเมื่อเราเลือกขั้นตอนต่าง ๆ เรียบร้อยแล้วสามารถกด Train ได้เลย โดยโมเดลที่เราจะได้อยู่ใน Google Drive Folder ชื่อ Simple_ML_for_Sheets

2. Make prediction with model เป็นขั้นตอนที่นำโมเดลจากขั้นตอนก่อนหน้ามาใช้ทำนายซึ่งเราเลือกทดสอบกับข้อมูล Test โดยในรูปเราจะเห็นว่าตัว Simple ML เองสามารถทำนายได้ว่าเป็น class ไหนและสามารถบอกความน่าจะเป็นของ Class นั้น ๆ ได้อีกด้วย

3. Evaluate a model เป็นขั้นตอนการประเมินผลลัพธ์ว่าโมเดลที่เราใช้ทดสอบกับข้อมูล Unseen Data เป็นอย่างไรบ้างโดยเราสามารถดูค่า Accuracy, Precision, Recall, Confusion Table, Graph ROC

4. Understand a Model เป็นการทำความเข้าใจ Machine Learning โมเดลจากที่เรา Train มาโดยจะแบ่งออกเป็น 

  • Summary
    เอาไว้ดู Metadata ต่าง ๆ ของ Model อาทิ Model Name, วันที่ Train Model, คอลัมน์ในการทำนายรวมไปถึง Feature ที่เรานำเข้าไป Train Model
  • Quality
    เอาไว้ดูประสิทธิภาพของโมเดลโดยจะมี Metrics ในการดูคือค่า Accuracy, Confusion Table ซึ่งเป็นการคำนวณจากข้อมูลของโมเดลที่ Train กับข้อมูลที่เป็น Validate data
  • Dataset
    เอาไว้ดูข้อมูลสถิติของแต่ละ Feature ในชุดข้อมูล
  • Variable Importance
    เอาไว้ดูว่า Feature ไหนที่เรานำไปใช้ Train Model ฟีเจอร์ไหนส่งผลต่อประสิทธิภาพ Model
  • Predictions
    เอาไว้ดูการทำนายของแต่ละ Feature ออกมาเป็นกราฟโดยการที่จะใช้ Predictions ได้เราต้องทำการ Check Box ว่าให้ทำการวิเคราะห์ใน Sheet นี้ด้วยถึงจะขึ้นการแสดงกราฟ
  • Plot
    เป็นการ Representation โดยจะใช้ได้กับโมเดลที่เลือก Learning Algorithm แบบ Decision Trees

5. Manage models จะเอาไว้จัดการโมเดลที่เรามีการ Train เสร็จเรียบร้อยแล้วสามารถดูรายละเอียดของตัวโมเดลที่อยู่บน Google Drive และสามารถแก้ไขชื่อโมเดลหรือลบโมเดลออกได้

6. Export a model เราสามารถนำโมเดลที่เรา Train ออกไปใช้งานด้านนอกได้โดยจะเป็นการ Export ออกไปที่ Google Colab หรือ เราจะเป็นการ Copy Model จาก Drive แล้ว Import เข้า Vertex AI ก็ได้เช่นกัน

เท่านี้ก็จะได้ Machine Learning โมเดลง่าย ๆ สมชื่อ Simple ML เป็นอย่างไรบ้างครับเพื่อน ๆ การสร้างโมเดลแบบที่ไม่ต้องมี Data Scientist ทุกคนก็สามารถทำได้แถมง่ายอีกด้วย แต่ว่าเรายังไม่จบที่การ train โมเดลอย่างเดียวเดี๋ยวเราจะนำโมเดลกับผลลัพธ์ที่ได้ไปต่อกับ Looker Studio เพื่อดู Insight ง่าย ๆ ให้ทีม Business ที่เกี่ยวข้องหรือผู้บริหารดูเป็น Report กัน

นำผลลัพธ์จาก ML ไปใช้ประโยชน์ต่อด้วย Looker Studio

เราสามารถสร้างมูลค่าเพิ่มจากผลลัพธ์ของ ML ด้วยการส่งต่อให้กับทีม business ในรูปแบบต่าง ๆ อาทิ เป็น Google Sheets ไปเลยหรือจะ export เป็นไฟล์ แต่ที่นิยมที่สุดมักจะส่งเป็นรายงาน ซึ่ง Looker Studio ถือว่าเป็นเครื่องมือในการทำรายงานหรือ dashboard ได้ยอดเยี่ยมและไม่มีค่าใช้จ่าย นักทำโมเดลหลายคนจึงเลือกใช้เพื่อต่อยอดครับ

รายงานด้านล่างเป็นการสร้าง Report โดยเลือก Data Source เป็น Google Sheets ที่เราได้ผลลัพธ์จาก Simple ML for Sheets
[ คลิกดู Dashboard ได้ที่นี่ ]


เวลาที่เรานำไปใช้เพื่อนำเสนอทีม Business หรือผู้บริหาร อาจจะทำเป็นเรื่องเล่าในรูปแบบ Storytelling เพื่อเราที่มาที่ไปหรือ Next Action ต่อก็ได้ครับ ตัวอย่างต่อไปนี้จะเป็นไอเดียสำหรับลองเล่า model ที่ใช้ทำนายการเสียชีวิตหลังภาวะหัวใจวาย

1. เราสามารถปรับค่า Confidence Score ว่าต้องใช้ threshold เท่าไรในการบอกว่าคนไข้คนนี้ Alive หรือ Death จากภาพประกอบจะเป็น 50% หรือ Confidence score >= 0.5 ขึ้นไปเป็น Death (ที่เป็น Death เนื่องจาก model นี้ทำนายว่า Death หรือไม่ ดังนั้น Positive Class จึงเป็น Death)

สมมติว่า Threshold อยู่ที่ 50% ดังตัวอย่าง ผลลัพธ์ Alive และ Death บนรายงาน จะเปลี่ยนค่าตามที่เลื่อนบน Slider Control ทั้งหมด ดังนั้นตัวเลขที่ทำนายว่า Death อาจเพิ่มขึ้นหรือลดลงขึ้นอยู่กับ Threshold ที่ตั้งครับ

ในมุมของการเลือก Threshold ใดว่าเหมาะสม เช่น จะต้องมากกว่า 70% ถึงทำนายว่าเสียชีวิต เป็นต้น โดย Data Scientist อาจจะต้องพิจารณาประกอบกับค่าเชิงสถิติ เช่น Precision, Recall และค่าเชิงธุรกิจด้วย เพื่อเป็นเกณฑ์ว่าควรเน้น Recall หรือ Precision ดีตาม เพื่อหลีกเลี่ยงผลกระทบจากความแม่นยำของโมเดลที่ทำนายตาม Business Use Case ครับ

2. ผลลัพธ์ของการทำนายอยู่ในรูป Confidence Score ซึ่งเมื่อตัดด้วยค่า Confidence Threshold จะทำทราบว่าคนไข้แต่ละท่านอยู่ใน Class ใด เป็น Death และ Aliveซึ่งเราจะแสดง Predictive Values เหล่านี้เป็นตัวเลขสรุปในภาพใหญ่ก็ได้ เพื่อให้เห็นว่าจำนวนคนไข้ที่มาทำนาย 69 ราย น่าจะมีผู้ที่เสียชีวิตหลังจากภาวะหัวใจวาย 21 ราย ซึ่งแสดงเป็น Pie Chart ประมาณ 30.4% ภายใน Pie Chart นี้เราทำ Interactive Filtering ไว้ ดังนั้นการคลิก Highlight ที่ส่วนสีแดงใน Pie Chart สามารถ Filter ข้อมูลทั้งหน้ารายงานนี้ได้ เพื่อให้เห็น Portion ใน Feature ต่าง ๆ ของคนไข้ที่ทำนายว่า Death รวมถึง Filter Table ข้างล่างเพื่อเลือกคนไข้ที่มีความเสี่ยงในการเสียชีวิต ให้ทีม Business หรือทีมดูแลคนไข้ไปใช้งานต่อได้

3. ทางด้านขวาเราสามารถอธิบาย ความสัมพันธ์ระหว่าง Features และ Predictive Values ได้ เพื่อแสดงถึงแนวโน้มของการทำนาย ดังภาพต่อไปนี้

  • Age กลุ่มคนไข้เหล่านี้เป็นกลุ่มที่อายุมากกว่า 40 ปี เมื่อเราจัดกลุ่มเป็นช่วงอายุทีละ 5 ปีเข้าด้วยกัน พบว่าแนวโน้มการรอดชีวิตมักเป็นคนไข้ที่อายุที่ค่อนข้างน้อย ซึ่งการแนวโน้มการเสียชีวิตจะค่อย ๆ เพิ่มขึ้นตามช่วงอายุ
  • Serum Creatinine เครตินินเป็นสารที่ได้จากการแตกสลายของกล้ามเนื้อที่ถูกขับมาผ่านไต ใช้ประเมินคุณภาพการทำงานของไต ในกรณีนี้มีความสัมพันธ์กับการรอดชีวิต คนไข้ที่มีค่าเครตินินในระดับทีต่ำ หรือน้อยกว่า 2 mg/dL มีแนวโน้มที่จะรอดชีวิต
  • Serum Sodium โซเดียมมีบทบาทในการช่วยควบคุมปริมาณน้ำในร่างกาย โซเดียมในช่วงต่ำกว่า 145 mEq/L คนไข้มีแนวโน้มรอดชีวิตมากกว่าเสียชีวิต
  • CPK Enzyme เป็นเอนไซม์ที่จะตรวจพบเมื่อร่างกายได้สลายกล้ามเนื้อปนออกมาในกระแสเลือด ที่ใช้ประเมินความรุนแรงในกลุ่มโรคที่เกี่ยวกับหัวใจ มีผลต่อโมเดลของเราน้อยกว่าเซรัมเครตินินและโซเดียม มีความกระจายตัวกันอยู่ หากพิจารณาในแต่ละช่วงของ CPK ส่วนใหญ่แนวโน้มการรอดชีวิตจะสูงกว่าเสียชีวิต

4. และสุดท้าย Predictive Table ที่แจกแจง feature ที่มีผลรวมถึงรายชื่อคนไข้และผลลัพธ์การทำนายที่สามารถ export เป็น Google Sheets หรือ CSV files ต่อได้ ตรงนี้จะเป็นประโยชน์แค่คนที่ดูผลลัพธ์รายงานหรือ dashboard เพื่อนำไปใช้ต่อได้อย่างมีประสิทธิภาพครับ

Conclusion

Simple ML for Sheets ทำให้การทำ AI หรือ ML บน Google Sheets เป็นเรื่องง่าย แทบไม่ต้องอาศัยประสบการณ์ในการโค้ดด้วย Python เลย แต่ได้ผลลัพธ์ที่เร็วกว่าและเกิดประโยชน์กับ business อย่างมหาศาล อีกทั้งยังดึงพลังของ Looker Studio ในการทำ business intelligence ได้อย่างแข็งแกร่งอีกด้วย

ซึ่งถ้าหากเราไม่มีพื้นฐานด้านการวิเคราะห์หรือการทำรายงานแบบต่าง ๆ ก็ไม่มีปัญหาใด ๆ เพราะทาง Tangerine เรามีหลักสูตรในการทำ analytics ที่หลากหลาย ตอบโจทย์ทุกความเชี่ยวชาญตั้งแต่ไม่มีพื้นฐาน Google Sheets ให้ได้ลองทำ light-weight analytics ไปจนถึงการทำ dashboard ที่เหนือกว่าด้วย Looker Studio ในคอร์ส Fundamental of data analytics with Looker Studio Training หรือทำ Dashboard ให้เจ๋งกว่าเดิมด้วย Use Case ต่าง ๆ และการทำ Machine Learning Model แบบ No-Code ใน Intermediate Dashboarding Training

แต่ละหลักสูตรออกแบบโดยผู้เชี่ยวชาญในหลากสาขาวิชาชีพทั้ง นักวิเคราะห์ข้อมูล, นักวิทยาศาสตร์ข้อมูลและนักวิเคราะห์ธุรกิจเพื่อตอบโจทย์ Non-Technical เป็นหลัก
ทุกท่านสามารถดาวน์โหลด E-brochures ได้ที่นี่

สำหรับใครที่สนใจเกี่ยวกับ Google Cloud Platform หรือ Service อื่น ๆ
ด้าน Data Analytics, Data Lake, Data Warehouse, AI/Machine Learning
Tangerine มีผู้เชี่ยวชาญคอยให้คำปรึกษา
สามารถติดต่อได้ที่อีเมล marketing@uat.tangerine.co.th หรือโทร 094-999-4263 ได้ทันที

Get a Free Consultation
Contact Form_EN Sources (#25)