BoostedTreesCalculateBestFeatureSplit

सार्वजनिक अंतिम वर्ग BoostedTreesCalculateBestFeatureSplit

प्रत्येक सुविधा के लिए लाभ की गणना करता है और सुविधा के लिए सर्वोत्तम संभव विभाजन जानकारी देता है।

विभाजित जानकारी प्रत्येक सुविधा के लिए प्रति नोड सर्वोत्तम सीमा (बाल्टी आईडी), लाभ और बाएं/दाएं नोड योगदान है।

यह संभव है कि प्रत्येक फीचर पर सभी नोड्स को विभाजित नहीं किया जा सकता है। इसलिए, संभावित नोड्स की सूची सुविधाओं के बीच भिन्न हो सकती है। इसलिए, हम प्रत्येक सुविधा के लिए `node_ids_list` लौटाते हैं, जिसमें नोड्स की सूची होती है जिसे विभाजित करने के लिए इस सुविधा का उपयोग किया जा सकता है।

इस तरह, आउटपुट प्रति फीचर और प्रति नोड सबसे अच्छा विभाजन है, ताकि प्रत्येक नोड (सभी संभावित सुविधाओं के बीच) के लिए सर्वश्रेष्ठ विभाजन का उत्पादन करने के लिए इसे बाद में संयोजित करने की आवश्यकता हो।

आउटपुट आकार इस तरह से संगत हैं कि सभी टेंसरों का पहला आयाम समान है और प्रत्येक फीचर के लिए संभावित स्प्लिट नोड्स की संख्या के बराबर है।

नेस्टेड कक्षाएं

कक्षा BoostedTreesगणना करेंBestFeatureSplit.Options के लिए वैकल्पिक विशेषताओं BoostedTreesCalculateBestFeatureSplit

सार्वजनिक तरीके

स्थिर BoostedTreesCalculateBestFeatureSplit
बनाने ( स्कोप गुंजाइश, ओपेरैंड <पूर्णांक> nodeIdRange, ओपेरैंड <फ्लोट> statsSummary, ओपेरैंड <फ्लोट> एल 1, ओपेरैंड <फ्लोट> l2, ओपेरैंड <फ्लोट> treeComplexity, ओपेरैंड <फ्लोट> minNodeWeight, लांग logitsDimension, विकल्प ... विकल्प)
एक नया BoostedTreesCalculateBestFeatureSplit ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि।
आउटपुट <पूर्णांक>
featureDimensions ()
एक रैंक 1 टेंसर प्रत्येक सुविधा के लिए सबसे अच्छा फीचर आयाम दर्शाता है, यदि सुविधा बहु-आयाम है तो कुछ नोड्स के लिए विभाजित किया जा सकता है।
आउटपुट <फ्लोट>
लाभ ()
एक रैंक 1 टेंसर प्रत्येक सुविधा के लिए कुछ नोड्स के लिए विभाजित करने के लिए सर्वोत्तम लाभ दर्शाता है।
आउटपुट <फ्लोट>
leftNodeContribs ()
प्रत्येक सुविधा के लिए दी गई थ्रेशोल्ड द्वारा बाईं दिशा में पैरेंट नोड्स (आउटपुट नोड_आईड्स_लिस्ट में टेंसर तत्व द्वारा दिया गया) से ब्रांच करते समय बाएं नोड्स के योगदान को इंगित करने वाला रैंक 2 टेंसर।
आउटपुट <पूर्णांक>
nodeIds ()
एक रैंक 1 टेंसर प्रत्येक सुविधा के लिए संभावित विभाजन नोड आईडी का संकेत देता है।
आउटपुट <फ्लोट>
rightNodeContribs ()
एक रैंक 2 टेंसर, बाएं_नोड_कॉन्ट्रिब्स_लिस्ट के समान आकार/शर्तों के साथ, लेकिन मान सही नोड के लिए है।
स्थिर BoostedTreesCalculateBestFeatureSplit.Options
splitType (स्ट्रिंग splitType)
आउटपुट <string>
splitWithDefaultDirections ()
रैंक 1 टेंसर यह दर्शाता है कि डेटा गुम होने पर किस दिशा में जाना है।
आउटपुट <पूर्णांक>
थ्रेसहोल्ड ()
एक रैंक 1 टेंसर प्रत्येक नोड में विभाजन के लिए (एक सीमा के रूप में) के साथ तुलना करने के लिए बकेट आईडी को दर्शाता है।

विरासत में मिली विधियां

सार्वजनिक तरीके

सार्वजनिक स्थिर BoostedTreesCalculateBestFeatureSplit (बनाने स्कोप गुंजाइश, ओपेरैंड <पूर्णांक> nodeIdRange, ओपेरैंड <फ्लोट> statsSummary, ओपेरैंड <फ्लोट> एल 1, ओपेरैंड <फ्लोट> l2, ओपेरैंड <फ्लोट> treeComplexity, ओपेरैंड <फ्लोट> minNodeWeight, लांग logitsDimension, विकल्प .. । विकल्प)

एक नया BoostedTreesCalculateBestFeatureSplit ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि।

