Bizimle iletişime geçin

AI 101

Gradyan Yükseltme nedir?

mm

Veri bilimi yarışmalarında son derece yararlı olmayı başaran yaygın bir makine öğrenimi modeli türü, gradyan artırma modelidir. Gradyan artırma temel olarak zayıf öğrenme modellerini güçlü öğrenme modellerine dönüştürme sürecidir. Peki bu tam olarak nasıl gerçekleştirilir? Gradyan artırma algoritmalarına daha yakından bakalım ve bir gradyan artırma modelinin zayıf öğrenenleri güçlü öğrenenlere nasıl dönüştürdüğünü daha iyi anlayalım.

Degrade Yükseltmeyi Tanımlama

Bu makale, algoritmaların altında yatan matematiğin pek çok dökümü olmadan, gradyan artırmanın ne olduğu konusunda size iyi bir sezgi vermeyi amaçlamaktadır. Gradyan artırmanın yüksek düzeyde nasıl çalıştığını anladığınızda, daha derine inmeye ve bunu mümkün kılan matematiği keşfetmeye teşvik edilirsiniz.

Bir öğrenciyi "desteklemenin" ne anlama geldiğini tanımlayarak başlayalım. Zayıf öğrenenler, öğrenme modelinin özellikleri ayarlanarak güçlü öğrenicilere dönüştürülür. Tam olarak hangi öğrenme algoritması güçlendiriliyor?

Yükseltme modelleri, başka bir yaygın makine öğrenimi modelini artırarak çalışır. bir karar ağacı.

A karar ağacı model, bir veri kümesini giderek daha küçük parçalara bölerek çalışır ve alt kümeler daha fazla bölünemediğinde sonuç, düğümleri ve yaprakları olan bir ağaç olur. Karar ağacındaki düğümler, veri noktalarıyla ilgili kararların farklı filtreleme kriterleri kullanılarak alındığı yerdir. Karar ağacındaki yapraklar sınıflandırılmış veri noktalarıdır. Karar ağacı algoritmaları hem sayısal hem de kategorik verileri işleyebilir ve ağaçtaki bölünmeler belirli değişkenlere/özelliklere dayalıdır.

