BoostedTreesCalculateBestFeatureSplitV2

পাবলিক ফাইনাল ক্লাস বুস্টেড ট্রিস ক্যালকুলেট বেস্ট ফিচার স্প্লিটভি২

প্রতিটি বৈশিষ্ট্যের জন্য লাভ গণনা করে এবং প্রতিটি নোডের জন্য সম্ভাব্য সর্বোত্তম বিভক্ত তথ্য প্রদান করে। যাইহোক, যদি কোন বিভক্ত না পাওয়া যায়, তাহলে সেই নোডের জন্য কোন বিভক্ত তথ্য ফেরত দেওয়া হয় না।

বিভক্ত তথ্য হল সেরা থ্রেশহোল্ড (বালতি আইডি), লাভ এবং প্রতিটি বৈশিষ্ট্যের জন্য নোড প্রতি বাম/ডান নোড অবদান।

এটা সম্ভব যে সমস্ত নোড প্রতিটি বৈশিষ্ট্যে বিভক্ত করা যাবে না। সুতরাং, সম্ভাব্য নোডগুলির তালিকা বৈশিষ্ট্যগুলির মধ্যে পৃথক হতে পারে। অতএব, আমরা প্রতিটি বৈশিষ্ট্যের জন্য `node_ids_list` ফেরত দিই, যেখানে এই বৈশিষ্ট্যটি বিভক্ত করতে ব্যবহার করা যেতে পারে এমন নোডের তালিকা রয়েছে।

এই পদ্ধতিতে, আউটপুট হল প্রতি বৈশিষ্ট্য এবং প্রতি নোডের জন্য সর্বোত্তম বিভাজন, যাতে প্রতিটি নোডের জন্য (সকল সম্ভাব্য বৈশিষ্ট্যগুলির মধ্যে) সর্বোত্তম বিভাজন তৈরি করার জন্য এটি পরবর্তীতে একত্রিত করা প্রয়োজন।

আউটপুট আকারগুলি এমনভাবে সামঞ্জস্যপূর্ণ যে সমস্ত টেনসরের প্রথম মাত্রা একই এবং প্রতিটি বৈশিষ্ট্যের জন্য সম্ভাব্য বিভক্ত নোডের সংখ্যার সমান।

পাবলিক পদ্ধতি

স্ট্যাটিক বুস্টেড ট্রিস ক্যালকুলেট বেস্ট ফিচার স্প্লিটভি২
তৈরি করুন ( স্কোপ স্কোপ, Operand <Integer> nodeIdRange, Iterable< Operand <Float>> statsSummariesList, Operand <String> splitTypes, Operand <Integer> candidateFeatureIds, Operand <Float> l1, Operand <Float>, Operand <Float>, <Float> এবং গাছ অপারেন্ড <ফ্লোট> মিন নোডওয়েট, লং লজিট ডাইমেনশন)
একটি নতুন BoostedTreesCalculateBestFeatureSplitV2 অপারেশন মোড়ানো একটি ক্লাস তৈরি করার কারখানার পদ্ধতি।
আউটপুট <পূর্ণসংখ্যা>
বৈশিষ্ট্য মাত্রা ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সেরা বৈশিষ্ট্যের মাত্রা নির্দেশ করে যদি বৈশিষ্ট্যটি বহু-মাত্রা হয় তবে নির্দিষ্ট নোডগুলির জন্য বিভক্ত হতে পারে৷
আউটপুট <পূর্ণসংখ্যা>
বৈশিষ্ট্য আইডি ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডের জন্য সেরা বৈশিষ্ট্য আইডি নির্দেশ করে৷
আউটপুট <ফ্লোট>
লাভ ()
একটি র্যাঙ্ক 1 টেনসর নির্দিষ্ট নোডের জন্য বিভক্ত করার জন্য প্রতিটি বৈশিষ্ট্যের জন্য সেরা লাভ নির্দেশ করে।
আউটপুট <ফ্লোট>
leftNodeContribs ()
প্রতিটি বৈশিষ্ট্যের জন্য প্রদত্ত থ্রেশহোল্ড দ্বারা বাম দিকের প্যারেন্ট নোড (আউটপুট নোড_আইডি_লিস্টে টেনসর উপাদান দ্বারা প্রদত্ত) থেকে শাখা করা হলে বাম নোডগুলির অবদান নির্দেশ করে একটি র্যাঙ্ক 2 টেনসর৷
আউটপুট <পূর্ণসংখ্যা>
nodeIds ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সম্ভাব্য বিভক্ত নোড আইডি নির্দেশ করে৷
আউটপুট <ফ্লোট>
rightNodeContribs ()
একটি র‍্যাঙ্ক 2 টেনসর, লেফট_নোড_কন্ট্রিবস_লিস্টের মতো একই আকৃতি/পরিস্থিতি সহ, কিন্তু ঠিক যে মানটি ডান নোডের জন্য।
আউটপুট <স্ট্রিং>
splitWithDefaultDirections ()
একটি র্যাঙ্ক 1 টেনসর তথ্য অনুপস্থিত থাকলে কোন দিকে যেতে হবে তা নির্দেশ করে।
আউটপুট <পূর্ণসংখ্যা>
প্রান্তিক ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডে বিভক্ত হওয়ার জন্য (একটি প্রান্তিক হিসাবে) তুলনা করার জন্য বালতি আইডি নির্দেশ করে।

