2017-06-20 12 views
6

मेरे डाटासेट 90% नकारात्मक नमूने और 10% सकारात्मक नमूने जो बहुत असंतुलित हो गया है। मैं scale_pos_weight के पैरामीटर का उपयोग करने की कोशिश करता हूं और इसे 9 के रूप में सेट करता हूं। इस परम की व्यवस्था क्या है। मैं वास्तव में इसका क्या अर्थ है इसके बारे में उत्सुक हूं: क्या इसका मतलब है सकारात्मक नमूने 9 बार दोहराएं? या हर बार नकारात्मक नमूनों के 1/9 नमूने खींचें और मॉडल को कई बार प्रशिक्षित करें। इसके अलावा, यदि मेरे पास एक डेटासेट है जिसका नकारात्मक नमूने सकारात्मक लोगों की तुलना में थोड़ा अधिक है, तो मुझे पैरामीटर को फिर से निर्दिष्ट करने की आवश्यकता है?xgboost में param 'scale_pos_weight' का उपयोग करने की तंत्र क्या है?

उत्तर

0

मैं प्रलेखन कि स्पष्ट रूप से क्या यह पैरामीटर करता राज्यों में कहीं भी कभी नहीं देखा। हालांकि, मुझे पूरा भरोसा है कि यह उत्तरार्द्ध है, यानी यह नकारात्मक नमूने के 1/9 वें के आधार पर पेड़ बनाता है। हालांकि दोनों लगभग एक ही प्रभाव होना चाहिए यदि डेटा अच्छे हैं, नकारात्मक के एक सबसेट लेने मॉडलिंग के लिए सम्मेलन, क्योंकि यह, जब से तुम अब 9 प्रशिक्षण सेट है कि आप एक दूसरे के खिलाफ जाँच कर सकते हैं आसान पार सत्यापन के लिए अनुमति देता है।

एक साइड नोट के रूप में, मुझे यह नहीं लगता कि 90/10 विभाजन इतनी असंतुलित है। यही कारण है कि एक बहुत बेहतर की तुलना में आप कई स्थितियों में मिलेगा, और वहाँ है कि क्या फिर से संतुलन हमेशा उपयोगी है पर कुछ debate है।

+1

यह सही व्याख्या https://github.com/dmlc/xgboost/issues/2428 है। –

संबंधित मुद्दे