Takviye modellerinin nasıl eğitildiğini gösteren resim.
Fotoğraf: Wikimedia Commons aracılığıyla SeattleDataBuy, CC 4.0 (https://commons.wikimedia.org/wiki/File:Boosting.png)

Bir tür artırma algoritması, AdaBoost algoritması. AdaBoost algoritmaları, bir karar ağacı modeli eğiterek ve her gözleme eşit ağırlık atayarak başlar. İlk ağacın doğruluğu değerlendirildikten sonra, farklı gözlemler için ağırlıklar ayarlanır. Sınıflandırılması kolay olan gözlemlerin ağırlıkları düşürülürken, sınıflandırılması zor olan gözlemlerin ağırlıkları artırılmıştır. İkinci ağacın tahminlerinin birinci ağacın tahminlerinden daha doğru olması amacıyla bu düzeltilmiş ağırlıklar kullanılarak ikinci bir ağaç oluşturulur.

Model artık orijinal ağaç ve yeni ağaç (veya Ağaç 1 + Ağaç 2) için tahminlerden oluşmaktadır. Sınıflandırma doğruluğu, yeni modele göre bir kez daha değerlendirilir. Model için hesaplanan hataya göre üçüncü bir ağaç oluşturulur ve ağırlıklar bir kez daha ayarlanır. Bu süreç, belirli sayıda yineleme için devam eder ve nihai model, önceden oluşturulmuş tüm ağaçlar tarafından yapılan tahminlerin ağırlıklı toplamını kullanan bir topluluk modelidir.

Yukarıda açıklanan süreç, Karar Ağaçlarını ve temel öngörücüleri/modelleri kullanır, ancak birçok standart sınıflandırıcı ve regresör modeli gibi çok çeşitli modellerle bir güçlendirme yaklaşımı gerçekleştirilebilir. Anlaşılması gereken anahtar kavramlar, sonraki tahmin edicilerin öncekilerin yaptığı hatalardan ders alması ve tahmin edicilerin sıralı olarak oluşturulmasıdır.

Boosting algoritmalarının birincil avantajı, diğer makine öğrenimi modelleriyle karşılaştırıldığında mevcut tahminleri bulmanın daha az zaman almasıdır. Bununla birlikte, aşırı uydurmaya eğilimli olduklarından, artırma algoritmaları kullanılırken dikkatli olunmalıdır.

Gradyan Arttırma

Şimdi en yaygın boost algoritmalarından birine bakacağız. Gradient Boosting Modelleri (GBM) yüksek doğruluklarıyla bilinirler ve AdaBoost'ta kullanılan genel ilkeleri desteklerler.

Gradient Boosting Model ile AdaBoost arasındaki temel fark, GBM'lerin hangi öğrencilerin veri noktalarını yanlış tanımladığını hesaplamak için farklı bir yöntem kullanmasıdır. AdaBoost, ağır ağırlıklı veri noktalarını inceleyerek bir modelin nerede düşük performans gösterdiğini hesaplar. Bu arada GBM'ler, öğrenenlerin doğruluğunu belirlemek için gradyanları kullanır ve bir modele bir kayıp işlevi uygular. Kayıp işlevleri, bir modelin veri kümesine uymasının doğruluğunu ölçmenin, bir hatayı hesaplamanın ve bu hatayı azaltmak için modeli optimize etmenin bir yoludur. GBM'ler, kullanıcının istenen hedefe göre belirli bir kayıp işlevini optimize etmesine izin verir.

En yaygın kayıp fonksiyonunu alarak - Ortalama Kare Hatası (MSE) - Örnek olarak, dereceli alçalma kaybın minimum olduğu değerleri bulmayı amaçlayan önceden tanımlanmış bir öğrenme oranına dayalı olarak tahminleri güncellemek için kullanılır.

Daha net hale getirmek için:

Yeni model tahminleri = çıktı değişkenleri – eski kusurlu tahminler.

Daha istatistiksel bir anlamda, GBM'ler bir modelin kalıntılarında ilgili kalıpları bulmayı, modeli kalıba uyacak şekilde ayarlamayı ve artıkları mümkün olduğunca sıfıra yaklaştırmayı amaçlar. Modelin tahminleri üzerinde bir regresyon yapacak olsaydınız, kalıntılar 0 civarında dağıtılırdı (mükemmel uyum) ve GBM'ler artıklar içinde modeller buluyor ve modeli bu modeller etrafında güncelliyor.

Başka bir deyişle, tüm kalıntıların toplamı 0'a mümkün olduğunca yakın olacak şekilde tahminler güncellenir, yani tahmin edilen değerler gerçek değerlere çok yakın olacaktır.

Bir GBM tarafından çok çeşitli başka kayıp fonksiyonlarının (logaritmik kayıp gibi) kullanılabileceğini unutmayın. Basitlik amacıyla MSE yukarıda seçilmiştir.

Gradient Boost Modellerinde Varyasyonlar

Gradient Boosting Modelleri, bir veri kümesine gereğinden fazla uyma eğiliminde olan açgözlü algoritmalardır. Buna karşı korunabilir birkaç farklı yöntem bu bir GBM'nin performansını artırabilir.

GBM'ler dört farklı yöntemle düzenlenebilir: Büzülme, Ağaç Kısıtlamaları, Stokastik Gradient Boosting ve Cezalandırılmış Öğrenme.

büzülme

Daha önce belirtildiği gibi, GBM'lerde tahminler sıralı bir şekilde toplanır. "Büzülme"de, her ağacın toplam toplama yaptığı eklemeler ayarlanır. Algoritmanın öğrenme hızını yavaşlatan ağırlıklar uygulanır, bu da modele daha fazla ağaç eklenmesini gerektirir, bu da genellikle modelin sağlamlığını ve performansını artırır. Takas, modelin eğitilmesinin daha uzun sürmesidir.

Ağaç Kısıtlamaları

Ağaca daha fazla derinlik eklemek veya ağaçtaki düğümlerin veya yaprakların sayısını artırmak gibi çeşitli ince ayarlarla ağacı kısıtlamak, modelin aşırı uyum sağlamasını zorlaştırabilir. Bölünme başına minimum gözlem sayısına bir kısıtlama getirmenin de benzer bir etkisi vardır. Bir kez daha, takas, modelin eğitilmesinin daha uzun süreceği yönündedir.

Rasgele örnekleme

Bireysel öğrenciler, eğitim veri setinin rastgele seçilen alt örneklerine dayalı olarak, stokastik bir süreçle oluşturulabilir. Bu, aşırı uyuma karşı koruma sağlayan ağaçlar arasındaki korelasyonları azaltma etkisine sahiptir. Veri kümesi, ağaçları oluşturmadan veya ağaçta bir bölünmeyi düşünmeden önce alt damgalanabilir.

Cezalandırılmış Öğrenme

Ağacın yapısını sınırlayarak modeli sınırlamanın ötesinde, bir regresyon ağacı kullanmak mümkündür. Regresyon ağaçlarının yaprakların her birine iliştirilmiş sayısal değerleri vardır ve bunlar ağırlık işlevi görür ve L1 ve L2 düzenlemesi gibi yaygın düzenleme işlevleriyle ayarlanabilir.

Uzmanlık alanlarına sahip blogcu ve programcı Makine öğrenmesi ve Derin Öğrenme konular. Daniel, başkalarının yapay zekanın gücünü toplumsal fayda için kullanmasına yardım etmeyi umuyor.