জিবিএম, এক্সজিবিস্ট, লাইটজিবিএম, ক্যাটবুস্টের মধ্যে গাণিতিক পার্থক্য?


33

মডেলটির জিবিডিটি পরিবারের বেশ কয়েকটি বাস্তবায়ন রয়েছে যেমন:

  • GBM
  • XGBoost
  • LightGBM
  • Catboost।

এই বিভিন্ন বাস্তবায়নের মধ্যে গাণিতিক পার্থক্যগুলি কী কী ?

এই বেঞ্চ চিহ্ন অনুসারে কেবলমাত্র তার ডিফল্ট প্যারামিটার ব্যবহার করেও ক্যাটবুস্ট অন্যান্য প্রয়োগগুলি কার্যকর করেছে বলে মনে হয় তবে এটি এখনও খুব ধীর।

আমার অনুমান যে ক্যাটবুস্ট ডামিফায়েড ভেরিয়েবল ব্যবহার করে না, সুতরাং প্রতিটি (শ্রেণিবদ্ধ) ভেরিয়েবলকে দেওয়া ওজন অন্যান্য বাস্তবায়নের তুলনায় আরও ভারসাম্যযুক্ত, সুতরাং উচ্চ-কার্ডিনালিটি ভেরিয়েবলগুলি অন্যের চেয়ে বেশি ওজন ধারণ করে না। এটি দুর্বল শ্রেণিবদ্ধ (কম কার্ডিনালিটি সহ) কিছু গাছে প্রবেশ করতে দেয়, সুতরাং আরও ভাল পারফরম্যান্স। তা ছাড়া আমার আর কোনও ব্যাখ্যা নেই।


রেফার্ড বেঞ্চমার্কটি ইয়ানডেক্স / ক্যাটবুস্ট দলের দ্বারা হয়, আমাদের স্বাধীন প্রয়োজন।
mrgloom

উত্তর:


27
My guess is that catboost doesn't use the dummified variables, so the weight given to each (categorical) variable is more balanced compared to the other implementations, so the high-cardinality variables don't have more weight than the others.

https://arxiv.org/abs/1706.09516

আপনি এই ইংরেজি ভাষার কাগজটি CATBoost গাণিতিক স্বতন্ত্রতা সম্পর্কে ইয়ানডেক্স দলের কাছ থেকে দেখতে চান।

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

আপনাকে নির্দিষ্ট এবং পূর্ণ উত্তর না দেওয়ার জন্য আমি দুঃখিত।

জিবিএম, এক্সজিবিস্টের মধ্যে গাণিতিক পার্থক্য

প্রথমে আমি পরামর্শ দিচ্ছি যে আপনি ফ্রেইডম্যানের একটি গ্র্যাডিয়েন্ট বুস্টিং মেশিন সম্পর্কে একটি কাগজ পড়বেন যা বিশেষত লিনিয়ার রেজিস্ট্রার মডেল, শ্রেণিবদ্ধী এবং সিদ্ধান্তের গাছের ক্ষেত্রে প্রয়োগ করা হয়। https://statweb.stanford.edu/~jhf/ftp/trebst.pdf

আমি এখানে বিশদ যেতে হবে না। এটি বিভিন্ন ধরণের লোকস (এল) এবং পরিবর্তনশীল গুরুত্বের ধারণার পাশাপাশি একটি ভাল পঠন read অবশ্যই এটি ক্ষয়ক্ষতি হ্রাসের অনুসরণের ক্ষেত্রে পরামিতিগুলির চেয়ে ফাংশনগুলিতে (নিম্ন-স্তরের মডেলগুলি) একটি বংশদ্ভুত পদ্ধতি প্রয়োগের একটি মাইলফলক কাগজ।

আপনি যদি এখানে দেখুন: https://arxiv.org/pdf/1603.02754.pdf

