วิธีการ Clean Missing Data โดยใช้ AzureML
เมื่อเราทำงานกับข้อมูลปัญหาที่เรามักพบบ่อย ๆ ในกระบวนการจัดการกับข้อมูลคือ มีข้อมูลบางส่วนขาดหายไปนั้นคือ missing data นั้นเอง แล้วเราจะมีวิธีจัดการกับปัญหานี้อย่างไร บทความนี้จะมาไขข้อสงสัยนี้ค่ะ
การที่เราจะทำการ clean missing data นั้นเราต้องรู้ก่อนว่าข้อมูลอะไรที่หายไปบ้าง หายไปจำนวนเท่าไหร่ และชนิดของข้อมูลที่หายไปคือข้อมูลชนิดไหน สามารถทำได้ง่าย ๆ ดังนี้เลยค่ะ
1. ลากข้อมูลที่เราต้องการ Clean หรือต้องการสร้างโมเดลมาไว้บน Workspace โดยนำข้อมูลที่เรานำเข้ามาจาก Saved Dataset เลือก My Datasets จากนั้นลากชุดข้อมูลที่เราต้องการมาไว้บน Workspace
และหากเราต้องการนำเข้าข้อมูลในรูปแบบอื่น เช่น นำเข้าข้อมูลจากเว็บ เราก็เลือก module นั้นมาวางได้เลย
2. จากนั้นเราจะดูรายละเอียดของจำนวน Missing และชนิดของแต่ละคอลัมน์โดยการคลิกขวาที่วงกลมเล็ก ๆ ใต้ชุดข้อมูลที่เรานำมาวาง
แล้วเลือก Visualize เพื่อดูว่ามี missing data ไหม และดูชนิดของข้อมูลที่หายไป
3. เมื่อเราพบว่ามี Missing Data เราจะทำการ Clean missing โดยค้นหา Module ที่มีชื่อว่า Clean Missing Data แล้วลากมาวางบน Workspace จากนั้นลากเส้นเชื่อมจากชุดข้อมูลของเรามาเชื่อมกับ Module นี้
4. เลือกคอลัมน์ที่เราต้องการจะ Clean โดยกด Launch column selector จากนั้นกดเลือกคอลัมน์ที่เราต้องการมาไว้ทาง Selected Columns แล้วคลิกเครื่องหมายถูก
5. จากนั้นเลือกวิธีการ Clean โดยเลือกวิธีการจากชนิดของข้อมูลและจำนวนข้อมูลที่หายไปโดยเลือกที่ Parameter ที่ชื่อว่า Cleaning mode ซึ่งมีวิธีการเลือกวิธีการดังนี้
- หากถ้าแถวหรือคอลัมน์ไหนมีข้อมูลที่หายไปมากเกินไปหรือหายไปเกือบทั้งหมดเราจะเลือก Remove entire rowหรือ Remove entire column
- หากชนิดข้อมูลเป็น String หรือ Category เราจะเลือก Replace with mode
- หากชนิดข้อมูลของเราเป็นข้อมูลแบบ Numeric เราสามารถเลือกได้หลายวิธีการ เช่น Replace with mean
Replace with median, Replace using MICE เป็นต้นแล้วแต่ความเหมาะสมกับข้อมูลของเรา
สำหรับการ Clean missing นั้นเราสามารถทำทีละวิธีการและทีละชนิดของข้อมูล โดยวิธีการเดียวกันสามารถทำพร้อมกันหลายคอลัมน์ได้ หากเราต้องการจะทำหลายวิธีเราจะลาก Module Clean missing Data มาเชื่อมต่ออีกครั้ง เช่น รอบแรกเราต้องการ Clean ข้อมูล Numeric ด้วย Mean และต้องการ Clean ข้อมูล String ด้วย mode เมื่อปรับ parameter เสร็จเรียบร้อยแล้วเรากด RUN ได้เลยค่ะ
จากขั้นตอนทั้งหมดข้างต้นนั้นเราจะเห็นได้ว่าเราสามารถจัดการกับ missing data ได้อย่างง่ายดาย และรวดเร็วด้วย AzureML ทำให้เราไม่ต้องมาใช้เวลามากมายกับการจัดการกับข้อมูลที่หายเหล่านรู้แล้วล่ะค่ะ