การใช้ RapidMiner ดึงข้อมูลจากฐานข้อมูล SQLServer

เอกสารขั้นตอนการใช้ RapidMiner ดึงข้อมูลจากฐานข้อมูล SQLServer ดาวน์โหลดได้จากที่นี่ครับ หมายเหตุ เอกสารนี้เป็นส่วนหนึ่งของเอกสารประกอบการอบรมหลักสูตร Introduction to Customer Segmentation with RapidMiner Studio 9 หาซื้อได้จาก https://datacubeth.ai/big-data-machine-learning-rapidminer-book

ชุดข้อมูลสำหรับทำ workshop จากหนังสือ Box Set: Big Data Machine Learning

ท่านที่ซื้อหนังสือแบบ Box Set ไปแล้วจะมี 2 เล่มที่เป็น workshop คือ Introduction to Predictive Modeling with RapidMiner Studio 9 จะมีตัวอย่างของการทำ propensity to buy หรือ การหาว่าลูกค้าแบบไหนจะซื้อสินค้าที่จะนำเสนอบ้าง สามารถดาวน์โหลดข้อมูลได้ที่นี่ ครับ Introduction to Customer Segmentation with RapidMiner Platform จะมีตัวอย่างการแบ่งกลุ่มลูกค้า โดยทำการถึงข้อมูลจาก Databases Server ซึ่งมีรายละเอียดดังนี้ database server: SQL Server

Summary Note บทที่ 2 จากหลักสูตร Practical Data Mining with RapidMiner Studio 9

หลักสูตร Practical Data Mining with RapidMiner Studio 9 นี้เป็นหลักสูตรที่เน้นอธิบาย 2 ส่วนคือ concept ของการวิเคราะห์ข้อมูลและการใช้งานซอฟต์แวร์ RapidMiner Studio 9 ครับ ในโพสต์นี้จะเป็นสรุปในบทที่ 2 ของหลักสูตรนี้ซึ่งเนื้อหาจะเกี่ยวกับ CRISP-DM ครับ ดาวน์โหลดไฟล์ PDF ได้ที่นี่

Summary Note บทที่ 1 จากหลักสูตร Practical Data Mining with RapidMiner Studio 9

หลักสูตร Practical Data Mining with RapidMiner Studio 9 นี้เป็นหลักสูตรที่เน้นอธิบาย 2 ส่วนคือ concept ของการวิเคราะห์ข้อมูลและการใช้งานซอฟต์แวร์ RapidMiner Studio 9 ครับ ในโพสต์นี้จะเป็นสรุปในบทที่ 1 ของหลักสูตรนี้ซึ่งเนื้อหาจะเกี่ยวกับ Introduction to Data Mining ครับ ดาวน์โหลดไฟล์ PDF ได้ที่นี่

ขั้นตอนการสร้างโมเดล Decision Tree

เทคนิค Decision Tree เป็นเทคนิคหนึ่งที่ได้รับความนิยมในการนำมาประยุกต์ใชัในงานด้าน data mining วันนี้ผมจะแนะนำการสร้างโมเดล decision tree แบบง่ายๆ ก่อนอื่นเราจะใช้ข้อมูลในตารางที่ 1 ซึ่งเป็นข้อมูลที่เก็บสภาพภูมิอากาศ 14 วันย้อนหลังเพื่อดูว่าจะมีการจัดแข่งขันกีฬาหรือไม่ ตารางที่ 1 แสดงข้อมูล weather จากข้อมูลในตารางที่ 1 ประกอบด้วย 5 แอตทริบิวต์ คือ outlook แสดงสภาพภูมิอากาศ ประกอบด้วย 3 ค่า คือ sunny, overcast, rainny temperature แสดงอุณหภูมิ ประกอบด้วย 3 ค่า คือ hot, mild,

ระดับของการวิเคราะห์ข้อมูล (Data Analytics)

ในการทำ Data Analytics หรือ Data Driven Markeing เป็นการนำข้อมูลมาช่วยในการตัดสินใจเพื่อให้มีความแม่นยำและถูกต้องมากขึ้น รูปนี้เป็นรูปที่ผมมักจะใช้ในการอธิบายเรื่องระดับของการวิเคราะห์ข้อมูล (Data Analytics) โดยในรูปจะเริ่มตั้งแต่ข้อมูล (Data) ไปจนถึงการตัดสินใจ (Decision) หรือการกระทำ (Action) โดยในรูปจะแสดงระดับในการวิเคราะห์ข้อมูลต่างๆ ซึ่งมีรายละเอียดดังนี้ การวิเคราะห์ข้อมูลแบบ Descriptive Analytics จะเป็นการนำข้อมูลมาอธิบายว่ามีอะไรเกิดขึ้นมาแล้วบ้าง เช่น ยอดขายในเดือนที่ผ่านมาของแต่ละสาขา การวิเคราะห์ลักษณะนี้ช่วยในการตัดสินใจได้ค่อนข้างน้อยจึงจำเป็นต้องมีผู้เชี่ยวชาญ (หรือผู้บริหาร) เข้ามาเกี่ยวข้องในการตัดสินใจดังแสดงในส่วนที่เป็นสีฟ้า (Human Input) ครับ ตัวอย่างเช่น ถ้าเราอยากรู้ว่าสินค้าชนิดนี้จะต้องผลิตเท่าไร การวิเคราะห์แบบนี้จะให้ข้อมูลมาว่าในอดีตเคยขายได้เท่าไร ผู้บริหารจะต้องมาคิดเพื่อตัดสินใจอีกครั้ง การวิเคราะห์ข้อมูลแบบ Diagnostic Analytics เป็นการวิเคราะห์ในหลากหลายมุมมองมากขึ้น เช่น