আপনি তিয়ানকি চেন এট আল দ্বারা এক্সজিবিস্ট মডেলের জন্য একটি গাণিতিক ভিগনেট খুঁজে পান। এখন এটি আকর্ষণীয় হয়ে ওঠে। এই মডেলের কয়েকটি গাণিতিক বিচ্যুতি ক্লাসিক ফ্রেডম্যানের গিগাবাইট গঠন করে:

  • নিয়মিত (দণ্ডিত) পরামিতি (এবং আমরা মনে করি যে বুস্টিংয়ের পরামিতিগুলি হ'ল ফাংশন, গাছ বা লিনিয়ার মডেল): এল 1 এবং এল 2 উপলব্ধ।

এখানে চিত্র বর্ণনা লিখুন

  • প্রক্রিয়াটি গতিতে দ্বিতীয় ডেরাইভেটিভ ব্যবহার করে (যদি এটি আমাকে সংশোধন করার আগে ব্যবহার করা হত)।

এই পয়েন্টে: CATBoost মধ্যে কোয়ান্টাইল ক্ষতির একটি বাস্তবায়ন সন্ধান করতে এখানে দেখুন, যা কার্যকর হয় এবং এটি প্রথম এবং দ্বিতীয় ডেরিভেটিভ উভয়ই সরবরাহ করে: https://github.com/catboost/catboost/blob/master/catboost/libs/algo/ error_functions.h

class TQuantileError : public IDerCalcer<TQuantileError, /*StoreExpApproxParam*/ false> { public:
    const double QUANTILE_DER2 = 0.0;

    double Alpha;
    SAVELOAD(Alpha);

    explicit TQuantileError(bool storeExpApprox)
        : Alpha(0.5)
    {
        CB_ENSURE(storeExpApprox == StoreExpApprox, "Approx format does not match");
    }

    TQuantileError(double alpha, bool storeExpApprox)
        : Alpha(alpha)
    {
        Y_ASSERT(Alpha > -1e-6 && Alpha < 1.0 + 1e-6);
        CB_ENSURE(storeExpApprox == StoreExpApprox, "Approx format does not match");
    }

    double CalcDer(double approx, float target) const {
        return (target - approx > 0) ? Alpha : -(1 - Alpha);
    }

    double CalcDer2(double = 0, float = 0) const {
        return QUANTILE_DER2;
    } };

আপনি যদি এক্সজিবিস্টে এই দরকারী এল 1 ক্ষতি ফাংশনটি খুঁজে না পান তবে আপনি এক্সজিবি-র জন্য লিখিত কিছু কাস্টম লস ফাংশনগুলির সাথে ইয়ানডেক্সের বাস্তবায়নটির তুলনা করার চেষ্টা করতে পারেন।

  • তদতিরিক্ত, সিএটিবিস্ট শ্রেণিবদ্ধ বৈশিষ্ট্যগুলির সাথে দুর্দান্তভাবে কাজ করে, যখন এক্সজিবিস্ট কেবল সংখ্যার ইনপুট গ্রহণ করে।

এই লিঙ্কটি বিবেচনা করুন: https://tech.yandex.com/catboost/doc/dg/concepts/algorithm-main-stages_cat-to-numberic-docpage/#algorithm-main-stages_cat-to-numberic

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

আমার হয়ে গেছে। আমি লাইটজিবিএম ব্যবহার করি না, সুতরাং এটিতে কোনও আলো ফেলতে পারি না।


5
আমি ভাবছি কেন আরও ভাল উত্তর না দিয়েই কেন কেউ উত্তরকে হ্রাস করবেন? অজ্ঞাতনামা ডাউনভোটিংয়ের বাইরে কোনও ইনপুট দেওয়ার জন্য মঞ্চে স্বাগতম, স্যার।
অ্যালেক্সি মনিকাকে

এটি ক্যাটবুস্টের জন্য আমার প্রশ্নের হুবহু প্রতিক্রিয়া জানায়। আপনার কাছে লাইটজিবিএম, এক্সজিবিস্ট এবং জিবিএম এর জন্য কোনও পরিপূরক উপকরণ রয়েছে?
মেটেরিয়েট

হ্যাঁ, আমি আমার উত্তর মুগ্ধ করব। আপনি কি হার্ড গণিতের সাথে ভালভাবে মোকাবেলা করেন বা বরং স্বজ্ঞাত ব্যাখ্যাগুলি পছন্দ করেন?
অ্যালেক্সি

আপনাকে ধন্যবাদ, আমি উভয়ের সাথেই ভালভাবে মোকাবিলা করতে পারি, স্বজ্ঞাত ব্যাখ্যাটি পাওয়া তাত্ক্ষণিক, এবং গাণিতিক বিশদ আরও বেশি সময় নেয় তবে আরও বোঝার / বাস্তবায়নের জন্য এটি অত্যন্ত সৌভাগ্যবান।

1
উত্তর সমৃদ্ধ।
অ্যালেক্সি মনিকাকে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.