การเลือกคุณสมบัติในการเรียนรู้ของเครื่อง: แรงจูงใจ
บทความสั้นๆ นี้เป็นบทความแรกของชุดเนื้อหาที่อธิบายถึงเทคนิคการเลือกคุณลักษณะ ฉันได้เริ่มต้นด้วยการแนะนำที่เป็นมิตรและนำเสนอเหตุผลอันทรงพลังเบื้องหลังกระบวนการเลือกคุณสมบัติ ในบทความต่อๆ ไป ฉันจะพูดถึงวิธีการเลือกคุณลักษณะแต่ละวิธีโดยละเอียด
การเลือกคุณสมบัติคือกระบวนการเลือกชุดย่อยของคุณสมบัติที่เกี่ยวข้อง (ตัวแปร ตัวทำนาย) จากคุณสมบัติทั้งหมดของระดับในชุดข้อมูลเพื่อสร้างอัลกอริทึมการเรียนรู้ของเครื่อง เมื่อพิจารณาจากชุดข้อมูลเริ่มต้นซึ่งโดยปกติจะมีตัวแปรจำนวนมาก เราจะทำอย่างไรเพื่อเลือกกลุ่มคุณลักษณะที่มีความสำคัญในเวลาที่ทำการคาดคะเน มีขั้นตอนหรือเทคนิคต่างๆ มากมายที่เราสามารถนำมาใช้เป็นส่วนหนึ่งของกระบวนการคัดเลือกคุณสมบัติได้
ก่อนจะดำดิ่งสู่เทคนิคการเลือกคุณลักษณะ เหตุใดเราจึงเลือกคุณลักษณะตั้งแต่เริ่มต้น นี่คือเหตุผลบางประการ
- แบบจำลองที่เรียบง่ายจะตีความได้ง่ายกว่า ผู้ใช้โมเดลจะเข้าใจเอาต์พุตของโมเดลที่ใช้ตัวแปร 10 ตัวได้ง่ายกว่าเอาต์พุตของโมเดลที่ใช้ตัวแปร 100 ตัว
- ระยะเวลาการฝึกที่สั้นลง การลดจำนวนตัวแปรที่ใช้ในการสร้างโมเดลแมชชีนเลิร์นนิงจะช่วยลดต้นทุนการคำนวณและทำให้การสร้างโมเดลเร็วขึ้น แต่ที่สำคัญกว่านั้น โมเดลที่เรียบง่ายกว่า ยังทำคะแนนได้เร็วกว่าแอปพลิเคชันอีกด้วย ซึ่งมีความสำคัญอย่างยิ่งหากโมเดลนั้นอยู่ในสภาพแวดล้อมที่ใช้งานจริงซึ่งการตัดสินใจจำเป็นต้องทำรองลงมา
- ปรับปรุงลักษณะทั่วไปโดยการลด overfitting บ่อยครั้งที่ตัวแปรหลายตัวเป็นสัญญาณรบกวนที่มีค่าการคาดการณ์เพียงเล็กน้อย อย่างไรก็ตาม โมเดลแมชชีนเลิร์นนิงจะเรียนรู้จากสัญญาณรบกวนนี้ซึ่งก่อให้เกิดการโอเวอร์ฟิตติ้งและลดการทำให้เป็นภาพรวม ด้วยการขจัดคุณลักษณะที่มีเสียงรบกวนที่ไม่เกี่ยวข้อง เราสามารถปรับปรุงการวางรูปแบบทั่วไปของโมเดลแมชชีนเลิร์นนิงได้อย่างมาก
- ง่ายต่อการใช้งานโดยนักพัฒนาซอฟต์แวร์ เมื่อนำโมเดลแมชชีนเลิร์นนิงไปใช้ บ่อยครั้งที่นักพัฒนาซอฟต์แวร์จำเป็นต้องเขียนโค้ดเพื่อเรียกตัวแปรที่ต้องป้อนลงในโมเดลเพื่อสร้างเอาต์พุต การเขียนโค้ดสำหรับ 10 ถึง 50 ตัวแปรจะเร็วกว่าการเขียนโค้ด 400 ตัวแปรมาก นอกจากนี้ โค้ดที่น้อยลงยังมีโอกาสเกิดบั๊กน้อยกว่า ดังนั้นจึงมีสภาพแวดล้อมที่ปลอดภัยกว่า
- ลดความเสี่ยงในการเกิดข้อผิดพลาดของข้อมูลระหว่างการใช้แบบจำลอง บ่อยครั้งที่บริษัทพึ่งพาการเรียกข้อมูลจากบุคคลที่สาม ซึ่งพวกเขาจะเลือกตัวแปรเพื่อส่งผ่านโมเดลแมชชีนเลิร์นนิง การลดการใช้จำนวนตัวแปรที่ใช้ในโมเดลแมชชีนเลิร์นนิงช่วยลดโอกาสที่ธุรกิจจะประสบกับข้อผิดพลาดในการรวบรวมและจัดเก็บข้อมูลของบุคคลที่สาม และรวมถึงข้อผิดพลาดที่อาจเกิดขึ้นในการรวบรวมข้อมูลที่อาจเกิดขึ้นภายในธุรกิจเดียวกัน
- ความซ้ำซ้อนของตัวแปร บ่อยครั้งที่คุณสมบัติภายในชุดข้อมูลมีความสัมพันธ์กันสูง คุณลักษณะที่สัมพันธ์กันสูงทำให้สาระสำคัญของข้อมูลเดียวกัน ดังนั้นจึงค่อนข้างซ้ำซ้อน เราสามารถเก็บอันหนึ่งไว้และนำส่วนที่เหลือทั้งหมดออกโดยไม่สูญเสียข้อมูล
- พฤติกรรมการเรียนรู้ที่ไม่ดีในพื้นที่มิติสูง ประสิทธิภาพของโมเดลแมชชีนเลิร์นนิงในอัลกอริทึมแบบทรีโดยเฉพาะนั้นได้รับการสนับสนุนจากพื้นที่คุณลักษณะที่ลดลง ซึ่งหมายความว่ามิติที่สูงทำให้ประสิทธิภาพต่ำในวิธีการแบบต้นไม้ ดังนั้นการลดพื้นที่คุณลักษณะจึงช่วยสร้างแบบจำลองที่แข็งแกร่งและคาดการณ์ได้มากขึ้น
อัลกอริทึมการเลือกคุณลักษณะสามารถมองได้ว่าเป็นการรวมกันของเทคนิคการค้นหาเพื่อเสนอชุดย่อยของคุณลักษณะใหม่ พร้อมกับการวัดวิวัฒนาการที่ให้คะแนนชุดย่อยของคุณลักษณะต่างๆ ตามหลักการแล้ว วิธีการเลือกคุณลักษณะจะค้นหาชุดย่อยที่เป็นไปได้ทั้งหมดของชุดค่าผสมคุณลักษณะที่สามารถรับได้จากชุดข้อมูลที่กำหนด และค้นหาชุดค่าผสมคุณลักษณะที่สร้างประสิทธิภาพของโมเดลแมชชีนเลิร์นนิงที่ดีที่สุด ในทางปฏิบัติ นี่ไม่ใช่ตัวเลือกเนื่องจากการคำนวณต้นทุน นอกจากนี้ ชุดย่อยของคุณสมบัติที่แตกต่างกันอาจสร้างประสิทธิภาพที่เหมาะสมที่สุดสำหรับอัลกอริทึมการเรียนรู้ของเครื่องที่แตกต่างกัน ซึ่งหมายความว่าไม่ได้มีเพียงชุดย่อยของคุณสมบัติเท่านั้น แต่อาจมีชุดย่อยของคุณสมบัติที่เหมาะสมที่สุดอีกมากมาย ทั้งนี้ขึ้นอยู่กับอัลกอริทึมการเรียนรู้ของเครื่องที่เราตั้งใจจะใช้ ดังนั้นตลอดหลายปีที่ผ่านมา วิธีการต่างๆ มากมายในการเลือกคุณสมบัติได้รับการพัฒนาขึ้นเพื่อพยายามรองรับคำเตือนและข้อจำกัดต่างๆ ให้ได้มากที่สุดเท่าที่จะเป็นไปได้ ตลอดทั้งชุดบทความนี้ ฉันจะอธิบายวิธีการต่างๆ มากมายสำหรับการเลือกคุณลักษณะ ข้อดีและข้อเสียคืออะไร และวิธีการนำไปใช้ในทางปฏิบัติโดยใช้ตัวอย่างชุดข้อมูลทางธุรกิจ