ओवरफ़िटिंग, रेगुलराइज़ेशन, और शुरुआती रोक

बिना किसी क्रम के जंगलों के उलट, नीचे की ओर उगे हुए ग्रेडिएंट पेड़, पेड़ से ज़्यादा कर सकते हैं. इसलिए, न्यूरल नेटवर्क की तरह ही, पुष्टि करने वाले डेटासेट का इस्तेमाल करके, सामान्य बनाने की सुविधा लागू की जा सकती है.

उदाहरण के लिए, नीचे दिए गए आंकड़े ट्रेनिंग और पुष्टि के लिए, वज़न और सटीक जानकारी वाले कर्व दिखाते हैं. ऐसा तब किया जाता है, जब GBT मॉडल की ट्रेनिंग की जाती है. ध्यान दें कि कर्व कितने अलग-अलग होते हैं, जो बताता है कि ज़्यादा उतार-चढ़ाव हैं.

ट्रेनिंग में कमी और पुष्टि न कर पाने के प्लॉट बनाम फ़ैसला लेने वाले पेड़ों की संख्या. जैसे-जैसे डिसीज़न ट्री बढ़ता जाता है, ट्रेनिंग का लेवल भी बढ़ता जाता है. हालांकि, पुष्टि करने में होने वाली कमी सिर्फ़
  40 फ़ैसले वाले पेड़ों तक घटती है. 40 से ज़्यादा फै़सले होने के बाद, पुष्टि करने की प्रोसेस में असल में बढ़ोतरी होती है. 400 फ़ैसला लेने वाले पेड़ों के साथ, ट्रेनिंग से जुड़ी
  कमी और पुष्टि के अंतर के बीच का अंतर बहुत
  ज़्यादा है.

चित्र 29. लोगों की संख्या बनाम फ़ैसला लेने वाले लोगों की संख्या.

 

ट्रेनिंग के लिए सटीक जानकारी और पुष्टि करने के लिए सटीक जानकारी के प्लॉट बनाम फ़ैसला लेने वाले पेड़ों की संख्या. जैसे-जैसे फ़ैसले लेने वाले पेड़ों की संख्या बढ़ती है, वैसे-वैसे ट्रेनिंग का दायरा बढ़ता जाता है.
  यह संख्या 400 फ़ैसला लेने वाले पेड़ों के करीब 1.0 तक पहुंच जाती है. 40 फ़ैसले लेने वाले पेड़ों पर, पुष्टि करने का आंकड़ा 0.86 तक बढ़ जाता है और फिर 400 फ़ैसला लेने वाले पेड़ों में यह अनुरोधों की संख्या करीब 0.83 हो जाती है.

तीसरी इमेज. सही बनाम बनाम फ़ैसला लेने वाले पेड़.

 

ग्रेडिएंट बूस्टेड ट्री के लिए सामान्य रेगुलराइज़ेशन पैरामीटर में ये शामिल हैं:

  • पेड़ की ज़्यादा से ज़्यादा गहराई.
  • कम की गई दर.
  • हर नोड पर जांचे गए एट्रिब्यूट का अनुपात.
  • नुकसान पर L1 और L2 गुणांक.

ध्यान दें कि फ़ैसला लेने वाले पेड़ आम तौर पर दूसरे जंगलों के मॉडल के मुकाबले ज़्यादा छोटे होते हैं. डिफ़ॉल्ट रूप से, TF-DF के ग्रेडिएंट बूस्ट किए गए पेड़ों की गहराई 6 तक बढ़ाई गई. पेड़ बहुत कम होते हैं, इसलिए हर लीफ़ के उदाहरणों की संख्या कम होती है. इसलिए, इन्हें आम तौर पर इस्तेमाल नहीं किया जाता.

ट्रेनिंग के उदाहरणों की संख्या कम होने पर, पुष्टि वाले डेटासेट की ज़रूरत पड़ती है. इसलिए, क्रॉस-पुष्टि करने वाले लूप में ग्रेडिएंट बूस्टेड ट्री के इस्तेमाल को आम तौर पर ट्रेनिंग दी जाती है. अगर किसी मॉडल को ज़्यादा फ़िट नहीं किया जाता है, तो उसे शुरुआती समय में बंद किया जा सकता है.

इस्तेमाल से जुड़ा उदाहरण

पिछले चैप्टर में, हमने एक छोटे डेटासेट पर किसी रैंडम जंगल को ट्रेनिंग दी थी. इस उदाहरण में, हम बस बिना किसी क्रम के जंगल के मॉडल को ग्रेडिएंट बूस्ट किए गए ट्री मॉडल से बदलें:

model = tfdf.keras.GradientBoostedTreesModel()

# Part of the training dataset will be used as validation (and removed
# from training).
model.fit(tf_train_dataset)

# The user provides the validation dataset.
model.fit(tf_train_dataset, validation_data=tf_valid_dataset)

# Disable early stopping and the validation dataset. All the examples are
# used for training.
model.fit(
   tf_train_dataset,
   validation_ratio=0.0,
   early_stopping="NONE")
# Note: When "validation_ratio=0", early stopping is automatically disabled,
# so early_stopping="NONE" is redundant here.

इस्तेमाल और सीमाएं

ग्रेडिएंट बूस्टेड पेड़ के कुछ फ़ायदे और नुकसान हैं.

फ़ायदे

  • फ़ैसला लेने वाले ट्री की तरह ही, नेटिव में नंबर और कैटगरी वाली सुविधाओं का इस्तेमाल किया जाता है. साथ ही, इन सुविधाओं को अक्सर प्री-प्रोसेसिंग की ज़रूरत नहीं होती.
  • ग्रेडिएंट बूस्टेड ट्री में डिफ़ॉल्ट हाइपरपैरामीटर होते हैं, जो अक्सर शानदार नतीजे देते हैं. फिर भी, उन हाइपरपैरामीटर को ट्यून करने से मॉडल में काफ़ी सुधार हो सकता है.
  • आम तौर पर, ग्रेडिएंट बूस्ट किए गए ट्री मॉडल छोटे होते हैं (नोड की संख्या और मेमोरी में) और तेज़ी से चलते हैं (अक्सर सिर्फ़ एक या कुछ μs / उदाहरण).

नुकसान

  • फ़ैसला लेने वाले ट्री को क्रम में ट्रेनिंग दी जानी चाहिए. इससे ट्रेनिंग धीमी हो सकती है. हालांकि, ट्रेनिंग के लिए इस्तेमाल किए जाने वाले ट्रैफ़िक की रफ़्तार, बंद होने वाले छोटे पेड़ों की वजह से कम हो सकती है.
  • किसी भी क्रम में लगे जंगलों की तरह, ग्रेडिएंट किए हुए पेड़ों को बढ़ावा देने से अंदर के प्रतिनिधित्व को नहीं सीखा जा सकता. हर फ़ैसला ट्री (और हर फ़ैसला लेने वाले ट्री की हर ब्रांच) को डेटासेट का पैटर्न फिर से सीखना होगा. कुछ डेटासेट में, खास तौर पर बिना स्ट्रक्चर्ड डेटा वाले डेटासेट (उदाहरण के लिए, इमेज, टेक्स्ट) की वजह से ग्रेडिएंट बूस्ट, दूसरे तरीकों से खराब नतीजे दिखाने के लिए करते हैं.