प्रत्येक सुविधा के लिए लाभ की गणना करता है और सुविधा के लिए सर्वोत्तम संभव विभाजन जानकारी देता है।
विभाजित जानकारी प्रत्येक सुविधा के लिए प्रति नोड सर्वोत्तम सीमा (बाल्टी आईडी), लाभ और बाएं/दाएं नोड योगदान है।
यह संभव है कि प्रत्येक फीचर पर सभी नोड्स को विभाजित नहीं किया जा सकता है। इसलिए, संभावित नोड्स की सूची सुविधाओं के बीच भिन्न हो सकती है। इसलिए, हम प्रत्येक सुविधा के लिए `node_ids_list` लौटाते हैं, जिसमें नोड्स की सूची होती है जिसे विभाजित करने के लिए इस सुविधा का उपयोग किया जा सकता है।
इस तरह, आउटपुट प्रति फीचर और प्रति नोड सबसे अच्छा विभाजन है, ताकि प्रत्येक नोड (सभी संभावित सुविधाओं के बीच) के लिए सर्वश्रेष्ठ विभाजन का उत्पादन करने के लिए इसे बाद में संयोजित करने की आवश्यकता हो।
आउटपुट आकार इस तरह से संगत हैं कि सभी टेंसरों का पहला आयाम समान है और प्रत्येक फीचर के लिए संभावित स्प्लिट नोड्स की संख्या के बराबर है।
नेस्टेड कक्षाएं
कक्षा | BoostedTreeSparseBestFeatureSplit.Options की गणना करें: | के लिए वैकल्पिक विशेषताओं BoostedTreesSparseCalculateBestFeatureSplit |
सार्वजनिक तरीके
स्थिर BoostedTreesSparseCalculateBestFeatureSplit | बनाने ( स्कोप गुंजाइश, ओपेरैंड <पूर्णांक> nodeIdRange, ओपेरैंड <पूर्णांक> statsSummaryIndices, ओपेरैंड <फ्लोट> statsSummaryValues, ओपेरैंड <पूर्णांक> statsSummaryShape, ओपेरैंड <फ्लोट> एल 1, ओपेरैंड <फ्लोट> l2, ओपेरैंड <फ्लोट> treeComplexity, ओपेरैंड <फ्लोट > minNodeWeight, लांग logitsDimension, विकल्प ... विकल्प) एक नया BoostedTreesSparseCalculateBestFeatureSplit ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि। |
आउटपुट <पूर्णांक> | featureDimensions () रैंक 1 टेंसर प्रत्येक नोड के लिए विभाजित करने के लिए प्रत्येक सुविधा के लिए सबसे अच्छा फीचर आयाम दर्शाता है। |
आउटपुट <फ्लोट> | लाभ () रैंक 1 टेंसर प्रत्येक नोड को विभाजित करने के लिए सर्वोत्तम लाभ दर्शाता है। |
आउटपुट <फ्लोट> | leftNodeContribs () एक रैंक 2 टेंसर बाएं नोड्स के योगदान को दर्शाता है जब प्रत्येक सुविधा के लिए दिए गए थ्रेशोल्ड द्वारा पैरेंट नोड्स से बाईं दिशा में ब्रांच किया जाता है। |
आउटपुट <पूर्णांक> | nodeIds () एक रैंक 1 टेंसर संभावित नोड आईडी को इंगित करता है जिसे विभाजित किया जा सकता है। |
आउटपुट <फ्लोट> | rightNodeContribs () एक रैंक 2 टेंसर, बाएं_नोड_कॉन्ट्रिब्स_लिस्ट के समान आकार/शर्तों के साथ, लेकिन मान सही नोड के लिए है। |
स्थिर BoostedTreesSparseCalculateBestFeatureSplit.Options | splitType (स्ट्रिंग splitType) |
आउटपुट <string> | splitWithDefaultDirections () रैंक 1 टेंसर यह दर्शाता है कि डेटा गुम होने पर किस दिशा में जाना है। |
आउटपुट <पूर्णांक> | थ्रेसहोल्ड () एक रैंक 1 टेंसर प्रत्येक नोड में विभाजन के लिए (एक सीमा के रूप में) के साथ तुलना करने के लिए बकेट आईडी को दर्शाता है। |
विरासत में मिली विधियां
सार्वजनिक तरीके
सार्वजनिक स्थिर BoostedTreesSparseCalculateBestFeatureSplit (बनाने स्कोप गुंजाइश, ओपेरैंड <पूर्णांक> nodeIdRange, ओपेरैंड <पूर्णांक> statsSummaryIndices, ओपेरैंड <फ्लोट> statsSummaryValues, ओपेरैंड <पूर्णांक> statsSummaryShape, ओपेरैंड <फ्लोट> एल 1, ओपेरैंड <फ्लोट> l2, ओपेरैंड <फ्लोट> treeComplexity, संकार्य <फ्लोट> minNodeWeight, लांग logitsDimension, विकल्प ... विकल्प)
एक नया BoostedTreesSparseCalculateBestFeatureSplit ऑपरेशन रैपिंग क्लास बनाने के लिए फ़ैक्टरी विधि।
मापदंडों
दायरा | वर्तमान दायरा |
---|---|
नोड आईडीरेंज | `Stats_summary_list` के भीतर संसाधित करने के लिए नोड आईडी की श्रेणी [प्रथम, अंतिम) निर्दिष्ट करने के लिए एक रैंक 1 टेंसर (आकार = [2])। नोड्स को टेंसर द्वारा निर्दिष्ट दो नोड्स के बीच पुनरावृत्त किया जाता है, जैसे कि `नोड_आईडी इन रेंज (नोड_आईडी_रेंज [0], नोड_आईडी_रेंज [1])` (ध्यान दें कि अंतिम इंडेक्स नोड_आईडी_रेंज [1] अनन्य है)। |
आँकड़े सारांशसूचकांक | प्रत्येक सुविधा के लिए प्रति नोड प्रति नोड संचित आंकड़े सारांश (ग्रेडिएंट/हेसियन) के लिए घने आकार [एन, 4] (एन गैर-शून्य मानों की संख्या निर्दिष्ट करता है) का रैंक 2 int64 टेंसर। दूसरे आयाम में नोड आईडी, सुविधा आयाम, बकेट आईडी और आंकड़े मंद होते हैं। आंकड़े मंद लॉगिट आयाम और हेसियन आयाम का योग है, हेसियन आयाम या तो लॉगिट आयाम हो सकता है यदि विकर्ण हेसियन का उपयोग किया जाता है, या पूर्ण हेसियन का उपयोग होने पर आयाम ^ 2 लॉग करता है। |
आँकड़े सारांश मान | घने आकार का एक रैंक 1 फ्लोट टेंसर [एन] (एन गैर-शून्य मानों की संख्या निर्दिष्ट करता है), जो सारांश_इंडिस में प्रत्येक तत्व के लिए मूल्यों की आपूर्ति करता है। |
आँकड़ेसारांशआकार | घने आकार का एक रैंक 1 फ्लोट टेंसर [4], जो विरल टेंसर के घने आकार को निर्दिष्ट करता है, जो [संख्या ट्री नोड्स, फीचर आयाम, संख्या बकेट, आंकड़े मंद] है। |
एल1 | l1 पत्ती भार पर नियमितीकरण कारक, प्रति उदाहरण आधारित। |
एल2 | l2 पत्ती भार पर नियमितीकरण कारक, प्रति उदाहरण आधारित। |
वृक्ष जटिलता | लाभ के लिए समायोजन, प्रति पत्ती आधारित। |
minNodeWeight | नोड को विभाजित करने के लिए विचार करने के लिए आवश्यक होने से पहले एक नोड में हेसियन का न्यूनतम औसत। |
लॉगिट्सआयाम | लॉगिट का आयाम, यानी वर्गों की संख्या। |
विकल्प | वैकल्पिक विशेषता मान रखता है |
रिटर्न
- BoostedTreesSparse का एक नया उदाहरणगणनाBestFeatureSplit
सार्वजनिक आउटपुट <पूर्णांक> featureDimensions ()
रैंक 1 टेंसर प्रत्येक नोड के लिए विभाजित करने के लिए प्रत्येक सुविधा के लिए सबसे अच्छा फीचर आयाम दर्शाता है।
सार्वजनिक आउटपुट <फ्लोट> लाभ ()
रैंक 1 टेंसर प्रत्येक नोड को विभाजित करने के लिए सर्वोत्तम लाभ दर्शाता है।
सार्वजनिक आउटपुट <फ्लोट> leftNodeContribs ()
एक रैंक 2 टेंसर बाएं नोड्स के योगदान को दर्शाता है जब प्रत्येक सुविधा के लिए दिए गए थ्रेशोल्ड द्वारा पैरेंट नोड्स से बाईं दिशा में ब्रांच किया जाता है। इस मान का उपयोग पैरेंट नोड मान में जोड़कर बायां नोड मान बनाने के लिए किया जाएगा। दूसरा आयाम आकार लॉग्स आयाम है।
सार्वजनिक आउटपुट <पूर्णांक> nodeIds ()
एक रैंक 1 टेंसर संभावित नोड आईडी को इंगित करता है जिसे विभाजित किया जा सकता है।
सार्वजनिक आउटपुट <फ्लोट> rightNodeContribs ()
एक रैंक 2 टेंसर, बाएं_नोड_कॉन्ट्रिब्स_लिस्ट के समान आकार/शर्तों के साथ, लेकिन मान सही नोड के लिए है।
सार्वजनिक स्थिर BoostedTreesSparseCalculateBestFeatureSplit.Options splitType (स्ट्रिंग splitType)
मापदंडों
स्प्लिट टाइप | एक स्ट्रिंग इंगित करती है कि क्या इस ऑप को असमानता विभाजन या समानता विभाजन करना चाहिए। |
---|
सार्वजनिक आउटपुट <string> splitWithDefaultDirections ()
रैंक 1 टेंसर यह दर्शाता है कि डेटा गुम होने पर किस दिशा में जाना है। डिफॉल्ट लेफ्ट रिटर्न के साथ असमानता 0, डिफॉल्ट राइट रिटर्न के साथ असमानता 1, डिफॉल्ट राइट रिटर्न के साथ समानता 2.
सार्वजनिक आउटपुट <पूर्णांक> थ्रेसहोल्ड ()
एक रैंक 1 टेंसर प्रत्येक नोड में विभाजन के लिए (एक सीमा के रूप में) के साथ तुलना करने के लिए बकेट आईडी को दर्शाता है।