เว็บไซต์ที่รวบรวมงานวิจัยทางด้าน Machine Learning และมี Code ที่ใช้ในการทำวิจัยด้วย

เว็บไซต์ paperswithcode.com เป็นเว็บไซต์ที่รวบรวมงานวิจัยทางด้าน Machine Learning และมี Code ที่ใช้ในการทำวิจัยให้ดาวน์โหลดด้วยครับ เช่น Deep Learning แบบต่างๆ และมีหัวข้อวิจัยแยกเป็นเรื่องต่างๆ ดังนี้ครับ– Computer Vision– Natural Language Processing– Medical– Graph– Speech– Time Series– Robot

การประยุกต์ใช้ Predictive Modeling ในเชิงธุรกิจ (Business)

ในหลายๆ ครั้งเวลาทำงานเรามักจะต้องหาก่อนว่าจะนำข้อมูลที่มีมาใช้ในการวิเคราะห์เรื่องอะไรบ้างครับ รูปด้านล่างแสดงตัวอย่างการนำเทคนิคการวิเคราะห์ข้อมูลแบบ Predictive Modeling ไปใช้ในเชิงธุรกิจ ได้แก่ Customer recruitment from a prospect database คือ การหาว่าลูกค้าเป้าหมาย (prospects) คนใดบ้างที่มีโอกาสจะซื้อสินค้าหรือบริการมากสุด Cross-sell/up-sell campaign เป็นการหาว่าลูกค้าคนใดบ้างที่เคยซื้อสินค้า X ไปแล้วจะมีโอกาสจะซื้อสินค้า Y หรือ ลูกค้าดนใดบ้างที่เคยซื้อสินค้า Z ไปแล้วมีแนวโน้มจะซื้อสินค้า Z มากขึ้น Next-best offer เพื่อหาสินค้าหรือบริการใดบ้างที่ลูกค้ามีแนวโน้มจะซื้อหรือใช้บริการในครั้งถัดไป Customer retention เพื่อหาว่าลูกค้าคนใดบ้างมีโอกาสจะยกเลิกการใช้บริการ Customer lifecycle management เป็นการคำนวณว่าระยะเวลาอีกนานแค่ไหนลูกค้าถึงจะยกเลิกการใช้บริการ Win-back

เปรียบเทียบความถูกต้อง (Accuracy) กับการแปลความ (Explainability) ของโมเดลต่างๆ

ในการสร้างโมเดล Classification นั้นมีหลายเทคนิคครับ บางเทคนิคก็แปลความ (Explainability) ได้ง่าย บางเทคนิคก็แปลความยากแต่ความถูกต้อง (Accuracy) สูงครับ ภาพด้านล่างเป็นการแสดงให้เห็นว่าเทคนิคต่างๆ นั้นสามารถอธิบายได้ง่ายหรือยากและมีความถูกต้องมากน้อยแค่ไหนครับ  โดยเทคนิคต่างๆ มีดังนี้ครับ 1. Linear Regressionเป็นการสร้างสมการเส้นตรง (เช่น y = mx+c) มาสร้างโมเดลเพื่อพยากรณ์ค่าตัวเลขต่างๆ ข้อดีของการเทคนิคนี้คือโมเดลที่ได้แปลความได้ง่ายเพราะแสดงในรูปของสมการทางคณิตศาสตร์ที่เราสามารถแทนค่าเข้าไปได้เลย 2. Logistic Regression เป็นการสร้างสมการคณิตศาสตร์เพื่อแบ่งแยก (classify) ข้อมูลออกเป็น 2 กลุ่มคำตอบครับ เทคนิคนี้เป็นอีกเทคนิคที่นิยมให้เนื่องจากแปลความโมเดลได้ง่ายครับ และแสดงให้เห็นถึงความสำคัญของตัวแปร (หรือ Feature) ได้ด้วยครับ 3. k-Nearest Neighbours (k-NN) เป็นการสร้างโมเดลโดยมีแนวคิดว่าข้อมูลที่มีลักษณะคล้ายกันน่าจะอยู่ในกลุ่ม

ข้อมูลที่ได้จากการซื้อสินค้าแต่ละครั้ง

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