อันไหนที่แรก: การเปรียบเทียบอัลกอริทึม, การเลือกคุณสมบัติ, การปรับพารามิเตอร์?


11

เมื่อพยายามที่จะทำเช่นการจัดหมวดหมู่วิธีการของฉันในปัจจุบันคือการ

  1. ลองใช้อัลกอริทึมต่าง ๆ ก่อนแล้วทำการเปรียบเทียบ
  2. ดำเนินการเลือกคุณสมบัติของอัลกอริทึมที่ดีที่สุดจากด้านบน 1
  3. ปรับพารามิเตอร์โดยใช้คุณสมบัติและอัลกอริทึมที่เลือก

อย่างไรก็ตามฉันมักไม่สามารถโน้มน้าวตัวเองได้ว่าอาจมีอัลกอริทึมที่ดีกว่าถ้าเลือกอัลกอริธึมอื่น ๆ ด้วยพารามิเตอร์ที่ดีที่สุด / คุณสมบัติที่เหมาะสมที่สุด ในเวลาเดียวกันการค้นหาคุณสมบัติอัลกอริทึม * พารามิเตอร์ * ทั้งหมดใช้เวลานานเกินไป

มีข้อเสนอแนะเกี่ยวกับวิธีการ / ลำดับที่ถูกต้องหรือไม่?

คำตอบ:


8

ผมถือว่าคุณหมายถึงการเลือกคุณลักษณะเป็นวิศวกรรมคุณลักษณะ กระบวนการที่ฉันมักจะทำตามและฉันเห็นบางคนทำคือ

  1. คุณสมบัติวิศวกรรม
  2. ลองใช้อัลกอริทึมสองสามอันซึ่งมักจะเป็นคนที่มีประสิทธิภาพสูงเช่น RandomForest ต้นไม้ไล่ระดับสีไล่โทนสีเครือข่ายที่เป็นกลางหรือ SVM ในฟีเจอร์

    2.1 ทำการปรับแต่งพารามิเตอร์อย่างง่ายเช่นการค้นหากริดในช่วงของพารามิเตอร์ขนาดเล็ก

หากผลลัพธ์ของขั้นตอนที่ 2 ไม่เป็นที่น่าพอใจให้กลับไปที่ขั้นตอนที่ 1 เพื่อสร้างคุณลักษณะเพิ่มเติมหรือลบคุณลักษณะที่ซ้ำซ้อนและรักษาคุณสมบัติที่ดีที่สุดไว้โดยทั่วไปผู้คนมักจะเรียกการเลือกคุณลักษณะนี้ หากแนวคิดใหม่หมดไปลองใช้อัลกอริธึมเพิ่มเติม

หากผลลัพธ์ไม่เป็นไรหรือใกล้เคียงกับสิ่งที่คุณต้องการให้ย้ายไปที่ขั้นตอนที่ 3

  1. การปรับพารามิเตอร์ที่กว้างขวาง

เหตุผลในการทำเช่นนี้คือการจัดหมวดหมู่เป็นเรื่องเกี่ยวกับวิศวกรรมฟีเจอร์และถ้าคุณไม่รู้จักตัวแยกประเภทที่ทรงพลังอย่างเหลือเชื่อเช่นการเรียนรู้เชิงลึกที่ปรับแต่งสำหรับปัญหาเฉพาะเช่น Computer Vision การสร้างคุณสมบัติที่ดีเป็นกุญแจสำคัญ การเลือกลักษณนามเป็นสิ่งสำคัญ แต่ไม่สำคัญ ตัวแยกประเภททั้งหมดที่กล่าวมาข้างต้นนั้นมีความคล้ายคลึงกันในแง่ของประสิทธิภาพและส่วนใหญ่ตัวแยกประเภทที่ดีที่สุดจะกลายเป็นหนึ่งในนั้น

การปรับพารามิเตอร์สามารถเพิ่มประสิทธิภาพในบางกรณีค่อนข้างมาก แต่ถ้าไม่มีคุณสมบัติที่ดีการปรับจูนก็ไม่ช่วยอะไรมาก โปรดทราบว่าคุณมีเวลาเสมอสำหรับการปรับพารามิเตอร์ นอกจากนี้ยังไม่มีจุดปรับพารามิเตอร์อย่างกว้างขวางจากนั้นคุณค้นพบคุณลักษณะใหม่และทำซ้ำสิ่งทั้งหมด


2

เฮ้ฉันเพิ่งเห็นคำถามของคุณ มันผิดอย่างสิ้นเชิงที่จะทำการเลือกคุณสมบัติก่อนแล้วจึงปรับรุ่นโดยใช้การตรวจสอบความถูกต้องข้าม ในองค์ประกอบของการเรียนรู้ทางสถิติและโพสต์บล็อกนี้มีการกล่าวถึงอย่างชัดเจนว่า: วิธี CV จะไม่เอนเอียงเฉพาะเมื่อการสร้างแบบจำลองทั้งหมดของคุณเสร็จสิ้นภายในวงวน CV ดังนั้นการเลือกคุณสมบัติภายในวง CV สำหรับการปรับพารามิเตอร์ สามารถทำได้อย่างง่ายดายโดยใช้แผ่นกรองในแพ็คเกจ MLR ใน R


1

ฉันได้ตอบคำถามที่คล้ายกันที่นี่แล้ว กระบวนการจะเป็น:

  • การแปลงและลด:เกี่ยวข้องกับกระบวนการเช่นการแปลงค่าเฉลี่ยและมาตราส่วนค่ามัธยฐาน ฯลฯ
  • การเลือกคุณสมบัติ:สามารถทำได้หลายวิธีเช่นการเลือกขีด จำกัด การเลือกชุดย่อยและอื่น ๆ
  • การออกแบบแบบจำลองการคาดการณ์:ออกแบบแบบจำลองการทำนายจากข้อมูลการฝึกอบรมขึ้นอยู่กับคุณสมบัติที่คุณมี
  • การตรวจสอบความถูกต้องข้ามและการปรับพารามิเตอร์:
  • การทำนายขั้นสุดท้าย, การตรวจสอบความถูกต้อง

พยายามทำวิศวกรรมฟีเจอร์ทุกครั้งก่อนเลือกรุ่น จากนั้นเลือกรุ่นตามคุณลักษณะที่ดีที่สุด (หรือคุณสมบัติที่มีแนวโน้มที่จะมีผลต่อปัญหา / ตัวแปรตามที่ดีกว่า)


0

หากคุณพร้อมที่จะใช้เวลาในการเรียนรู้ว่าเครื่องมือใหม่ทำงานอย่างไรคุณสามารถลอง autosklearn มันทำทุกสิ่งที่จำเป็นเพื่อสร้าง ML Pip ให้คุณ การประมวลผลคุณลักษณะล่วงหน้าการเลือกโมเดลการสร้างวงดนตรีและการปรับแต่งผ่านการตรวจสอบความถูกต้อง ขึ้นอยู่กับปริมาณข้อมูลที่คุณมีหรืออาจเป็นวิธีที่เร็วกว่าในการทำนายผลที่ดี แต่มันเป็นสัญญาที่แน่นอน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.