मापदंडों
दायरा वर्तमान दायरा
नोड आईडीरेंज `Stats_summary_list` के भीतर संसाधित करने के लिए नोड आईडी की श्रेणी [प्रथम, अंतिम) निर्दिष्ट करने के लिए एक रैंक 1 टेंसर (आकार = [2])। नोड्स को टेंसर द्वारा निर्दिष्ट दो नोड्स के बीच पुनरावृत्त किया जाता है, जैसे कि `नोड_आईडी इन रेंज (नोड_आईडी_रेंज [0], नोड_आईडी_रेंज [1])` (ध्यान दें कि अंतिम इंडेक्स नोड_आईडी_रेंज [1] अनन्य है)।
आँकड़े सारांश एक रैंक 4 टेंसर (#shape=[max_splits, feature_dims, बाल्टी, stats_dims]) संचित आँकड़े सारांश (ग्रेडिएंट/हेसियन) प्रति नोड, प्रति आयाम, प्रत्येक सुविधा के लिए प्रति बकेट के लिए। टेंसर का पहला आयाम विभाजन की अधिकतम संख्या है, और इस प्रकार इसके सभी तत्वों का उपयोग नहीं किया जाएगा, लेकिन केवल नोड_आईड्स द्वारा निर्दिष्ट इंडेक्स का उपयोग किया जाएगा।
एल1 l1 पत्ती भार पर नियमितीकरण कारक, प्रति उदाहरण आधारित।
एल2 l2 पत्ती भार पर नियमितीकरण कारक, प्रति उदाहरण आधारित।
वृक्ष जटिलता लाभ के लिए समायोजन, प्रति पत्ती आधारित।
minNodeWeight नोड को विभाजित करने के लिए विचार करने के लिए आवश्यक होने से पहले एक नोड में हेसियन का न्यूनतम औसत।
लॉगिट्सआयाम लॉगिट का आयाम, यानी वर्गों की संख्या।
विकल्प वैकल्पिक विशेषता मान रखता है
रिटर्न
  • बूस्टेड ट्रीज़ का एक नया उदाहरणकैलकुलेटबेस्टफ़ीचरस्प्लिट

सार्वजनिक आउटपुट <पूर्णांक> featureDimensions ()

एक रैंक 1 टेंसर प्रत्येक सुविधा के लिए सबसे अच्छा फीचर आयाम दर्शाता है, यदि सुविधा बहु-आयाम है तो कुछ नोड्स के लिए विभाजित किया जा सकता है। आकार और आकार जैसे विवरण के लिए ऊपर देखें।

सार्वजनिक आउटपुट <फ्लोट> लाभ ()

एक रैंक 1 टेंसर प्रत्येक सुविधा के लिए कुछ नोड्स के लिए विभाजित करने के लिए सर्वोत्तम लाभ दर्शाता है। आकार और आकार जैसे विवरण के लिए ऊपर देखें।

सार्वजनिक आउटपुट <फ्लोट> leftNodeContribs ()

प्रत्येक सुविधा के लिए दी गई थ्रेशोल्ड द्वारा बाईं दिशा में पैरेंट नोड्स (आउटपुट नोड_आईड्स_लिस्ट में टेंसर तत्व द्वारा दिया गया) से ब्रांच करते समय बाएं नोड्स के योगदान को इंगित करने वाला रैंक 2 टेंसर। इस मान का उपयोग पैरेंट नोड मान में जोड़कर बायां नोड मान बनाने के लिए किया जाएगा। 1-आयामी लॉग के लिए दूसरा आयाम आकार 1 है, लेकिन बहु-वर्ग की समस्याओं के लिए बड़ा होगा। आकार और आकार जैसे विवरण के लिए ऊपर देखें।

सार्वजनिक आउटपुट <पूर्णांक> nodeIds ()

एक रैंक 1 टेंसर प्रत्येक सुविधा के लिए संभावित विभाजन नोड आईडी का संकेत देता है। सूची की लंबाई num_features है, लेकिन प्रत्येक टेंसर का आकार अलग होता है क्योंकि प्रत्येक सुविधा अलग-अलग संभावित नोड प्रदान करती है। आकार और आकार जैसे विवरण के लिए ऊपर देखें।

सार्वजनिक आउटपुट <फ्लोट> rightNodeContribs ()

एक रैंक 2 टेंसर, बाएं_नोड_कॉन्ट्रिब्स_लिस्ट के समान आकार/शर्तों के साथ, लेकिन मान सही नोड के लिए है।

सार्वजनिक स्थिर BoostedTreesCalculateBestFeatureSplit.Options splitType (स्ट्रिंग splitType)

मापदंडों
स्प्लिट टाइप एक स्ट्रिंग इंगित करती है कि क्या इस ऑप को असमानता विभाजन या समानता विभाजन करना चाहिए।

सार्वजनिक आउटपुट <string> splitWithDefaultDirections ()

रैंक 1 टेंसर यह दर्शाता है कि डेटा गुम होने पर किस दिशा में जाना है। आकार और आकार जैसे विवरण के लिए ऊपर देखें। डिफॉल्ट लेफ्ट रिटर्न के साथ असमानता 0, डिफॉल्ट राइट रिटर्न के साथ असमानता 1, डिफॉल्ट राइट रिटर्न के साथ समानता 2.

सार्वजनिक आउटपुट <पूर्णांक> थ्रेसहोल्ड ()

एक रैंक 1 टेंसर प्रत्येक नोड में विभाजन के लिए (एक सीमा के रूप में) के साथ तुलना करने के लिए बकेट आईडी को दर्शाता है। आकार और आकार जैसे विवरण के लिए ऊपर देखें।