การเลือกคุณสมบัติและความแม่นยำในการจำแนกประเภท


10

หนึ่งในวิธีการในการเลือกชุดย่อยของคุณสมบัติที่มีอยู่สำหรับตัวจําแนกของคุณคือการจัดอันดับตามเกณฑ์ (เช่นการรับข้อมูล) แล้วคำนวณความถูกต้องโดยใช้ตัวจําแนกและชุดย่อยของคุณลักษณะที่จัดอันดับ

ตัวอย่างเช่นหากคุณลักษณะของคุณคือA, B, C, D, Eและหากมีการจัดอันดับดังต่อไปD,B,C,E,Aนี้คุณจะคำนวณความถูกต้องโดยใช้DจากD, Bนั้นD, B, Cจากนั้นจึงD, B, C, E... ... จนกว่าความแม่นยำของคุณจะเริ่มลดลง เมื่อมันเริ่มลดลงคุณจะหยุดเพิ่มคุณสมบัติ

example1

ในตัวอย่างที่ 1 (ด้านบน) คุณจะต้องเลือกคุณสมบัติF, C, D, Aและวางคุณสมบัติอื่น ๆ เพื่อลดความแม่นยำของคุณ

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

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

example2

ในสถานการณ์เช่นนี้คุณจะเลือกคุณสมบัติของคุณได้อย่างไร คุณเลือกFและวางที่เหลือเท่านั้น? คุณมีความคิดว่าทำไมความแม่นยำจะลดลงและเพิ่มขึ้น?

คำตอบ:


4

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

ในกรณีของคุณฉันไม่เห็นวิธีการที่คุณใช้สำหรับการเลือกคุณสมบัติ แต่สมมติว่าคุณไม่ได้คำนึงถึงลักษณะหลายตัวแปรของการพึ่งพาคุณลักษณะ สมมติว่าคุณมีคุณสมบัติ N อาจเป็นไปได้ว่าความแม่นยำของโมเดลของคุณลดลงหลังจากมีการเพิ่มคุณสมบัติ n แต่ปรับปรุงโดยเพิ่ม n + k (โดยที่ n <k <N เมื่อคุณสมบัติอยู่ในลำดับจากมากไปหาน้อยตามข้อมูลที่ได้รับ) การพึ่งพา (ความเกี่ยวข้องมากขึ้นและความซ้ำซ้อนน้อยลง) ของคุณลักษณะยอดนิยม n และ k การเลือกคุณสมบัติที่ไม่เปลี่ยนแปลงไม่จำเป็นต้องได้รับความแม่นยำของรูปแบบที่เหมาะสมที่สุดเมื่อคุณลักษณะนั้นขึ้นอยู่กับการใช้งานร่วมกัน จากมุมมองทางปรัชญาชุดของคุณสมบัติที่ดีที่สุดนั้นคล้ายคลึงกับคำพูดของอริสโตเติล: "ทั้งหมดนั้นมากกว่าผลรวมของส่วน"

สำหรับการเลือกคุณสมบัติที่ดีที่สุดฉันมักจะเป็นแพ็คเกจ Caret ในRภาษาที่หนึ่งอาจทำการเลือกคุณสมบัติโดยใช้คุณลักษณะการกำจัดแบบเรียกซ้ำ (RFE) ท่ามกลางวิธีการอื่น ๆ นอกจากนี้ยังมีแพ็คเกจที่เรียกว่าmRMReเพื่อทำการเลือกคุณสมบัติตามความเกี่ยวข้องสูงสุดความซ้ำซ้อนน้อยที่สุด

ดีที่สุด
กลั้วคอ


ฉันกำลังร่างคำตอบจากมือถือและไม่ทราบว่าคำตอบสองรายการก่อนหน้านั้นเหมือนกัน! ความผิดพลาดของฉันในการไม่แสดงความคิดเห็นต่อสิ่งเหล่านั้นและเป็นการตอบแยกต่างหาก
Samir

จุดของคุณเกี่ยวกับคุณสมบัติซ้ำซ้อนเป็นจุดบน ฉันได้ตรวจสอบแล้วและฉันสามารถยืนยันได้ว่าคุณสมบัติ 3 อย่างที่ได้รับข้อมูลสูงนั้นซ้ำซ้อนจริง ๆ (มีความสัมพันธ์กันสูง) สิ่งนี้อธิบายว่าทำไมความถูกต้องลดลงเมื่อใช้คุณสมบัติเหล่านี้ร่วมกัน: ผ่านคุณสมบัติแรกคุณสมบัติเพิ่มเติมไม่เพิ่ม "มิติข้อมูล" ใหม่ไปยังชุดข้อมูลของฉันและพวกเขาสร้างเสียงรบกวนเพราะพวกเขา "ซ้ำ" สิ่งที่ตัวแยกประเภท คุณสมบัติแรก อย่างไรก็ตามคุณสมบัติอื่น ๆ ที่ได้รับข้อมูลน้อยลงจะเพิ่มมิติข้อมูลใหม่
พอลลีน

