การเตรียมข้อมูลสำหรับการเรียนรู้ของเครื่อง: คำแนะนำทีละขั้นตอน
เผยแพร่แล้ว: 2023-07-07หลายปีก่อน เมื่อ Spotify ทำงานกับเครื่องมือแนะนำ บริษัทเผชิญกับความท้าทายที่เกี่ยวข้องกับคุณภาพของข้อมูลที่ใช้สำหรับการฝึกอบรมอัลกอริทึมการเรียนรู้ของเครื่อง (ML) หากพวกเขาไม่ตัดสินใจกลับไปที่ขั้นตอนการเตรียมข้อมูลและลงทุนความพยายามเพิ่มเติมในการทำความสะอาด ทำให้เป็นมาตรฐาน และแปลงข้อมูล โอกาสที่ประสบการณ์การฟังของเราจะไม่สนุกสนานเท่าที่ควร
การเตรียมข้อมูลอย่างละเอียดสำหรับ ML ช่วยให้แพลตฟอร์มการสตรีมสามารถฝึกเครื่องมือ ML อันทรงพลังที่คาดการณ์ความชอบในการฟังของผู้ใช้ได้อย่างแม่นยำและให้คำแนะนำเพลงที่เป็นส่วนตัวสูง Spotify หลีกเลี่ยงข้อผิดพลาดสำคัญที่บริษัทต่างๆ ทำเมื่อต้องเตรียมข้อมูลสำหรับ ML โดยไม่ลงแรงมากพอหรือข้ามขั้นตอนใดๆ เลย
ธุรกิจจำนวนมากคิดว่าการป้อนข้อมูลจำนวนมากลงในเครื่องมือ ML นั้นเพียงพอที่จะสร้างการคาดการณ์ที่แม่นยำ ความจริงก็คืออาจส่งผลให้เกิดปัญหาหลายอย่าง เช่น ความลำเอียงของอัลกอริทึมหรือความสามารถในการปรับขนาดที่จำกัด
ความสำเร็จของ ML ขึ้นอยู่กับข้อมูลเป็นอย่างมาก และที่น่าเศร้าคือ: ชุดข้อมูลทั้งหมดมีข้อบกพร่อง นั่นคือเหตุผลที่การเตรียมข้อมูลเป็นสิ่งสำคัญสำหรับ ML ช่วยขจัดความไม่ถูกต้องและความเอนเอียงที่มีอยู่ในข้อมูลดิบ เพื่อให้โมเดล ML ที่ได้นั้นสร้างการคาดการณ์ที่น่าเชื่อถือและแม่นยำยิ่งขึ้น
ในบล็อกโพสต์นี้ เราเน้นย้ำถึงความสำคัญของการเตรียมข้อมูลสำหรับ ML และแบ่งปันแนวทางของเราในการรวบรวม ทำความสะอาด และแปลงข้อมูล ดังนั้น หากคุณยังใหม่กับ ML และต้องการให้ความคิดริเริ่มของคุณประสบความสำเร็จ โปรดอ่านต่อไป
วิธีเตรียมข้อมูลสำหรับการเรียนรู้ของเครื่อง
ขั้นตอนแรกสู่การนำ ML ไปใช้อย่างประสบความสำเร็จคือการกำหนดปัญหาทางธุรกิจของคุณอย่างชัดเจน ไม่เพียงช่วยให้แน่ใจว่าโมเดล ML ที่คุณกำลังสร้างนั้นสอดคล้องกับความต้องการทางธุรกิจของคุณเท่านั้น แต่ยังช่วยให้คุณประหยัดเวลาและค่าใช้จ่ายในการเตรียมข้อมูลที่อาจไม่เกี่ยวข้องอีกด้วย
นอกจากนี้ คำสั่งปัญหาที่ชัดเจนทำให้โมเดล ML สามารถอธิบายได้ (หมายความว่าผู้ใช้เข้าใจวิธีการตัดสินใจ) มีความสำคัญอย่างยิ่งในภาคส่วนต่างๆ เช่น การดูแลสุขภาพและการเงิน ซึ่ง ML มีผลกระทบอย่างมากต่อชีวิตของผู้คน
เมื่อปัญหาทางธุรกิจได้รับการแก้ไขแล้ว ก็ถึงเวลาเริ่มต้นงานด้านข้อมูล
โดยรวมแล้ว กระบวนการเตรียมข้อมูลสำหรับ ML สามารถแบ่งออกเป็นขั้นตอนต่อไปนี้
- การเก็บรวบรวมข้อมูล
- การทำความสะอาดข้อมูล
- การแปลงข้อมูล
- การแยกข้อมูล
มาดูกันดีกว่า
การเก็บรวบรวมข้อมูล
การเตรียมข้อมูลสำหรับ ML เริ่มต้นด้วยการรวบรวมข้อมูล ระหว่างขั้นตอนการรวบรวมข้อมูล คุณจะรวบรวมข้อมูลสำหรับการฝึกอบรมและปรับแต่งโมเดล ML ในอนาคต โดยคำนึงถึงประเภท ปริมาณ และคุณภาพของข้อมูล: ปัจจัยเหล่านี้จะกำหนดกลยุทธ์การเตรียมข้อมูลที่ดีที่สุด
แมชชีนเลิร์นนิงใช้ข้อมูลสามประเภท: มีโครงสร้าง ไม่มีโครงสร้าง และกึ่งมีโครงสร้าง
- ข้อมูลที่มีโครงสร้างได้รับการจัดระเบียบด้วยวิธีเฉพาะ โดยทั่วไปจะอยู่ในรูปแบบตารางหรือสเปรดชีต ตัวอย่างของข้อมูลที่มีโครงสร้างครอบคลุมช่วงของข้อมูลที่รวบรวมจากฐานข้อมูลหรือระบบธุรกรรม
- ข้อมูลที่ไม่มีโครงสร้างประกอบด้วยรูปภาพ วิดีโอ การบันทึกเสียง และข้อมูลอื่นๆ ที่ไม่เป็นไปตามแบบจำลองข้อมูลทั่วไป
- ข้อมูลกึ่งโครงสร้างไม่เป็นไปตามรูปแบบของแบบจำลองข้อมูลแบบตาราง ถึงกระนั้น ก็ยังไม่เป็นระเบียบอย่างสมบูรณ์ เนื่องจากมีองค์ประกอบโครงสร้างบางอย่าง เช่น แท็กหรือข้อมูลเมตาที่ทำให้ตีความได้ง่ายขึ้น ตัวอย่าง ได้แก่ ข้อมูลในรูปแบบ XML หรือ JSON
โครงสร้างของข้อมูลจะกำหนดแนวทางที่เหมาะสมที่สุดในการจัดเตรียมข้อมูลสำหรับ ML ตัวอย่างเช่น ข้อมูลที่มีโครงสร้างสามารถจัดระเบียบเป็นตารางได้อย่างง่ายดายและทำความสะอาดผ่านการขจัดความซ้ำซ้อน การเติมค่าที่ขาดหายไป หรือการจัดรูปแบบข้อมูลให้เป็นมาตรฐาน ในทางตรงกันข้าม การแยกคุณลักษณะที่เกี่ยวข้องออกจากข้อมูลที่ไม่มีโครงสร้างต้องใช้เทคนิคที่ซับซ้อนกว่า เช่น การประมวลผลภาษาธรรมชาติหรือการมองเห็นด้วยคอมพิวเตอร์
แนวทางที่เหมาะสมที่สุดในการเตรียมข้อมูลสำหรับ ML ยังได้รับผลกระทบจากปริมาณข้อมูลการฝึกอบรมอีกด้วย ชุดข้อมูลขนาดใหญ่อาจต้องมีการสุ่มตัวอย่าง ซึ่งเกี่ยวข้องกับการเลือกชุดย่อยของข้อมูลเพื่อฝึกโมเดลเนื่องจากข้อจำกัดในการคำนวณ ในทางกลับกัน ขนาดเล็กกว่าอาจต้องการให้นักวิทยาศาสตร์ข้อมูลดำเนินการตามขั้นตอนเพิ่มเติมเพื่อสร้างข้อมูลเพิ่มเติมตามจุดข้อมูลที่มีอยู่ (ข้อมูลเพิ่มเติมด้านล่าง)
คุณภาพของข้อมูลที่เก็บรวบรวมก็มีความสำคัญเช่นกัน การใช้ข้อมูลที่ไม่ถูกต้องหรือมีอคติอาจส่งผลต่อผลลัพธ์ของ ML ซึ่งอาจส่งผลตามมาอย่างมาก โดยเฉพาะในด้านต่างๆ เช่น การเงิน การดูแลสุขภาพ และความยุติธรรมทางอาญา มีเทคนิคที่ช่วยให้ข้อมูลสามารถแก้ไขข้อผิดพลาดและความเอนเอียงได้ อย่างไรก็ตาม อาจใช้ไม่ได้กับชุดข้อมูลที่เบ้โดยเนื้อแท้ เมื่อคุณรู้ว่าอะไรทำให้ข้อมูล "ดี" คุณต้องตัดสินใจว่าจะรวบรวมอย่างไรและจะหาได้จากที่ใด มีหลายกลยุทธ์สำหรับสิ่งนั้น
- การรวบรวมข้อมูลจากแหล่งภายใน: หากคุณมีข้อมูลที่เก็บไว้ในคลังข้อมูลองค์กรของคุณ คุณสามารถใช้ข้อมูลนั้นเพื่อฝึกอัลกอริทึม ML ข้อมูลนี้อาจรวมถึงธุรกรรมการขาย การโต้ตอบกับลูกค้า ข้อมูลจากแพลตฟอร์มโซเชียลมีเดีย และข้อมูลจากแหล่งอื่นๆ
- การรวบรวมข้อมูลจากแหล่งข้อมูลภายนอก: คุณสามารถเปิดใช้แหล่งข้อมูลสาธารณะ เช่น พอร์ทัลข้อมูลของรัฐบาล ที่เก็บข้อมูลทางวิชาการ และชุมชนการแบ่งปันข้อมูล เช่น Kaggle, UCI Machine Learning Repository หรือ Google Dataset Search
- การขูดเว็บ: เทคนิคนี้เกี่ยวข้องกับการดึงข้อมูลจากเว็บไซต์โดยใช้เครื่องมืออัตโนมัติ วิธีการนี้อาจเป็นประโยชน์สำหรับการรวบรวมข้อมูลจากแหล่งที่ไม่สามารถเข้าถึงได้ด้วยวิธีอื่น เช่น บทวิจารณ์ผลิตภัณฑ์ บทความข่าว และโซเชียลมีเดีย
- แบบสำรวจ: วิธีการนี้สามารถใช้เพื่อรวบรวมจุดข้อมูลเฉพาะจากกลุ่มเป้าหมายเฉพาะ มีประโยชน์อย่างยิ่งสำหรับการรวบรวมข้อมูลเกี่ยวกับการตั้งค่าหรือพฤติกรรมของผู้ใช้
อย่างไรก็ตาม บางครั้งกลยุทธ์เหล่านี้ไม่ได้ให้ข้อมูลเพียงพอ เมื่อเป็นเช่นนั้น คุณสามารถชดเชยการขาดจุดข้อมูลด้วยเทคนิคเหล่านี้
- การเพิ่มข้อมูล: วิธีนี้ช่วยให้คุณสร้างข้อมูลได้มากขึ้นจากตัวอย่างที่มีอยู่โดยการแปลงข้อมูลด้วยวิธีต่างๆ เช่น การหมุน การแปล หรือการปรับขนาด
- การเรียนรู้แบบแอคทีฟ: สิ่งนี้ทำให้คุณสามารถเลือกตัวอย่างข้อมูลที่ให้ข้อมูลมากที่สุดสำหรับการติดฉลากโดยผู้เชี่ยวชาญที่เป็นมนุษย์
- การเรียนรู้การถ่ายโอน: สิ่งนี้เกี่ยวข้องกับการใช้อัลกอริทึม ML ที่ฝึกไว้ล่วงหน้าซึ่งใช้สำหรับการแก้ปัญหางานที่เกี่ยวข้องเป็นจุดเริ่มต้นสำหรับการฝึกโมเดล ML ใหม่ ตามด้วยการปรับแต่งโมเดลใหม่อย่างละเอียดบนข้อมูลใหม่
- การแบ่งปันข้อมูลร่วมกัน: สิ่งนี้เกี่ยวข้องกับการทำงานร่วมกับนักวิจัยและองค์กรอื่น ๆ เพื่อรวบรวมและแบ่งปันข้อมูลเพื่อเป้าหมายร่วมกัน
การล้างข้อมูล
ขั้นตอนต่อไปในการเตรียมข้อมูลสำหรับ ML คือการทำความสะอาด การล้างข้อมูลเกี่ยวข้องกับการค้นหาและแก้ไขข้อผิดพลาด ความไม่สอดคล้องกัน และค่าที่ขาดหายไป มีหลายวิธีในการล้างข้อมูล
การจัดการข้อมูลที่ขาดหายไป
ค่าที่หายไปเป็นปัญหาทั่วไปใน ML สามารถจัดการได้โดยการใส่ข้อมูล (คิดว่า: การเติมค่าที่ขาดหายไปด้วยข้อมูลที่คาดการณ์หรือประมาณการ) การแก้ไข (การหาค่าที่ขาดหายไปจากจุดข้อมูลโดยรอบ) หรือการลบ (เพียงแค่ลบแถวหรือคอลัมน์ที่มีค่าที่ขาดหายไปจากชุดข้อมูล)
การจัดการค่าผิดปกติ
ค่าผิดปกติคือจุดข้อมูลที่แตกต่างจากชุดข้อมูลที่เหลืออย่างมาก ค่าผิดปกติอาจเกิดขึ้นเนื่องจากข้อผิดพลาดในการวัด ข้อผิดพลาดในการป้อนข้อมูล หรือเพียงเพราะค่าผิดปกตินั้นแสดงถึงการสังเกตที่ผิดปกติหรือรุนแรง ตัวอย่างเช่น ในชุดข้อมูลเงินเดือนพนักงาน ค่าผิดปกติอาจเป็นพนักงานที่มีรายได้มากหรือน้อยกว่าคนอื่นๆ ค่าผิดปกติสามารถจัดการได้โดยการลบออก แปลงค่าเพื่อลดผลกระทบ ชนะค่า (ลองนึกภาพ: แทนที่ค่าที่มากเกินไปด้วยค่าที่ใกล้ที่สุดที่อยู่ภายในช่วงปกติของการกระจาย) หรือถือว่าข้อมูลเหล่านั้นเป็นชั้นข้อมูลที่แยกจากกัน
การลบรายการที่ซ้ำกัน
อีกขั้นตอนหนึ่งในการเตรียมข้อมูลสำหรับ ML คือการลบข้อมูลที่ซ้ำกัน การทำซ้ำไม่เพียงแต่ทำให้การคาดคะเน ML คลาดเคลื่อนเท่านั้น แต่ยังทำให้พื้นที่จัดเก็บเสียเปล่าและเพิ่มเวลาในการประมวลผล โดยเฉพาะอย่างยิ่งในชุดข้อมูลขนาดใหญ่ ในการลบข้อมูลที่ซ้ำกัน นักวิทยาศาสตร์ข้อมูลจะใช้เทคนิคการระบุข้อมูลซ้ำที่หลากหลาย (เช่น การจับคู่แบบตรงทั้งหมด การจับคู่แบบคลุมเครือ การแฮช หรือการเชื่อมโยงบันทึก) เมื่อระบุแล้ว สามารถทิ้งหรือรวมเข้าด้วยกันก็ได้ อย่างไรก็ตาม ในชุดข้อมูลที่ไม่สมดุล ความจริงแล้วสามารถรับข้อมูลที่ซ้ำกันได้สำหรับการแจกแจงแบบปกติ
การจัดการข้อมูลที่ไม่เกี่ยวข้อง
ข้อมูลที่ไม่เกี่ยวข้องหมายถึงข้อมูลที่ไม่เป็นประโยชน์หรือนำไปใช้ในการแก้ปัญหาได้ การจัดการข้อมูลที่ไม่เกี่ยวข้องสามารถช่วยลดสัญญาณรบกวนและปรับปรุงความแม่นยำในการทำนาย ในการระบุข้อมูลที่ไม่เกี่ยวข้อง ทีมข้อมูลสามารถใช้เทคนิคต่างๆ เช่น การวิเคราะห์องค์ประกอบหลัก การวิเคราะห์สหสัมพันธ์ หรือเพียงอาศัยความรู้ในโดเมนของตน เมื่อระบุแล้ว จุดข้อมูลดังกล่าวจะถูกลบออกจากชุดข้อมูลที่เกี่ยวข้อง
การจัดการข้อมูลที่ไม่ถูกต้อง
การเตรียมข้อมูลสำหรับแมชชีนเลิร์นนิงต้องรวมถึงการจัดการข้อมูลที่ไม่ถูกต้องและผิดพลาดด้วย เทคนิคทั่วไปในการจัดการกับข้อมูลดังกล่าว ได้แก่ การแปลงข้อมูล (การเปลี่ยนแปลงข้อมูลเพื่อให้เป็นไปตามเกณฑ์ที่ตั้งไว้) หรือการลบจุดข้อมูลที่ไม่ถูกต้องออกทั้งหมด
การจัดการข้อมูลที่ไม่สมดุล
ชุดข้อมูลที่ไม่สมดุลคือชุดข้อมูลที่จำนวนจุดข้อมูลในคลาสหนึ่งต่ำกว่าจำนวนจุดข้อมูลในคลาสอื่นอย่างมาก ซึ่งอาจส่งผลให้เกิดโมเดลที่มีอคติซึ่งให้ความสำคัญกับกลุ่มชนกลุ่มใหญ่ ในขณะที่ไม่สนใจกลุ่มชนกลุ่มน้อย เพื่อจัดการกับปัญหา ทีมข้อมูลอาจใช้เทคนิคต่างๆ เช่น การสุ่มตัวอย่างซ้ำ (ไม่ว่าจะเป็นการสุ่มตัวอย่างมากเกินไปสำหรับคลาสชนกลุ่มน้อยหรือการสุ่มตัวอย่างต่ำกว่าคลาสส่วนใหญ่เพื่อสร้างสมดุลของการกระจายข้อมูล) การสร้างข้อมูลสังเคราะห์ (การสร้างจุดข้อมูลเพิ่มเติมสำหรับคลาสชนกลุ่มน้อยแบบสังเคราะห์) ค่าใช้จ่าย - การเรียนรู้ที่ละเอียดอ่อน (กำหนดน้ำหนักที่สูงขึ้นให้กับชั้นเรียนของชนกลุ่มน้อยในระหว่างการฝึกอบรม) และการเรียนรู้ทั้งมวล (รวมแบบจำลองหลาย ๆ แบบที่ได้รับการฝึกฝนในชุดย่อยข้อมูลที่แตกต่างกันโดยใช้อัลกอริธึมที่แตกต่างกัน)
กิจกรรมเหล่านี้ช่วยให้มั่นใจได้ว่าข้อมูลการฝึกอบรมมีความถูกต้อง สมบูรณ์ และสอดคล้องกัน แม้ว่าจะเป็นความสำเร็จที่ยิ่งใหญ่ แต่การสร้างโมเดล ML ที่เชื่อถือได้นั้นยังไม่เพียงพอ ดังนั้น ขั้นตอนต่อไปในการเตรียมข้อมูลสำหรับ ML จึงเกี่ยวข้องกับการตรวจสอบให้แน่ใจว่าจุดข้อมูลในชุดข้อมูลการฝึกอบรมเป็นไปตามกฎและมาตรฐานเฉพาะ และขั้นตอนนั้นในกระบวนการจัดการข้อมูลเรียกว่าการแปลงข้อมูล
การแปลงข้อมูล
ในระหว่างขั้นตอนการแปลงข้อมูล คุณจะแปลงข้อมูลดิบเป็นรูปแบบที่เหมาะสมสำหรับอัลกอริทึม ML ซึ่งจะช่วยให้มั่นใจได้ถึงประสิทธิภาพและความแม่นยำของอัลกอริทึมที่สูงขึ้น
ผู้เชี่ยวชาญของเราในการเตรียมข้อมูลสำหรับ ML กล่าวถึงเทคนิคการแปลงข้อมูลทั่วไปดังต่อไปนี้
ขูดหินปูน
ในชุดข้อมูล คุณลักษณะที่แตกต่างกันอาจใช้หน่วยการวัดที่แตกต่างกัน ตัวอย่างเช่น ชุดข้อมูลอสังหาริมทรัพย์อาจรวมถึงข้อมูลเกี่ยวกับจำนวนห้องในแต่ละทรัพย์สิน (ตั้งแต่หนึ่งถึงสิบ) และราคา (ตั้งแต่ $50,000 ถึง $1,000,000) หากไม่มีการปรับขนาด มันเป็นเรื่องท้าทายที่จะรักษาสมดุลระหว่างความสำคัญของฟีเจอร์ทั้งสอง อัลกอริทึมอาจให้ความสำคัญมากเกินไปกับฟีเจอร์ที่มีค่ามากกว่า ซึ่งในกรณีนี้คือราคา และไม่เพียงพอกับฟีเจอร์ที่มีค่าน้อยกว่า การปรับมาตราส่วนช่วยแก้ปัญหานี้โดยการแปลงจุดข้อมูลทั้งหมดให้พอดีกับช่วงที่ระบุ โดยทั่วไปคือระหว่าง 0 ถึง 1 ตอนนี้คุณสามารถเปรียบเทียบตัวแปรต่างๆ ได้อย่างเท่าเทียมกัน
การทำให้เป็นมาตรฐาน
อีกเทคนิคหนึ่งที่ใช้ในการเตรียมข้อมูลสำหรับ ML คือการทำให้เป็นมาตรฐาน มันคล้ายกับการปรับขนาด อย่างไรก็ตาม ในขณะที่การปรับสเกลเปลี่ยนช่วงของชุดข้อมูล การทำให้เป็นมาตรฐานจะเปลี่ยนการกระจาย
การเข้ารหัส
ข้อมูลหมวดหมู่มีค่าจำกัด ตัวอย่างเช่น สี รุ่นรถ หรือพันธุ์สัตว์ เนื่องจากโดยทั่วไปแล้วอัลกอริทึม ML จะทำงานร่วมกับข้อมูลตัวเลข ข้อมูลที่เป็นหมวดหมู่จึงต้องได้รับการเข้ารหัสเพื่อใช้เป็นอินพุต การเข้ารหัสจึงหมายถึงการแปลงข้อมูลหมวดหมู่เป็นรูปแบบตัวเลข มีเทคนิคการเข้ารหัสหลายแบบให้เลือก ได้แก่ การเข้ารหัสแบบ one-hot การเข้ารหัสแบบลำดับ และการเข้ารหัสฉลาก
ดุลยพินิจ
การแยกย่อยเป็นวิธีการเตรียมข้อมูลสำหรับ ML ที่ช่วยให้สามารถแปลงตัวแปรต่อเนื่อง เช่น เวลา อุณหภูมิ หรือน้ำหนัก ให้เป็นตัวแปรแยกได้ พิจารณาชุดข้อมูลที่มีข้อมูลเกี่ยวกับส่วนสูงของผู้คน ความสูงของแต่ละคนสามารถวัดเป็นตัวแปรต่อเนื่องเป็นฟุตหรือเซนติเมตร อย่างไรก็ตาม สำหรับอัลกอริทึม ML บางอย่าง อาจจำเป็นต้องแยกข้อมูลนี้ออกเป็นหมวดหมู่ เช่น "สั้น" "ปานกลาง" และ "สูง" นี่คือสิ่งที่แยกแยะไม่ออก ช่วยลดความซับซ้อนของชุดข้อมูลการฝึกอบรมและลดความซับซ้อนของปัญหา วิธีการทั่วไปในการแยกย่อยครอบคลุมการแบ่งตามคลัสเตอร์และการแยกตามต้นไม้การตัดสินใจ
การลดขนาด
การลดขนาดหมายถึงการจำกัดจำนวนคุณลักษณะหรือตัวแปรในชุดข้อมูล และสงวนไว้เฉพาะข้อมูลที่เกี่ยวข้องกับการแก้ปัญหา พิจารณา ตัวอย่างเช่น ชุดข้อมูลที่ประกอบด้วยข้อมูลเกี่ยวกับประวัติการซื้อของลูกค้า โดยจะแสดงวันที่ซื้อ สินค้าที่ซื้อ ราคาของสินค้า และสถานที่ที่เกิดการซื้อ การลดมิติของชุดข้อมูลนี้ เราละเว้นคุณสมบัติที่สำคัญที่สุด เช่น สินค้าที่ซื้อและราคา การลดมิติสามารถทำได้ด้วยเทคนิคที่หลากหลาย เทคนิคบางอย่างคือการวิเคราะห์องค์ประกอบหลัก การวิเคราะห์การจำแนกเชิงเส้น และการฝังเพื่อนบ้านแบบสุ่มแบบกระจายค่า t
การแปลงบันทึก
อีกวิธีหนึ่งในการเตรียมข้อมูลสำหรับ ML การแปลงบันทึกหมายถึงการใช้ฟังก์ชันลอการิทึมกับค่าของตัวแปรในชุดข้อมูล มักใช้เมื่อข้อมูลการฝึกมีความเบ้มากหรือมีค่าที่หลากหลาย การใช้ฟังก์ชันลอการิทึมสามารถช่วยให้การกระจายข้อมูลมีความสมมาตรมากขึ้น
เมื่อพูดถึงการแปลงข้อมูล เราควรพูดถึงวิศวกรรมคุณลักษณะด้วย แม้ว่าจะเป็นรูปแบบหนึ่งของการแปลงข้อมูล แต่วิศวกรรมคุณลักษณะเป็นมากกว่าเทคนิคหรือขั้นตอนในกระบวนการเตรียมข้อมูลสำหรับ ML ซึ่งหมายถึงการเลือก การแปลง และสร้างคุณลักษณะในชุดข้อมูล วิศวกรรมคุณลักษณะเกี่ยวข้องกับการผสมผสานระหว่างเทคนิคทางสถิติ คณิตศาสตร์ และการคำนวณ รวมถึงการใช้แบบจำลอง ML เพื่อสร้างคุณลักษณะที่รวบรวมข้อมูลที่เกี่ยวข้องมากที่สุดในข้อมูล
โดยปกติจะเป็นกระบวนการวนซ้ำซึ่งต้องมีการทดสอบและประเมินเทคนิคต่างๆ และการผสมผสานคุณลักษณะต่างๆ เพื่อให้ได้แนวทางที่ดีที่สุดในการแก้ปัญหา
การแยกข้อมูล
ขั้นตอนต่อไปในกระบวนการเตรียมข้อมูลสำหรับ ML คือการแบ่งข้อมูลที่รวบรวมทั้งหมดออกเป็นส่วนย่อย ซึ่งเป็นกระบวนการที่เรียกว่าการแยกข้อมูล โดยทั่วไปแล้ว ข้อมูลจะถูกแบ่งออกเป็นชุดข้อมูลการฝึกอบรม การตรวจสอบความถูกต้อง และการทดสอบ
- ชุดข้อมูลการฝึกอบรมใช้เพื่อสอนโมเดล ML ให้รู้จักรูปแบบและความสัมพันธ์ระหว่างอินพุตและตัวแปรเป้าหมาย โดยทั่วไปแล้วชุดข้อมูลนี้จะมีขนาดใหญ่ที่สุด
- ชุดข้อมูลการตรวจสอบคือชุดย่อยของข้อมูลที่ใช้ในการประเมินประสิทธิภาพของแบบจำลองในระหว่างการฝึกอบรม ช่วยปรับแต่งโมเดลอย่างละเอียดโดยการปรับไฮเปอร์พารามิเตอร์ (ลองนึกถึง: พารามิเตอร์ของกระบวนการฝึกอบรมที่ตั้งค่าด้วยตนเองก่อนการฝึก เช่น อัตราการเรียนรู้ ความแรงของการทำให้เป็นมาตรฐาน หรือจำนวนเลเยอร์ที่ซ่อนอยู่) ชุดข้อมูลการตรวจสอบยังช่วยป้องกันไม่ให้ข้อมูลการฝึกอบรมมากเกินไป
- ชุดข้อมูลการทดสอบคือชุดย่อยของข้อมูลที่ใช้เพื่อประเมินประสิทธิภาพของโมเดลที่ผ่านการฝึกอบรม เป้าหมายคือการประเมินความถูกต้องของแบบจำลองจากข้อมูลใหม่ที่มองไม่เห็น ชุดข้อมูลการทดสอบจะใช้เพียงครั้งเดียว — หลังจากที่โมเดลได้รับการฝึกอบรมและปรับแต่งชุดข้อมูลการฝึกอบรมและการตรวจสอบอย่างละเอียดแล้ว
ด้วยการแยกข้อมูล เราสามารถประเมินว่าโมเดล ML ทำงานได้ดีเพียงใดกับข้อมูลที่ไม่เคยเห็นมาก่อน เมื่อไม่มีการแยก มีโอกาสที่โมเดลจะทำงานได้ไม่ดีกับข้อมูลใหม่ สิ่งนี้สามารถเกิดขึ้นได้เนื่องจากแบบจำลองอาจจดจำจุดข้อมูลแทนที่จะเรียนรู้รูปแบบและสรุปเป็นข้อมูลใหม่
มีหลายวิธีในการแยกข้อมูล และตัวเลือกที่เหมาะสมที่สุดขึ้นอยู่กับปัญหาที่กำลังแก้ไขและคุณสมบัติของชุดข้อมูล ผู้เชี่ยวชาญของเราในการเตรียมข้อมูลสำหรับ ML กล่าวว่ามักต้องมีการทดลองจากทีมข้อมูลเพื่อกำหนดกลยุทธ์การแยกที่มีประสิทธิภาพมากที่สุด ต่อไปนี้เป็นกลยุทธ์ทั่วไป
- การสุ่มตัวอย่าง: ด้วยกลยุทธ์นี้ ข้อมูลจะถูกแบ่งแบบสุ่ม วิธีการนี้มักใช้กับชุดข้อมูลขนาดใหญ่ที่เป็นตัวแทนของประชากรที่กำลังสร้างแบบจำลอง อีกทางหนึ่ง จะใช้เมื่อไม่มีความสัมพันธ์ที่ทราบในชุดข้อมูล ซึ่งอาจต้องใช้แนวทางที่เชี่ยวชาญมากขึ้น
- การสุ่มตัวอย่างแบบแบ่งชั้นภูมิ: ในกลยุทธ์นี้ ข้อมูลจะถูกแบ่งออกเป็นชุดย่อยตามป้ายกำกับคลาสหรือลักษณะอื่นๆ ตามด้วยการสุ่มตัวอย่างชุดย่อยเหล่านี้ กลยุทธ์นี้ใช้กับชุดข้อมูลที่ไม่สมดุลซึ่งมีจำนวนค่าในคลาสหนึ่งมากกว่าจำนวนของค่าอื่นๆ อย่างมีนัยสำคัญ ในกรณีดังกล่าว การสุ่มตัวอย่างแบบแบ่งชั้นจะช่วยให้แน่ใจว่าชุดข้อมูลการฝึกและการทดสอบมีการแจกแจงค่าที่ใกล้เคียงกันจากแต่ละคลาส
- การสุ่มตัวอย่างตามเวลา: กลยุทธ์นี้ใช้เมื่อข้อมูลที่รวบรวมจนถึงเวลาหนึ่งสร้างชุดข้อมูลการฝึกอบรม ในขณะที่ข้อมูลที่รวบรวมหลังจากจุดที่กำหนดจะถูกสร้างขึ้นเป็นชุดข้อมูลทดสอบ วิธีการนี้ใช้เมื่อข้อมูลถูกรวบรวมเป็นระยะเวลานาน ตัวอย่างเช่น ในชุดข้อมูลทางการเงินหรือทางการแพทย์ เนื่องจากช่วยให้มั่นใจได้ว่าแบบจำลองสามารถคาดการณ์ข้อมูลในอนาคตได้อย่างแม่นยำ
- การตรวจสอบข้าม: ด้วยกลยุทธ์นี้ ข้อมูลจะถูกแบ่งออกเป็นหลายชุดย่อยหรือหลายเท่า การพับบางส่วนใช้เพื่อฝึกโมเดล ในขณะที่ส่วนที่เหลือใช้สำหรับการประเมินประสิทธิภาพ กระบวนการนี้ทำซ้ำหลายครั้งโดยแต่ละพับทำหน้าที่เป็นข้อมูลการทดสอบอย่างน้อยหนึ่งครั้ง มีเทคนิคการตรวจสอบข้ามหลายแบบ ตัวอย่างเช่น การตรวจสอบความถูกต้องข้ามแบบ k-fold และการตรวจสอบความถูกต้องแบบข้ามขั้นตอนแบบ Leave-one-out การตรวจสอบข้ามมักจะให้การประมาณประสิทธิภาพของแบบจำลองที่แม่นยำกว่าการประเมินในชุดข้อมูลการทดสอบชุดเดียว
ในหมายเหตุสุดท้าย
การเตรียมข้อมูลอย่างเหมาะสมสำหรับ ML เป็นสิ่งสำคัญในการพัฒนาโซลูชันแมชชีนเลิร์นนิงที่แม่นยำและเชื่อถือได้ ที่ ITRex เราเข้าใจถึงความท้าทายในการเตรียมข้อมูลและความสำคัญของการมีชุดข้อมูลที่มีคุณภาพสำหรับกระบวนการ ML ที่ประสบความสำเร็จ
หากคุณต้องการเพิ่มศักยภาพของข้อมูลของคุณผ่าน ML โปรดติดต่อทีม ITRex ผู้เชี่ยวชาญของเราจะให้ความช่วยเหลือในการรวบรวม ทำความสะอาด และแปลงข้อมูลของคุณ
บทความนี้เผยแพร่ครั้งแรกบนเว็บไซต์ itrex