การเลือกคุณลักษณะและการออกแบบคุณลักษณะแตกต่างกันอย่างไร?
การสร้างคุณลักษณะ (Feature engineering) สร้างตัวแปรใหม่จากข้อมูลดิบผ่านการแปลง การผสมผสาน หรือการเข้ารหัส ส่วนการเลือกคุณลักษณะ (Feature selection) จะกรองตัวแปรเหล่านั้น รวมถึงตัวแปรดั้งเดิม เพื่อเก็บเฉพาะตัวแปรที่มีประโยชน์ที่สุด ทั้งสองกระบวนการนี้ทำงานอยู่คนละด้านของกระบวนการสร้างคุณลักษณะ
ฉันควรทำการคัดเลือกคุณลักษณะก่อนหรือหลังการสร้างคุณลักษณะ?
โดยปกติแล้ว การสร้างคุณลักษณะ (Feature engineering) จะทำเป็นอันดับแรก เพราะเป็นการสร้างคุณลักษณะที่เป็นไปได้ จากนั้นจึงทำการคัดเลือกเพื่อคัดกรองคุณลักษณะเหล่านั้น การคัดเลือกก่อนอาจทำให้คุณทิ้งตัวแปรดิบที่อาจมีประโยชน์เมื่อได้รับการแปลงแล้ว
วิธีการเลือกคุณลักษณะแบบใดที่ได้ผลดีที่สุด?
ไม่มีวิธีการใดที่ดีที่สุดเพียงวิธีเดียว วิธีการกรองข้อมูล เช่น ข้อมูลร่วม (mutual information) นั้นรวดเร็วและไม่ขึ้นกับโมเดล วิธีการแบบห่อหุ้ม (wrapper methods) เช่น การกำจัดคุณลักษณะแบบเรียกซ้ำ (recursive feature elimination) นั้นแม่นยำกว่าแต่ช้ากว่า วิธีการแบบฝังตัว (embedded methods) เช่น Lasso ผสมผสานความเร็วและความแม่นยำเข้าด้วยกัน การเลือกวิธีการที่เหมาะสมขึ้นอยู่กับขนาดของชุดข้อมูลและโมเดลที่คุณใช้
การออกแบบคุณลักษณะ (Feature Engineering) สามารถช่วยเพิ่มความแม่นยำของโมเดลได้อย่างมีนัยสำคัญหรือไม่?
ใช่ บางครั้งก็เห็นผลอย่างมาก ฟีเจอร์ที่ออกแบบมาอย่างดีเพียงอย่างเดียว เช่น การดึงเวลาจากข้อมูลที่บันทึกไว้เพื่อใช้ในการพยากรณ์สภาพการจราจร สามารถเพิ่มความแม่นยำของโมเดลได้มากกว่าการเปลี่ยนอัลกอริทึมหรือการปรับค่าพารามิเตอร์เสียอีก
การเลือกคุณลักษณะช่วยลดปัญหาการโอเวอร์ฟิตติ้งได้หรือไม่?
โดยส่วนใหญ่แล้ว การเลือกคุณลักษณะจะช่วยลดโอกาสที่แบบจำลองจะจดจำรูปแบบในข้อมูลฝึกฝนที่ไม่สามารถนำไปใช้ได้ทั่วไป โดยการกำจัดตัวแปรที่ไม่จำเป็นหรือซ้ำซ้อนออกไป ซึ่งเป็นประโยชน์อย่างยิ่งเมื่อคุณมีคุณลักษณะจำนวนมากเมื่อเทียบกับจำนวนตัวอย่าง
เทคนิคการสร้างคุณลักษณะที่ใช้กันทั่วไปมีอะไรบ้าง?
เทคนิคที่นิยมใช้ ได้แก่ การเข้ารหัสแบบวันฮอต (one-hot encoding) สำหรับตัวแปรเชิงหมวดหมู่ การแปลงลอการิทึมหรือรากที่สองสำหรับข้อมูลที่มีการกระจายแบบเบ้ พจน์ปฏิสัมพันธ์ระหว่างตัวแปร การสกัดคุณลักษณะวันที่และเวลา วิธีการแปลงข้อความเป็นเวกเตอร์ เช่น TF-IDF และการฝังข้อมูลที่เรียนรู้จากโครงข่ายประสาทเทียม
การสร้างฟีเจอร์อัตโนมัติมีความน่าเชื่อถือหรือไม่?
เครื่องมืออย่าง Featuretools และ AutoFE สามารถสร้างคุณลักษณะที่เป็นไปได้จำนวนมากได้อย่างรวดเร็ว แต่ผลลัพธ์เหล่านั้นยังคงต้องการการตรวจสอบจากมนุษย์ คุณลักษณะที่สร้างขึ้นจำนวนมากอาจซ้ำซ้อนหรือไม่เกี่ยวข้อง ดังนั้นจึงมักต้องมีการคัดเลือกในภายหลัง
การเลือกคุณลักษณะช่วยเพิ่มความสามารถในการตีความได้อย่างไร?
จำนวนตัวแปรที่น้อยลงหมายถึงแบบจำลองที่เรียบง่ายกว่าและอธิบายได้ง่ายกว่า ในอุตสาหกรรมที่มีการกำกับดูแลอย่างเข้มงวด เช่น การธนาคารหรือการดูแลสุขภาพ การสามารถชี้ให้เห็นถึงตัวแปรที่มีความหมายเพียงไม่กี่ตัวนั้น มักเป็นข้อกำหนดทางกฎหมายหรือการปฏิบัติงาน
การสร้างฟีเจอร์สามารถทดแทนการเลือกฟีเจอร์ได้หรือไม่?
ไม่จริงเลย แม้ว่าคุณจะสร้างฟีเจอร์ใหม่ที่แข็งแกร่งได้แล้ว คุณก็อาจยังมีฟีเจอร์ที่ซ้ำซ้อนหรือมีค่าต่ำอยู่ดี การคัดเลือกจะช่วยให้โมเดลสุดท้ายใช้เฉพาะฟีเจอร์ที่มีประโยชน์อย่างแท้จริงเท่านั้น ซึ่งจะช่วยให้การฝึกฝนมีประสิทธิภาพและการคาดการณ์มีความเสถียร
โมเดลแบบต้นไม้จำเป็นต้องมีการเลือกคุณลักษณะหรือไม่?
แบบจำลองโครงสร้างต้นไม้ เช่น Random Forests และ Gradient Boosting ทนทานต่อคุณลักษณะที่ไม่เกี่ยวข้องได้มากกว่าแบบจำลองเชิงเส้น แต่ก็ยังได้รับประโยชน์จากการคัดเลือก การลบตัวแปรที่ไม่จำเป็นออกจะช่วยเร่งความเร็วในการฝึกอบรมและสามารถปรับปรุงประสิทธิภาพในชุดข้อมูลขนาดเล็กได้