1

เกี่ยวกับคำถามเฉพาะ

คุณไม่ควรคาดหวังพฤติกรรมที่เฉพาะเจาะจง (เพิ่มและลดความแม่นยำ) ในขณะที่คุณเลือกส่วนย่อยของฟีเจอร์เนื่องจากสิ่งนี้จะขึ้นอยู่กับปัญหาทั้งหมด (และแต่ละรุ่น)

เมื่อคุณคำนวณความสำคัญของตัวแปรของฟีเจอร์คุณจะต้องคำนึงถึงการมีส่วนร่วมของฟีเจอร์ทั้งหมดในเวลาเดียวกัน เมื่อคุณเลือกชุดย่อยของคุณสมบัติและสร้างแบบจำลองใหม่คุณจะได้รับการแสดงหรือการสร้างแบบจำลองของปัญหาที่แตกต่างกัน (ซึ่งไม่ได้คำนึงถึงคุณสมบัติอื่น ๆ - ข้อมูลหรือไม่ -)

ตอนนี้คุณต้องการเลือกจำนวนฟีเจอร์ที่ดีที่สุด สิ่งนี้จะขึ้นอยู่กับปัญหาของคุณและลักษณะหรือเงื่อนไขที่คุณต้องปฏิบัติตาม หากคุณจำเป็นต้องมีคุณสมบัติที่น้อยลงในขณะที่ปรับความแม่นยำในการทำนายให้เหมาะสมคุณสามารถเลือกจำนวนฟีเจอร์ที่ต่ำที่สุดที่ทำให้เกิดข้อผิดพลาดต่ำที่สุด ... และหากคุณมีกรณีที่แตกต่างกันที่มีข้อผิดพลาดคล้ายกันมากให้เลือกขีด จำกัด กรณีบนที่มีข้อผิดพลาดแตกต่างกันเป็นคู่ต่ำกว่าเกณฑ์และเลือกหนึ่ง (ตัวอย่างเช่นที่มีจำนวนคุณลักษณะน้อยกว่า - เนื่องจากข้อผิดพลาดเล็กน้อย -)

พิจารณากำจัดคุณลักษณะแบบเรียกซ้ำ

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

ความแปรปรวนก็เป็นปัจจัยที่สำคัญเช่นกัน

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


1

คุณต้องลบทั้งคุณสมบัติที่ซ้ำซ้อนและไม่เกี่ยวข้องออกจากชุดข้อมูลของคุณ จะเห็นได้ว่ามีคุณสมบัติที่ไม่เกี่ยวข้องและซ้ำซ้อนในชุดข้อมูลของคุณ

ฉันขอแนะนำให้คุณดูอัลกอริธึมการเลือกคุณลักษณะความเกี่ยวข้องสูงสุดขั้นต่ำ (MRMR) ขั้นต่ำ มันเป็นตัวกรองที่ได้รับความนิยมและทรงพลังมากก่อนที่รถไฟของคุณจะเป็นนางแบบ

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

เป็นไปได้เช่นกัน แต่สิ่งนี้จะนำไปสู่รูปแบบที่ซับซ้อนมากขึ้น


1

โดยทั่วไปมีอัลกอริทึมการเลือกคุณลักษณะสามคลาส

  • วิธีการกรองที่วิเคราะห์คุณสมบัติที่แท้จริงของข้อมูลและกำหนดคะแนนให้กับแต่ละคุณสมบัติไม่เกี่ยวข้องกับรูปแบบใด ๆ ตัวอย่างบางส่วนคือการเปลี่ยนแปลงการพับการทดสอบของนักเรียน

  • วิธีการ Wrapperซึ่งคุณสมบัติย่อยต่าง ๆ ถูกเลือกผ่านอัลกอริธึมเฉพาะ จากนั้นเราปรับให้เข้ากับรูปแบบการจำแนกประเภทหรือการถดถอยเพื่อประเมินการเลือกแต่ละแบบและเลือกอันที่มีค่าความฟิตที่ดีที่สุด ตัวอย่างบางส่วนคืออัลกอริทึมทางพันธุกรรมสำหรับการเลือกคุณสมบัติ, การเพิ่มประสิทธิภาพ Monte Carlo สำหรับการเลือกคุณสมบัติ, การเลือกตามขั้นตอนไปข้างหน้า / ถอยหลัง

  • วิธีการฝังตัวที่ช่วยให้รูปแบบของตัวเองเพื่อเลือกคุณสมบัติที่มีส่วนร่วมที่ดีที่สุดเพื่อความเหมาะสมของรูปแบบ คนทั่วไปคือ LASSO การถดถอยของสันเขา

นี่คือบทความดีดีในรายละเอียดของการแนะนำในการเลือกคุณลักษณะ


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