şükela:  tümü | bugün soru sor
3 entry daha
  • random forest'da tree sayisini optimize etmek icin kullanilan yontemlerden birini yazayim out of bag sampling.

    elimizdeki data d diyelim.

    bootstrapping ile d_i farkli data olusturduk. tabi random forest'da baggingden ayrica olarak feature space'den de yine random sampling with replacement metoduyla bir feature subset secmeniz gerekiyor ve bunu da her d_i icin yapmak gerekiyor.

    (klasik bootstrapping nasil calisiyor? d'nin icinden random datum sectik ve onu d_1'e koyduk ve sectigimiz datum'u da d'nin icinden cikarmadik ama. bu islemi her d_i, d ile es sayida instances'a esit oldugunda durdurduk. isin istatistigine vuracak olursak her bir d_i, original datasetin 63.2%'sine tekabul edecek. "random sampling with replacement")

    sonraki adim her d_i icin decision tree ile bir class label olustur burada okeyiz.

    simdi out of bag nasil bir guzellik sagliyor ona bakalim.

    diyelim elimizde 3 instances'dan olusan bir training set var x1,x2 ve x3.

    bootstrap uyguladim ve 4 dataset olusturdum.
    d1= x1,x1,x2
    d2=x2,x3,x2
    d3=x1,x3,x3
    d4=x1,x2,x2

    her bir d_i icin bir tree olusturdum ve simdi testing yapmak istiyorum.

    leave-one-out evaluation gibi dusunulebilir bu noktada.

    x1'i test datum olarak sectim ve prediction yapacagim. simdi bu out of bag diyor ki bootstrapping ile olusturdugun training setlere(for each d_i) bak icinde x1 olanlari ele. icinde x1 olmayanlari kullanarak evaluation yap. out of bag sampling yaparak yapilan evaluation neredeyse train-test evaluation ile ayni sonucu verecek. bu da eline gecen errorlerden ne kadar tree'den sonra error'un degismiyor sana bunla ilgili bir fikir verecek. yani algoritman icin optimal tree sayisini belirlemene yardimci olacak.