1. Nauka
  2. /
  3. Kursy
  4. /
  5. Modelowanie ryzyka kredytowego w R

Connected

ćwiczenie

Obliczanie zysku dla drzewa

W filmie widziałeś(-aś), jak miara Giniego jest używana do wyznaczania optymalnego podziału w drzewie. Teraz obliczysz zysk dla drzewa wczytanego do twojego środowiska pracy.

Zbiór danych zawiera 500 przypadków, z czego 89 to przypadki defaultu. Dało to wartość Giniego równą 0,292632 w węźle korzeniowym. Dla przypomnienia: Gini dla danego węzła = 2 * odsetek defaultów w tym węźle * odsetek przypadków bez defaultu w tym węźle. Poniższy kod ilustruje tę zasadę.

gini_root <- 2 * (89 / 500) * (411 / 500)

Skorzystasz z tych miar Giniego, aby obliczyć zysk węzłów liściowych względem węzła korzeniowego. Poniższy kod pokazuje, jak użyć obliczonych miar Giniego do wyznaczenia zysku węzła.

Gain = gini_root - (prop(cases left leaf) * gini_left) - (prop(cases right leaf * gini_right))

Oblicz wartość Giniego dla lewego i prawego węzła liściowego oraz zysk obu węzłów liściowych względem węzła korzeniowego. Obiekt zawierający drzewo to small_tree.

Instrukcje

100 XP
  • Obliczenie Giniego dla węzła korzeniowego jest już podane.
  • Oblicz miarę Giniego dla lewego węzła liściowego.
  • Oblicz miarę Giniego dla prawego węzła liściowego.
  • Oblicz zysk jako różnicę między Ginim węzła korzeniowego a ważonymi miarami Giniego węzłów liściowych.
  • Informacje dotyczące podziału w tym drzewie możesz znaleźć za pomocą $split i obiektu drzewa small_tree. Zamiast zysku sprawdź tutaj kolumnę improve. improve to alternatywna miara zysku – otrzymuje się ją, mnożąc zysk przez liczbę przypadków w zbiorze danych. Upewnij się, że obiekt improve (kod jest podany) ma taką samą wartość jak w small_tree$split.