এক্সজিবিস্ট স্কলারন গ্রেডিয়েন্টবুস্টিং ক্লাসিফায়ারের চেয়ে এত দ্রুত কেন?


29

আমি 100 সংখ্যার বৈশিষ্ট্য সহ 50 কে উদাহরণের মাধ্যমে গ্রেডিয়েন্ট বুস্টিং মডেলটি প্রশিক্ষণের চেষ্টা করছি। XGBClassifierআমার মেশিনে 43 সেকেন্ডের মধ্যে 500 গাছ হ্যান্ডল করে, যখন GradientBoostingClassifier1 মিনিট 2 সেকেন্ডের মধ্যে কেবল 10 টি গাছ (!) পরিচালনা করে :( আমি কয়েক ঘন্টা লাগবে বলে 500 গাছ বাড়ানোর চেষ্টা করতে বিরক্ত করিনি। আমি একই learning_rateএবং max_depthসেটিংস ব্যবহার করছি , নিচে দেখ.

এক্সজিবিস্টকে এত তাড়াতাড়ি কী করে তোলে? এটি স্কেলার্ন ছেলেরা জানেন না এমন গ্রেডিয়েন্ট বৃদ্ধির জন্য কিছু অভিনব বাস্তবায়ন ব্যবহার করে? নাকি এটি "কোণে কাটা" এবং অগভীর গাছ বাড়ছে?

PS আমি এই আলোচনাটি সম্পর্কে অবগত: https://www.kaggle.com/c/higgs-boson/forums/t/10335/xgboost-post-compression-survey কিন্তু সেখানে উত্তর পেতে পারেনি ...

XGBClassifier(base_score=0.5, colsample_bylevel=1, colsample_bytree=1,
gamma=0, learning_rate=0.05, max_delta_step=0, max_depth=10,
min_child_weight=1, missing=None, n_estimators=500, nthread=-1,
objective='binary:logistic', reg_alpha=0, reg_lambda=1,
scale_pos_weight=1, seed=0, silent=True, subsample=1)

GradientBoostingClassifier(init=None, learning_rate=0.05, loss='deviance',
max_depth=10, max_features=None, max_leaf_nodes=None,
min_samples_leaf=1, min_samples_split=2,
min_weight_fraction_leaf=0.0, n_estimators=10,
presort='auto', random_state=None, subsample=1.0, verbose=0,
warm_start=False)

2
অনুমান করুন শিগগিরই আমি এটিকে পুনরায় প্রকাশ করতে হবে "এক্সজিবিস্টের চেয়ে লাইটজিবিএম এত দ্রুত কেন?" :)
— ইহাদানী

উত্তর:


25

×

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

এক্সজিবিস্টও এ জাতীয় বিভাজন পয়েন্টগুলির মূল্যায়নের জন্য প্রায় অনুমান ব্যবহার করে। আমি জানি না যে স্কাইরিটি শিখিট শিখলে এই বিভাজনকে মূল্যায়ন করে, তবে এটি বাকী সময়ের পার্থক্য ব্যাখ্যা করতে পারে।


অ্যাড্রেসিং মন্তব্য

বিভক্ত পয়েন্টের মূল্যায়ন সম্পর্কিত

যাইহোক, "এক্সজিবিস্ট যেমন বিভক্ত পয়েন্টগুলির মূল্যায়নের জন্য একটি সান্নিধ্য ব্যবহার করে" এর অর্থ কী? আমি যতদূর বুঝতে পেরেছি, মূল্যায়নের জন্য তারা অনুকূল উদ্দেশ্যমূলক কার্যক্রমে হ্রাসটি যথাযথভাবে ব্যবহার করছে, যেমনটি কাগজে EQ (7) এ প্রদর্শিত হবে।

L(y,Hi−1+hi)LyHi−1hiLLHi−1i

L(y,Hi−1+hi)L


ধন্যবাদ @ উইঙ্কস, আমি পত্রটি পড়েছি এবং বিভক্ত প্রার্থী বাছাইয়ের জন্য আনুমানিক অ্যালগরিদম বলতে আপনি কী বোঝাতে চেয়েছিলেন তা দেখেছি। তবে, "এক্সজিবিস্ট যেমন বিভক্ত পয়েন্টগুলির মূল্যায়নের জন্য একটি সীমাবদ্ধতা ব্যবহার করে" বলতে কী বোঝায়? আমি যতদূর বুঝতে পেরেছি, মূল্যায়নের জন্য তারা অনুকূল উদ্দেশ্যমূলক কার্যক্রমে যথাযথ হ্রাস ব্যবহার করছে, যেমনটি কাগজে EQ (7) এ প্রদর্শিত হয়।
— ihadanny

আমি আপনার মন্তব্যে ঠিকঠাক করতে আমার উত্তর সম্পাদনা করেছি। বিভক্ত পয়েন্টগুলির মূল্যায়ন সম্পর্কে আরও বিশদ জানতে এই প্রশ্নোত্তরটি দেখুন Check
— উইঙ্কস

অনেক ধন্যবাদ, @ উইঙ্কস! আপনি যদি আমার আরও বিস্তৃত প্রশ্নের উত্তর এখানে দিতে পারেন তবে দুর্দান্ত হবেন: ডাটাসায়েন্স.স্ট্যাকেক্সেঞ্জারওয়েজ
— এম।

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