นี่เป็นวิธีปฏิบัติที่ดีของวิศวกรรมฟีเจอร์หรือไม่?


10

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

คำถามของฉัน:

  1. มันสมเหตุสมผลไหมที่ทำสิ่งเหล่านี้ตั้งแต่แรก?
  2. ถ้าใช่ฉันจะรู้ได้อย่างไรว่าเวลาใดที่จะหยุดรอบนี้
  3. ถ้าไม่ทำไมล่ะ

คำตอบ:


6

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

มีตัวชี้วัดที่จะพยายามแนะนำคุณเกี่ยวกับเรื่องนี้เช่นAkaike Information Criterion (AIC) หรือBayesian Information Criterion (BIC) สิ่งเหล่านี้ช่วยในการเลือกแบบจำลองตามประสิทธิภาพการทำงานถูกลงโทษสำหรับพารามิเตอร์เพิ่มเติมทั้งหมดที่นำมาใช้และต้องถูกประเมิน AIC มีลักษณะเช่นนี้:

Aผม=2k-2LN(L^)

โดยที่คือจำนวนของพารามิเตอร์ที่จะประมาณเช่นจำนวนของคุณสมบัติที่คุณใช้เพราะแต่ละค่าจะมีค่าสัมประสิทธิ์เดียวในการถดถอยโลจิสติกของคุณ Lเป็นมูลค่าสูงสุดของความน่าจะเป็นสูงสุด (เทียบเท่ากับคะแนนที่ดีที่สุด) BIC ใช้kแตกต่างกันเล็กน้อยเพื่อลงโทษโมเดลkL^k

เกณฑ์เหล่านี้สามารถช่วยบอกคุณได้ว่าควรหยุดเมื่อใดเพราะคุณสามารถลองรุ่นที่มีพารามิเตอร์มากขึ้นเรื่อย ๆ และใช้โมเดลที่มีค่า AIC หรือ BIC ที่ดีที่สุด

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

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


7

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

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

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


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

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

จริง แต่การหลีกเลี่ยงความสัมพันธ์แบบหลายทางจะไม่ช่วย 'overfitting' ที่เกิดจากการเปลี่ยนแปลงของ covariate ฉันแค่บอกว่าความหลากสีน่าจะไม่ใช่ปัญหาถ้าเขาสนใจที่จะสร้างแบบจำลองการทำนาย (ไม่ใช่แบบอธิบาย)
ล้าง

แนวคิดของฉันเกี่ยวกับการ overfitting นั้นเกี่ยวกับเมื่อแบบจำลองที่ไม่สามารถทำให้เป็นชุดข้อมูลใหม่ไม่ใช่ข้อมูลการฝึกอบรม โปรดดูสิ่งนี้
Fansly

4

โดยปกติแล้วยิ่งมีคุณสมบัติที่ดีกว่า

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

มีข้อมูลจำนวนมากเกี่ยวกับหัวข้อนี้มาก (และวิธีที่เป็นไปได้ในการบรรเทา) เพียงแค่การถดถอยของ Google และความหลากหลายทางชีวภาพ

ในระยะสั้น

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

0

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

คำตอบแรกมีรายละเอียดที่ดีเกี่ยวกับเรื่องนี้ เท่าที่เกี่ยวข้องกับการหยุดวงจรก็มีหลายมาตรการและปัจจัยที่คุณต้องระวังในการตรวจสอบว่าแบบจำลองของคุณหยุดทำงานได้ดีขึ้นอย่างไรและมาตรการต่าง ๆ เช่น RMSE ตัวอย่างง่ายๆจะใช้xgboostการถดถอยของข้อมูลของคุณและระบุจำนวนรอบ รันโมเดลและคุณจะได้รับ RMSE สำหรับแต่ละรอบ มันจะลดลงถึงขีด จำกัด หลังจากนั้นคุณจะสามารถอนุมานได้ว่าแบบจำลองนั้นมีที่ราบสูงหลังจากรอบหนึ่ง นี่คือการปรับรูปแบบและการปรับให้เหมาะสมทำงาน

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