প্রতিটি বৈশিষ্ট্যের জন্য লাভ গণনা করে এবং প্রতিটি নোডের জন্য সম্ভাব্য সর্বোত্তম বিভক্ত তথ্য প্রদান করে। যাইহোক, যদি কোন বিভক্ত না পাওয়া যায়, তাহলে সেই নোডের জন্য কোন বিভক্ত তথ্য ফেরত দেওয়া হয় না।
বিভক্ত তথ্য হল সেরা থ্রেশহোল্ড (বালতি আইডি), লাভ এবং প্রতিটি বৈশিষ্ট্যের জন্য নোড প্রতি বাম/ডান নোড অবদান।
এটা সম্ভব যে সমস্ত নোড প্রতিটি বৈশিষ্ট্যে বিভক্ত করা যাবে না। সুতরাং, সম্ভাব্য নোডগুলির তালিকা বৈশিষ্ট্যগুলির মধ্যে পৃথক হতে পারে। অতএব, আমরা প্রতিটি বৈশিষ্ট্যের জন্য `node_ids_list` ফেরত দিই, যেখানে এই বৈশিষ্ট্যটি বিভক্ত করতে ব্যবহার করা যেতে পারে এমন নোডের তালিকা রয়েছে।
এই পদ্ধতিতে, আউটপুট হল প্রতি বৈশিষ্ট্য এবং প্রতি নোডের জন্য সর্বোত্তম বিভাজন, যাতে প্রতিটি নোডের জন্য (সকল সম্ভাব্য বৈশিষ্ট্যগুলির মধ্যে) সর্বোত্তম বিভাজন তৈরি করার জন্য এটি পরবর্তীতে একত্রিত করা প্রয়োজন।
আউটপুট আকারগুলি এমনভাবে সামঞ্জস্যপূর্ণ যে সমস্ত টেনসরের প্রথম মাত্রা একই এবং প্রতিটি বৈশিষ্ট্যের জন্য সম্ভাব্য বিভক্ত নোডের সংখ্যার সমান।
ধ্রুবক
স্ট্রিং | OP_NAME | এই অপের নাম, টেনসরফ্লো কোর ইঞ্জিন দ্বারা পরিচিত |
পাবলিক পদ্ধতি
স্ট্যাটিক বুস্টেড ট্রিস ক্যালকুলেট বেস্ট ফিচার স্প্লিটভি২ | তৈরি করুন ( স্কোপ স্কোপ, অপারেন্ড < TInt32 > nodeIdRange, Iterable< Operand < TFloat32 >> statsSummariesList , Operand < TString > splitTypes, Operand < TInt32 > candidateFeatureIds, Operand < TFloat32 > Operand < TFloat32 , <TFloat32> ও 3F2> ও 3-অপারেন্ড 2 > গাছের জটিলতা, অপারেন্ড < TFloat32 > minNodeWeight, লং লজিটস ডাইমেনশন) একটি নতুন BoostedTreesCalculateBestFeatureSplitV2 অপারেশন মোড়ানো একটি ক্লাস তৈরি করার কারখানার পদ্ধতি। |
আউটপুট < TInt32 > | বৈশিষ্ট্য মাত্রা () একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সেরা বৈশিষ্ট্যের মাত্রা নির্দেশ করে যদি বৈশিষ্ট্যটি বহু-মাত্রা হয় তবে নির্দিষ্ট নোডগুলির জন্য বিভক্ত হতে পারে৷ |
আউটপুট < TInt32 > | বৈশিষ্ট্য আইডি () একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডের জন্য সেরা বৈশিষ্ট্য আইডি নির্দেশ করে৷ |
আউটপুট < TFloat32 > | লাভ () একটি র্যাঙ্ক 1 টেনসর নির্দিষ্ট নোডের জন্য বিভক্ত করার জন্য প্রতিটি বৈশিষ্ট্যের জন্য সেরা লাভ নির্দেশ করে। |
আউটপুট < TFloat32 > | leftNodeContribs () প্রতিটি বৈশিষ্ট্যের জন্য প্রদত্ত থ্রেশহোল্ড দ্বারা বাম দিকের প্যারেন্ট নোড (আউটপুট নোড_আইডি_লিস্টে টেনসর উপাদান দ্বারা প্রদত্ত) থেকে শাখা করা হলে বাম নোডগুলির অবদান নির্দেশ করে একটি র্যাঙ্ক 2 টেনসর৷ |
আউটপুট < TInt32 > | nodeIds () একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সম্ভাব্য বিভক্ত নোড আইডি নির্দেশ করে৷ |
আউটপুট < TFloat32 > | rightNodeContribs () একটি র্যাঙ্ক 2 টেনসর, লেফট_নোড_কন্ট্রিবস_লিস্টের মতো একই আকৃতি/পরিস্থিতি সহ, কিন্তু ঠিক যে মানটি ডান নোডের জন্য। |
আউটপুট < TString > | splitWithDefaultDirections () একটি র্যাঙ্ক 1 টেনসর তথ্য অনুপস্থিত থাকলে কোন দিকে যেতে হবে তা নির্দেশ করে। |
আউটপুট < TInt32 > | প্রান্তিক () একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডে বিভক্ত হওয়ার জন্য (একটি প্রান্তিক হিসাবে) তুলনা করার জন্য বালতি আইডি নির্দেশ করে। |
উত্তরাধিকারসূত্রে প্রাপ্ত পদ্ধতি
ধ্রুবক
সর্বজনীন স্ট্যাটিক চূড়ান্ত স্ট্রিং OP_NAME
এই অপের নাম, টেনসরফ্লো কোর ইঞ্জিন দ্বারা পরিচিত
পাবলিক পদ্ধতি
পাবলিক স্ট্যাটিক BoostedTreesCalculateBestFeatureSplitV2 তৈরি করুন ( স্কোপ স্কোপ, Operand < TInt32 > nodeIdRange, Iterable< Operand < TFloat32 >> statsSummariesList, Operand < TString > splitTypes, Operand < TString > splitTypes, Operand < TIntl2 > Operand < TInt3, এবং < TInt32 > প্রার্থী অপারেন্ড < TFloat32 > l2, Operand < TFloat32 > ট্রি কমপ্লেক্সিটি, অপারেন্ড < TFloat32 > minNodeWeight, Long logits Dimension)
একটি নতুন 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 এর একটি নতুন উদাহরণ
সর্বজনীন আউটপুট < TInt32 > বৈশিষ্ট্য মাত্রা ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সেরা বৈশিষ্ট্যের মাত্রা নির্দেশ করে যদি বৈশিষ্ট্যটি বহু-মাত্রা হয় তবে নির্দিষ্ট নোডগুলির জন্য বিভক্ত হতে পারে৷ আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।
সর্বজনীন আউটপুট < TInt32 > বৈশিষ্ট্যআইডি ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি নোডের জন্য সেরা বৈশিষ্ট্য আইডি নির্দেশ করে৷ আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।
পাবলিক আউটপুট < TFloat32 > লাভ ()
একটি র্যাঙ্ক 1 টেনসর নির্দিষ্ট নোডের জন্য বিভক্ত করার জন্য প্রতিটি বৈশিষ্ট্যের জন্য সেরা লাভ নির্দেশ করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।
সর্বজনীন আউটপুট < TFloat32 > leftNodeContribs ()
প্রতিটি বৈশিষ্ট্যের জন্য প্রদত্ত থ্রেশহোল্ড দ্বারা বাম দিকের প্যারেন্ট নোড (আউটপুট নোড_আইডি_লিস্টে টেনসর উপাদান দ্বারা প্রদত্ত) থেকে শাখা করা হলে বাম নোডগুলির অবদান নির্দেশ করে একটি র্যাঙ্ক 2 টেনসর৷ এই মানটি প্যারেন্ট নোডের মান যোগ করে বাম নোডের মান তৈরি করতে ব্যবহার করা হবে। দ্বিতীয় মাত্রার আকার 1-মাত্রিক লগিটের জন্য 1, কিন্তু বহু-শ্রেণীর সমস্যার জন্য বড় হবে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।
সর্বজনীন আউটপুট < TInt32 > nodeIds ()
একটি র্যাঙ্ক 1 টেনসর প্রতিটি বৈশিষ্ট্যের জন্য সম্ভাব্য বিভক্ত নোড আইডি নির্দেশ করে৷ তালিকার দৈর্ঘ্য হল num_features, কিন্তু প্রতিটি টেনসরের আকার আলাদা কারণ প্রতিটি বৈশিষ্ট্য বিভিন্ন সম্ভাব্য নোড প্রদান করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন।
সর্বজনীন আউটপুট < TFloat32 > rightNodeContribs ()
একটি র্যাঙ্ক 2 টেনসর, লেফট_নোড_কন্ট্রিবস_লিস্টের মতো একই আকৃতি/পরিস্থিতি সহ, কিন্তু ঠিক যে মানটি ডান নোডের জন্য।
সর্বজনীন আউটপুট < TString > splitWithDefaultDirections ()
একটি র্যাঙ্ক 1 টেনসর তথ্য অনুপস্থিত থাকলে কোন দিকে যেতে হবে তা নির্দেশ করে। আকার এবং আকারের মতো বিশদ বিবরণের জন্য উপরে দেখুন। ডিফল্ট বাম রিটার্ন 0 এর সাথে অসমতা, ডিফল্ট ডান রিটার্ন 1 এর সাথে অসমতা, ডিফল্ট ডান রিটার্ন 2 এর সাথে সমতা।