উত্তরাধিকারসূত্রে প্রাপ্ত পদ্ধতি

পাবলিক পদ্ধতি

পাবলিক স্ট্যাটিক BoostedTreesCalculateBestFeatureSplitV2 তৈরি করুন ( স্কোপ স্কোপ, Operand <Integer> nodeIdRange, Iterable< Operand <Float>> statsSummariesList, Operand <String> splitTypes, Operand <Integer>, Operand <Integer>, Operand > Operand Feature> Operand 2, অপারেন্ড < ফ্লোট > ট্রি কমপ্লেক্সিটি, অপারেন্ড <ফ্লোট> মিননোডওয়েট, লং লজিট ডাইমেনশন)

একটি নতুন BoostedTreesCalculateBestFeatureSplitV2 অপারেশন মোড়ানো একটি ক্লাস তৈরি করার কারখানার পদ্ধতি।

পরামিতি
সুযোগ বর্তমান সুযোগ
nodeIdRange একটি র‍্যাঙ্ক 1 টেনসর (আকৃতি=[2]) নোড আইডিগুলির পরিসর [প্রথম, শেষ) নির্দিষ্ট করতে `stats_summary_list`-এর মধ্যে প্রক্রিয়াকরণ করতে। নোডগুলি টেনসর দ্বারা নির্দিষ্ট করা দুটি নোডের মধ্যে পুনরাবৃত্তি করা হয়, যেমন `পরিসরে নোড_আইডির জন্য(নোড_আইডি_রেঞ্জ[0], নোড_আইডি_রেঞ্জ[1])` (উল্লেখ্য যে শেষ সূচক নোড_আইডি_রেঞ্জ[1] একচেটিয়া)।
পরিসংখ্যান সংক্ষিপ্ত তালিকা প্রতিটি বৈশিষ্ট্যের জন্য প্রতি নোড, প্রতি মাত্রা, প্রতি বালতিতে জমা হওয়া পরিসংখ্যান সারাংশের (গ্রেডিয়েন্ট/হেসিয়ান) জন্য র‌্যাঙ্ক 4 টেনসরের একটি তালিকা (#shape=[max_splits, feature_dims, bucket, stats_dims])। টেনসরের প্রথম মাত্রা হল সর্বোচ্চ সংখ্যক বিভাজন, এবং এইভাবে এর সমস্ত উপাদান ব্যবহার করা হবে না, তবে শুধুমাত্র node_ids দ্বারা নির্দিষ্ট করা সূচী ব্যবহার করা হবে।
বিভক্ত প্রকার একটি র্যাঙ্ক 1 টেনসর নির্দেশ করে যে এই অপটি বৈশিষ্ট্য প্রতি অসমতা বিভাজন বা সমতা বিভাজন সম্পাদন করবে কিনা।
প্রার্থী বৈশিষ্ট্য আইডি প্রতিটি বৈশিষ্ট্যের জন্য আইডি সহ 1 টেনসর র‌্যাঙ্ক করুন। এটি বৈশিষ্ট্যটির আসল আইডি।
l1 l1 পাতার ওজনের উপর নিয়মিতকরণ ফ্যাক্টর, প্রতি উদাহরণ ভিত্তিক।
l2 l2 পাতার ওজনের উপর নিয়মিতকরণ ফ্যাক্টর, প্রতি উদাহরণ ভিত্তিক।
গাছের জটিলতা লাভের সামঞ্জস্য, প্রতি পাতা ভিত্তিক।
minNodeWeight নোডকে বিভক্ত করার জন্য বিবেচনা করার আগে একটি নোডে হেসিয়ানের ন্যূনতম গড়।
logits মাত্রা লগিট এর মাত্রা, অর্থাৎ ক্লাসের সংখ্যা।
রিটার্নস
  • BoostedTreesCalculateBestFeatureSplitV2 এর একটি নতুন উদাহরণ

সর্বজনীন আউটপুট <পূর্ণসংখ্যা> বৈশিষ্ট্য মাত্রা ()

একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সেরা বৈশিষ্ট্যের মাত্রা নির্দেশ করে যদি বৈশিষ্ট্যটি বহু-মাত্রা হয় তবে নির্দিষ্ট নোডগুলির জন্য বিভক্ত হতে পারে৷ আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।

সর্বজনীন আউটপুট <পূর্ণসংখ্যা> বৈশিষ্ট্যআইডি ()

একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডের জন্য সেরা বৈশিষ্ট্য আইডি নির্দেশ করে৷ আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।

পাবলিক আউটপুট <ফ্লোট> লাভ ()

একটি র্যাঙ্ক 1 টেনসর নির্দিষ্ট নোডের জন্য বিভক্ত করার জন্য প্রতিটি বৈশিষ্ট্যের জন্য সেরা লাভ নির্দেশ করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।

সর্বজনীন আউটপুট <ফ্লোট> leftNodeContribs ()

প্রতিটি বৈশিষ্ট্যের জন্য প্রদত্ত থ্রেশহোল্ড দ্বারা বাম দিকের প্যারেন্ট নোড (আউটপুট নোড_আইডি_লিস্টে টেনসর উপাদান দ্বারা প্রদত্ত) থেকে শাখা করা হলে বাম নোডগুলির অবদান নির্দেশ করে একটি র্যাঙ্ক 2 টেনসর৷ এই মানটি প্যারেন্ট নোডের মান যোগ করে বাম নোডের মান তৈরি করতে ব্যবহার করা হবে। দ্বিতীয় মাত্রার আকার 1-মাত্রিক লগিটের জন্য 1, কিন্তু বহু-শ্রেণীর সমস্যার জন্য বড় হবে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।

সর্বজনীন আউটপুট <Integer> nodeIds ()

একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সম্ভাব্য বিভক্ত নোড আইডি নির্দেশ করে৷ তালিকার দৈর্ঘ্য হল num_features, কিন্তু প্রতিটি টেনসরের আকার আলাদা কারণ প্রতিটি বৈশিষ্ট্য বিভিন্ন সম্ভাব্য নোড প্রদান করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।

সর্বজনীন আউটপুট <ফ্লোট> rightNodeContribs ()

একটি র‍্যাঙ্ক 2 টেনসর, লেফট_নোড_কন্ট্রিবস_লিস্টের মতো একই আকৃতি/পরিস্থিতি সহ, কিন্তু ঠিক যে মানটি ডান নোডের জন্য।

সর্বজনীন আউটপুট <স্ট্রিং> splitWithDefaultDirections ()

একটি র্যাঙ্ক 1 টেনসর তথ্য অনুপস্থিত থাকলে কোন দিকে যেতে হবে তা নির্দেশ করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন। ডিফল্ট বাম রিটার্ন 0 এর সাথে অসমতা, ডিফল্ট ডান রিটার্ন 1 এর সাথে অসমতা, ডিফল্ট ডান রিটার্ন 2 এর সাথে সমতা।

সর্বজনীন আউটপুট <পূর্ণসংখ্যা> থ্রেশহোল্ড ()

একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডে বিভক্ত হওয়ার জন্য (একটি প্রান্তিক হিসাবে) তুলনা করার জন্য বালতি আইডি নির্দেশ করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।