Eksploracja danych. Wykªad 8 Drzewa decyzyjne 1 / 260

Wielkość: px
Rozpocząć pokaz od strony:

Download "Eksploracja danych. Wykªad 8 Drzewa decyzyjne 1 / 260"

Transkrypt

1 Eksploracja danych Wykªad 8 Drzewa decyzyjne 1 / 260

2 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 2 / 260

3 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 3 / 260

4 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 4 / 260

5 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 5 / 260

6 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 6 / 260

7 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 7 / 260

8 Drzewa decyzyjne Drzewa decyzyjne (okre±lane równie» jako drzewa klasykacyjne lub regresyjne) s tradycyjnym narz dziem eksploracji danych i klasycznym algorytmem uczenia maszynowego. Zaliczamy je do metod klasykacji. Od ich powstania, od roku 1980, drzewa decyzyjne byªo szeroko stosowanym modelem uczenia maszynowego w ED. Ich atrakcyjno± le»y w prostocie otrzymanego modelu, gdzie drzewo decyzyjne (przynajmniej te, które nie s zbyt du»e) jest do± ªatwe do przejrzenia, zrozumienia, i, co najwa»niejsze, wyja±nienia. Drzewa decyzyjne nie zawsze dostarczaj najlepsze wyniki, stanowi kompromis mi dzy wydajno±ci i prostot wyja±nienia. Struktura drzewa jest stosowana w wielu ró»nych dziedzinach, m. in. w: medycynie, logice, zarz dzaniu i ekonomii 8 / 260

9 Drzewa decyzyjne Schemat drzewa decyzyjnego Z ka»dym w zªem wewn trznym w drzewie b dzie zwi zany pewien test lub zapytanie, które okre±la gaª ¹. Li±cie zawieraj decyzje. 9 / 260

10 Drzewa decyzyjne Schemat drzewa decyzyjnego Z ka»dym w zªem wewn trznym w drzewie b dzie zwi zany pewien test lub zapytanie, które okre±la gaª ¹. Li±cie zawieraj decyzje. 10 / 260

11 Drzewa decyzyjne Schemat drzewa decyzyjnego Z ka»dym w zªem wewn trznym w drzewie b dzie zwi zany pewien test lub zapytanie, które okre±la gaª ¹. Li±cie zawieraj decyzje. 11 / 260

12 Drzewa decyzyjne Rozwa»my drzewo decyzyjne narysowane poni»ej. Proste drzewo decyzyjne dla danych weather Oznacza ono wiedz o obserwacjach warunków pogodowych jednego dnia i obserwacji dotycz cej deszczu nast pnego dnia. Warto±ci No i Yes w li±ciach drzewa decyzyjnego stanowi decyzje. 12 / 260

13 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather W zeª gªówny drzewa decyzyjnego testuje ±redni poziom ci±nienia nad poziomem morza o 15:00 (3 pm - Pressure3pm). Gdy ta zmienna dla obserwacji ma warto± wi ksz ni» lub równ 1012hPa, to przechodzimy w dóª z lewej strony drzewa. 13 / 260

14 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Kolejnym testem na dole z lewej strony drzewa jest wysoko±c pokrywy chmur zaobserwowana o 15 (3 pm - Cloud3pm). Je±li to ona mniejsza ni» 8 okta (miara zachmurzenia 0-8, czyli mniej ni» w peªni zachmurzone niebo), to obserwujemy,»e na nast pny dzie«na ogóª nie pada (No). 14 / 260

15 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Je±li obserwujemy peªne zachmurzenie o 15:00 (tj. Cloud3pm wynosi 8 okta - maksymalna warto± tej zmiennej), to ogólnie widzimy,»e pada nast puj cego dnia (Yes). W ten sposób jeste±my skªonni przewidzie, mo»liwe opady, na podstawie warunków pogodowych z bie» cego dnia. 15 / 260

16 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Je±li obserwujemy peªne zachmurzenie o 15:00 (tj. Cloud3pm wynosi 8 okta - maksymalna warto± tej zmiennej), to ogólnie widzimy,»e pada nast puj cego dnia (Yes). W ten sposób jeste±my skªonni przewidzie, mo»liwe opady, na podstawie warunków pogodowych z bie» cego dnia. 16 / 260

17 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Zaczynamy znów nasz interpretacj modelu od korzenia. Je±li zmienna Pressure3pm ma warto± mniejsz ni» 1012hPa i Sunshine jest wi ksza lub równa ni» 9 (tj. zaobserwowano co najmniej 9 godzin sªonecznych podczas dna), to nie nale»y si spodziewa jutro deszczu. Je±li rejestrujemy 9 lub mniej godzin sªonecznych, to mo»emy si spodziewa,»e b dzie pada jutro. 17 / 260

18 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Zaczynamy znów nasz interpretacj modelu od korzenia. Je±li zmienna Pressure3pm ma warto± mniejsz ni» 1012hPa i Sunshine jest wi ksza lub równa ni» 9 (tj. zaobserwowano co najmniej 9 godzin sªonecznych podczas dna), to nie nale»y si spodziewa jutro deszczu. Je±li rejestrujemy 9 lub mniej godzin sªonecznych, to mo»emy si spodziewa,»e b dzie pada jutro. 18 / 260

19 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Wiedza b d¹ model wyra»one w j zyku modelowania mog by tªumaczone na inny j zyk, np. programowania. Oczywi±cie dotyczy to równie» drzewa decyzyjnego. Jednym z tªumacze«jest zestaw reguª. 19 / 260

20 Drzewa decyzyjne Proste drzewo decyzyjne dla danych weather Wiedza b d¹ model wyra»one w j zyku modelowania mog by tªumaczone na inny j zyk, np. programowania. Oczywi±cie dotyczy to równie» drzewa decyzyjnego. Jednym z tªumacze«jest zestaw reguª. 20 / 260

21 Drzewa decyzyjne Drzewo decyzyjne tªumaczymy na zasady, z których ka»da odpowiada jednej ±cie»ce od korzenia do li±cia. 21 / 260

22 Drzewa decyzyjne Zasada numer 7 oznacza, z prawdopodobie«stwem 74%, gdy ci±nienie o 3 po poªudniu jest mniejsze ni» 1012 hpa i liczba godzin sªonecznych wynosi mniej ni» 8.85 godziny, mamy deszcz nast pnego dnia (RainTomorrow = Yes). Inne informacje zawarte w regule: np.»e 27 obserwacji z treningowego zestawu danych (tj. 11% obserwacji treningowych) jest obj tych t zasad, tzn. speªniaj dwa powy»sze warunki. 22 / 260

23 Drzewa decyzyjne Zasada numer 7 oznacza, z prawdopodobie«stwem 74%, gdy ci±nienie o 3 po poªudniu jest mniejsze ni» 1012 hpa i liczba godzin sªonecznych wynosi mniej ni» 8.85 godziny, mamy deszcz nast pnego dnia (RainTomorrow = Yes). Inne informacje zawarte w regule: np.»e 27 obserwacji z treningowego zestawu danych (tj. 11% obserwacji treningowych) jest obj tych t zasad, tzn. speªniaj dwa powy»sze warunki. 23 / 260

24 Drzewa decyzyjne Reprezentacja w formie reguª ma swoje zalety. W trakcie przegl du wiedzy, mo»emy rozwa»y ka»d reguª osobno nie rozpraszaj c si bardziej zªo»on konstrukcj du»ych drzew decyzyjnych. Zauwa»my,»e ka»da reguªa mo»e zosta przetªumaczona na wyra»enie w j zyku programowania jak np. R, Python, C, VisualBasic lub SQL. Konstrukcja jest tak prosta i jasna, jak instrukcja warunkowa IF-THEN. 24 / 260

25 Drzewa decyzyjne Reprezentacja w formie reguª ma swoje zalety. W trakcie przegl du wiedzy, mo»emy rozwa»y ka»d reguª osobno nie rozpraszaj c si bardziej zªo»on konstrukcj du»ych drzew decyzyjnych. Zauwa»my,»e ka»da reguªa mo»e zosta przetªumaczona na wyra»enie w j zyku programowania jak np. R, Python, C, VisualBasic lub SQL. Konstrukcja jest tak prosta i jasna, jak instrukcja warunkowa IF-THEN. 25 / 260

26 Drzewa decyzyjne Algorytm budowania drzewa decyzyjnego cz sto rozpoczyna od budowy drzewa wi kszego, a nast pnie nast puje przyci te (pruned), a wi c uproszczenie drzewa. Sªu»y to poprawie dokªadno±ci. W konsekwencji b dziemy cz sto widzieli numery w zªów (i numery reguª), które nie s kolejne. Numery w zªów nie maj»adnego konkretnego znaczenia i sªu» tylko do odniesienia. W reguªach widzimy miary prawdopodobie«stwa, które s zazwyczaj podawane dla ka»dego li±cia drzewa decyzyjnego. Prawdopodobie«stwa mog by stosowane w celu okre±lenia siªy decyzji, któr wyznaczamy w modelu. 26 / 260

27 Drzewa decyzyjne Algorytm budowania drzewa decyzyjnego cz sto rozpoczyna od budowy drzewa wi kszego, a nast pnie nast puje przyci te (pruned), a wi c uproszczenie drzewa. Sªu»y to poprawie dokªadno±ci. W konsekwencji b dziemy cz sto widzieli numery w zªów (i numery reguª), które nie s kolejne. Numery w zªów nie maj»adnego konkretnego znaczenia i sªu» tylko do odniesienia. W reguªach widzimy miary prawdopodobie«stwa, które s zazwyczaj podawane dla ka»dego li±cia drzewa decyzyjnego. Prawdopodobie«stwa mog by stosowane w celu okre±lenia siªy decyzji, któr wyznaczamy w modelu. 27 / 260

28 Drzewa decyzyjne Algorytm budowania drzewa decyzyjnego cz sto rozpoczyna od budowy drzewa wi kszego, a nast pnie nast puje przyci te (pruned), a wi c uproszczenie drzewa. Sªu»y to poprawie dokªadno±ci. W konsekwencji b dziemy cz sto widzieli numery w zªów (i numery reguª), które nie s kolejne. Numery w zªów nie maj»adnego konkretnego znaczenia i sªu» tylko do odniesienia. W reguªach widzimy miary prawdopodobie«stwa, które s zazwyczaj podawane dla ka»dego li±cia drzewa decyzyjnego. Prawdopodobie«stwa mog by stosowane w celu okre±lenia siªy decyzji, któr wyznaczamy w modelu. 28 / 260

29 Drzewa decyzyjne rodzaje Rozwa»ane powy»ej drzewo nosi nazw binarnego drzewa decyzyjnego. 29 / 260

30 Drzewa decyzyjne algorytm Dla ka»dego zestawu danych mo»emy generowa wiele ró»nych drzew decyzyjnych. Rozwa»my proste drzewo decyzyjne omówiony powy»ej. Zamiast testowa zmienn Pressure3pm z warto±ci 1012, mo»emy j przetestowa z warto±ciami 1011, 1013 lub 1020, itd. Lub mo»emy w korzeniu testowa inn zmienn, by mo»e mogliby±my testowa warto± Humidity3pm zamiast Pressure3pm. To ponownie wprowadza wiele alternatywnych modeli. Który model jest najlepszy i najlepiej pasuje do danych? Naszym zadaniem jest zidentykowanie modelu, który najlepiej oddaje wiedz z obserwacji. Wyliczenie ka»dego mo»liwego i sprawdzenie, czy jest on dobrym modelem, b dzie zwykle zbyt kosztowne obliczeniowo. 30 / 260

31 Drzewa decyzyjne algorytm Dla ka»dego zestawu danych mo»emy generowa wiele ró»nych drzew decyzyjnych. Rozwa»my proste drzewo decyzyjne omówiony powy»ej. Zamiast testowa zmienn Pressure3pm z warto±ci 1012, mo»emy j przetestowa z warto±ciami 1011, 1013 lub 1020, itd. Lub mo»emy w korzeniu testowa inn zmienn, by mo»e mogliby±my testowa warto± Humidity3pm zamiast Pressure3pm. To ponownie wprowadza wiele alternatywnych modeli. Który model jest najlepszy i najlepiej pasuje do danych? Naszym zadaniem jest zidentykowanie modelu, który najlepiej oddaje wiedz z obserwacji. Wyliczenie ka»dego mo»liwego i sprawdzenie, czy jest on dobrym modelem, b dzie zwykle zbyt kosztowne obliczeniowo. 31 / 260

32 Drzewa decyzyjne algorytm Dla ka»dego zestawu danych mo»emy generowa wiele ró»nych drzew decyzyjnych. Rozwa»my proste drzewo decyzyjne omówiony powy»ej. Zamiast testowa zmienn Pressure3pm z warto±ci 1012, mo»emy j przetestowa z warto±ciami 1011, 1013 lub 1020, itd. Lub mo»emy w korzeniu testowa inn zmienn, by mo»e mogliby±my testowa warto± Humidity3pm zamiast Pressure3pm. To ponownie wprowadza wiele alternatywnych modeli. Który model jest najlepszy i najlepiej pasuje do danych? Naszym zadaniem jest zidentykowanie modelu, który najlepiej oddaje wiedz z obserwacji. Wyliczenie ka»dego mo»liwego i sprawdzenie, czy jest on dobrym modelem, b dzie zwykle zbyt kosztowne obliczeniowo. 32 / 260

33 Drzewa decyzyjne algorytm Dla ka»dego zestawu danych mo»emy generowa wiele ró»nych drzew decyzyjnych. Rozwa»my proste drzewo decyzyjne omówiony powy»ej. Zamiast testowa zmienn Pressure3pm z warto±ci 1012, mo»emy j przetestowa z warto±ciami 1011, 1013 lub 1020, itd. Lub mo»emy w korzeniu testowa inn zmienn, by mo»e mogliby±my testowa warto± Humidity3pm zamiast Pressure3pm. To ponownie wprowadza wiele alternatywnych modeli. Który model jest najlepszy i najlepiej pasuje do danych? Naszym zadaniem jest zidentykowanie modelu, który najlepiej oddaje wiedz z obserwacji. Wyliczenie ka»dego mo»liwego i sprawdzenie, czy jest on dobrym modelem, b dzie zwykle zbyt kosztowne obliczeniowo. 33 / 260

34 Drzewa decyzyjne algorytm Dla ka»dego zestawu danych mo»emy generowa wiele ró»nych drzew decyzyjnych. Rozwa»my proste drzewo decyzyjne omówiony powy»ej. Zamiast testowa zmienn Pressure3pm z warto±ci 1012, mo»emy j przetestowa z warto±ciami 1011, 1013 lub 1020, itd. Lub mo»emy w korzeniu testowa inn zmienn, by mo»e mogliby±my testowa warto± Humidity3pm zamiast Pressure3pm. To ponownie wprowadza wiele alternatywnych modeli. Który model jest najlepszy i najlepiej pasuje do danych? Naszym zadaniem jest zidentykowanie modelu, który najlepiej oddaje wiedz z obserwacji. Wyliczenie ka»dego mo»liwego i sprawdzenie, czy jest on dobrym modelem, b dzie zwykle zbyt kosztowne obliczeniowo. 34 / 260

35 Drzewa decyzyjne algorytm Naszym zadaniem jest skorzystanie z obserwacji (treningowych) w celu zaw»enia tych poszukiwa«tak, aby znale¹ dobry model w rozs dnym czasie. Algorytm, który zostaª opracowany dla drzew decyzyjnych jest okre±lany jako odgórna indukcja drzew decyzyjnych (top-down induction of decision trees - TDIDT). Algorytm u»ywa podej±cia dziel i zwyci»aj (rekurencyjnego podziaªu.) Przedstawimy ide algorytmu na przykªadzie zestawu danych weather. Istotny dla algorytmu jest rozkªad obserwacji w odniesieniu do zmiennej docelowej RainTomorrow. Mamy 66 obserwacji, które maj cel jako Yes (18%) i 300 No (82%). 35 / 260

36 Drzewa decyzyjne algorytm Naszym zadaniem jest skorzystanie z obserwacji (treningowych) w celu zaw»enia tych poszukiwa«tak, aby znale¹ dobry model w rozs dnym czasie. Algorytm, który zostaª opracowany dla drzew decyzyjnych jest okre±lany jako odgórna indukcja drzew decyzyjnych (top-down induction of decision trees - TDIDT). Algorytm u»ywa podej±cia dziel i zwyci»aj (rekurencyjnego podziaªu.) Przedstawimy ide algorytmu na przykªadzie zestawu danych weather. Istotny dla algorytmu jest rozkªad obserwacji w odniesieniu do zmiennej docelowej RainTomorrow. Mamy 66 obserwacji, które maj cel jako Yes (18%) i 300 No (82%). 36 / 260

37 Drzewa decyzyjne algorytm Naszym zadaniem jest skorzystanie z obserwacji (treningowych) w celu zaw»enia tych poszukiwa«tak, aby znale¹ dobry model w rozs dnym czasie. Algorytm, który zostaª opracowany dla drzew decyzyjnych jest okre±lany jako odgórna indukcja drzew decyzyjnych (top-down induction of decision trees - TDIDT). Algorytm u»ywa podej±cia dziel i zwyci»aj (rekurencyjnego podziaªu.) Przedstawimy ide algorytmu na przykªadzie zestawu danych weather. Istotny dla algorytmu jest rozkªad obserwacji w odniesieniu do zmiennej docelowej RainTomorrow. Mamy 66 obserwacji, które maj cel jako Yes (18%) i 300 No (82%). 37 / 260

38 Drzewa decyzyjne algorytm Naszym zadaniem jest skorzystanie z obserwacji (treningowych) w celu zaw»enia tych poszukiwa«tak, aby znale¹ dobry model w rozs dnym czasie. Algorytm, który zostaª opracowany dla drzew decyzyjnych jest okre±lany jako odgórna indukcja drzew decyzyjnych (top-down induction of decision trees - TDIDT). Algorytm u»ywa podej±cia dziel i zwyci»aj (rekurencyjnego podziaªu.) Przedstawimy ide algorytmu na przykªadzie zestawu danych weather. Istotny dla algorytmu jest rozkªad obserwacji w odniesieniu do zmiennej docelowej RainTomorrow. Mamy 66 obserwacji, które maj cel jako Yes (18%) i 300 No (82%). 38 / 260

39 Drzewa decyzyjne algorytm Chcemy znale¹ zmienn wej±ciow, która mo»e by u»ywana do dzielenia zbioru danych na dwa mniejsze zestawy danych. Celem b dzie zwi kszenie jednorodno±ci (homogeniczno±ci) ka»dego z tych dwóch zestawów danych w odniesieniu do zmiennej docelowej. Oznacza to,»e dla jednego z zestawów danych, b dziemy starali si zwi kszy odsetek obserwacji Yes, a dla drugiego zbioru danych chcemy by wzrósª odsetek obserwacji No. Mo»emy na przykªad zdecydowa, aby skonstruowa podziaª zestawu danych za pomoc zmiennej Sunshine, a w tym zbiorze wybra 9 jako warto± wyznaczaj c podziaª. Ka»da obserwacja z warto±ci mniejsz lub równ 9 jest przydzielana do pierwszego podzbioru, pozostaªe do drugiego. 39 / 260

40 Drzewa decyzyjne algorytm Chcemy znale¹ zmienn wej±ciow, która mo»e by u»ywana do dzielenia zbioru danych na dwa mniejsze zestawy danych. Celem b dzie zwi kszenie jednorodno±ci (homogeniczno±ci) ka»dego z tych dwóch zestawów danych w odniesieniu do zmiennej docelowej. Oznacza to,»e dla jednego z zestawów danych, b dziemy starali si zwi kszy odsetek obserwacji Yes, a dla drugiego zbioru danych chcemy by wzrósª odsetek obserwacji No. Mo»emy na przykªad zdecydowa, aby skonstruowa podziaª zestawu danych za pomoc zmiennej Sunshine, a w tym zbiorze wybra 9 jako warto± wyznaczaj c podziaª. Ka»da obserwacja z warto±ci mniejsz lub równ 9 jest przydzielana do pierwszego podzbioru, pozostaªe do drugiego. 40 / 260

41 Drzewa decyzyjne algorytm Chcemy znale¹ zmienn wej±ciow, która mo»e by u»ywana do dzielenia zbioru danych na dwa mniejsze zestawy danych. Celem b dzie zwi kszenie jednorodno±ci (homogeniczno±ci) ka»dego z tych dwóch zestawów danych w odniesieniu do zmiennej docelowej. Oznacza to,»e dla jednego z zestawów danych, b dziemy starali si zwi kszy odsetek obserwacji Yes, a dla drugiego zbioru danych chcemy by wzrósª odsetek obserwacji No. Mo»emy na przykªad zdecydowa, aby skonstruowa podziaª zestawu danych za pomoc zmiennej Sunshine, a w tym zbiorze wybra 9 jako warto± wyznaczaj c podziaª. Ka»da obserwacja z warto±ci mniejsz lub równ 9 jest przydzielana do pierwszego podzbioru, pozostaªe do drugiego. 41 / 260

42 Drzewa decyzyjne algorytm Nowe zestawy danych b d miaªy 201 i 162 obserwacji odpowiednio (trzy obserwacje maj brak warto±ci dla tej zmiennej). w.omit<-na.omit(weather["sunshine"]) length(which(w.omit<9)) Teraz bierzemy pod uwag proporcje Yes i No w tych dwóch nowych zestawach danych. Dla podzbioru obserwacji z Sunshine o warto±ci mniej ni» 9, proporcje s 28% Yes i 72% No. W podgrupie drugiej proporcje wynosz 5% Yes i 95% No. vars<-c("sunshine","raintomorrow") w2.omit<-na.omit(weather[vars]) which((w2.omit$sunshine<9) & (w2.omit$raintomorrow=="yes")) x1<-which(w2.omit$raintomorrow=="yes") x2<-which(w2.omit$sunshine<9) length(intersect(x1,x2))/length(which(w.omit<9)) 42 / 260

43 Drzewa decyzyjne algorytm Nowe zestawy danych b d miaªy 201 i 162 obserwacji odpowiednio (trzy obserwacje maj brak warto±ci dla tej zmiennej). w.omit<-na.omit(weather["sunshine"]) length(which(w.omit<9)) Teraz bierzemy pod uwag proporcje Yes i No w tych dwóch nowych zestawach danych. Dla podzbioru obserwacji z Sunshine o warto±ci mniej ni» 9, proporcje s 28% Yes i 72% No. W podgrupie drugiej proporcje wynosz 5% Yes i 95% No. vars<-c("sunshine","raintomorrow") w2.omit<-na.omit(weather[vars]) which((w2.omit$sunshine<9) & (w2.omit$raintomorrow=="yes")) x1<-which(w2.omit$raintomorrow=="yes") x2<-which(w2.omit$sunshine<9) length(intersect(x1,x2))/length(which(w.omit<9)) 43 / 260

44 Drzewa decyzyjne algorytm Nowe zestawy danych b d miaªy 201 i 162 obserwacji odpowiednio (trzy obserwacje maj brak warto±ci dla tej zmiennej). w.omit<-na.omit(weather["sunshine"]) length(which(w.omit<9)) Teraz bierzemy pod uwag proporcje Yes i No w tych dwóch nowych zestawach danych. Dla podzbioru obserwacji z Sunshine o warto±ci mniej ni» 9, proporcje s 28% Yes i 72% No. W podgrupie drugiej proporcje wynosz 5% Yes i 95% No. vars<-c("sunshine","raintomorrow") w2.omit<-na.omit(weather[vars]) which((w2.omit$sunshine<9) & (w2.omit$raintomorrow=="yes")) x1<-which(w2.omit$raintomorrow=="yes") x2<-which(w2.omit$sunshine<9) length(intersect(x1,x2))/length(which(w.omit<9)) 44 / 260

45 Drzewa decyzyjne algorytm Poprzez podziaª wg tej zmiennej, uzyskali±my lepsz homogeniczno± warto±ci zmiennej celu RainTomorrow. W szczególno±ci drugi zbiór danych (Sunshine 9 ) gromadzi obserwacje, które s bez deszczu nast pnego dnia (95% No). To pozwala nam stwierdzi,»e gdy liczba sªonecznych godzin jest do± wysoka (tj. co najmniej 9 godzin), to jest prawdopodobie«stwo deszczu jest niewielkie (5% Yes). W pierwszym zestawie danych sprawa nie jest tak oczywista. Proporcje (28% Yes i 72% No, w caªym zbiorze Yes 18% i No 82%) z pewno±ci si zmieniªy mamy wi kszy udziaª obserwacji Yes ni» dla oryginalnego zestawu danych, ale nadal obserwacje Yes nie przewa»aj. 45 / 260

46 Drzewa decyzyjne algorytm Poprzez podziaª wg tej zmiennej, uzyskali±my lepsz homogeniczno± warto±ci zmiennej celu RainTomorrow. W szczególno±ci drugi zbiór danych (Sunshine 9 ) gromadzi obserwacje, które s bez deszczu nast pnego dnia (95% No). To pozwala nam stwierdzi,»e gdy liczba sªonecznych godzin jest do± wysoka (tj. co najmniej 9 godzin), to jest prawdopodobie«stwo deszczu jest niewielkie (5% Yes). W pierwszym zestawie danych sprawa nie jest tak oczywista. Proporcje (28% Yes i 72% No, w caªym zbiorze Yes 18% i No 82%) z pewno±ci si zmieniªy mamy wi kszy udziaª obserwacji Yes ni» dla oryginalnego zestawu danych, ale nadal obserwacje Yes nie przewa»aj. 46 / 260

47 Drzewa decyzyjne algorytm Niemniej jednak, mo»na powiedzie,»e gdy obserwujemy Sunshine < 9, to istnieje zwi kszone prawdopodobie«stwo deszczu nast pnego dnia na podstawie naszych historycznych obserwacji. Mamy wtedy 28% szans na deszcz w porównaniu z 18% w stosunku do wszystkich obserwacji. Wybór warto±ci 9 dla zmiennej Sunshine jest tylko jedn mo»liwo±ci spo±ród bardzo wielu ró»nych wyborów. Je±li wybraliby±my warto± 5 dla tej zmiennej, to mieliby±my dwa nowe zestawy danych z proporcjami Yes/No 41%/59% i 12%/88%. Wybieraj c caªkowicie inn zmienn (Cloud3pm) z podziaªem 6, mieliby±my dwa nowe zestawy danych z proporcjami Yes/No 8%/92% i 34%/66%. Innym wyborem mo»e by Pressure3pm z podziaªem Daje to nam proporcje Yes/No 47%/53% i 10%/90%. 47 / 260

48 Drzewa decyzyjne algorytm Niemniej jednak, mo»na powiedzie,»e gdy obserwujemy Sunshine < 9, to istnieje zwi kszone prawdopodobie«stwo deszczu nast pnego dnia na podstawie naszych historycznych obserwacji. Mamy wtedy 28% szans na deszcz w porównaniu z 18% w stosunku do wszystkich obserwacji. Wybór warto±ci 9 dla zmiennej Sunshine jest tylko jedn mo»liwo±ci spo±ród bardzo wielu ró»nych wyborów. Je±li wybraliby±my warto± 5 dla tej zmiennej, to mieliby±my dwa nowe zestawy danych z proporcjami Yes/No 41%/59% i 12%/88%. Wybieraj c caªkowicie inn zmienn (Cloud3pm) z podziaªem 6, mieliby±my dwa nowe zestawy danych z proporcjami Yes/No 8%/92% i 34%/66%. Innym wyborem mo»e by Pressure3pm z podziaªem Daje to nam proporcje Yes/No 47%/53% i 10%/90%. 48 / 260

49 Drzewa decyzyjne algorytm W jaki sposób mo»na podzieli zbiór treningowy? Który podziaª jest najlepszy? Na to pytanie odpowiemy za chwil, teraz zaªó»my,»e dokonali±my ju» tego wyboru i mamy dwa nowe mniejsze zbiory danych. Proces jest powtarzany oddzielnie dla dwóch nowych zestawów danych. Oznacza to,»e dla lewego zbioru (obserwacje maj ce Sunshine < 9) bierzemy pod uwag wszystkie mo»liwe zmienne i podziaªy, aby podzieli ten zestaw danych na dwa mniejsze zestawy danych. Niezale»nie dla prawego zestawu danych (obserwacje maj c Sunshine 9 ) rozwa»amy równie» wszystkie mo»liwe zmienne i podziaªy zestawu danych na dwa mniejsze zestawy danych. 49 / 260

50 Drzewa decyzyjne algorytm W jaki sposób mo»na podzieli zbiór treningowy? Który podziaª jest najlepszy? Na to pytanie odpowiemy za chwil, teraz zaªó»my,»e dokonali±my ju» tego wyboru i mamy dwa nowe mniejsze zbiory danych. Proces jest powtarzany oddzielnie dla dwóch nowych zestawów danych. Oznacza to,»e dla lewego zbioru (obserwacje maj ce Sunshine < 9) bierzemy pod uwag wszystkie mo»liwe zmienne i podziaªy, aby podzieli ten zestaw danych na dwa mniejsze zestawy danych. Niezale»nie dla prawego zestawu danych (obserwacje maj c Sunshine 9 ) rozwa»amy równie» wszystkie mo»liwe zmienne i podziaªy zestawu danych na dwa mniejsze zestawy danych. 50 / 260

51 Drzewa decyzyjne - algorytm Teraz mamy cztery jeszcze mniejsze zbiory danych i proces trwa dalej. Dla ka»dego z czterech zestawów danych ponownie rozwa»amy wszystkie mo»liwe zmienne i podziaªy, wybieraj c najlepszy na ka»dym etapie, dziel c dane, i tak dalej, powtarzaj c proces, a» uznamy,»e podziaª powinien si zatrzyma. Warunki stopu: kiedy zabraknie zmiennych, zabraknie danych lub gdy podziaª zbioru danych nie poprawia proporcji lub wyniku. Widzimy teraz, dlaczego proces ten nazywa mo»na dziel i zwyci»aj lub rekurencyjnym partycjonowaniem. Na ka»dym kroku, zidentykowali±my pytanie, które u»ywamy do podziaªu danych. Powstaªe wówczas dwa zestawy danych odpowiadaj gaª ziom drzewa wychodz cym z tego w zªa. Dla ka»dej gaª zi identykujemy nowe pytanie i podziaª. Dzielimy zbiór wielokrotnie i stosujemy taki sam proces, niezale»nie dla ka»dego z mniejszych zestawów danych, w zwi zku z czym jest to podziaª rekurencyjny. 51 / 260

52 Drzewa decyzyjne - algorytm Teraz mamy cztery jeszcze mniejsze zbiory danych i proces trwa dalej. Dla ka»dego z czterech zestawów danych ponownie rozwa»amy wszystkie mo»liwe zmienne i podziaªy, wybieraj c najlepszy na ka»dym etapie, dziel c dane, i tak dalej, powtarzaj c proces, a» uznamy,»e podziaª powinien si zatrzyma. Warunki stopu: kiedy zabraknie zmiennych, zabraknie danych lub gdy podziaª zbioru danych nie poprawia proporcji lub wyniku. Widzimy teraz, dlaczego proces ten nazywa mo»na dziel i zwyci»aj lub rekurencyjnym partycjonowaniem. Na ka»dym kroku, zidentykowali±my pytanie, które u»ywamy do podziaªu danych. Powstaªe wówczas dwa zestawy danych odpowiadaj gaª ziom drzewa wychodz cym z tego w zªa. Dla ka»dej gaª zi identykujemy nowe pytanie i podziaª. Dzielimy zbiór wielokrotnie i stosujemy taki sam proces, niezale»nie dla ka»dego z mniejszych zestawów danych, w zwi zku z czym jest to podziaª rekurencyjny. 52 / 260

53 Drzewa decyzyjne - algorytm Teraz mamy cztery jeszcze mniejsze zbiory danych i proces trwa dalej. Dla ka»dego z czterech zestawów danych ponownie rozwa»amy wszystkie mo»liwe zmienne i podziaªy, wybieraj c najlepszy na ka»dym etapie, dziel c dane, i tak dalej, powtarzaj c proces, a» uznamy,»e podziaª powinien si zatrzyma. Warunki stopu: kiedy zabraknie zmiennych, zabraknie danych lub gdy podziaª zbioru danych nie poprawia proporcji lub wyniku. Widzimy teraz, dlaczego proces ten nazywa mo»na dziel i zwyci»aj lub rekurencyjnym partycjonowaniem. Na ka»dym kroku, zidentykowali±my pytanie, które u»ywamy do podziaªu danych. Powstaªe wówczas dwa zestawy danych odpowiadaj gaª ziom drzewa wychodz cym z tego w zªa. Dla ka»dej gaª zi identykujemy nowe pytanie i podziaª. Dzielimy zbiór wielokrotnie i stosujemy taki sam proces, niezale»nie dla ka»dego z mniejszych zestawów danych, w zwi zku z czym jest to podziaª rekurencyjny. 53 / 260

54 Drzewa decyzyjne - algorytm Teraz mamy cztery jeszcze mniejsze zbiory danych i proces trwa dalej. Dla ka»dego z czterech zestawów danych ponownie rozwa»amy wszystkie mo»liwe zmienne i podziaªy, wybieraj c najlepszy na ka»dym etapie, dziel c dane, i tak dalej, powtarzaj c proces, a» uznamy,»e podziaª powinien si zatrzyma. Warunki stopu: kiedy zabraknie zmiennych, zabraknie danych lub gdy podziaª zbioru danych nie poprawia proporcji lub wyniku. Widzimy teraz, dlaczego proces ten nazywa mo»na dziel i zwyci»aj lub rekurencyjnym partycjonowaniem. Na ka»dym kroku, zidentykowali±my pytanie, które u»ywamy do podziaªu danych. Powstaªe wówczas dwa zestawy danych odpowiadaj gaª ziom drzewa wychodz cym z tego w zªa. Dla ka»dej gaª zi identykujemy nowe pytanie i podziaª. Dzielimy zbiór wielokrotnie i stosujemy taki sam proces, niezale»nie dla ka»dego z mniejszych zestawów danych, w zwi zku z czym jest to podziaª rekurencyjny. 54 / 260

55 Drzewa decyzyjne - algorytm Na ka»dym etapie procesu, podejmiemy decyzj co do wyboru najlepszej zmiennej i podziaªu na partycje danych. Decyzja mo»e nie by najlepsza w ogólnym kontek±cie budowania tego drzewa, ale gdy podejmiemy tak decyzj, pozostajemy z ni do ko«ca budowania drzewa. Jest to ogólnie okre±lane jako podej±cie zachªanne (greedy approach). 55 / 260

56 Miary Jak mierzy jako± podziaªów zbioru danych? Rattle wykorzystuje poj cie zysku informacyjnego dla podj cia decyzji mi dzy alternatywnymi podziaªami. Poj cie pochodzi z teorii informacji i wykorzystuje poj cie entropii. Entropia oznacza jak wymieszane s nasze dane w odniesieniu do warto±ci zmiennej docelowej. 56 / 260

57 Miary Jak mierzy jako± podziaªów zbioru danych? Rattle wykorzystuje poj cie zysku informacyjnego dla podj cia decyzji mi dzy alternatywnymi podziaªami. Poj cie pochodzi z teorii informacji i wykorzystuje poj cie entropii. Entropia oznacza jak wymieszane s nasze dane w odniesieniu do warto±ci zmiennej docelowej. 57 / 260

58 Miary Jak mierzy jako± podziaªów zbioru danych? Rattle wykorzystuje poj cie zysku informacyjnego dla podj cia decyzji mi dzy alternatywnymi podziaªami. Poj cie pochodzi z teorii informacji i wykorzystuje poj cie entropii. Entropia oznacza jak wymieszane s nasze dane w odniesieniu do warto±ci zmiennej docelowej. 58 / 260

59 Miary Je±li zestaw danych zawiera tylko obserwacje z tak sam warto±ci zmiennej celu (np. zawiera tylko obserwacje, dla których pada nast pnego dnia), to nie mamy zaburzenia, a wi c mamy: brak entropii lub entropi zerow. Je±li dwie warto±ci zmiennej docelowej s równomiernie rozªo»one w obserwacjach (tj. 50 % z zestawu danych to s obserwacje, dla których pada jutro, a pozostaªe 50% to obserwacje, dla których nie ma deszczu jutro), to zestaw danych zawiera maksymaln ilo± zaburzenia (entropii). Maksymalna warto± entropii to 1. Zbiór danych zawieraj cy wymieszane warto±ci zmiennej docelowej, b dzie miaª entropi pomi dzy 0 i / 260

60 Miary Je±li zestaw danych zawiera tylko obserwacje z tak sam warto±ci zmiennej celu (np. zawiera tylko obserwacje, dla których pada nast pnego dnia), to nie mamy zaburzenia, a wi c mamy: brak entropii lub entropi zerow. Je±li dwie warto±ci zmiennej docelowej s równomiernie rozªo»one w obserwacjach (tj. 50 % z zestawu danych to s obserwacje, dla których pada jutro, a pozostaªe 50% to obserwacje, dla których nie ma deszczu jutro), to zestaw danych zawiera maksymaln ilo± zaburzenia (entropii). Maksymalna warto± entropii to 1. Zbiór danych zawieraj cy wymieszane warto±ci zmiennej docelowej, b dzie miaª entropi pomi dzy 0 i / 260

61 Miary Je±li zestaw danych zawiera tylko obserwacje z tak sam warto±ci zmiennej celu (np. zawiera tylko obserwacje, dla których pada nast pnego dnia), to nie mamy zaburzenia, a wi c mamy: brak entropii lub entropi zerow. Je±li dwie warto±ci zmiennej docelowej s równomiernie rozªo»one w obserwacjach (tj. 50 % z zestawu danych to s obserwacje, dla których pada jutro, a pozostaªe 50% to obserwacje, dla których nie ma deszczu jutro), to zestaw danych zawiera maksymaln ilo± zaburzenia (entropii). Maksymalna warto± entropii to 1. Zbiór danych zawieraj cy wymieszane warto±ci zmiennej docelowej, b dzie miaª entropi pomi dzy 0 i / 260

62 Miary Je±li zestaw danych zawiera tylko obserwacje z tak sam warto±ci zmiennej celu (np. zawiera tylko obserwacje, dla których pada nast pnego dnia), to nie mamy zaburzenia, a wi c mamy: brak entropii lub entropi zerow. Je±li dwie warto±ci zmiennej docelowej s równomiernie rozªo»one w obserwacjach (tj. 50 % z zestawu danych to s obserwacje, dla których pada jutro, a pozostaªe 50% to obserwacje, dla których nie ma deszczu jutro), to zestaw danych zawiera maksymaln ilo± zaburzenia (entropii). Maksymalna warto± entropii to 1. Zbiór danych zawieraj cy wymieszane warto±ci zmiennej docelowej, b dzie miaª entropi pomi dzy 0 i / 260

63 Miary Z punktu widzenia teorii informacji, miara 0 (czyli entropia 0), to wskazanie,»e nie potrzebujemy»adnych dodatkowych informacji w celu sklasykowania obserwacji w obr bie zestawu danych - wszystkie obserwacje nale» do tej samej klasy. miara 1 wskazuje,»e potrzebujemy maksymaln, mo»liw liczb dodatkowych informacji w celu sklasykowania naszych obserwacji. Je±li podziaª na obserwacje, w których pada jutro i nie pada jutro jest, ró»ny od 50% / 50%, ale wynosi np. 75% / 25%, to potrzebujemy mniej informacji w celu sklasykowania naszych obserwacji zestaw danych ju» zawiera informacje na temat w jaki sposób klasykowa dane. 63 / 260

64 Miary Z punktu widzenia teorii informacji, miara 0 (czyli entropia 0), to wskazanie,»e nie potrzebujemy»adnych dodatkowych informacji w celu sklasykowania obserwacji w obr bie zestawu danych - wszystkie obserwacje nale» do tej samej klasy. miara 1 wskazuje,»e potrzebujemy maksymaln, mo»liw liczb dodatkowych informacji w celu sklasykowania naszych obserwacji. Je±li podziaª na obserwacje, w których pada jutro i nie pada jutro jest, ró»ny od 50% / 50%, ale wynosi np. 75% / 25%, to potrzebujemy mniej informacji w celu sklasykowania naszych obserwacji zestaw danych ju» zawiera informacje na temat w jaki sposób klasykowa dane. 64 / 260

65 Miary Z punktu widzenia teorii informacji, miara 0 (czyli entropia 0), to wskazanie,»e nie potrzebujemy»adnych dodatkowych informacji w celu sklasykowania obserwacji w obr bie zestawu danych - wszystkie obserwacje nale» do tej samej klasy. miara 1 wskazuje,»e potrzebujemy maksymaln, mo»liw liczb dodatkowych informacji w celu sklasykowania naszych obserwacji. Je±li podziaª na obserwacje, w których pada jutro i nie pada jutro jest, ró»ny od 50% / 50%, ale wynosi np. 75% / 25%, to potrzebujemy mniej informacji w celu sklasykowania naszych obserwacji zestaw danych ju» zawiera informacje na temat w jaki sposób klasykowa dane. 65 / 260

66 Entropia Przyjmijmy,»e mamy zbiór zdarze«s = {x 1,..., x n} (zbiór warto±ci zmiennej kategorialnej celu). Przyjmijmy,»e prawdopodobie«stwo zaj±cia ka»dego zdarzenia (przyj cia danej warto±ci przez zmienn ) jest znane i wynosi p(x i ) = p i (rozkªad warto±ci zmiennej kategorialnej). Mamy p i 0 oraz n i=1 p i = 1. Funkcj I (x i ) = log k p i dla pewnego k > 0 i k 1 nazywamy ilo±ci informacji zdarzenia x i lub entropi indywidualn. Funkcj I mo»emy traktowa jako miar informacji (zaskoczenia) dotycz cej zaj±cia zdarzenia x i. W przypadku kodowania danych w informatyce podstawa k wynosi 2. Im mniej prawdopodobne zdarzenie (rzadziej przyjmowana warto± ), tym wi cej zawiera informacji, a ilo± informacji wynosi 0 dla zdarze«pewnych. 66 / 260

67 Entropia Przyjmijmy,»e mamy zbiór zdarze«s = {x 1,..., x n} (zbiór warto±ci zmiennej kategorialnej celu). Przyjmijmy,»e prawdopodobie«stwo zaj±cia ka»dego zdarzenia (przyj cia danej warto±ci przez zmienn ) jest znane i wynosi p(x i ) = p i (rozkªad warto±ci zmiennej kategorialnej). Mamy p i 0 oraz n i=1 p i = 1. Funkcj I (x i ) = log k p i dla pewnego k > 0 i k 1 nazywamy ilo±ci informacji zdarzenia x i lub entropi indywidualn. Funkcj I mo»emy traktowa jako miar informacji (zaskoczenia) dotycz cej zaj±cia zdarzenia x i. W przypadku kodowania danych w informatyce podstawa k wynosi 2. Im mniej prawdopodobne zdarzenie (rzadziej przyjmowana warto± ), tym wi cej zawiera informacji, a ilo± informacji wynosi 0 dla zdarze«pewnych. 67 / 260

68 Entropia Przyjmijmy,»e mamy zbiór zdarze«s = {x 1,..., x n} (zbiór warto±ci zmiennej kategorialnej celu). Przyjmijmy,»e prawdopodobie«stwo zaj±cia ka»dego zdarzenia (przyj cia danej warto±ci przez zmienn ) jest znane i wynosi p(x i ) = p i (rozkªad warto±ci zmiennej kategorialnej). Mamy p i 0 oraz n i=1 p i = 1. Funkcj I (x i ) = log k p i dla pewnego k > 0 i k 1 nazywamy ilo±ci informacji zdarzenia x i lub entropi indywidualn. Funkcj I mo»emy traktowa jako miar informacji (zaskoczenia) dotycz cej zaj±cia zdarzenia x i. W przypadku kodowania danych w informatyce podstawa k wynosi 2. Im mniej prawdopodobne zdarzenie (rzadziej przyjmowana warto± ), tym wi cej zawiera informacji, a ilo± informacji wynosi 0 dla zdarze«pewnych. 68 / 260

69 Entropia Przyjmijmy,»e mamy zbiór zdarze«s = {x 1,..., x n} (zbiór warto±ci zmiennej kategorialnej celu). Przyjmijmy,»e prawdopodobie«stwo zaj±cia ka»dego zdarzenia (przyj cia danej warto±ci przez zmienn ) jest znane i wynosi p(x i ) = p i (rozkªad warto±ci zmiennej kategorialnej). Mamy p i 0 oraz n i=1 p i = 1. Funkcj I (x i ) = log k p i dla pewnego k > 0 i k 1 nazywamy ilo±ci informacji zdarzenia x i lub entropi indywidualn. Funkcj I mo»emy traktowa jako miar informacji (zaskoczenia) dotycz cej zaj±cia zdarzenia x i. W przypadku kodowania danych w informatyce podstawa k wynosi 2. Im mniej prawdopodobne zdarzenie (rzadziej przyjmowana warto± ), tym wi cej zawiera informacji, a ilo± informacji wynosi 0 dla zdarze«pewnych. 69 / 260

70 Entropia Je±li alfabet S = {x 1, x 2} oraz p 1 = p 2 = 1 2 to 1 I (x 1) = I (x 1) = log 2 = 1. Oznacza to,»e wybranie jednej z 2 mo»liwo±ci o równym prawdopodobie«stwie wymaga 1 bita informacji. Je±li jednak p 1 = 1 4, p2 = 3 4, to I (x1) = 2, I (x2) = log 2 3 = / 260

71 Entropia Je±li alfabet S = {x 1, x 2} oraz p 1 = p 2 = 1 2 to 1 I (x 1) = I (x 1) = log 2 = 1. Oznacza to,»e wybranie jednej z 2 mo»liwo±ci o równym prawdopodobie«stwie wymaga 1 bita informacji. Je±li jednak p 1 = 1 4, p2 = 3 4, to I (x1) = 2, I (x2) = log 2 3 = / 260

72 Entropia Funkcj n H(S) = p(x i ) log 2 p(x i ) (1) i=1 nazywamy entropi stowarzyszon ze zbiorem zdarze«s = {x 1,..., x n}. Entropi mo»emy traktowa jako warto± oczekiwan zmiennej losowej I (x i ). Funkcja ta dla zmiennej binarnej ma maksymaln warto± 1 dla p 1 = p 2 = 1 (patrz rysunek). 2 Funkcja entropii dla zmiennej binarnej H(p)(p = p 1, p 2 = 1 p 1) 72 / 260

73 Entropia Funkcj n H(S) = p(x i ) log 2 p(x i ) (1) i=1 nazywamy entropi stowarzyszon ze zbiorem zdarze«s = {x 1,..., x n}. Entropi mo»emy traktowa jako warto± oczekiwan zmiennej losowej I (x i ). Funkcja ta dla zmiennej binarnej ma maksymaln warto± 1 dla p 1 = p 2 = 1 (patrz rysunek). 2 Funkcja entropii dla zmiennej binarnej H(p)(p = p 1, p 2 = 1 p 1) 73 / 260

74 Kryterium zysku informacyjnego Przejdziemy obecnie do formalnego zdeniowania kryterium zysku informacyjnego oraz przedstawienia metody podziaªu w oparciu o kryterium zysku informacyjnego. Niech S oznacza zbiór s obserwacji. Zaªó»my,»e zmienna celu posiada n ró»nych warto±ci deniuj cych n klas, C i (dla i = 1,..., n). Niech c i oznacza liczb obserwacji ze zbioru S nale» cych do klasy C i. Niech p i oznacza prawdopodobie«stwo,»e dowolna obserwacja nale»y do klasy C i (p i = c i /s). Zgodnie z teori informacji, oczekiwan ilo± informacji niezb dn do zaklasykowania danego przykªadu, mo»emy przedstawi wzorem n H(S) = p(x i ) log 2 p(x i ) (2) i=1 Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji H(S) jest warto±ci staª dla danego zbioru S. 74 / 260

75 Kryterium zysku informacyjnego Przejdziemy obecnie do formalnego zdeniowania kryterium zysku informacyjnego oraz przedstawienia metody podziaªu w oparciu o kryterium zysku informacyjnego. Niech S oznacza zbiór s obserwacji. Zaªó»my,»e zmienna celu posiada n ró»nych warto±ci deniuj cych n klas, C i (dla i = 1,..., n). Niech c i oznacza liczb obserwacji ze zbioru S nale» cych do klasy C i. Niech p i oznacza prawdopodobie«stwo,»e dowolna obserwacja nale»y do klasy C i (p i = c i /s). Zgodnie z teori informacji, oczekiwan ilo± informacji niezb dn do zaklasykowania danego przykªadu, mo»emy przedstawi wzorem n H(S) = p(x i ) log 2 p(x i ) (2) i=1 Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji H(S) jest warto±ci staª dla danego zbioru S. 75 / 260

76 Kryterium zysku informacyjnego Przejdziemy obecnie do formalnego zdeniowania kryterium zysku informacyjnego oraz przedstawienia metody podziaªu w oparciu o kryterium zysku informacyjnego. Niech S oznacza zbiór s obserwacji. Zaªó»my,»e zmienna celu posiada n ró»nych warto±ci deniuj cych n klas, C i (dla i = 1,..., n). Niech c i oznacza liczb obserwacji ze zbioru S nale» cych do klasy C i. Niech p i oznacza prawdopodobie«stwo,»e dowolna obserwacja nale»y do klasy C i (p i = c i /s). Zgodnie z teori informacji, oczekiwan ilo± informacji niezb dn do zaklasykowania danego przykªadu, mo»emy przedstawi wzorem n H(S) = p(x i ) log 2 p(x i ) (2) i=1 Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji H(S) jest warto±ci staª dla danego zbioru S. 76 / 260

77 Kryterium zysku informacyjnego Przejdziemy obecnie do formalnego zdeniowania kryterium zysku informacyjnego oraz przedstawienia metody podziaªu w oparciu o kryterium zysku informacyjnego. Niech S oznacza zbiór s obserwacji. Zaªó»my,»e zmienna celu posiada n ró»nych warto±ci deniuj cych n klas, C i (dla i = 1,..., n). Niech c i oznacza liczb obserwacji ze zbioru S nale» cych do klasy C i. Niech p i oznacza prawdopodobie«stwo,»e dowolna obserwacja nale»y do klasy C i (p i = c i /s). Zgodnie z teori informacji, oczekiwan ilo± informacji niezb dn do zaklasykowania danego przykªadu, mo»emy przedstawi wzorem n H(S) = p(x i ) log 2 p(x i ) (2) i=1 Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji H(S) jest warto±ci staª dla danego zbioru S. 77 / 260

78 Kryterium zysku informacyjnego Przejdziemy obecnie do formalnego zdeniowania kryterium zysku informacyjnego oraz przedstawienia metody podziaªu w oparciu o kryterium zysku informacyjnego. Niech S oznacza zbiór s obserwacji. Zaªó»my,»e zmienna celu posiada n ró»nych warto±ci deniuj cych n klas, C i (dla i = 1,..., n). Niech c i oznacza liczb obserwacji ze zbioru S nale» cych do klasy C i. Niech p i oznacza prawdopodobie«stwo,»e dowolna obserwacja nale»y do klasy C i (p i = c i /s). Zgodnie z teori informacji, oczekiwan ilo± informacji niezb dn do zaklasykowania danego przykªadu, mo»emy przedstawi wzorem n H(S) = p(x i ) log 2 p(x i ) (2) i=1 Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji H(S) jest warto±ci staª dla danego zbioru S. 78 / 260

79 Kryterium zysku informacyjnego Zakªadamy,»e zmienna A posiada v ró»nych warto±ci: a 1, a 2,..., a v. Zmienna A dzieli zbiór S na partycje S 1, S 2,..., S v, gdzie S j zawiera obserwacje ze zbioru S, których warto± zmiennej A wynosi a j. Wybieraj c atrybut A jako atrybut testowy tworzymy wierzchoªek wewn trzny drzewa, którego ªuki wychodz ce posiadaj etykiety a 1, a 2,..., a v i ª cz dany wierzchoªek A z wierzchoªkami zawieraj cymi partycje S 1, S 2,..., S v. 79 / 260

80 Kryterium zysku informacyjnego Zakªadamy,»e zmienna A posiada v ró»nych warto±ci: a 1, a 2,..., a v. Zmienna A dzieli zbiór S na partycje S 1, S 2,..., S v, gdzie S j zawiera obserwacje ze zbioru S, których warto± zmiennej A wynosi a j. Wybieraj c atrybut A jako atrybut testowy tworzymy wierzchoªek wewn trzny drzewa, którego ªuki wychodz ce posiadaj etykiety a 1, a 2,..., a v i ª cz dany wierzchoªek A z wierzchoªkami zawieraj cymi partycje S 1, S 2,..., S v. 80 / 260

81 Kryterium zysku informacyjnego Niech s ij oznacza liczb obserwacji z klasy C i w partycji S j. Entropi podziaªu zbioru S na partycje, wedªug zmiennej A deniujemy nast puj cym wzorem E(A) = v j=1 (s 1j + s 2j +... s nj ) H(S j ) (3) s Zauwa»my,»e, entropia jest miar nieuporz dkowania zbioru S zgodnie z atrybutem A. Im mniejsza warto± entropii tym wi ksza czysto± podziaªu zbioru S na partycje, tzn. uzyskane w wyniku podziaªu partycje b d tym czystsze im mniejsza jest warto± entropii. Wspóªczynnik (s 1j +s 2j +...s nj) (suma (s s 1j + s 2j +... s nj ) jest ilo±ci obserwacji w partycji S j. Oznaczamy go jako S j lub s j ). Stanowi on wag j-tej partycji i zdeniowany jest jako iloraz liczby obserwacji w j-tej partycji (posiadaj cych warto± a j atrybutu A) do caªkowitej liczby obserwacji w zbiorze S. 81 / 260

82 Kryterium zysku informacyjnego Niech s ij oznacza liczb obserwacji z klasy C i w partycji S j. Entropi podziaªu zbioru S na partycje, wedªug zmiennej A deniujemy nast puj cym wzorem E(A) = v j=1 (s 1j + s 2j +... s nj ) H(S j ) (3) s Zauwa»my,»e, entropia jest miar nieuporz dkowania zbioru S zgodnie z atrybutem A. Im mniejsza warto± entropii tym wi ksza czysto± podziaªu zbioru S na partycje, tzn. uzyskane w wyniku podziaªu partycje b d tym czystsze im mniejsza jest warto± entropii. Wspóªczynnik (s 1j +s 2j +...s nj) (suma (s s 1j + s 2j +... s nj ) jest ilo±ci obserwacji w partycji S j. Oznaczamy go jako S j lub s j ). Stanowi on wag j-tej partycji i zdeniowany jest jako iloraz liczby obserwacji w j-tej partycji (posiadaj cych warto± a j atrybutu A) do caªkowitej liczby obserwacji w zbiorze S. 82 / 260

83 Kryterium zysku informacyjnego Niech s ij oznacza liczb obserwacji z klasy C i w partycji S j. Entropi podziaªu zbioru S na partycje, wedªug zmiennej A deniujemy nast puj cym wzorem E(A) = v j=1 (s 1j + s 2j +... s nj ) H(S j ) (3) s Zauwa»my,»e, entropia jest miar nieuporz dkowania zbioru S zgodnie z atrybutem A. Im mniejsza warto± entropii tym wi ksza czysto± podziaªu zbioru S na partycje, tzn. uzyskane w wyniku podziaªu partycje b d tym czystsze im mniejsza jest warto± entropii. Wspóªczynnik (s 1j +s 2j +...s nj) (suma (s s 1j + s 2j +... s nj ) jest ilo±ci obserwacji w partycji S j. Oznaczamy go jako S j lub s j ). Stanowi on wag j-tej partycji i zdeniowany jest jako iloraz liczby obserwacji w j-tej partycji (posiadaj cych warto± a j atrybutu A) do caªkowitej liczby obserwacji w zbiorze S. 83 / 260

84 Kryterium zysku informacyjnego Zauwa»my,»e dla danej partycji S j, wyra»enie H(S j ), deniuje oczekiwan ilo± informacji niezb dn do zaklasykowania danej obserwacji w partycji S j do okre±lonej klasy. Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji jest równa 0 je»eli caªa partycja jest czysta, czyli nale»y do jednej klasy. W przeciwnym razie warto± tego wyra»enia okre±la nam nieuporz dkowanie (nieczysto± ) partycji S j. Zauwa»my,»e denicja entropii podziaªu zbioru, przedstawiona przed chwil jest zagregowan sum wyra»e«h(s j ) dla ka»dej partycji S j. Je»eli podziaª zbioru S na partycje wg atrybutu A tworzy nam partycje czyste to dla ka»dej partycji S j wyra»enie H(S j ) b dzie równe 0 i zagregowana suma równie» b dzie 0. Co oznacza,»e warto± entropii podziaªu zbioru S na partycje czyste b dzie wynosiªa / 260

85 Kryterium zysku informacyjnego Zauwa»my,»e dla danej partycji S j, wyra»enie H(S j ), deniuje oczekiwan ilo± informacji niezb dn do zaklasykowania danej obserwacji w partycji S j do okre±lonej klasy. Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji jest równa 0 je»eli caªa partycja jest czysta, czyli nale»y do jednej klasy. W przeciwnym razie warto± tego wyra»enia okre±la nam nieuporz dkowanie (nieczysto± ) partycji S j. Zauwa»my,»e denicja entropii podziaªu zbioru, przedstawiona przed chwil jest zagregowan sum wyra»e«h(s j ) dla ka»dej partycji S j. Je»eli podziaª zbioru S na partycje wg atrybutu A tworzy nam partycje czyste to dla ka»dej partycji S j wyra»enie H(S j ) b dzie równe 0 i zagregowana suma równie» b dzie 0. Co oznacza,»e warto± entropii podziaªu zbioru S na partycje czyste b dzie wynosiªa / 260

86 Kryterium zysku informacyjnego Zauwa»my,»e dla danej partycji S j, wyra»enie H(S j ), deniuje oczekiwan ilo± informacji niezb dn do zaklasykowania danej obserwacji w partycji S j do okre±lonej klasy. Oczekiwana ilo± informacji niezb dna do zaklasykowania danej obserwacji jest równa 0 je»eli caªa partycja jest czysta, czyli nale»y do jednej klasy. W przeciwnym razie warto± tego wyra»enia okre±la nam nieuporz dkowanie (nieczysto± ) partycji S j. Zauwa»my,»e denicja entropii podziaªu zbioru, przedstawiona przed chwil jest zagregowan sum wyra»e«h(s j ) dla ka»dej partycji S j. Je»eli podziaª zbioru S na partycje wg atrybutu A tworzy nam partycje czyste to dla ka»dej partycji S j wyra»enie H(S j ) b dzie równe 0 i zagregowana suma równie» b dzie 0. Co oznacza,»e warto± entropii podziaªu zbioru S na partycje czyste b dzie wynosiªa / 260

87 Kryterium zysku informacyjnego Zyskiem informacyjnym Gain(S,A) wynikaj cym z podziaªu zbioru S na partycje, wg atrybutu A nazywamy ró»nic oczekiwanej ilo±ci informacji niezb dnych do zaklasykowania danej obserwacji nale» cej do zbioru S i entropii atrybutu A. Gain(S, A) = H(S) E(A) Zysk informacyjny oznacza oczekiwan redukcj nieuporz dkowania spowodowan znajomo±ci warto±ci atrybutu A. 87 / 260

88 Kryterium zysku informacyjnego Gain(S, A) = H(S) E(A) Warto± opisana przez powy»szy wzór mo»emy wyznaczy dla ró»nych podziaªów. Podziaª, który ma najwi kszy zysk informacyjny (daje najwi ksz redukcj entropii - nieuporz dkowania) jest podziaªem, który wybieramy. W przypadku zmiennej binarnej celu i drzewa binarnego (podziaªy tylko na dwa) mamy H(S) = p log 2 p (1 p) log 2 (1 p), E(A) = S1 s H(S1) + S2 s H(S2). 88 / 260

89 Przykªad indukcji drzew decyzyjnych Dany jest zbiór treningowy zawieraj cy informacj o klientach sklepu komputerowego. Przykªadowy zbiór treningowy sklepu komputerowego 89 / 260

90 Przykªad indukcji drzew decyzyjnych Zmienne opisuj ce klienta zawieraj informacje na temat jego grupy wiekowej, dochodu, statusu, informacji o przynale»no±ci do grupy student. Zmienna celu kupi_komputer zawieraj ca informacje, czy klient potencjalnie dokona zakupu sprz tu komputerowego czy te» nie. Powy»szy przykªad zaczerpni ty zostaª z podr cznika J.Hana, znajduje si równie» w wykªadzie z Eksploracji danych na stronie (http: //wazniak.mimuw.edu.pl/index.php?title=ed-4.2-m slajd24). 90 / 260

91 Przykªad indukcji drzew decyzyjnych Zmienne opisuj ce klienta zawieraj informacje na temat jego grupy wiekowej, dochodu, statusu, informacji o przynale»no±ci do grupy student. Zmienna celu kupi_komputer zawieraj ca informacje, czy klient potencjalnie dokona zakupu sprz tu komputerowego czy te» nie. Powy»szy przykªad zaczerpni ty zostaª z podr cznika J.Hana, znajduje si równie» w wykªadzie z Eksploracji danych na stronie (http: //wazniak.mimuw.edu.pl/index.php?title=ed-4.2-m slajd24). 91 / 260

92 Przykªad indukcji drzew decyzyjnych Rozwa»any przez nas zbiór treningowy S skªada si z 14 obserwacji. Zmienna celu, kupi_komputer, posiada dwie warto±ci (Tak, Nie), st d, wyró»niamy dwie klasy. Klasa C 1 odpowiada warto±ci Tak, natomiast klasa C 2 odpowiada warto±ci Nie. Liczba c 1 obserwacji zbioru S nale» cych do C 1 i wynosi 9. Liczba c 2 obserwacji nale» cych do klasy C 2 wynosi / 260

93 Przykªad indukcji drzew decyzyjnych Rozwa»any przez nas zbiór treningowy S skªada si z 14 obserwacji. Zmienna celu, kupi_komputer, posiada dwie warto±ci (Tak, Nie), st d, wyró»niamy dwie klasy. Klasa C 1 odpowiada warto±ci Tak, natomiast klasa C 2 odpowiada warto±ci Nie. Liczba c 1 obserwacji zbioru S nale» cych do C 1 i wynosi 9. Liczba c 2 obserwacji nale» cych do klasy C 2 wynosi / 260

94 Przykªad indukcji drzew decyzyjnych Rozwa»any przez nas zbiór treningowy S skªada si z 14 obserwacji. Zmienna celu, kupi_komputer, posiada dwie warto±ci (Tak, Nie), st d, wyró»niamy dwie klasy. Klasa C 1 odpowiada warto±ci Tak, natomiast klasa C 2 odpowiada warto±ci Nie. Liczba c 1 obserwacji zbioru S nale» cych do C 1 i wynosi 9. Liczba c 2 obserwacji nale» cych do klasy C 2 wynosi / 260

95 Przykªad indukcji drzew decyzyjnych Rozwa»any przez nas zbiór treningowy S skªada si z 14 obserwacji. Zmienna celu, kupi_komputer, posiada dwie warto±ci (Tak, Nie), st d, wyró»niamy dwie klasy. Klasa C 1 odpowiada warto±ci Tak, natomiast klasa C 2 odpowiada warto±ci Nie. Liczba c 1 obserwacji zbioru S nale» cych do C 1 i wynosi 9. Liczba c 2 obserwacji nale» cych do klasy C 2 wynosi / 260

96 Przykªad indukcji drzew decyzyjnych Podstawiaj c to do wzoru na entropi (oczekiwan ilo± informacji niezb dn do zaklasykowania danej obserwacji nale» cej do zbioru, mamy H(S) = n p(x i ) log 2 p(x i ) = p 1 log 2 p 1 p 2 log 2 p 2 i=1 = 9 14 log log = / 260

97 Przykªad indukcji drzew decyzyjnych W rozwa»anym przez nas przykªadzie mamy 4 zmienne: Wiek, Dochód, Student, Status. 97 / 260

98 Przykªad indukcji drzew decyzyjnych Rozpocznijmy od analizy zmiennej Wiek. Zaªó»my,»e Wiek jest nasz zmienn testow. Podstawiaj c te warto±ci do wyra»enia Wiek dzieli zbiór S na 3 partycje: S1,S2 i S3. Pierwsza partycja S 1 dla warto±ci Wiek<=30 skªada si z pi ciu obserwacji. s 11 = 2 liczba obserwacji z klasy C 1 partycji S 1, s 12 = 3 liczba obserwacji z klasy C 2 partycji S 1. H(S 1) = p log 2 p (1 p) log 2 (1 p) dostaniemy H(S 1) = 2 5 log log = / 260

99 Przykªad indukcji drzew decyzyjnych Rozpocznijmy od analizy zmiennej Wiek. Zaªó»my,»e Wiek jest nasz zmienn testow. Podstawiaj c te warto±ci do wyra»enia Wiek dzieli zbiór S na 3 partycje: S1,S2 i S3. Pierwsza partycja S 1 dla warto±ci Wiek<=30 skªada si z pi ciu obserwacji. s 11 = 2 liczba obserwacji z klasy C 1 partycji S 1, s 12 = 3 liczba obserwacji z klasy C 2 partycji S 1. H(S 1) = p log 2 p (1 p) log 2 (1 p) dostaniemy H(S 1) = 2 5 log log = / 260

100 Przykªad indukcji drzew decyzyjnych Rozpocznijmy od analizy zmiennej Wiek. Zaªó»my,»e Wiek jest nasz zmienn testow. Podstawiaj c te warto±ci do wyra»enia Wiek dzieli zbiór S na 3 partycje: S1,S2 i S3. Pierwsza partycja S 1 dla warto±ci Wiek<=30 skªada si z pi ciu obserwacji. s 11 = 2 liczba obserwacji z klasy C 1 partycji S 1, s 12 = 3 liczba obserwacji z klasy C 2 partycji S 1. H(S 1) = p log 2 p (1 p) log 2 (1 p) dostaniemy H(S 1) = 2 5 log log = / 260

101 Przykªad indukcji drzew decyzyjnych Rozpocznijmy od analizy zmiennej Wiek. Zaªó»my,»e Wiek jest nasz zmienn testow. Podstawiaj c te warto±ci do wyra»enia Wiek dzieli zbiór S na 3 partycje: S1,S2 i S3. Pierwsza partycja S 1 dla warto±ci Wiek<=30 skªada si z pi ciu obserwacji. s 11 = 2 liczba obserwacji z klasy C 1 partycji S 1, s 12 = 3 liczba obserwacji z klasy C 2 partycji S 1. H(S 1) = p log 2 p (1 p) log 2 (1 p) dostaniemy H(S 1) = 2 5 log log = / 260

102 Przykªad indukcji drzew decyzyjnych Partycja S 2 - wiek , skªada si z 4 obserwacji, wszystkie 4 obserwacje nale» do klasy C 1. Partycja ta jest czysta, st d te» warto± wyra»enia H(S 2) = / 260

103 Przykªad indukcji drzew decyzyjnych Partycja S 2 - wiek , skªada si z 4 obserwacji, wszystkie 4 obserwacje nale» do klasy C 1. Partycja ta jest czysta, st d te» warto± wyra»enia H(S 2) = / 260

104 Przykªad indukcji drzew decyzyjnych Partycja S 3 zwi zana jest z warto±ci wiek>40, partycja skªada si z 5 obserwacji, z czego 3 nale» do klasy C 1 i 2 nale» do klasy C 2. St d te» warto± wyra»enia H(S 3) = 2 5 log log = / 260

105 Przykªad indukcji drzew decyzyjnych Partycja S 3 zwi zana jest z warto±ci wiek>40, partycja skªada si z 5 obserwacji, z czego 3 nale» do klasy C 1 i 2 nale» do klasy C 2. St d te» warto± wyra»enia H(S 3) = 2 5 log log = / 260

106 Przykªad indukcji drzew decyzyjnych Wi c entropia podziaªu zbioru S na partycje, wedªug zmiennej Wiek wynosi: E(A) = E(Wiek) = = Zauwa»my,»e wagi wyra»e«we wzorze na entropi s równe: 5/14 poniewa» partycja S 1 skªada si z 5 obs. natomiast caªy zbiór treningowy zawiera 14, 4/14 partycja S 2 skªada si z 4 obs. i partycja S 3 skªada si z 5 obs. Zysk informacyjny wynikaj cy z podziaªu zbioru S wg zmiennej Wiek wynosi H(S) E(Wiek) = = / 260

107 Przykªad indukcji drzew decyzyjnych Wi c entropia podziaªu zbioru S na partycje, wedªug zmiennej Wiek wynosi: E(A) = E(Wiek) = = Zauwa»my,»e wagi wyra»e«we wzorze na entropi s równe: 5/14 poniewa» partycja S 1 skªada si z 5 obs. natomiast caªy zbiór treningowy zawiera 14, 4/14 partycja S 2 skªada si z 4 obs. i partycja S 3 skªada si z 5 obs. Zysk informacyjny wynikaj cy z podziaªu zbioru S wg zmiennej Wiek wynosi H(S) E(Wiek) = = / 260

108 Przykªad indukcji drzew decyzyjnych Wi c entropia podziaªu zbioru S na partycje, wedªug zmiennej Wiek wynosi: E(A) = E(Wiek) = = Zauwa»my,»e wagi wyra»e«we wzorze na entropi s równe: 5/14 poniewa» partycja S 1 skªada si z 5 obs. natomiast caªy zbiór treningowy zawiera 14, 4/14 partycja S 2 skªada si z 4 obs. i partycja S 3 skªada si z 5 obs. Zysk informacyjny wynikaj cy z podziaªu zbioru S wg zmiennej Wiek wynosi H(S) E(Wiek) = = / 260

109 Przykªad indukcji drzew decyzyjnych W analogiczny sposób obliczamy zysk informacyjny dla pozostaªych zmiennych dochód, student status. 109 / 260

110 Przykªad indukcji drzew decyzyjnych Poniewa» Wiek daje najwi kszy zysk informacyjny spo±ród wszystkich deskryptorów, zmienna ta jest wybierana jako pierwsza zmienna testowa. Tworzymy wierzchoªek drzewa o etykiecie Wiek, oraz etykietowane ªuki wychodz ce ª cz ce wierzchoªek Wiek z wierzchoªkami odpowiadaj cymi partycjom S 1,S 2 oraz S 3 utworzonymi zgodnie z podziaªem zbioru S wg zmiennej Wiek. Pierwszy podziaª zbioru wg zmiennej wiek 110 / 260

111 Przykªad indukcji drzew decyzyjnych Poniewa» Wiek daje najwi kszy zysk informacyjny spo±ród wszystkich deskryptorów, zmienna ta jest wybierana jako pierwsza zmienna testowa. Tworzymy wierzchoªek drzewa o etykiecie Wiek, oraz etykietowane ªuki wychodz ce ª cz ce wierzchoªek Wiek z wierzchoªkami odpowiadaj cymi partycjom S 1,S 2 oraz S 3 utworzonymi zgodnie z podziaªem zbioru S wg zmiennej Wiek. Pierwszy podziaª zbioru wg zmiennej wiek 111 / 260

112 Przykªad indukcji drzew decyzyjnych Poniewa» Wiek daje najwi kszy zysk informacyjny spo±ród wszystkich deskryptorów, zmienna ta jest wybierana jako pierwsza zmienna testowa. Tworzymy wierzchoªek drzewa o etykiecie Wiek, oraz etykietowane ªuki wychodz ce ª cz ce wierzchoªek Wiek z wierzchoªkami odpowiadaj cymi partycjom S 1,S 2 oraz S 3 utworzonymi zgodnie z podziaªem zbioru S wg zmiennej Wiek. Pierwszy podziaª zbioru wg zmiennej wiek 112 / 260

113 Przykªad indukcji drzew decyzyjnych Mamy korze«zwi zany ze zmienn testow Wiek, trzy gaª zie etykietowane warto±ciami atrybutu Wiek<=30, oraz >40. Gaª zie te ª cz korze«z wierzchoªkami reprezentuj cymi partycje S 1, S 2 i S 3. Zauwa»my,»e partycja S 2 jest partycj czyst, czyli zawiera obserwacje nale» ce do tej samej klasy kupi_komputer = tak. Przeksztaªcamy zatem ten wierzchoªek w li±, który etykietujemy warto±ci klasy kupi_komputer = tak. Dla pozostaªych partycji S 1 i S 3 kontynuujemy proces partycjonowania i tworzenia drzewa decyzyjnego. 113 / 260

114 Przykªad indukcji drzew decyzyjnych Mamy korze«zwi zany ze zmienn testow Wiek, trzy gaª zie etykietowane warto±ciami atrybutu Wiek<=30, oraz >40. Gaª zie te ª cz korze«z wierzchoªkami reprezentuj cymi partycje S 1, S 2 i S 3. Zauwa»my,»e partycja S 2 jest partycj czyst, czyli zawiera obserwacje nale» ce do tej samej klasy kupi_komputer = tak. Przeksztaªcamy zatem ten wierzchoªek w li±, który etykietujemy warto±ci klasy kupi_komputer = tak. Dla pozostaªych partycji S 1 i S 3 kontynuujemy proces partycjonowania i tworzenia drzewa decyzyjnego. 114 / 260

115 Przykªad indukcji drzew decyzyjnych Mamy korze«zwi zany ze zmienn testow Wiek, trzy gaª zie etykietowane warto±ciami atrybutu Wiek<=30, oraz >40. Gaª zie te ª cz korze«z wierzchoªkami reprezentuj cymi partycje S 1, S 2 i S 3. Zauwa»my,»e partycja S 2 jest partycj czyst, czyli zawiera obserwacje nale» ce do tej samej klasy kupi_komputer = tak. Przeksztaªcamy zatem ten wierzchoªek w li±, który etykietujemy warto±ci klasy kupi_komputer = tak. Dla pozostaªych partycji S 1 i S 3 kontynuujemy proces partycjonowania i tworzenia drzewa decyzyjnego. 115 / 260

116 Przykªad indukcji drzew decyzyjnych Mamy korze«zwi zany ze zmienn testow Wiek, trzy gaª zie etykietowane warto±ciami atrybutu Wiek<=30, oraz >40. Gaª zie te ª cz korze«z wierzchoªkami reprezentuj cymi partycje S 1, S 2 i S 3. Zauwa»my,»e partycja S 2 jest partycj czyst, czyli zawiera obserwacje nale» ce do tej samej klasy kupi_komputer = tak. Przeksztaªcamy zatem ten wierzchoªek w li±, który etykietujemy warto±ci klasy kupi_komputer = tak. Dla pozostaªych partycji S 1 i S 3 kontynuujemy proces partycjonowania i tworzenia drzewa decyzyjnego. 116 / 260

117 Przykªad indukcji drzew decyzyjnych Mamy korze«zwi zany ze zmienn testow Wiek, trzy gaª zie etykietowane warto±ciami atrybutu Wiek<=30, oraz >40. Gaª zie te ª cz korze«z wierzchoªkami reprezentuj cymi partycje S 1, S 2 i S 3. Zauwa»my,»e partycja S 2 jest partycj czyst, czyli zawiera obserwacje nale» ce do tej samej klasy kupi_komputer = tak. Przeksztaªcamy zatem ten wierzchoªek w li±, który etykietujemy warto±ci klasy kupi_komputer = tak. Dla pozostaªych partycji S 1 i S 3 kontynuujemy proces partycjonowania i tworzenia drzewa decyzyjnego. 117 / 260

118 Przykªad indukcji drzew decyzyjnych Mamy korze«zwi zany ze zmienn testow Wiek, trzy gaª zie etykietowane warto±ciami atrybutu Wiek<=30, oraz >40. Gaª zie te ª cz korze«z wierzchoªkami reprezentuj cymi partycje S 1, S 2 i S 3. Zauwa»my,»e partycja S 2 jest partycj czyst, czyli zawiera obserwacje nale» ce do tej samej klasy kupi_komputer = tak. Przeksztaªcamy zatem ten wierzchoªek w li±, który etykietujemy warto±ci klasy kupi_komputer = tak. Dla pozostaªych partycji S 1 i S 3 kontynuujemy proces partycjonowania i tworzenia drzewa decyzyjnego. 118 / 260

119 Przykªad indukcji drzew decyzyjnych Mamy Okazuje si z dalszych oblicze«,»e najlepsz zmienn testow dla partycji S 1 jest Student, charakteryzuj cy si najwi kszym zyskiem informacyjnym, który dzieli partycj S 1 na dwie partycje, które s ju» partycjami czystymi. Dla warto±ci Student = nie otrzymujemy partycj, której wszystkie obserwacje nale» do klasy C 2. Natomiast dla warto±ci Student = tak wszystkie nale» do klasy kupi_komputer = tak. 119 / 260

120 Przykªad indukcji drzew decyzyjnych Mamy Okazuje si z dalszych oblicze«,»e najlepsz zmienn testow dla partycji S 1 jest Student, charakteryzuj cy si najwi kszym zyskiem informacyjnym, który dzieli partycj S 1 na dwie partycje, które s ju» partycjami czystymi. Dla warto±ci Student = nie otrzymujemy partycj, której wszystkie obserwacje nale» do klasy C 2. Natomiast dla warto±ci Student = tak wszystkie nale» do klasy kupi_komputer = tak. 120 / 260

121 Przykªad indukcji drzew decyzyjnych Mamy Okazuje si z dalszych oblicze«,»e najlepsz zmienn testow dla partycji S 1 jest Student, charakteryzuj cy si najwi kszym zyskiem informacyjnym, który dzieli partycj S 1 na dwie partycje, które s ju» partycjami czystymi. Dla warto±ci Student = nie otrzymujemy partycj, której wszystkie obserwacje nale» do klasy C 2. Natomiast dla warto±ci Student = tak wszystkie nale» do klasy kupi_komputer = tak. 121 / 260

122 Przykªad indukcji drzew decyzyjnych Mamy W przypadku partycji S 3 najlepsz zmienn testow jest Status, który dzieli partycj S 3 na kolejne dwie partycje. Pierwsza z nich zawiera wszystkie obserwacje, dla których Status =»onaty. Druga partycja zawiera obserwacje, dla których Status = kawaler. Obie otrzymane partycje s czyste. Partycja zwi zana ze zmienn Status z warto±ci»onaty ma wszystkie obserwacje w klasie C 2. Natomiast w przypadku Status = kawaler, wszystkie obserwacje nale» do klasy C / 260

123 Przykªad indukcji drzew decyzyjnych Mamy W przypadku partycji S 3 najlepsz zmienn testow jest Status, który dzieli partycj S 3 na kolejne dwie partycje. Pierwsza z nich zawiera wszystkie obserwacje, dla których Status =»onaty. Druga partycja zawiera obserwacje, dla których Status = kawaler. Obie otrzymane partycje s czyste. Partycja zwi zana ze zmienn Status z warto±ci»onaty ma wszystkie obserwacje w klasie C 2. Natomiast w przypadku Status = kawaler, wszystkie obserwacje nale» do klasy C / 260

124 Przykªad indukcji drzew decyzyjnych Mamy W przypadku partycji S 3 najlepsz zmienn testow jest Status, który dzieli partycj S 3 na kolejne dwie partycje. Pierwsza z nich zawiera wszystkie obserwacje, dla których Status =»onaty. Druga partycja zawiera obserwacje, dla których Status = kawaler. Obie otrzymane partycje s czyste. Partycja zwi zana ze zmienn Status z warto±ci»onaty ma wszystkie obserwacje w klasie C 2. Natomiast w przypadku Status = kawaler, wszystkie obserwacje nale» do klasy C / 260

125 Przykªad indukcji drzew decyzyjnych Ostateczna posta drzewa decyzyjnego, uzyskanego metod indukcji z wykorzystaniem jako kryterium miary zysku informacyjnego jest przedstawiona na rysunku. Zauwa»my,»e pojawiªy si dwa nowe wierzchoªki (punkty podziaªu) zwi zane ze zmiennymi Status oraz Student. To ko«czy konstrukcj drzewa decyzyjnego i rozwa»any przez nas przykªad. Finalne drzewo decyzyjne 125 / 260

126 Przykªad z u»yciem zbioru weather Drzewo decyzyjne mo»na zbudowa w R oraz w Rattle W Rattle nale»y u»y opcji Tree w Rattle na karcie Model, w R przez rpart () z pakietu rpart (Therneau i Atkinson, 2011). Drzewo decyzyjne dla danych weather 126 / 260

127 Przykªad z u»yciem zbioru weather Drzewo decyzyjne mo»na zbudowa w R oraz w Rattle W Rattle nale»y u»y opcji Tree w Rattle na karcie Model, w R przez rpart () z pakietu rpart (Therneau i Atkinson, 2011). Drzewo decyzyjne dla danych weather 127 / 260

128 Przykªad z u»yciem zbioru weather Drzewo decyzyjne mo»na zbudowa w R oraz w Rattle W Rattle nale»y u»y opcji Tree w Rattle na karcie Model, w R przez rpart () z pakietu rpart (Therneau i Atkinson, 2011). Drzewo decyzyjne dla danych weather 128 / 260

129 Przykªad z u»yciem zbioru weather Widok tekstowy zawiera wiele informacji i b dziemy dalej je analizowa. Wcze±niej jednak mo»emy uzyska szybki podgl d otrzymanego drzewa decyzyjnego za pomoc przycisku Draw. Pojawi si okno, wy±wietlaj ce drzewo. Analizuj c podsumowanie tekstowe drzewa decyzyjnego, zaczynamy w od liczby obserwacji, które byªy wykorzystywane do budowy drzewa (tj. 256): Summary of the Decision Tree model for Classification... n= / 260

130 Przykªad z u»yciem zbioru weather Widok tekstowy zawiera wiele informacji i b dziemy dalej je analizowa. Wcze±niej jednak mo»emy uzyska szybki podgl d otrzymanego drzewa decyzyjnego za pomoc przycisku Draw. Pojawi si okno, wy±wietlaj ce drzewo. Analizuj c podsumowanie tekstowe drzewa decyzyjnego, zaczynamy w od liczby obserwacji, które byªy wykorzystywane do budowy drzewa (tj. 256): Summary of the Decision Tree model for Classification... n= / 260

131 Przykªad z u»yciem zbioru weather Widok tekstowy zawiera wiele informacji i b dziemy dalej je analizowa. Wcze±niej jednak mo»emy uzyska szybki podgl d otrzymanego drzewa decyzyjnego za pomoc przycisku Draw. Pojawi si okno, wy±wietlaj ce drzewo. Analizuj c podsumowanie tekstowe drzewa decyzyjnego, zaczynamy w od liczby obserwacji, które byªy wykorzystywane do budowy drzewa (tj. 256): Summary of the Decision Tree model for Classification... n= / 260

132 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 132 / 260

133 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 133 / 260

134 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 134 / 260

135 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 135 / 260

136 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 136 / 260

137 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 137 / 260

138 Przykªad z u»yciem zbioru weather Teraz przeanalizujemy struktur drzewa w widoku tekstowym. Nast pnie mamy legend, która pomaga czyta t struktur : node), split, n, loss, yval, (yprob) * denotes terminal node 2) Pressure3pm>= No ( ) Legenda wskazuje,»e zostanie wy±wietlony numer w zªa, podziaª (który zazwyczaj jest w postaci warto±ci zmiennej), liczba obserwacji n w tym w ¹le, liczba jednostek bª dnie sklasykowanych (strata - loss), domy±lna klasykacja dla w zªa (yval) - predykacja, rozkªad klas tego w zªa (yprobs). 138 / 260

139 Przykªad z u»yciem zbioru weather node), split, n, loss, yval, (yprob) * denotes terminal node Legenda wskazuje,»e Nast pna linia wskazuje,»e znak * oznacza w zeª li±cia - drzewo nie jest dzielone dla tego w zªa. 139 / 260

140 Przykªad z u»yciem zbioru weather Pierwszy w zeª dla dowolnego drzewa to korze«lub w zeª gªówny (root node), ma on numer 1: node), split, n, loss, yval, (yprob) 1) root No ( ) Reprezentuje on wszystkie obserwacje. Podane informacje mówi nam,»e wi ksz klas dla w zªa gªównego (yval) jest No. Warto± 41 mówi nam, ile z 256 obserwacji b dzie niepoprawnie sklasykowany jako Yes. Nazywamy to strat. Skªadnik yprob informuje o rozkªadzie klas dla obserwacji. Wiemy,»e s to klasy No i Yes. Zatem 84% (czyli 0, jako odsetek) obserwacji maj zmienn celu RainTomorrow w klasie No oraz 16% obserwacji jest w klasie z warto±ci Yes. 140 / 260

141 Przykªad z u»yciem zbioru weather Pierwszy w zeª dla dowolnego drzewa to korze«lub w zeª gªówny (root node), ma on numer 1: node), split, n, loss, yval, (yprob) 1) root No ( ) Reprezentuje on wszystkie obserwacje. Podane informacje mówi nam,»e wi ksz klas dla w zªa gªównego (yval) jest No. Warto± 41 mówi nam, ile z 256 obserwacji b dzie niepoprawnie sklasykowany jako Yes. Nazywamy to strat. Skªadnik yprob informuje o rozkªadzie klas dla obserwacji. Wiemy,»e s to klasy No i Yes. Zatem 84% (czyli 0, jako odsetek) obserwacji maj zmienn celu RainTomorrow w klasie No oraz 16% obserwacji jest w klasie z warto±ci Yes. 141 / 260

142 Przykªad z u»yciem zbioru weather Pierwszy w zeª dla dowolnego drzewa to korze«lub w zeª gªówny (root node), ma on numer 1: node), split, n, loss, yval, (yprob) 1) root No ( ) Reprezentuje on wszystkie obserwacje. Podane informacje mówi nam,»e wi ksz klas dla w zªa gªównego (yval) jest No. Warto± 41 mówi nam, ile z 256 obserwacji b dzie niepoprawnie sklasykowany jako Yes. Nazywamy to strat. Skªadnik yprob informuje o rozkªadzie klas dla obserwacji. Wiemy,»e s to klasy No i Yes. Zatem 84% (czyli 0, jako odsetek) obserwacji maj zmienn celu RainTomorrow w klasie No oraz 16% obserwacji jest w klasie z warto±ci Yes. 142 / 260

143 Przykªad z u»yciem zbioru weather node), split, n, loss, yval, (yprob) 1) root No ( ) Je»eli sam w zeª gªówny potraktowaliby±my jako model, to zawsze podejmowaªby on decyzj,»e jutro nie b dzie pada. Na podstawie szkoleniowego zestawu danych, b dzie on w 84% poprawny. Jest to do± dobry poziom dokªadno±ci, ale model nie jest szczególnie przydatny, poniewa» jeste±my szczególnie zainteresowani, jaki musz by warunki pogodowe, które pozwol sprawdzi, czy b dzie pada jutro. je»eli w korzeniu prognozujemy No, to w yprob pierwsze prawdopodobie«stwo jest zawsze na nie, drugie na tak (nawet, gdy w zeª predykuje Yes.) 143 / 260

144 Przykªad z u»yciem zbioru weather node), split, n, loss, yval, (yprob) 1) root No ( ) Je»eli sam w zeª gªówny potraktowaliby±my jako model, to zawsze podejmowaªby on decyzj,»e jutro nie b dzie pada. Na podstawie szkoleniowego zestawu danych, b dzie on w 84% poprawny. Jest to do± dobry poziom dokªadno±ci, ale model nie jest szczególnie przydatny, poniewa» jeste±my szczególnie zainteresowani, jaki musz by warunki pogodowe, które pozwol sprawdzi, czy b dzie pada jutro. je»eli w korzeniu prognozujemy No, to w yprob pierwsze prawdopodobie«stwo jest zawsze na nie, drugie na tak (nawet, gdy w zeª predykuje Yes.) 144 / 260

145 Przykªad z u»yciem zbioru weather W zeª gªówny jest podzielony na dwa w zªy. Podziaª wykonany jest w oparciu o zmienn Pressure3pm z warto±ci podziaªu W zeª 2 odpowiada warto±ci Pressure3pm >= Mamy 204 obserwacje, które o 3 popoªudniu miaªy pasuj c warto± ci±nienia: node), split, n, loss, yval, (yprob) 2) Pressure3pm>= No ( ) Tylko 16 z 204 obserwacji byªo ¹le sklasykowanych, tzn. z warto±ci inn ni» No (czyli Yes). To odpowiada dokªadno±ci 92% w przewidywaniu,»e nie b dzie jutro pada. 145 / 260

146 Przykªad z u»yciem zbioru weather W zeª gªówny jest podzielony na dwa w zªy. Podziaª wykonany jest w oparciu o zmienn Pressure3pm z warto±ci podziaªu W zeª 2 odpowiada warto±ci Pressure3pm >= Mamy 204 obserwacje, które o 3 popoªudniu miaªy pasuj c warto± ci±nienia: node), split, n, loss, yval, (yprob) 2) Pressure3pm>= No ( ) Tylko 16 z 204 obserwacji byªo ¹le sklasykowanych, tzn. z warto±ci inn ni» No (czyli Yes). To odpowiada dokªadno±ci 92% w przewidywaniu,»e nie b dzie jutro pada. 146 / 260

147 Przykªad z u»yciem zbioru weather W zeª 3 zawiera pozostaªe 52 obserwacje dla których (Pressure3pm < ). Zauwa»my,»e równie» w tym w ¹le mamy decyzj No node), split, n, loss, yval, (yprob) 3) Pressure3pm< No ( ) 147 / 260

148 Przykªad z u»yciem zbioru weather Teraz zajmiemy si podziaªem w zªa 2. Algorytm u»yª zmiennej Cloud3pm do podziaªu z warto±ci 7.5. W zeª 4 ma 195 obserwacji, s to obserwacje z ci±nieniem o 3 popoªudniu wi kszym równym hPa i o pokrywie chmur mniejszej ni» 7.5okta. Pod tymi warunkami nie b dzie pada jutro z prawdopodobie«stwem 95%: 2) Pressure3pm>= No ( ) 4) Cloud3pm< No ( ) * 5) Cloud3pm>= Yes ( ) * W zeª 5 przewiduje,»e b dzie pada jutro. Mamy tu tylko 9 obserwacji, ale cz sto± deszczu wynosi dla nich 67%. St d mo»emy powiedzie,»e je±li ci±nienie jest nie mniejsze ni» hPa oraz pokrywa chmur wynosi nie mniej ni» 7.5okta o 3 popoªudniu, to nast pnego dnia z prawdopodobie«stwem 67% b dzie pada. W zªy 4 i 5 s oznaczone gwiazdk, co znaczy,»e s to w zªy ko«cowe i nie b d dalej dzielone. 148 / 260

149 Przykªad z u»yciem zbioru weather Teraz zajmiemy si podziaªem w zªa 2. Algorytm u»yª zmiennej Cloud3pm do podziaªu z warto±ci 7.5. W zeª 4 ma 195 obserwacji, s to obserwacje z ci±nieniem o 3 popoªudniu wi kszym równym hPa i o pokrywie chmur mniejszej ni» 7.5okta. Pod tymi warunkami nie b dzie pada jutro z prawdopodobie«stwem 95%: 2) Pressure3pm>= No ( ) 4) Cloud3pm< No ( ) * 5) Cloud3pm>= Yes ( ) * W zeª 5 przewiduje,»e b dzie pada jutro. Mamy tu tylko 9 obserwacji, ale cz sto± deszczu wynosi dla nich 67%. St d mo»emy powiedzie,»e je±li ci±nienie jest nie mniejsze ni» hPa oraz pokrywa chmur wynosi nie mniej ni» 7.5okta o 3 popoªudniu, to nast pnego dnia z prawdopodobie«stwem 67% b dzie pada. W zªy 4 i 5 s oznaczone gwiazdk, co znaczy,»e s to w zªy ko«cowe i nie b d dalej dzielone. 149 / 260

150 Przykªad z u»yciem zbioru weather Teraz zajmiemy si podziaªem w zªa 2. Algorytm u»yª zmiennej Cloud3pm do podziaªu z warto±ci 7.5. W zeª 4 ma 195 obserwacji, s to obserwacje z ci±nieniem o 3 popoªudniu wi kszym równym hPa i o pokrywie chmur mniejszej ni» 7.5okta. Pod tymi warunkami nie b dzie pada jutro z prawdopodobie«stwem 95%: 2) Pressure3pm>= No ( ) 4) Cloud3pm< No ( ) * 5) Cloud3pm>= Yes ( ) * W zeª 5 przewiduje,»e b dzie pada jutro. Mamy tu tylko 9 obserwacji, ale cz sto± deszczu wynosi dla nich 67%. St d mo»emy powiedzie,»e je±li ci±nienie jest nie mniejsze ni» hPa oraz pokrywa chmur wynosi nie mniej ni» 7.5okta o 3 popoªudniu, to nast pnego dnia z prawdopodobie«stwem 67% b dzie pada. W zªy 4 i 5 s oznaczone gwiazdk, co znaczy,»e s to w zªy ko«cowe i nie b d dalej dzielone. 150 / 260

151 Przykªad z u»yciem zbioru weather Pozostaªe w zªy 6 i 7 powstaªy z podziaªu w zªa 3 wg zmiennej Sunshine z warto±ci podziaªu 8.85: 3) Pressure3pm< No ( ) 6) Sunshine>= No ( ) * 7) Sunshine< Yes ( ) * Dziel c w zeª 3 w ten sposób dostali±my dwie prawie homogeniczne grupy, w zeª 6 reprezentuje obserwacje z 20% szans na deszcz jutro, natomiast w zeª 7 daje 74% szans na deszcz. W ten sposób zbudowali±my proste drzewo decyzyjne z 7 w zªami i czterema li± mi o maksymalnej gª boko±ci / 260

152 Przykªad z u»yciem zbioru weather Pozostaªe w zªy 6 i 7 powstaªy z podziaªu w zªa 3 wg zmiennej Sunshine z warto±ci podziaªu 8.85: 3) Pressure3pm< No ( ) 6) Sunshine>= No ( ) * 7) Sunshine< Yes ( ) * Dziel c w zeª 3 w ten sposób dostali±my dwie prawie homogeniczne grupy, w zeª 6 reprezentuje obserwacje z 20% szans na deszcz jutro, natomiast w zeª 7 daje 74% szans na deszcz. W ten sposób zbudowali±my proste drzewo decyzyjne z 7 w zªami i czterema li± mi o maksymalnej gª boko±ci / 260

153 Przykªad z u»yciem zbioru weather Nast pna cz ± widoku tekstowego pokazuje kod R u»yty do wygenerowania drzewa: Classification tree: rpart(formula = RainTomorrow ~., data = crs$dataset[crs$train, c(crs$input, crs$target)], method = "class", parms = list(split = "information"), control = rpart.control(usesurrogate = 0, maxsurrogate = 0)) 153 / 260

154 Przykªad z u»yciem zbioru weather Nast pna cz ± widoku tekstowego pokazuje kod R u»yty do wygenerowania drzewa: Classification tree: rpart(formula = RainTomorrow ~., data = crs$dataset[crs$train, c(crs$input, crs$target)], method = "class", parms = list(split = "information"), control = rpart.control(usesurrogate = 0, maxsurrogate = 0)) 154 / 260

155 Przykªad z u»yciem zbioru weather Kod ten mo»na zobaczy te» w zakªadce log. Atrybut formula oznacza,»e chcemy zbudowa model, który przewiduje warto± zmiennej RainTomorrow na podstawie pozostaªych zmiennych (oznaczonych jako ). Zbiór danych to ramka danych crs$dataset, z którego wybieramy indeksy obserwacji nale» ce do zbioru treningowego crs$train. Classification tree: rpart(formula = RainTomorrow ~., data = crs$dataset[crs$train, c(crs$input, crs$target)], method = "class", parms = list(split = "information"), control = rpart.control(usesurrogate = 0, maxsurrogate = 0)) Metoda u»yta bazuje na klasykacji (method), a podziaª na zysku informacyjnym (split). 155 / 260

156 Przykªad z u»yciem zbioru weather Model najcz ±ciej u»ywa kilku zmiennych, nast pna cz ± widoku listuje te zmienne. W naszym wypadku u»yte byªy tylko 3: Variables actually used in tree construction: [1] Cloud3pm Pressure3pm Sunshine 156 / 260

157 Przykªad z u»yciem zbioru weather Root node error: 41/256 = n= 256 CP nsplit rel error xerror xstd Bª d dla caªego zbioru danych wynosi 0.16 (bez podziaªu - je±li dokonaliby±my klasykacji wszystkich obserwacji jako No). Najbardziej interesuj cy jest bª d cross-validation error, czyli kolumna xerror. 157 / 260

158 Przykªad z u»yciem zbioru weather Root node error: 41/256 = n= 256 CP nsplit rel error xerror xstd Bª d dla caªego zbioru danych wynosi 0.16 (bez podziaªu - je±li dokonaliby±my klasykacji wszystkich obserwacji jako No). Najbardziej interesuj cy jest bª d cross-validation error, czyli kolumna xerror. 158 / 260

159 Przykªad z u»yciem zbioru weather Root node error: 41/256 = n= 256 CP nsplit rel error xerror xstd Bior c to jako podstaw (baseline error 1.00), tabela pokazuje wzgl dn zmian tego bª du podczas budowy drzewa. W linii 2, widzimy,»e po pierwszym podziale zbioru danych bª d xerror zredukowaª si do 80% pierwotnej warto±ci. Zauwa»my,»e bª d walidacji krzy»owej (xerror) zmniejsza si wolniej ni» bª d na zbiorze treningowym (error), co jest typowe. 159 / 260

160 Przykªad z u»yciem zbioru weather Root node error: 41/256 = n= 256 CP nsplit rel error xerror xstd Bior c to jako podstaw (baseline error 1.00), tabela pokazuje wzgl dn zmian tego bª du podczas budowy drzewa. W linii 2, widzimy,»e po pierwszym podziale zbioru danych bª d xerror zredukowaª si do 80% pierwotnej warto±ci. Zauwa»my,»e bª d walidacji krzy»owej (xerror) zmniejsza si wolniej ni» bª d na zbiorze treningowym (error), co jest typowe. 160 / 260

161 Przykªad z u»yciem zbioru weather Root node error: 41/256 = n= 256 CP nsplit rel error xerror xstd Warto± CP (complexity parameter - parametr zªo»ono±ci) wyja±nimy za chwil. Teraz zauwa»my,»e im wi cej mamy w zªów, to parametr ten maleje. Warto zauwa»y,»e bª d walidacji krzy»owej zaczyna rosn przy dalszym podziale drzewa, co oznacza,»e algorytm powinien zatrzyma podziaª, poniewa» nie widzimy znacz cej redukcji bª du. 161 / 260

162 Przykªad z u»yciem zbioru weather Root node error: 41/256 = n= 256 CP nsplit rel error xerror xstd Warto± CP (complexity parameter - parametr zªo»ono±ci) wyja±nimy za chwil. Teraz zauwa»my,»e im wi cej mamy w zªów, to parametr ten maleje. Warto zauwa»y,»e bª d walidacji krzy»owej zaczyna rosn przy dalszym podziale drzewa, co oznacza,»e algorytm powinien zatrzyma podziaª, poniewa» nie widzimy znacz cej redukcji bª du. 162 / 260

163 Budowa drzewa za pomoc R Jak ju» wcze±niej wspominali±my w zakªadce Log pokazana jest formuªa j zyka R, która tworzy drzewo decyzyjne Skorzystamy teraz z tradycyjnego algorytmu budowania drzewa, u»ywamy pakietu rpart, który daje funkcj rpart (), która jest implementacj standardowych algorytmów klasykacyjnych i regresyjnych. library(rpart) Tworzymy zmienn weatherds u»ywaj c new.env() (nowe ±rodowisko), która posªu»y jako kontener dla danych i innych informacji: weatherds<-new.env() 163 / 260

164 Budowa drzewa za pomoc R Jak ju» wcze±niej wspominali±my w zakªadce Log pokazana jest formuªa j zyka R, która tworzy drzewo decyzyjne Skorzystamy teraz z tradycyjnego algorytmu budowania drzewa, u»ywamy pakietu rpart, który daje funkcj rpart (), która jest implementacj standardowych algorytmów klasykacyjnych i regresyjnych. library(rpart) Tworzymy zmienn weatherds u»ywaj c new.env() (nowe ±rodowisko), która posªu»y jako kontener dla danych i innych informacji: weatherds<-new.env() 164 / 260

165 Budowa drzewa za pomoc R Jak ju» wcze±niej wspominali±my w zakªadce Log pokazana jest formuªa j zyka R, która tworzy drzewo decyzyjne Skorzystamy teraz z tradycyjnego algorytmu budowania drzewa, u»ywamy pakietu rpart, który daje funkcj rpart (), która jest implementacj standardowych algorytmów klasykacyjnych i regresyjnych. library(rpart) Tworzymy zmienn weatherds u»ywaj c new.env() (nowe ±rodowisko), która posªu»y jako kontener dla danych i innych informacji: weatherds<-new.env() 165 / 260

166 Budowa drzewa za pomoc R Trzy kolumny z zestawu danych s ignorowane w naszych analizach, gdy» nie odgrywaj»adnej roli w modelu. S to te zmienne, które sªu» do okre±lenia obserwacji (data i miejsce) oraz zmienna ryzyka (RISK_MM - ilo± opadu odnotowana w dniu nast pnym). Poni»ej identykujemy indeksy tych zmiennych i zapisujemy indeks ujemny w zmiennej vars, która jest przechowywana w kontenerze: evalq({ data <- weather nobs <- nrow(data) vars <- -grep('^(date Locat RISK)',names(weather)) }, weatherds) evalq pozwala operowa w danym ±rodowisku, grep wyszukuje podany wzorzec 166 / 260

167 Budowa drzewa za pomoc R Trzy kolumny z zestawu danych s ignorowane w naszych analizach, gdy» nie odgrywaj»adnej roli w modelu. S to te zmienne, które sªu» do okre±lenia obserwacji (data i miejsce) oraz zmienna ryzyka (RISK_MM - ilo± opadu odnotowana w dniu nast pnym). Poni»ej identykujemy indeksy tych zmiennych i zapisujemy indeks ujemny w zmiennej vars, która jest przechowywana w kontenerze: evalq({ data <- weather nobs <- nrow(data) vars <- -grep('^(date Locat RISK)',names(weather)) }, weatherds) evalq pozwala operowa w danym ±rodowisku, grep wyszukuje podany wzorzec 167 / 260

168 Budowa drzewa za pomoc R Trzy kolumny z zestawu danych s ignorowane w naszych analizach, gdy» nie odgrywaj»adnej roli w modelu. S to te zmienne, które sªu» do okre±lenia obserwacji (data i miejsce) oraz zmienna ryzyka (RISK_MM - ilo± opadu odnotowana w dniu nast pnym). Poni»ej identykujemy indeksy tych zmiennych i zapisujemy indeks ujemny w zmiennej vars, która jest przechowywana w kontenerze: evalq({ data <- weather nobs <- nrow(data) vars <- -grep('^(date Locat RISK)',names(weather)) }, weatherds) evalq pozwala operowa w danym ±rodowisku, grep wyszukuje podany wzorzec 168 / 260

169 Budowa drzewa za pomoc R Wybieramy losowy podzbiór 70% obserwacji, który b dzie wykorzystany jako dane szkoleniowe. Ziarno losowe jest ustawione za pomoc set.seed () tak, aby±my mogli uzyska tak sam próbk losow dla celów pogl dowych i powtarzalno±ci wyników. evalq({ set.seed(42) train <- sample(nobs, 0.7*nobs) }, weatherds) Dodajemy do ±rodowiska formuª opisuj c model: evalq({ form <- formula(raintomorrow ~.) }, weatherds) 169 / 260

170 Budowa drzewa za pomoc R Wybieramy losowy podzbiór 70% obserwacji, który b dzie wykorzystany jako dane szkoleniowe. Ziarno losowe jest ustawione za pomoc set.seed () tak, aby±my mogli uzyska tak sam próbk losow dla celów pogl dowych i powtarzalno±ci wyników. evalq({ set.seed(42) train <- sample(nobs, 0.7*nobs) }, weatherds) Dodajemy do ±rodowiska formuª opisuj c model: evalq({ form <- formula(raintomorrow ~.) }, weatherds) 170 / 260

171 Budowa drzewa za pomoc R Tworzymy kontener przechowuj cy model, którego kontenerem nadrz dnym b dzie weatherds: weatherrpart <- new.env(parent=weatherds) Budowa samego modelu jest ju» prosta. Zmienne data, train i vars pochodz z kontenera weatherds, a wynik b dzie przechowywany w kontenerze weatherrpart: evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Do budowy drzewa u»ywamy funkcji rpart ( ), przekazuj c do niej formuªy i dane. 171 / 260

172 Budowa drzewa za pomoc R Tworzymy kontener przechowuj cy model, którego kontenerem nadrz dnym b dzie weatherds: weatherrpart <- new.env(parent=weatherds) Budowa samego modelu jest ju» prosta. Zmienne data, train i vars pochodz z kontenera weatherds, a wynik b dzie przechowywany w kontenerze weatherrpart: evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Do budowy drzewa u»ywamy funkcji rpart ( ), przekazuj c do niej formuªy i dane. 172 / 260

173 Budowa drzewa za pomoc R evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Nie musimy dodawa formula= i data= w argumentach funkcji, poniewa» mog one by równie» okre±lone przez pozycj na li±cie argumentów. Wª czamy je w celu zapewnienia jasno±ci dla innych czytaj cych ten kod. Argument formula= identykuje model, który ma powsta. W tym przypadku przekazujemy zmienn form, która byªa wcze±niej zdeniowana. Docelowa zmienna (na lewo od tyldy w formule) to RainTomorrow, a zmienne wej±ciowe skªadaj si ze wszystkich pozostaªych zmiennych w zbiorze danych. Budujemy model, który przewiduje warto± dla RainTomorrow na podstawie dzisiejszych obserwacji pogody. 173 / 260

174 Budowa drzewa za pomoc R evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Nie musimy dodawa formula= i data= w argumentach funkcji, poniewa» mog one by równie» okre±lone przez pozycj na li±cie argumentów. Wª czamy je w celu zapewnienia jasno±ci dla innych czytaj cych ten kod. Argument formula= identykuje model, który ma powsta. W tym przypadku przekazujemy zmienn form, która byªa wcze±niej zdeniowana. Docelowa zmienna (na lewo od tyldy w formule) to RainTomorrow, a zmienne wej±ciowe skªadaj si ze wszystkich pozostaªych zmiennych w zbiorze danych. Budujemy model, który przewiduje warto± dla RainTomorrow na podstawie dzisiejszych obserwacji pogody. 174 / 260

175 Budowa drzewa za pomoc R evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Nie musimy dodawa formula= i data= w argumentach funkcji, poniewa» mog one by równie» okre±lone przez pozycj na li±cie argumentów. Wª czamy je w celu zapewnienia jasno±ci dla innych czytaj cych ten kod. Argument formula= identykuje model, który ma powsta. W tym przypadku przekazujemy zmienn form, która byªa wcze±niej zdeniowana. Docelowa zmienna (na lewo od tyldy w formule) to RainTomorrow, a zmienne wej±ciowe skªadaj si ze wszystkich pozostaªych zmiennych w zbiorze danych. Budujemy model, który przewiduje warto± dla RainTomorrow na podstawie dzisiejszych obserwacji pogody. 175 / 260

176 Budowa drzewa za pomoc R evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Argument data= okre±la zestaw danych szkoleniowych. Przekazujemy do funkcji zmienn data, któr wcze±niej zdeniowali±my. Zestaw szkoleniowy skªada si z obserwacji wymienionych w zmiennej train. Zmienne z zestawu danych, które chcemy wyª czy okre±lone przez vars, która w tym przypadku wymienia jako ujemne liczby caªkowite zmienne do zignorowania. Podsumowuj c train i vars identykuj obserwacje i zmienne do uwzgl dnienia w modelu. 176 / 260

177 Budowa drzewa za pomoc R evalq({ model <- rpart(formula=form, data=data[train, vars]) }, weatherrpart) Argument data= okre±la zestaw danych szkoleniowych. Przekazujemy do funkcji zmienn data, któr wcze±niej zdeniowali±my. Zestaw szkoleniowy skªada si z obserwacji wymienionych w zmiennej train. Zmienne z zestawu danych, które chcemy wyª czy okre±lone przez vars, która w tym przypadku wymienia jako ujemne liczby caªkowite zmienne do zignorowania. Podsumowuj c train i vars identykuj obserwacje i zmienne do uwzgl dnienia w modelu. 177 / 260

178 Budowa drzewa za pomoc R Wynik jest zapisany w zmiennej model ±rodowiska weatherrpart, mo»emy si do niego odwoªywa za pomoc weatherrpart$model: print(weatherrpart$model) 178 / 260

179 Budowa drzewa za pomoc R Aby uzyska informacj o parametrze zªo»ono±ci CP (complexity parameter) u»ywamy plotcp(): printcp(weatherrpart$model) Inn przydatn komend dostarczaj c ciekawych informacji o wyniku jest summary(): summary(weatherrpart$model) Dostarcza ona informacje o procesie budowy modelu, w zªach, itp. 179 / 260

180 Budowa drzewa za pomoc R Aby uzyska informacj o parametrze zªo»ono±ci CP (complexity parameter) u»ywamy plotcp(): printcp(weatherrpart$model) Inn przydatn komend dostarczaj c ciekawych informacji o wyniku jest summary(): summary(weatherrpart$model) Dostarcza ona informacje o procesie budowy modelu, w zªach, itp. 180 / 260

181 Budowa drzewa za pomoc R Funkcje plot() i text() wy±wietlaj drzewo decyzyjne z etykietami: opar <- par(xpd=true) plot(weatherrpart$model) text(weatherrpart$model) par(opar) 181 / 260

182 Budowa drzewa za pomoc R Jest to inny rysunek ni» standardowy w Rattle, który u»ywa funkcji drawtreenodes() z pakietu maptree (White, 2010). Dªugo± linii oznacza bª d dla danej gaª zi drzewa. Rysunek drzewa za pomoc funkcji plot() i text() 182 / 260

183 Budowa drzewa za pomoc R Komenda path.rpart() jest ciekawym dodatkiem dla plot(): path.rpart(weatherrpart$model) Pozwala ona na u»ywanie lewego przycisku myszki Po klikni ciu na w zeª wy±wietla si ±cie»ka do w zªa w formie tekstowej, np po klikni ciu na prawy dolny w zeª dostaniemy: node number: 7 root Pressure3pm< 1012 Sunshine< 8.85 Klawisz Esc ko«czy interakcj. 183 / 260

184 Parametry drzewa Algorytm drzewa decyzyjnego dostarcza zbiór parametrów do tuningu, wpªywaj cego na to jak drzewo jest zbudowane. Domy±lne warto±ci w Rattle cz sto zapewniaj dobre drzewo. S z pewno±ci dobrym punktem wyj±cia i mog dawa zadowalaj cy wynik naszej pracy. Jednak»e, dostrojenie b dzie konieczne, je»eli przykªadowo zmienna docelowa ma bardzo niewiele przykªadów dla okre±lonej interesuj cej grupy lub chcieliby±my zbada szereg alternatywnych drzew. Opiszemy tylko cz ± parametrów i to bez zagª biania si w szczegóªy, ale dokumentacja R dostarcza znacznie wi cej informacji polecenie?rpart. Funkcja rpart () ma dwa argumenty stroj ce algorytm. Ka»dy z nich jest struktur zawieraj ca inne opcje. S to control= params= 184 / 260

185 Parametry drzewa Algorytm drzewa decyzyjnego dostarcza zbiór parametrów do tuningu, wpªywaj cego na to jak drzewo jest zbudowane. Domy±lne warto±ci w Rattle cz sto zapewniaj dobre drzewo. S z pewno±ci dobrym punktem wyj±cia i mog dawa zadowalaj cy wynik naszej pracy. Jednak»e, dostrojenie b dzie konieczne, je»eli przykªadowo zmienna docelowa ma bardzo niewiele przykªadów dla okre±lonej interesuj cej grupy lub chcieliby±my zbada szereg alternatywnych drzew. Opiszemy tylko cz ± parametrów i to bez zagª biania si w szczegóªy, ale dokumentacja R dostarcza znacznie wi cej informacji polecenie?rpart. Funkcja rpart () ma dwa argumenty stroj ce algorytm. Ka»dy z nich jest struktur zawieraj ca inne opcje. S to control= params= 185 / 260

186 Parametry drzewa Algorytm drzewa decyzyjnego dostarcza zbiór parametrów do tuningu, wpªywaj cego na to jak drzewo jest zbudowane. Domy±lne warto±ci w Rattle cz sto zapewniaj dobre drzewo. S z pewno±ci dobrym punktem wyj±cia i mog dawa zadowalaj cy wynik naszej pracy. Jednak»e, dostrojenie b dzie konieczne, je»eli przykªadowo zmienna docelowa ma bardzo niewiele przykªadów dla okre±lonej interesuj cej grupy lub chcieliby±my zbada szereg alternatywnych drzew. Opiszemy tylko cz ± parametrów i to bez zagª biania si w szczegóªy, ale dokumentacja R dostarcza znacznie wi cej informacji polecenie?rpart. Funkcja rpart () ma dwa argumenty stroj ce algorytm. Ka»dy z nich jest struktur zawieraj ca inne opcje. S to control= params= 186 / 260

187 Parametry drzewa Algorytm drzewa decyzyjnego dostarcza zbiór parametrów do tuningu, wpªywaj cego na to jak drzewo jest zbudowane. Domy±lne warto±ci w Rattle cz sto zapewniaj dobre drzewo. S z pewno±ci dobrym punktem wyj±cia i mog dawa zadowalaj cy wynik naszej pracy. Jednak»e, dostrojenie b dzie konieczne, je»eli przykªadowo zmienna docelowa ma bardzo niewiele przykªadów dla okre±lonej interesuj cej grupy lub chcieliby±my zbada szereg alternatywnych drzew. Opiszemy tylko cz ± parametrów i to bez zagª biania si w szczegóªy, ale dokumentacja R dostarcza znacznie wi cej informacji polecenie?rpart. Funkcja rpart () ma dwa argumenty stroj ce algorytm. Ka»dy z nich jest struktur zawieraj ca inne opcje. S to control= params= 187 / 260

188 Parametry drzewa Algorytm drzewa decyzyjnego dostarcza zbiór parametrów do tuningu, wpªywaj cego na to jak drzewo jest zbudowane. Domy±lne warto±ci w Rattle cz sto zapewniaj dobre drzewo. S z pewno±ci dobrym punktem wyj±cia i mog dawa zadowalaj cy wynik naszej pracy. Jednak»e, dostrojenie b dzie konieczne, je»eli przykªadowo zmienna docelowa ma bardzo niewiele przykªadów dla okre±lonej interesuj cej grupy lub chcieliby±my zbada szereg alternatywnych drzew. Opiszemy tylko cz ± parametrów i to bez zagª biania si w szczegóªy, ale dokumentacja R dostarcza znacznie wi cej informacji polecenie?rpart. Funkcja rpart () ma dwa argumenty stroj ce algorytm. Ka»dy z nich jest struktur zawieraj ca inne opcje. S to control= params= 188 / 260

189 Parametry drzewa Korzystamy z nich, jak w przykªadzie: evalq({ control <- rpart.control(minsplit=10, minbucket=5, maxdepth=20, usesurrogate=0, maxsurrogate=0) model <- rpart(formula=form, data=data[train, vars], method="class", parms=list(split="information"), control=control) }, weatherrpart) 189 / 260

190 Parametry drzewa Metoda modelowania okre±lana jest za pomoc parametru method=. Argument wskazuje rodzaj budowanego modelu i jest zale»ny od zmiennej docelowej. Dla celów kategorycznych, na ogóª budujemy modele klasykacyjne, a wi c u»ywamy method="class". Je±li cel jest zmienn numeryczn, to argument b dzie miaª warto± method = "ANOVA", wykorzystywany w analizie wariancji i drzewach regresji. Analiza wariancji (ANOVA) dla klasykacji pojedynczej bada wpªyw jednego czynnika klasykuj cego (podzielonego na wiele poziomów) na warto±ci badanej cechy mierzalnej. 190 / 260

191 Parametry drzewa Metoda modelowania okre±lana jest za pomoc parametru method=. Argument wskazuje rodzaj budowanego modelu i jest zale»ny od zmiennej docelowej. Dla celów kategorycznych, na ogóª budujemy modele klasykacyjne, a wi c u»ywamy method="class". Je±li cel jest zmienn numeryczn, to argument b dzie miaª warto± method = "ANOVA", wykorzystywany w analizie wariancji i drzewach regresji. Analiza wariancji (ANOVA) dla klasykacji pojedynczej bada wpªyw jednego czynnika klasykuj cego (podzielonego na wiele poziomów) na warto±ci badanej cechy mierzalnej. 191 / 260

192 Parametry drzewa Metoda modelowania okre±lana jest za pomoc parametru method=. Argument wskazuje rodzaj budowanego modelu i jest zale»ny od zmiennej docelowej. Dla celów kategorycznych, na ogóª budujemy modele klasykacyjne, a wi c u»ywamy method="class". Je±li cel jest zmienn numeryczn, to argument b dzie miaª warto± method = "ANOVA", wykorzystywany w analizie wariancji i drzewach regresji. Analiza wariancji (ANOVA) dla klasykacji pojedynczej bada wpªyw jednego czynnika klasykuj cego (podzielonego na wiele poziomów) na warto±ci badanej cechy mierzalnej. 192 / 260

193 Parametry drzewa Metoda modelowania okre±lana jest za pomoc parametru method=. Argument wskazuje rodzaj budowanego modelu i jest zale»ny od zmiennej docelowej. Dla celów kategorycznych, na ogóª budujemy modele klasykacyjne, a wi c u»ywamy method="class". Je±li cel jest zmienn numeryczn, to argument b dzie miaª warto± method = "ANOVA", wykorzystywany w analizie wariancji i drzewach regresji. Analiza wariancji (ANOVA) dla klasykacji pojedynczej bada wpªyw jednego czynnika klasykuj cego (podzielonego na wiele poziomów) na warto±ci badanej cechy mierzalnej. 193 / 260

194 Parametry drzewa Argument split= jest u»ywany do wyboru funkcji podziaªu (miary). Argument pojawia si wewn trz argumentu params rpart (), który jest list. Wybór warto±ci split="information" oznacza,»e rpart korzysta z zysku informacyjnego. Domy±lnym ustawieniami s w R: split = "Gini" - indeksu ró»norodno±ci Giniego, a w Rattle"information". 194 / 260

195 Parametry drzewa Argument split= jest u»ywany do wyboru funkcji podziaªu (miary). Argument pojawia si wewn trz argumentu params rpart (), który jest list. Wybór warto±ci split="information" oznacza,»e rpart korzysta z zysku informacyjnego. Domy±lnym ustawieniami s w R: split = "Gini" - indeksu ró»norodno±ci Giniego, a w Rattle"information". 195 / 260

196 Parametry drzewa Argument split= jest u»ywany do wyboru funkcji podziaªu (miary). Argument pojawia si wewn trz argumentu params rpart (), który jest list. Wybór warto±ci split="information" oznacza,»e rpart korzysta z zysku informacyjnego. Domy±lnym ustawieniami s w R: split = "Gini" - indeksu ró»norodno±ci Giniego, a w Rattle"information". 196 / 260

197 Parametry drzewa W przypadku danych weather oba parametry daj te same drzewa. evalq({ rpart(formula=form, data=data[train, vars], parms=list(split="information")) }, weatherrpart) evalq({ rpart(formula=form, data=data[train, vars], parms=list(split="gini")) }, weatherrpart) 197 / 260

198 Parametry drzewa Argument minsplit= podaje minimaln liczb obserwacji, które musz wyst powa w w ¹le drzewa, aby zostaª on dalej dzielony. W zeª nie b dzie dzielony je±li ma mniej ni» minsplit obserwacji. Argument minsplit= pojawia si w argumencie control rpart (). Domy±lna warto± minsplit = 20. W przykªadzie ni»ej, zilustrowano granic mi dzy podziaªem w zªa gªównego naszego drzewa decyzyjnego. Przykªad pokazuje,»e z minsplit = 53 da drzewo, które nie podzieli w zªa gªównego evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minsplit=53)) }, weatherrpart) 198 / 260

199 Parametry drzewa Argument minsplit= podaje minimaln liczb obserwacji, które musz wyst powa w w ¹le drzewa, aby zostaª on dalej dzielony. W zeª nie b dzie dzielony je±li ma mniej ni» minsplit obserwacji. Argument minsplit= pojawia si w argumencie control rpart (). Domy±lna warto± minsplit = 20. W przykªadzie ni»ej, zilustrowano granic mi dzy podziaªem w zªa gªównego naszego drzewa decyzyjnego. Przykªad pokazuje,»e z minsplit = 53 da drzewo, które nie podzieli w zªa gªównego evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minsplit=53)) }, weatherrpart) 199 / 260

200 Parametry drzewa Argument minsplit= podaje minimaln liczb obserwacji, które musz wyst powa w w ¹le drzewa, aby zostaª on dalej dzielony. W zeª nie b dzie dzielony je±li ma mniej ni» minsplit obserwacji. Argument minsplit= pojawia si w argumencie control rpart (). Domy±lna warto± minsplit = 20. W przykªadzie ni»ej, zilustrowano granic mi dzy podziaªem w zªa gªównego naszego drzewa decyzyjnego. Przykªad pokazuje,»e z minsplit = 53 da drzewo, które nie podzieli w zªa gªównego evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minsplit=53)) }, weatherrpart) 200 / 260

201 Parametry drzewa Argument minsplit= podaje minimaln liczb obserwacji, które musz wyst powa w w ¹le drzewa, aby zostaª on dalej dzielony. W zeª nie b dzie dzielony je±li ma mniej ni» minsplit obserwacji. Argument minsplit= pojawia si w argumencie control rpart (). Domy±lna warto± minsplit = 20. W przykªadzie ni»ej, zilustrowano granic mi dzy podziaªem w zªa gªównego naszego drzewa decyzyjnego. Przykªad pokazuje,»e z minsplit = 53 da drzewo, które nie podzieli w zªa gªównego evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minsplit=53)) }, weatherrpart) 201 / 260

202 Parametry drzewa Ustawianie minsplit = 52 daje podziaª na Pressure3pm (i dalszy podziaª). Pressure3pm dzieli zbiór danych na dwie cz ±ci, jedna z 204 obserwacjami, a druga z 52 obserwacjami. evalq({ rpart(formula=form, data=data[train, vars], control= rpart.control(minsplit=52)) }, weatherrpart) 202 / 260

203 Parametry drzewa Poniewa» mamy podziaª z jednej strony na 52, wida,»e minsplit = 53 model drzewa, nie dokonuje podziaªu w zªa gªównego. Zmiana warto±ci minsplit = pozwala nam wyeliminowa pewne obliczenia, poniewa» w zªy z niewielk liczb obserwacji b d ogólnie odgrywa mniejsz rol w naszych modelach. W zªy li±ci mog by skonstruowane z mniejsz liczb obserwacji ni» minsplit=, gdy» jest to kontrolowane przez parametr minbucket. Argument minbucket = jest minimaln liczb obserwacji w ka»dym w ¹le li±cia. Domy±lna warto± to 7, lub mniej wi cej jedna trzecia warto±ci minsplit. Je»eli którykolwiek z tych dwóch argumentów (minsplit i minbucket) jest podany i nie ma drugiego, to przyjmuje si»e warto± niepodanego speªnia powy»szy warunek (tj. minbucket = oznacza jedn trzeci minsplit =). 203 / 260

204 Parametry drzewa Poniewa» mamy podziaª z jednej strony na 52, wida,»e minsplit = 53 model drzewa, nie dokonuje podziaªu w zªa gªównego. Zmiana warto±ci minsplit = pozwala nam wyeliminowa pewne obliczenia, poniewa» w zªy z niewielk liczb obserwacji b d ogólnie odgrywa mniejsz rol w naszych modelach. W zªy li±ci mog by skonstruowane z mniejsz liczb obserwacji ni» minsplit=, gdy» jest to kontrolowane przez parametr minbucket. Argument minbucket = jest minimaln liczb obserwacji w ka»dym w ¹le li±cia. Domy±lna warto± to 7, lub mniej wi cej jedna trzecia warto±ci minsplit. Je»eli którykolwiek z tych dwóch argumentów (minsplit i minbucket) jest podany i nie ma drugiego, to przyjmuje si»e warto± niepodanego speªnia powy»szy warunek (tj. minbucket = oznacza jedn trzeci minsplit =). 204 / 260

205 Parametry drzewa Poniewa» mamy podziaª z jednej strony na 52, wida,»e minsplit = 53 model drzewa, nie dokonuje podziaªu w zªa gªównego. Zmiana warto±ci minsplit = pozwala nam wyeliminowa pewne obliczenia, poniewa» w zªy z niewielk liczb obserwacji b d ogólnie odgrywa mniejsz rol w naszych modelach. W zªy li±ci mog by skonstruowane z mniejsz liczb obserwacji ni» minsplit=, gdy» jest to kontrolowane przez parametr minbucket. Argument minbucket = jest minimaln liczb obserwacji w ka»dym w ¹le li±cia. Domy±lna warto± to 7, lub mniej wi cej jedna trzecia warto±ci minsplit. Je»eli którykolwiek z tych dwóch argumentów (minsplit i minbucket) jest podany i nie ma drugiego, to przyjmuje si»e warto± niepodanego speªnia powy»szy warunek (tj. minbucket = oznacza jedn trzeci minsplit =). 205 / 260

206 Parametry drzewa Poniewa» mamy podziaª z jednej strony na 52, wida,»e minsplit = 53 model drzewa, nie dokonuje podziaªu w zªa gªównego. Zmiana warto±ci minsplit = pozwala nam wyeliminowa pewne obliczenia, poniewa» w zªy z niewielk liczb obserwacji b d ogólnie odgrywa mniejsz rol w naszych modelach. W zªy li±ci mog by skonstruowane z mniejsz liczb obserwacji ni» minsplit=, gdy» jest to kontrolowane przez parametr minbucket. Argument minbucket = jest minimaln liczb obserwacji w ka»dym w ¹le li±cia. Domy±lna warto± to 7, lub mniej wi cej jedna trzecia warto±ci minsplit. Je»eli którykolwiek z tych dwóch argumentów (minsplit i minbucket) jest podany i nie ma drugiego, to przyjmuje si»e warto± niepodanego speªnia powy»szy warunek (tj. minbucket = oznacza jedn trzeci minsplit =). 206 / 260

207 Parametry drzewa Poniewa» mamy podziaª z jednej strony na 52, wida,»e minsplit = 53 model drzewa, nie dokonuje podziaªu w zªa gªównego. Zmiana warto±ci minsplit = pozwala nam wyeliminowa pewne obliczenia, poniewa» w zªy z niewielk liczb obserwacji b d ogólnie odgrywa mniejsz rol w naszych modelach. W zªy li±ci mog by skonstruowane z mniejsz liczb obserwacji ni» minsplit=, gdy» jest to kontrolowane przez parametr minbucket. Argument minbucket = jest minimaln liczb obserwacji w ka»dym w ¹le li±cia. Domy±lna warto± to 7, lub mniej wi cej jedna trzecia warto±ci minsplit. Je»eli którykolwiek z tych dwóch argumentów (minsplit i minbucket) jest podany i nie ma drugiego, to przyjmuje si»e warto± niepodanego speªnia powy»szy warunek (tj. minbucket = oznacza jedn trzeci minsplit =). 207 / 260

208 Parametry drzewa Porównajmy dwa przykªady u»ycia minbucket =. Pierwszy ogranicza minimalny rozmiar obserwacji w li±ciu do 10, daj c taki sam model jak uzyskali±my powy»ej. Drugi przykªad zmniejsza t warto± do zaledwie 5 obserwacji. Wynik b dzie zwykle wi kszym drzewem decyzyjnym, poniewa» pozwalamy na w zªy li±ci z mniejsz liczb obserwacji. ops <- options(digits=2) evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minbucket=10)) }, weatherrpart) evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minbucket=5)) }, weatherrpart) 208 / 260

209 Parametry drzewa Porównajmy dwa przykªady u»ycia minbucket =. Pierwszy ogranicza minimalny rozmiar obserwacji w li±ciu do 10, daj c taki sam model jak uzyskali±my powy»ej. Drugi przykªad zmniejsza t warto± do zaledwie 5 obserwacji. Wynik b dzie zwykle wi kszym drzewem decyzyjnym, poniewa» pozwalamy na w zªy li±ci z mniejsz liczb obserwacji. ops <- options(digits=2) evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minbucket=10)) }, weatherrpart) evalq({ rpart(formula=form, data=data[train, vars], control=rpart.control(minbucket=5)) }, weatherrpart) 209 / 260

210 Parametry drzewa Warto± minbucket = mo»e mie wpªyw na wybór zmiennej podziaªu. Zmiana mo»e nast pi, gdy jeden wybór z wy»szymi wynikami ma zbyt maªo obserwacji, co prowadzi do innego wyboru w celu speªnienia minimalnych wymaga«dotycz cych liczby obserwacji w podziale. Cho domy±lnie jest ustawiona warto± minbucket = na jedn trzeci minsplit =, to nie jest wymagane aby minbucket= byªa mniejsza ni» minsplit=. W zeª zawsze ma co najmniej minbucket = obserwacji i b dzie podzielony, je»eli ma co najmniej minsplit = obserwacji i je±li po podziale ka»de z jego dzieci ma przynajmniej minbucket = obserwacji. 210 / 260

211 Parametry drzewa Warto± minbucket = mo»e mie wpªyw na wybór zmiennej podziaªu. Zmiana mo»e nast pi, gdy jeden wybór z wy»szymi wynikami ma zbyt maªo obserwacji, co prowadzi do innego wyboru w celu speªnienia minimalnych wymaga«dotycz cych liczby obserwacji w podziale. Cho domy±lnie jest ustawiona warto± minbucket = na jedn trzeci minsplit =, to nie jest wymagane aby minbucket= byªa mniejsza ni» minsplit=. W zeª zawsze ma co najmniej minbucket = obserwacji i b dzie podzielony, je»eli ma co najmniej minsplit = obserwacji i je±li po podziale ka»de z jego dzieci ma przynajmniej minbucket = obserwacji. 211 / 260

212 Parametry drzewa Warto± minbucket = mo»e mie wpªyw na wybór zmiennej podziaªu. Zmiana mo»e nast pi, gdy jeden wybór z wy»szymi wynikami ma zbyt maªo obserwacji, co prowadzi do innego wyboru w celu speªnienia minimalnych wymaga«dotycz cych liczby obserwacji w podziale. Cho domy±lnie jest ustawiona warto± minbucket = na jedn trzeci minsplit =, to nie jest wymagane aby minbucket= byªa mniejsza ni» minsplit=. W zeª zawsze ma co najmniej minbucket = obserwacji i b dzie podzielony, je»eli ma co najmniej minsplit = obserwacji i je±li po podziale ka»de z jego dzieci ma przynajmniej minbucket = obserwacji. 212 / 260

213 Parametry drzewa Warto± minbucket = mo»e mie wpªyw na wybór zmiennej podziaªu. Zmiana mo»e nast pi, gdy jeden wybór z wy»szymi wynikami ma zbyt maªo obserwacji, co prowadzi do innego wyboru w celu speªnienia minimalnych wymaga«dotycz cych liczby obserwacji w podziale. Cho domy±lnie jest ustawiona warto± minbucket = na jedn trzeci minsplit =, to nie jest wymagane aby minbucket= byªa mniejsza ni» minsplit=. W zeª zawsze ma co najmniej minbucket = obserwacji i b dzie podzielony, je»eli ma co najmniej minsplit = obserwacji i je±li po podziale ka»de z jego dzieci ma przynajmniej minbucket = obserwacji. 213 / 260

214 Parametry drzewa Parametr zªo»ono±ci cp= Jest stosowany do kontrolowania wielko±ci drzewa decyzyjnego i do wyboru optymalnej wysoko±ci drzewa. Kontroluje proces przycinania drzewa decyzyjnego. Zagadnienie b dziemy omawia pó¹niej, ale zauwa»my,»e bez przycinania drzewo mo»e nadmierne dopasowa si do danych szkoleniowych i nie radzi sobie dobrze na nowych danych. Ogólnie, im bardziej zªo»ony model, tym bardziej prawdopodobne jest to,»e zapami taª dane, na których zostaª on przeszkolony i mniej prawdopodobne jest to, aby dopasowaª si do nowych wcze±niej niewidocznych dla niego danych. Z drugiej strony, drzewa decyzyjne s ªatwe w interpretacji i budowa bardziej zªo»onych drzew (tzn. posiadaj cych wiele podziaªów) mo»e by czasem kusz ca (i przydatna). Mo»e zawiera spostrze»enia, które mo»emy nast pnie przetestowa statystycznie. 214 / 260

215 Parametry drzewa Parametr zªo»ono±ci cp= Jest stosowany do kontrolowania wielko±ci drzewa decyzyjnego i do wyboru optymalnej wysoko±ci drzewa. Kontroluje proces przycinania drzewa decyzyjnego. Zagadnienie b dziemy omawia pó¹niej, ale zauwa»my,»e bez przycinania drzewo mo»e nadmierne dopasowa si do danych szkoleniowych i nie radzi sobie dobrze na nowych danych. Ogólnie, im bardziej zªo»ony model, tym bardziej prawdopodobne jest to,»e zapami taª dane, na których zostaª on przeszkolony i mniej prawdopodobne jest to, aby dopasowaª si do nowych wcze±niej niewidocznych dla niego danych. Z drugiej strony, drzewa decyzyjne s ªatwe w interpretacji i budowa bardziej zªo»onych drzew (tzn. posiadaj cych wiele podziaªów) mo»e by czasem kusz ca (i przydatna). Mo»e zawiera spostrze»enia, które mo»emy nast pnie przetestowa statystycznie. 215 / 260

216 Parametry drzewa Parametr zªo»ono±ci cp= Jest stosowany do kontrolowania wielko±ci drzewa decyzyjnego i do wyboru optymalnej wysoko±ci drzewa. Kontroluje proces przycinania drzewa decyzyjnego. Zagadnienie b dziemy omawia pó¹niej, ale zauwa»my,»e bez przycinania drzewo mo»e nadmierne dopasowa si do danych szkoleniowych i nie radzi sobie dobrze na nowych danych. Ogólnie, im bardziej zªo»ony model, tym bardziej prawdopodobne jest to,»e zapami taª dane, na których zostaª on przeszkolony i mniej prawdopodobne jest to, aby dopasowaª si do nowych wcze±niej niewidocznych dla niego danych. Z drugiej strony, drzewa decyzyjne s ªatwe w interpretacji i budowa bardziej zªo»onych drzew (tzn. posiadaj cych wiele podziaªów) mo»e by czasem kusz ca (i przydatna). Mo»e zawiera spostrze»enia, które mo»emy nast pnie przetestowa statystycznie. 216 / 260

217 Parametry drzewa Parametr zªo»ono±ci cp= Jest stosowany do kontrolowania wielko±ci drzewa decyzyjnego i do wyboru optymalnej wysoko±ci drzewa. Kontroluje proces przycinania drzewa decyzyjnego. Zagadnienie b dziemy omawia pó¹niej, ale zauwa»my,»e bez przycinania drzewo mo»e nadmierne dopasowa si do danych szkoleniowych i nie radzi sobie dobrze na nowych danych. Ogólnie, im bardziej zªo»ony model, tym bardziej prawdopodobne jest to,»e zapami taª dane, na których zostaª on przeszkolony i mniej prawdopodobne jest to, aby dopasowaª si do nowych wcze±niej niewidocznych dla niego danych. Z drugiej strony, drzewa decyzyjne s ªatwe w interpretacji i budowa bardziej zªo»onych drzew (tzn. posiadaj cych wiele podziaªów) mo»e by czasem kusz ca (i przydatna). Mo»e zawiera spostrze»enia, które mo»emy nast pnie przetestowa statystycznie. 217 / 260

218 Parametry drzewa Parametr zªo»ono±ci cp= Jest stosowany do kontrolowania wielko±ci drzewa decyzyjnego i do wyboru optymalnej wysoko±ci drzewa. Kontroluje proces przycinania drzewa decyzyjnego. Zagadnienie b dziemy omawia pó¹niej, ale zauwa»my,»e bez przycinania drzewo mo»e nadmierne dopasowa si do danych szkoleniowych i nie radzi sobie dobrze na nowych danych. Ogólnie, im bardziej zªo»ony model, tym bardziej prawdopodobne jest to,»e zapami taª dane, na których zostaª on przeszkolony i mniej prawdopodobne jest to, aby dopasowaª si do nowych wcze±niej niewidocznych dla niego danych. Z drugiej strony, drzewa decyzyjne s ªatwe w interpretacji i budowa bardziej zªo»onych drzew (tzn. posiadaj cych wiele podziaªów) mo»e by czasem kusz ca (i przydatna). Mo»e zawiera spostrze»enia, które mo»emy nast pnie przetestowa statystycznie. 218 / 260

219 Parametry drzewa U»ywaj c parametru cp = regulujemy minimaln korzy±, która musi by uzyskana w ka»dym podziale drzewa decyzyjnego. To oszcz dza czas, eliminuj c podziaªy, które dodaj niewielk warto± do modelu. Domy±lnie cp=0.01. Warto± 0 zbuduje kompletne drzewo o maksymalnej gª boko±ci, uwzgl dniaj c warto±ci parametrów minsplit = i minbucket =. Ró»ne warto±ci CP daj ró»ne rozmiary drzewa. Szukamy liczby podziaªów gdzie suma xerror ( krzy»owego bª du walidacji w stosunku do bª du gªównego) i xstd jest minimalna. 219 / 260

220 Parametry drzewa U»ywaj c parametru cp = regulujemy minimaln korzy±, która musi by uzyskana w ka»dym podziale drzewa decyzyjnego. To oszcz dza czas, eliminuj c podziaªy, które dodaj niewielk warto± do modelu. Domy±lnie cp=0.01. Warto± 0 zbuduje kompletne drzewo o maksymalnej gª boko±ci, uwzgl dniaj c warto±ci parametrów minsplit = i minbucket =. Ró»ne warto±ci CP daj ró»ne rozmiary drzewa. Szukamy liczby podziaªów gdzie suma xerror ( krzy»owego bª du walidacji w stosunku do bª du gªównego) i xstd jest minimalna. 220 / 260

221 Parametry drzewa U»ywaj c parametru cp = regulujemy minimaln korzy±, która musi by uzyskana w ka»dym podziale drzewa decyzyjnego. To oszcz dza czas, eliminuj c podziaªy, które dodaj niewielk warto± do modelu. Domy±lnie cp=0.01. Warto± 0 zbuduje kompletne drzewo o maksymalnej gª boko±ci, uwzgl dniaj c warto±ci parametrów minsplit = i minbucket =. Ró»ne warto±ci CP daj ró»ne rozmiary drzewa. Szukamy liczby podziaªów gdzie suma xerror ( krzy»owego bª du walidacji w stosunku do bª du gªównego) i xstd jest minimalna. 221 / 260

222 Parametry drzewa U»ywaj c parametru cp = regulujemy minimaln korzy±, która musi by uzyskana w ka»dym podziale drzewa decyzyjnego. To oszcz dza czas, eliminuj c podziaªy, które dodaj niewielk warto± do modelu. Domy±lnie cp=0.01. Warto± 0 zbuduje kompletne drzewo o maksymalnej gª boko±ci, uwzgl dniaj c warto±ci parametrów minsplit = i minbucket =. Ró»ne warto±ci CP daj ró»ne rozmiary drzewa. Szukamy liczby podziaªów gdzie suma xerror ( krzy»owego bª du walidacji w stosunku do bª du gªównego) i xstd jest minimalna. 222 / 260

223 Parametry drzewa Polecenie plotcp () jest u»yteczne do wizualizacji warto±ci CP. W poni»szym przykªadzie, budujemy peªne drzewo decyzyjne z cp= i minbucket= równymi zero. Bª d w porównaniu do parametru zªo»ono±ci. 223 / 260

224 Parametry drzewa set.seed(41) evalq({ control <- rpart.control(cp=0, minbucket=0) model <- rpart(formula=form, data=data[train, vars], control=control) }, weatherrpart) print(weatherrpart$model$cptable) plotcp(weatherrpart$model) grid() 224 / 260

225 Parametry drzewa Wykres przedstawia typowe zachowanie podczas budowy modelu. Gdy przyst pujemy do budowy zªo»onego modelu, bª d (o± Y) pocz tkowo maleje. Nast pnie staje si pªaski. Gdy model staje si bardziej zªo»ony, wska¹nik bª du zaczyna wzrasta. B dziemy chcieli wybra model, w którym bª d jest najni»szy. W oparciu o zasad wyboru prostszych modeli, mo»emy wybra pierwszy z dolnych punktów, a tym samym mo»emy ustawi u nas cp= / 260

226 Parametry drzewa Czasami proporcje klas w zbiorze treningowym nie odpowiadaj ich prawdziwym proporcjom w populacji. Mo»emy informowa Rattle i R o proporcji populacji, a otrzymany model b dzie im odpowiadaª. Wszystkie prawdopodobie«stwa b d zmodykowane, aby odpowiada rzeczywistym prawdopodobie«stwom klas, a nie proporcjom w szkoleniowym zestawie danych. Argument priors mo»e by równie» zastosowany do "podniesienia wagi" szczególnie wa»nej klasy nadaj c jej wi ksze prawdopodobie«stwo. W Rattle, prawdopodobie«stwa a priori s wyra»one jako lista numerów, które sumuj si do 1. Lista musi by tej samej dªugo±ci, co liczba unikatowych klas w szkoleniowym zestawie danych. Przykªadem binarnego zaklasykowania jest np. 0.6,0.4. To przekªada si na prior = c (0.6,0.4). 226 / 260

227 Parametry drzewa Czasami proporcje klas w zbiorze treningowym nie odpowiadaj ich prawdziwym proporcjom w populacji. Mo»emy informowa Rattle i R o proporcji populacji, a otrzymany model b dzie im odpowiadaª. Wszystkie prawdopodobie«stwa b d zmodykowane, aby odpowiada rzeczywistym prawdopodobie«stwom klas, a nie proporcjom w szkoleniowym zestawie danych. Argument priors mo»e by równie» zastosowany do "podniesienia wagi" szczególnie wa»nej klasy nadaj c jej wi ksze prawdopodobie«stwo. W Rattle, prawdopodobie«stwa a priori s wyra»one jako lista numerów, które sumuj si do 1. Lista musi by tej samej dªugo±ci, co liczba unikatowych klas w szkoleniowym zestawie danych. Przykªadem binarnego zaklasykowania jest np. 0.6,0.4. To przekªada si na prior = c (0.6,0.4). 227 / 260

228 Parametry drzewa Czasami proporcje klas w zbiorze treningowym nie odpowiadaj ich prawdziwym proporcjom w populacji. Mo»emy informowa Rattle i R o proporcji populacji, a otrzymany model b dzie im odpowiadaª. Wszystkie prawdopodobie«stwa b d zmodykowane, aby odpowiada rzeczywistym prawdopodobie«stwom klas, a nie proporcjom w szkoleniowym zestawie danych. Argument priors mo»e by równie» zastosowany do "podniesienia wagi" szczególnie wa»nej klasy nadaj c jej wi ksze prawdopodobie«stwo. W Rattle, prawdopodobie«stwa a priori s wyra»one jako lista numerów, które sumuj si do 1. Lista musi by tej samej dªugo±ci, co liczba unikatowych klas w szkoleniowym zestawie danych. Przykªadem binarnego zaklasykowania jest np. 0.6,0.4. To przekªada si na prior = c (0.6,0.4). 228 / 260

229 Parametry drzewa Czasami proporcje klas w zbiorze treningowym nie odpowiadaj ich prawdziwym proporcjom w populacji. Mo»emy informowa Rattle i R o proporcji populacji, a otrzymany model b dzie im odpowiadaª. Wszystkie prawdopodobie«stwa b d zmodykowane, aby odpowiada rzeczywistym prawdopodobie«stwom klas, a nie proporcjom w szkoleniowym zestawie danych. Argument priors mo»e by równie» zastosowany do "podniesienia wagi" szczególnie wa»nej klasy nadaj c jej wi ksze prawdopodobie«stwo. W Rattle, prawdopodobie«stwa a priori s wyra»one jako lista numerów, które sumuj si do 1. Lista musi by tej samej dªugo±ci, co liczba unikatowych klas w szkoleniowym zestawie danych. Przykªadem binarnego zaklasykowania jest np. 0.6,0.4. To przekªada si na prior = c (0.6,0.4). 229 / 260

230 Parametry drzewa Czasami proporcje klas w zbiorze treningowym nie odpowiadaj ich prawdziwym proporcjom w populacji. Mo»emy informowa Rattle i R o proporcji populacji, a otrzymany model b dzie im odpowiadaª. Wszystkie prawdopodobie«stwa b d zmodykowane, aby odpowiada rzeczywistym prawdopodobie«stwom klas, a nie proporcjom w szkoleniowym zestawie danych. Argument priors mo»e by równie» zastosowany do "podniesienia wagi" szczególnie wa»nej klasy nadaj c jej wi ksze prawdopodobie«stwo. W Rattle, prawdopodobie«stwa a priori s wyra»one jako lista numerów, które sumuj si do 1. Lista musi by tej samej dªugo±ci, co liczba unikatowych klas w szkoleniowym zestawie danych. Przykªadem binarnego zaklasykowania jest np. 0.6,0.4. To przekªada si na prior = c (0.6,0.4). 230 / 260

231 Parametry drzewa Poni»szy przykªad ilustruje, w jaki sposób mo»emy u»ywa tego argumentu do faworyzowania konkretnej klasy docelowej, która nie zostaªaby w inny sposób przewidywana przez model (poniewa» model okazuje si by tylko w zªem gªównym zawsze przewiduj cym No). Zaczynamy od utworzenia obiektu zbioru danych wausds, skªadaj cego si z wi kszego zestawu danych pogody, weatheraus wausds <- new.env() evalq({ data <- weatheraus nobs <- nrow(data) form <- formula(raintomorrow ~ RainToday) target <- all.vars(form)[1] set.seed(42) train <- sample(nobs, 0.5*nobs) }, wausds) 231 / 260

232 Parametry drzewa Nast pnie budujemy drzewo decyzyjne: wausrpart <- new.env(parent=wausds) evalq({ model <- rpart(formula=form, data=data[train,]) model }, wausrpart) Jest to rzeczywi±cie tylko jeden w zeª. Poni»sza tabela pokazuje proporcje obserwacji przypisane do poszczególnych klas: evalq({ freq <- table(data[train, target]) round(100*freq/length(train), 2) }, wausrpart) No Yes Funkcja table() zlicza cz stotliwo±ci dla warto±ci typu factor. 232 / 260

233 Parametry drzewa Teraz budujemy model z innymi warto±ciami prawdopodobie«stw: evalq({ model <- rpart(formula=form, data=data[train,], parm=list(prior=c(0.5, 0.5))) model }, wausrpart) Domy±lne warto±ci parametru prior s ustawione na proporcje klas w zbiorze treningowym. 233 / 260

234 Parametry drzewa Macierz strat (loss matrix) sªu»y do specycznego pomiaru ró»nego rodzaju bª dów (lub straty). Odnosi si to do tego, co jest znane jako false positives (faªszywe odpowiedzi pozytywne - lub bª dy typu I) i false negatives (faªszywe negatywy lub bª dy typu II), gdy mówimy o zadaniu dwuklasowym. Cz sto jeden rodzaj bª du jest bardziej znacz cy, ni» inny rodzaj bª du. Na przykªad dla oszustw (fraud detection), model, który identykuje zbyt wiele faªszywych alarmów jest lepszy ni» model, który identykuje zbyt wiele faªszywych negatywów (bo wtedy ominie zbyt wiele prawdziwych oszustów). W medycynie, false positive oznacza to,»e zdiagnozowali±my zdrowego pacjenta jako chorego, natomiast false negative oznacza,»e zdiagnozowali±my chorego pacjenta jako zdrowego. 234 / 260

235 Parametry drzewa Macierz strat (loss matrix) sªu»y do specycznego pomiaru ró»nego rodzaju bª dów (lub straty). Odnosi si to do tego, co jest znane jako false positives (faªszywe odpowiedzi pozytywne - lub bª dy typu I) i false negatives (faªszywe negatywy lub bª dy typu II), gdy mówimy o zadaniu dwuklasowym. Cz sto jeden rodzaj bª du jest bardziej znacz cy, ni» inny rodzaj bª du. Na przykªad dla oszustw (fraud detection), model, który identykuje zbyt wiele faªszywych alarmów jest lepszy ni» model, który identykuje zbyt wiele faªszywych negatywów (bo wtedy ominie zbyt wiele prawdziwych oszustów). W medycynie, false positive oznacza to,»e zdiagnozowali±my zdrowego pacjenta jako chorego, natomiast false negative oznacza,»e zdiagnozowali±my chorego pacjenta jako zdrowego. 235 / 260

236 Parametry drzewa Domy±lna strata dla ka»dego true/false positives/negatives wynosi 1 - wszystkie one maj równy wpªyw na zysk lub strat. W przypadku rzadkiej i niedostatecznie reprezentowanej klasy (jak oszustwa) mo»emy uzna,»e wynik false negatives jest cztery lub nawet dziesi razy gorszy ni» false positive. Zatem nale»y ukierunkowa dziaªanie algorytmu na odszukiwanie wszystkich przypadków pozytywnych (positive). Poni»sza tabela przedstawia terminologi (pokazuje przewidywania wzgl dem warto±ci rzeczywistych): observed predicted TN FP 1 FN TP 236 / 260

237 Parametry drzewa Domy±lna strata dla ka»dego true/false positives/negatives wynosi 1 - wszystkie one maj równy wpªyw na zysk lub strat. W przypadku rzadkiej i niedostatecznie reprezentowanej klasy (jak oszustwa) mo»emy uzna,»e wynik false negatives jest cztery lub nawet dziesi razy gorszy ni» false positive. Zatem nale»y ukierunkowa dziaªanie algorytmu na odszukiwanie wszystkich przypadków pozytywnych (positive). Poni»sza tabela przedstawia terminologi (pokazuje przewidywania wzgl dem warto±ci rzeczywistych): observed predicted TN FP 1 FN TP 237 / 260

238 Parametry drzewa Domy±lna strata dla ka»dego true/false positives/negatives wynosi 1 - wszystkie one maj równy wpªyw na zysk lub strat. W przypadku rzadkiej i niedostatecznie reprezentowanej klasy (jak oszustwa) mo»emy uzna,»e wynik false negatives jest cztery lub nawet dziesi razy gorszy ni» false positive. Zatem nale»y ukierunkowa dziaªanie algorytmu na odszukiwanie wszystkich przypadków pozytywnych (positive). Poni»sza tabela przedstawia terminologi (pokazuje przewidywania wzgl dem warto±ci rzeczywistych): observed predicted TN FP 1 FN TP 238 / 260

239 Parametry drzewa Domy±lna strata dla ka»dego true/false positives/negatives wynosi 1 - wszystkie one maj równy wpªyw na zysk lub strat. W przypadku rzadkiej i niedostatecznie reprezentowanej klasy (jak oszustwa) mo»emy uzna,»e wynik false negatives jest cztery lub nawet dziesi razy gorszy ni» false positive. Zatem nale»y ukierunkowa dziaªanie algorytmu na odszukiwanie wszystkich przypadków pozytywnych (positive). Poni»sza tabela przedstawia terminologi (pokazuje przewidywania wzgl dem warto±ci rzeczywistych): observed predicted TN FP 1 FN TP 239 / 260

240 Parametry drzewa Zauwa»my,»e nie okre±lamy»adnych wag w macierzy strat dla true positives (TP) i true negatives (TN), macierz ta musi mie zera na przek tnej i warto±ci dodatnie poza. Aby okre±li macierz w interfejsie Rattle, musimy dostarczy list w postaci: 0, FP, FN, 0 (bª d w Rattle). Ogólnie, macierz straty musi mie te same wymiary, co liczba klas (tj. liczba poziomów zmiennej celu) w szkoleniowym zestawie danych. Dla klasykacji binarnej musimy dostarczy cztery numery z zerami na przek tnej. Przykªadem jest ci g cyfr 0, 10, 1, 0, który mo»e by interpretowany nast puj co: warto± rzeczywista 0 przewidywana jako 1 (tj. false positives) jest dziesi razy bardziej niepo» dana ni» false negatives. Jest to wykorzystywane do budowy w rz dach macierzy strat, któr podajemy do rpart () jako parametr loss = matrix ( c ( 0,10,1,0 ), byrow = TRUE, nrow = 2 ). 240 / 260

241 Parametry drzewa Zauwa»my,»e nie okre±lamy»adnych wag w macierzy strat dla true positives (TP) i true negatives (TN), macierz ta musi mie zera na przek tnej i warto±ci dodatnie poza. Aby okre±li macierz w interfejsie Rattle, musimy dostarczy list w postaci: 0, FP, FN, 0 (bª d w Rattle). Ogólnie, macierz straty musi mie te same wymiary, co liczba klas (tj. liczba poziomów zmiennej celu) w szkoleniowym zestawie danych. Dla klasykacji binarnej musimy dostarczy cztery numery z zerami na przek tnej. Przykªadem jest ci g cyfr 0, 10, 1, 0, który mo»e by interpretowany nast puj co: warto± rzeczywista 0 przewidywana jako 1 (tj. false positives) jest dziesi razy bardziej niepo» dana ni» false negatives. Jest to wykorzystywane do budowy w rz dach macierzy strat, któr podajemy do rpart () jako parametr loss = matrix ( c ( 0,10,1,0 ), byrow = TRUE, nrow = 2 ). 241 / 260

242 Parametry drzewa Zauwa»my,»e nie okre±lamy»adnych wag w macierzy strat dla true positives (TP) i true negatives (TN), macierz ta musi mie zera na przek tnej i warto±ci dodatnie poza. Aby okre±li macierz w interfejsie Rattle, musimy dostarczy list w postaci: 0, FP, FN, 0 (bª d w Rattle). Ogólnie, macierz straty musi mie te same wymiary, co liczba klas (tj. liczba poziomów zmiennej celu) w szkoleniowym zestawie danych. Dla klasykacji binarnej musimy dostarczy cztery numery z zerami na przek tnej. Przykªadem jest ci g cyfr 0, 10, 1, 0, który mo»e by interpretowany nast puj co: warto± rzeczywista 0 przewidywana jako 1 (tj. false positives) jest dziesi razy bardziej niepo» dana ni» false negatives. Jest to wykorzystywane do budowy w rz dach macierzy strat, któr podajemy do rpart () jako parametr loss = matrix ( c ( 0,10,1,0 ), byrow = TRUE, nrow = 2 ). 242 / 260

243 Parametry drzewa Zauwa»my,»e nie okre±lamy»adnych wag w macierzy strat dla true positives (TP) i true negatives (TN), macierz ta musi mie zera na przek tnej i warto±ci dodatnie poza. Aby okre±li macierz w interfejsie Rattle, musimy dostarczy list w postaci: 0, FP, FN, 0 (bª d w Rattle). Ogólnie, macierz straty musi mie te same wymiary, co liczba klas (tj. liczba poziomów zmiennej celu) w szkoleniowym zestawie danych. Dla klasykacji binarnej musimy dostarczy cztery numery z zerami na przek tnej. Przykªadem jest ci g cyfr 0, 10, 1, 0, który mo»e by interpretowany nast puj co: warto± rzeczywista 0 przewidywana jako 1 (tj. false positives) jest dziesi razy bardziej niepo» dana ni» false negatives. Jest to wykorzystywane do budowy w rz dach macierzy strat, któr podajemy do rpart () jako parametr loss = matrix ( c ( 0,10,1,0 ), byrow = TRUE, nrow = 2 ). 243 / 260

244 Parametry drzewa Zauwa»my,»e nie okre±lamy»adnych wag w macierzy strat dla true positives (TP) i true negatives (TN), macierz ta musi mie zera na przek tnej i warto±ci dodatnie poza. Aby okre±li macierz w interfejsie Rattle, musimy dostarczy list w postaci: 0, FP, FN, 0 (bª d w Rattle). Ogólnie, macierz straty musi mie te same wymiary, co liczba klas (tj. liczba poziomów zmiennej celu) w szkoleniowym zestawie danych. Dla klasykacji binarnej musimy dostarczy cztery numery z zerami na przek tnej. Przykªadem jest ci g cyfr 0, 10, 1, 0, który mo»e by interpretowany nast puj co: warto± rzeczywista 0 przewidywana jako 1 (tj. false positives) jest dziesi razy bardziej niepo» dana ni» false negatives. Jest to wykorzystywane do budowy w rz dach macierzy strat, któr podajemy do rpart () jako parametr loss = matrix ( c ( 0,10,1,0 ), byrow = TRUE, nrow = 2 ). 244 / 260

245 Parametry drzewa Zauwa»my,»e nie okre±lamy»adnych wag w macierzy strat dla true positives (TP) i true negatives (TN), macierz ta musi mie zera na przek tnej i warto±ci dodatnie poza. Aby okre±li macierz w interfejsie Rattle, musimy dostarczy list w postaci: 0, FP, FN, 0 (bª d w Rattle). Ogólnie, macierz straty musi mie te same wymiary, co liczba klas (tj. liczba poziomów zmiennej celu) w szkoleniowym zestawie danych. Dla klasykacji binarnej musimy dostarczy cztery numery z zerami na przek tnej. Przykªadem jest ci g cyfr 0, 10, 1, 0, który mo»e by interpretowany nast puj co: warto± rzeczywista 0 przewidywana jako 1 (tj. false positives) jest dziesi razy bardziej niepo» dana ni» false negatives. Jest to wykorzystywane do budowy w rz dach macierzy strat, któr podajemy do rpart () jako parametr loss = matrix ( c ( 0,10,1,0 ), byrow = TRUE, nrow = 2 ). 245 / 260

246 Parametry drzewa Macierz straty b dzie miaªa wpªyw na wybór zmiennej, dla których mo»na podzieli zestaw danych w ka»dym w ¹le, daj c wi cej wagi w stosownych przypadkach. Korzystanie z macierzy strat jest cz sto wskazane, gdy budowa drzewa decyzyjnego ko«czy si tylko jednym w zªem gªównym (cz sto dlatego»e pozytywna klasa stanowi mniej ni» 5% populacji - i najbardziej dokªadny model b dzie przewidywa wszystko jako 0). 246 / 260

247 Parametry drzewa Macierz straty b dzie miaªa wpªyw na wybór zmiennej, dla których mo»na podzieli zestaw danych w ka»dym w ¹le, daj c wi cej wagi w stosownych przypadkach. Korzystanie z macierzy strat jest cz sto wskazane, gdy budowa drzewa decyzyjnego ko«czy si tylko jednym w zªem gªównym (cz sto dlatego»e pozytywna klasa stanowi mniej ni» 5% populacji - i najbardziej dokªadny model b dzie przewidywa wszystko jako 0). 247 / 260

248 Parametry drzewa Parametr maxdepth= sªu»y do ograniczenia wysoko±ci drzewa. Jego domy±lna warto± to 30. Korze«jest traktowany jako gª boko± 0. Funkcja rpart () udost pnia wiele innych parametrów, które nie s dost pne przez RattleGUI, np. maxcompete=. Cz sto przydatna mo»e by obserwacja nie tylko zmiennej, która daªa najlepszy podziaª na w ¹le, ale tak»e drugiej, trzeciej najlepszej. Ten parametr kontroluje liczb najlepszych podanych opcji. 248 / 260

249 Parametry drzewa Parametr maxdepth= sªu»y do ograniczenia wysoko±ci drzewa. Jego domy±lna warto± to 30. Korze«jest traktowany jako gª boko± 0. Funkcja rpart () udost pnia wiele innych parametrów, które nie s dost pne przez RattleGUI, np. maxcompete=. Cz sto przydatna mo»e by obserwacja nie tylko zmiennej, która daªa najlepszy podziaª na w ¹le, ale tak»e drugiej, trzeciej najlepszej. Ten parametr kontroluje liczb najlepszych podanych opcji. 249 / 260

250 Drzewa decyzyjne uwagi Drzewa decyzyjne s u»ywane od dawna. Dostarczaj one serii pyta«, gdzie nast pne pytanie zale»y od odpowiedzi na poprzednie. Tradycyjne algorytmy drzew decyzyjnych mog zawodzi z powodu przeuczenia oraz mog wykazywa odchylenie w kierunku wyboru zmiennych z wieloma mo»liwymi podziaªami (to znaczy zmiennymi typu kategorialnego). Hothorn et al. (2006) wprowadziª pewn popraw w podej±ciu prezentowanym tutaj do budowy drzewa decyzyjnego, zwan warunkow indukcj drzew (conditional inference trees). 250 / 260

251 Drzewa decyzyjne uwagi Drzewa decyzyjne s u»ywane od dawna. Dostarczaj one serii pyta«, gdzie nast pne pytanie zale»y od odpowiedzi na poprzednie. Tradycyjne algorytmy drzew decyzyjnych mog zawodzi z powodu przeuczenia oraz mog wykazywa odchylenie w kierunku wyboru zmiennych z wieloma mo»liwymi podziaªami (to znaczy zmiennymi typu kategorialnego). Hothorn et al. (2006) wprowadziª pewn popraw w podej±ciu prezentowanym tutaj do budowy drzewa decyzyjnego, zwan warunkow indukcj drzew (conditional inference trees). 251 / 260

252 Drzewa decyzyjne uwagi Drzewa decyzyjne s u»ywane od dawna. Dostarczaj one serii pyta«, gdzie nast pne pytanie zale»y od odpowiedzi na poprzednie. Tradycyjne algorytmy drzew decyzyjnych mog zawodzi z powodu przeuczenia oraz mog wykazywa odchylenie w kierunku wyboru zmiennych z wieloma mo»liwymi podziaªami (to znaczy zmiennymi typu kategorialnego). Hothorn et al. (2006) wprowadziª pewn popraw w podej±ciu prezentowanym tutaj do budowy drzewa decyzyjnego, zwan warunkow indukcj drzew (conditional inference trees). 252 / 260

253 Drzewa decyzyjne uwagi Drzewa decyzyjne s u»ywane od dawna. Dostarczaj one serii pyta«, gdzie nast pne pytanie zale»y od odpowiedzi na poprzednie. Tradycyjne algorytmy drzew decyzyjnych mog zawodzi z powodu przeuczenia oraz mog wykazywa odchylenie w kierunku wyboru zmiennych z wieloma mo»liwymi podziaªami (to znaczy zmiennymi typu kategorialnego). Hothorn et al. (2006) wprowadziª pewn popraw w podej±ciu prezentowanym tutaj do budowy drzewa decyzyjnego, zwan warunkow indukcj drzew (conditional inference trees). 253 / 260

254 Drzewa decyzyjne uwagi Rattle daje wybór tradycyjnych i warunkowych algorytmów. Warunkowo indukowane drzewa lepiej radz sobie z przeuczeniem. Drzewa tego typu tworzone s za pomoc funkcji ctree() z pakietu party (Hothorn et al., 2006 [?]). W Rattle mo»emy wybra opcj Conditional w zakªadce Model. W R mamy library(party) weatherctree <- new.env(parent=weatherds) evalq({ model <- ctree(formula=form, data=data[train, vars]) }, weatherctree) weatherctree$model plot(weatherctree$model) 254 / 260

255 Drzewa decyzyjne uwagi Rattle daje wybór tradycyjnych i warunkowych algorytmów. Warunkowo indukowane drzewa lepiej radz sobie z przeuczeniem. Drzewa tego typu tworzone s za pomoc funkcji ctree() z pakietu party (Hothorn et al., 2006 [?]). W Rattle mo»emy wybra opcj Conditional w zakªadce Model. W R mamy library(party) weatherctree <- new.env(parent=weatherds) evalq({ model <- ctree(formula=form, data=data[train, vars]) }, weatherctree) weatherctree$model plot(weatherctree$model) 255 / 260

256 Drzewa decyzyjne uwagi Rattle daje wybór tradycyjnych i warunkowych algorytmów. Warunkowo indukowane drzewa lepiej radz sobie z przeuczeniem. Drzewa tego typu tworzone s za pomoc funkcji ctree() z pakietu party (Hothorn et al., 2006 [?]). W Rattle mo»emy wybra opcj Conditional w zakªadce Model. W R mamy library(party) weatherctree <- new.env(parent=weatherds) evalq({ model <- ctree(formula=form, data=data[train, vars]) }, weatherctree) weatherctree$model plot(weatherctree$model) 256 / 260

257 Drzewa decyzyjne uwagi Rattle daje wybór tradycyjnych i warunkowych algorytmów. Warunkowo indukowane drzewa lepiej radz sobie z przeuczeniem. Drzewa tego typu tworzone s za pomoc funkcji ctree() z pakietu party (Hothorn et al., 2006 [?]). W Rattle mo»emy wybra opcj Conditional w zakªadce Model. W R mamy library(party) weatherctree <- new.env(parent=weatherds) evalq({ model <- ctree(formula=form, data=data[train, vars]) }, weatherctree) weatherctree$model plot(weatherctree$model) 257 / 260

258 Drzewa decyzyjne uwagi Mo»emy zobaczy wynik, który jest w zmiennej model: Wykres warunkowego drzewa decyzyjnego Wykres jest raczej czytelny, np. w zeª 3 przewiduje z du»ym prawd. deszcz, a w zeª 6 opisuje warunki, dla których raczej nie pada jutro. 258 / 260

Metody dowodzenia twierdze«

Metody dowodzenia twierdze« Metody dowodzenia twierdze«1 Metoda indukcji matematycznej Je±li T (n) jest form zdaniow okre±lon w zbiorze liczb naturalnych, to prawdziwe jest zdanie (T (0) n N (T (n) T (n + 1))) n N T (n). 2 W przypadku

Bardziej szczegółowo

Systemy decyzyjne Wykªad 5: Drzewa decyzyjne

Systemy decyzyjne Wykªad 5: Drzewa decyzyjne Nguyen Hung Son () W5: Drzewa decyzyjne 1 / 38 Systemy decyzyjne Wykªad 5: Drzewa decyzyjne Nguyen Hung Son Przykªad: klasyfikacja robotów Nguyen Hung Son () W5: Drzewa decyzyjne 2 / 38 Przykªad: drzewo

Bardziej szczegółowo

Metodydowodzenia twierdzeń

Metodydowodzenia twierdzeń 1 Metodydowodzenia twierdzeń Przez zdanie rozumiemy dowolne stwierdzenie, które jest albo prawdziwe, albo faªszywe (nie mo»e by ono jednocze±nie prawdziwe i faªszywe). Tradycyjnie b dziemy u»ywali maªych

Bardziej szczegółowo

Ekonometria - wykªad 8

Ekonometria - wykªad 8 Ekonometria - wykªad 8 3.1 Specykacja i werykacja modelu liniowego dobór zmiennych obja±niaj cych - cz ± 1 Barbara Jasiulis-Goªdyn 11.04.2014, 25.04.2014 2013/2014 Wprowadzenie Ideologia Y zmienna obja±niana

Bardziej szczegółowo

Metoda tablic semantycznych. 1 Metoda tablic semantycznych

Metoda tablic semantycznych. 1 Metoda tablic semantycznych 1 Zarówno metoda tablic semantycznych, jak i rezolucji, to dosy sprawny algorytm do badania speªnialni±ci formuª, a wi c i tautologii. Chodzi w niej o wskazanie, je±li istnieje, modelu dla formuªy. Opiera

Bardziej szczegółowo

Algorytmy zwiazane z gramatykami bezkontekstowymi

Algorytmy zwiazane z gramatykami bezkontekstowymi Algorytmy zwiazane z gramatykami bezkontekstowymi Rozpoznawanie j zyków bezkontekstowych Problem rozpoznawania j zyka L polega na sprawdzaniu przynale»no±ci sªowa wej±ciowego x do L. Zakªadamy,»e j zyk

Bardziej szczegółowo

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych. Wykªad jest prowadzony w oparciu o podr cznik Analiza matematyczna 2. Denicje, twierdzenia, wzory M. Gewerta i Z. Skoczylasa. Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych. Denicja Mówimy,»e funkcja

Bardziej szczegółowo

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14 WST P DO TEORII INFORMACJI I KODOWANIA Grzegorz Szkibiel Wiosna 2013/14 Spis tre±ci 1 Kodowanie i dekodowanie 4 1.1 Kodowanie a szyfrowanie..................... 4 1.2 Podstawowe poj cia........................

Bardziej szczegółowo

Podstawy modelowania w j zyku UML

Podstawy modelowania w j zyku UML Podstawy modelowania w j zyku UML dr hab. Bo»ena Wo¹na-Szcze±niak Akademia im. Jan Dªugosza bwozna@gmail.com Wykªad 8 Diagram pakietów I Diagram pakietów (ang. package diagram) jest diagramem strukturalnym,

Bardziej szczegółowo

Elementy Modelowania Matematycznego Wykªad 1 Prawdopodobie«stwo

Elementy Modelowania Matematycznego Wykªad 1 Prawdopodobie«stwo Spis tre±ci Elementy Modelowania Matematycznego Wykªad 1 Prawdopodobie«stwo Romuald Kotowski Katedra Informatyki Stosowanej PJWSTK 2009 Spis tre±ci Spis tre±ci 1 2 3 4 5 Spis tre±ci Spis tre±ci 1 2 3 4

Bardziej szczegółowo

x y x y x y x + y x y

x y x y x y x + y x y Algebra logiki 1 W zbiorze {0, 1} okre±lamy dziaªania dwuargumentowe,, +, oraz dziaªanie jednoargumentowe ( ). Dziaªanie x + y nazywamy dodawaniem modulo 2, a dziaªanie x y nazywamy kresk Sheera. x x 0

Bardziej szczegółowo

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017 i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski Uniwersytet Šódzki, Wydziaª Matematyki i Informatyki UŠ piotr@fulmanski.pl http://fulmanski.pl/zajecia/prezentacje/festiwalnauki2017/festiwal_wmii_2017_

Bardziej szczegółowo

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1 J zyki formalne i operacje na j zykach J zyki formalne s abstrakcyjnie zbiorami sªów nad alfabetem sko«czonym Σ. J zyk formalny L to opis pewnego problemu decyzyjnego: sªowa to kody instancji (wej±cia)

Bardziej szczegółowo

Lab. 02: Algorytm Schrage

Lab. 02: Algorytm Schrage Lab. 02: Algorytm Schrage Andrzej Gnatowski 5 kwietnia 2015 1 Opis zadania Celem zadania laboratoryjnego jest zapoznanie si z jednym z przybli»onych algorytmów sªu» cych do szukania rozwi za«znanego z

Bardziej szczegółowo

Ekonometria Bayesowska

Ekonometria Bayesowska Ekonometria Bayesowska Wykªad 6: Bayesowskie ª czenie wiedzy (6) Ekonometria Bayesowska 1 / 21 Plan wykªadu 1 Wprowadzenie 2 Oczekiwana wielko± modelu 3 Losowanie próby modeli 4 wiczenia w R (6) Ekonometria

Bardziej szczegółowo

5. (8 punktów) EGZAMIN MAGISTERSKI, r Matematyka w ekonomii i ubezpieczeniach

5. (8 punktów) EGZAMIN MAGISTERSKI, r Matematyka w ekonomii i ubezpieczeniach Matematyka w ekonomii i ubezpieczeniach ( Niezale»ne szkody maja rozkªady P (X i = k) = exp( 1)/k!, P (Y i = k) = 4+k ) k (1/3) 5 (/3) k, k = 0, 1,.... Niech S = X 1 +... + X 500 + Y 1 +... + Y 500. Skªadka

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Ukªady równa«liniowych

Ukªady równa«liniowych dr Krzysztof yjewski Mechatronika; S-I 0 in» 7 listopada 206 Ukªady równa«liniowych Informacje pomocnicze Denicja Ogólna posta ukªadu m równa«liniowych z n niewiadomymi x, x, x n, gdzie m, n N jest nast

Bardziej szczegółowo

CAŠKOWANIE METODAMI MONTE CARLO Janusz Adamowski

CAŠKOWANIE METODAMI MONTE CARLO Janusz Adamowski III. CAŠKOWAIE METODAMI MOTE CARLO Janusz Adamowski 1 1 azwa metody Podstawowym zastosowaniem w zyce metody Monte Carlo (MC) jest opis zªo-»onych ukªadów zycznych o du»ej liczbie stopni swobody. Opis zªo»onych

Bardziej szczegółowo

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X. Relacje 1 Relacj n-argumentow nazywamy podzbiór ϱ X 1 X 2... X n. Je±li ϱ X Y jest relacj dwuargumentow (binarn ), to zamiast (x, y) ϱ piszemy xϱy. Relacj binarn okre±lon w zbiorze X nazywamy podzbiór

Bardziej szczegółowo

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15 ANALIZA NUMERYCZNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Metoda Eulera 3 1.1 zagadnienia brzegowe....................... 3 1.2 Zastosowanie ró»niczki...................... 4 1.3 Output do pliku

Bardziej szczegółowo

Rekurencyjne struktury danych

Rekurencyjne struktury danych Andrzej Jastrz bski Akademia ETI Dynamiczny przydziaª pami ci Pami, która jest przydzielana na pocz tku dziaªania procesu to: pami programu czyli instrukcje programu pami statyczna zwi zana ze zmiennymi

Bardziej szczegółowo

Matematyka dyskretna dla informatyków

Matematyka dyskretna dla informatyków UNIWERSYTET IM. ADAMA MICKIEWICZA W POZNANIU Jerzy Jaworski, Zbigniew Palka, Jerzy Szyma«ski Matematyka dyskretna dla informatyków uzupeænienia Pozna«007 A Notacja asymptotyczna Badaj c du»e obiekty kombinatoryczne

Bardziej szczegółowo

1 Bª dy i arytmetyka zmiennopozycyjna

1 Bª dy i arytmetyka zmiennopozycyjna 1 Bª dy i arytmetyka zmiennopozycyjna Liczby w pami ci komputera przedstawiamy w ukªadzie dwójkowym w postaci zmiennopozycyjnej Oznacza to,»e s one postaci ±m c, 01 m < 1, c min c c max, (1) gdzie m nazywamy

Bardziej szczegółowo

1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.

1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy. 1 Klasy. Klasa to inaczej mówi c typ który podobnie jak struktura skªada si z ró»nych typów danych. Tworz c klas programista tworzy nowy typ danych, który mo»e by modelem rzeczywistego obiektu. 1.1 Denicja

Bardziej szczegółowo

Podstawy matematyki dla informatyków

Podstawy matematyki dla informatyków Podstawy matematyki dla informatyków Wykªad 6 10 listopada 2011 W poprzednim odcinku... Zbiory A i B s równoliczne (tej samej mocy ), gdy istnieje bijekcja f : A 1 1 B. Piszemy A B lub A = B. na Moc zbioru

Bardziej szczegółowo

Liczenie podziaªów liczby: algorytm Eulera

Liczenie podziaªów liczby: algorytm Eulera Liczenie podziaªów liczby: algorytm Eulera Wojciech Rytter Podziaªy liczb s bardzo skomplikowanymi obiektami kombinatorycznymi, przedstawimy dwa algorytmy liczenia takich oblektów. Pierwszy prosty algorytm

Bardziej szczegółowo

1 Metody iteracyjne rozwi zywania równania f(x)=0

1 Metody iteracyjne rozwi zywania równania f(x)=0 1 Metody iteracyjne rozwi zywania równania f()=0 1.1 Metoda bisekcji Zaªó»my,»e funkcja f jest ci gªa w [a 0, b 0 ]. Pierwiastek jest w przedziale [a 0, b 0 ] gdy f(a 0 )f(b 0 ) < 0. (1) Ustalmy f(a 0

Bardziej szczegółowo

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14 WST P DO TEORII INFORMACJI I KODOWANIA Grzegorz Szkibiel Wiosna 203/4 Spis tre±ci Kodowanie i dekodowanie 4. Kodowanie a szyfrowanie..................... 4.2 Podstawowe poj cia........................

Bardziej szczegółowo

2 Liczby rzeczywiste - cz. 2

2 Liczby rzeczywiste - cz. 2 2 Liczby rzeczywiste - cz. 2 W tej lekcji omówimy pozostaªe tematy zwi zane z liczbami rzeczywistymi. 2. Przedziaªy liczbowe Wyró»niamy nast puj ce rodzaje przedziaªów liczbowych: (a) przedziaªy ograniczone:

Bardziej szczegółowo

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy. Logika i teoria mnogo±ci, konspekt wykªad 12 Teoria mocy, cz ± II Def. 12.1 Ka»demu zbiorowi X przyporz dkowujemy oznaczany symbolem X obiekt zwany liczb kardynaln (lub moc zbioru X) w taki sposób,»e ta

Bardziej szczegółowo

Elementarna statystyka

Elementarna statystyka Elementarna statystyka Alexander Bendikov 26 marca 2017 Klasyczny model: eksperyment o jednakowo prawdopodobnych wynikach Zaªo»enia: 1 Przestrze«próbek S ma sko«czenie wiele wyników ω 1, ω 2,..., ω n,

Bardziej szczegółowo

Wykªad 6: Model logitowy

Wykªad 6: Model logitowy Wykªad 6: Model logitowy Ekonometria Stosowana SGH Model logitowy 1 / 18 Plan wicze«1 Modele zmiennej jako±ciowej idea 2 Model logitowy Specykacja i interpretacja parametrów Dopasowanie i restrykcje 3

Bardziej szczegółowo

ALGORYTMY SORTOWANIA DANYCH

ALGORYTMY SORTOWANIA DANYCH ALGORYTMY SORTOWANIA DANYCH W zagadnieniu sortowania danych rozpatrywa b dziemy n liczb caªkowitych, b d cych pierwotnie w losowej kolejno±ci, które nale»y uporz dkowa nierosn co. Oczywi±cie sortowa mo»emy

Bardziej szczegółowo

Ciaªa i wielomiany. 1 Denicja ciaªa. Ciaªa i wielomiany 1

Ciaªa i wielomiany. 1 Denicja ciaªa. Ciaªa i wielomiany 1 Ciaªa i wielomiany 1 Ciaªa i wielomiany 1 Denicja ciaªa Niech F b dzie zbiorem, i niech + (dodawanie) oraz (mno»enie) b d dziaªaniami na zbiorze F. Denicja. Zbiór F wraz z dziaªaniami + i nazywamy ciaªem,

Bardziej szczegółowo

Przekroje Dedekinda 1

Przekroje Dedekinda 1 Przekroje Dedekinda 1 O liczbach wymiernych (tj. zbiorze Q) wiemy,»e: 1. zbiór Q jest uporz dkowany relacj mniejszo±ci < ; 2. zbiór liczb wymiernych jest g sty, tzn.: p, q Q : p < q w : p < w < q 3. 2

Bardziej szczegółowo

Lekcja 9 - LICZBY LOSOWE, ZMIENNE

Lekcja 9 - LICZBY LOSOWE, ZMIENNE Lekcja 9 - LICZBY LOSOWE, ZMIENNE I STAŠE 1 Liczby losowe Czasami spotkamy si z tak sytuacj,»e b dziemy potrzebowa by program za nas wylosowaª jak ± liczb. U»yjemy do tego polecenia: - liczba losowa Sprawd¹my

Bardziej szczegółowo

Statystyka matematyczna - ZSTA LMO

Statystyka matematyczna - ZSTA LMO Statystyka matematyczna - ZSTA LMO Šukasz Smaga Wydziaª Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza w Poznaniu Wykªad 4 Šukasz Smaga (WMI UAM) ZSTA LMO Wykªad 4 1 / 18 Wykªad 4 - zagadnienia

Bardziej szczegółowo

Wnioskowanie Boolowskie i teoria zbiorów przybli»onych

Wnioskowanie Boolowskie i teoria zbiorów przybli»onych Wnioskowanie Boolowskie i teoria zbiorów przybli»onych 4 Zbiory przybli»one Wprowadzenie do teorii zbiorów przybli»onych Zªo»ono± problemu szukania reduktów 5 Wnioskowanie Boolowskie w obliczaniu reduktów

Bardziej szczegółowo

Indeksowane rodziny zbiorów

Indeksowane rodziny zbiorów Logika i teoria mnogo±ci, konspekt wykªad 7 Indeksowane rodziny zbiorów Niech X b dzie przestrzeni zbiorem, którego podzbiorami b d wszystkie rozpatrywane zbiory, R rodzin wszystkich podzbiorów X za± T

Bardziej szczegółowo

Listy i operacje pytania

Listy i operacje pytania Listy i operacje pytania Iwona Polak iwona.polak@us.edu.pl Uniwersytet l ski Instytut Informatyki pa¹dziernika 07 Który atrybut NIE wyst puje jako atrybut elementów listy? klucz elementu (key) wska¹nik

Bardziej szczegółowo

Uczenie Wielowarstwowych Sieci Neuronów o

Uczenie Wielowarstwowych Sieci Neuronów o Plan uczenie neuronu o ci gªej funkcji aktywacji uczenie jednowarstwowej sieci neuronów o ci gªej funkcji aktywacji uczenie sieci wielowarstwowej - metoda propagacji wstecznej neuronu o ci gªej funkcji

Bardziej szczegółowo

Wst p do sieci neuronowych, wykªad 14 Zespolone sieci neuronowe

Wst p do sieci neuronowych, wykªad 14 Zespolone sieci neuronowe Wst p do sieci neuronowych, wykªad 14 Zespolone sieci neuronowe M. Czoków, J. Piersa Faculty of Mathematics and Computer Science, Nicolaus Copernicus University, Toru«, Poland 2011-18-02 Motywacja Liczby

Bardziej szczegółowo

O pewnym zadaniu olimpijskim

O pewnym zadaniu olimpijskim O pewnym zadaniu olimpijskim Michaª Seweryn, V LO w Krakowie opiekun pracy: dr Jacek Dymel Problem pocz tkowy Na drugim etapie LXII Olimpiady Matematycznej pojawiª si nast puj cy problem: Dla ka»dej liczby

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki. Wydziaª Matematyki, Fizyki i Informatyki 10 marca 2008 Spis tre±ci Listy 1 Listy 2 3 Co to jest lista? Listy List w Mathematice jest wyra»enie oddzielone przecinkami i zamkni te w { klamrach }. Elementy

Bardziej szczegółowo

Informatyka. z przedmiotu RACHUNEK PRAWDOPODOBIE STWA

Informatyka. z przedmiotu RACHUNEK PRAWDOPODOBIE STWA Informatyka Zbiór przykªadowych prac kontrolnych oraz przykªadowych zada«egzaminacyjnych z przedmiotu RACHUNEK PRAWDOPODOBIE STWA Sprawdzian 1, M09-02 Zadanie 1 (1p) W rzucie dwiema kostkami obliczy prawdopodobie«stwo

Bardziej szczegółowo

Ekonometria. wiczenia 2 Werykacja modelu liniowego. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Ekonometria. wiczenia 2 Werykacja modelu liniowego. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej Ekonometria wiczenia 2 Werykacja modelu liniowego (2) Ekonometria 1 / 33 Plan wicze«1 Wprowadzenie 2 Ocena dopasowania R-kwadrat Skorygowany R-kwadrat i kryteria informacyjne 3 Ocena istotno±ci zmiennych

Bardziej szczegółowo

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu ➏ Filozoa z elementami logiki Na podstawie wykªadów dra Mariusza Urba«skiego Sylogistyka Przypomnij sobie: stosunki mi dzy zakresami nazw KLASYCZNE ZDANIA KATEGORYCZNE Trzy znaczenia sªowa jest trzy rodzaje

Bardziej szczegółowo

Vincent Van GOGH: M»czyzna pij cy li»ank kawy. Radosªaw Klimek. J zyk programowania Java

Vincent Van GOGH: M»czyzna pij cy li»ank kawy. Radosªaw Klimek. J zyk programowania Java J zyk programowania JAVA c 2011 Vincent Van GOGH: M»czyzna pij cy li»ank kawy Zadanie 6. Napisz program, który tworzy tablic 30 liczb wstawia do tej tablicy liczby od 0 do 29 sumuje te elementy tablicy,

Bardziej szczegółowo

Drzewa Gomory-Hu Wprowadzenie. Drzewa Gomory-Hu. Jakub Š cki. 14 pa¹dziernika 2009

Drzewa Gomory-Hu Wprowadzenie. Drzewa Gomory-Hu. Jakub Š cki. 14 pa¹dziernika 2009 Wprowadzenie Drzewa Gomory-Hu Jakub Š cki 14 pa¹dziernika 2009 Wprowadzenie 1 Wprowadzenie Podstawowe poj cia i fakty 2 Istnienie drzew Gomory-Hu 3 Algorytm budowy drzew 4 Problemy otwarte Wprowadzenie

Bardziej szczegółowo

X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne)

X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne) X WARMI SKO-MAZURSKIE ZAWODY MATEMATYCZNE 18 maja 2012 (szkoªy ponadgimnazjalne) Zadanie 1 Obecnie u»ywane tablice rejestracyjne wydawane s od 1 maja 2000r. Numery rejestracyjne aut s tworzone ze zbioru

Bardziej szczegółowo

Ekonometria Bayesowska

Ekonometria Bayesowska Ekonometria Bayesowska Wykªad 9: Metody numeryczne: MCMC Andrzej Torój 1 / 17 Plan wykªadu Wprowadzenie 1 Wprowadzenie 3 / 17 Plan prezentacji Wprowadzenie 1 Wprowadzenie 3 3 / 17 Zastosowanie metod numerycznych

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

Podstawy statystycznego modelowania danych Analiza prze»ycia

Podstawy statystycznego modelowania danych Analiza prze»ycia Podstawy statystycznego modelowania danych Analiza prze»ycia Tomasz Suchocki Uniwersytet Przyrodniczy we Wrocªawiu Katedra Genetyki i Ogólnej Hodowli Zwierz t Plan wykªadu 1. Wprowadzenie 2. Hazard rate

Bardziej szczegółowo

XVII Warmi«sko-Mazurskie Zawody Matematyczne

XVII Warmi«sko-Mazurskie Zawody Matematyczne 1 XVII Warmi«sko-Mazurskie Zawody Matematyczne Kategoria: klasa VIII szkoªy podstawowej i III gimnazjum Olsztyn, 16 maja 2019r. Zad. 1. Udowodnij,»e dla dowolnych liczb rzeczywistych x, y, z speªniaj cych

Bardziej szczegółowo

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15 ARYTMETYKA MODULARNA Grzegorz Szkibiel Wiosna 2014/15 Spis tre±ci 1 Denicja kongruencji i jej podstawowe wªasno±ci 3 2 Systemy pozycyjne 8 3 Elementy odwrotne 12 4 Pewne zastosowania elementów odwrotnych

Bardziej szczegółowo

CCNA Subnetting Guide

CCNA Subnetting Guide CCNA Subnetting Guide Kataßzyna Mazur January 17, 2015 Contents Classful Networks (Sieci Klasowe) 2 Opis klas adresów 3 Subnetting Based on Network Requirements (Dzielenie sieci ze wzgl du na wymagan ilo±

Bardziej szczegółowo

Zbiory i odwzorowania

Zbiory i odwzorowania Zbiory i odwzorowania 1 Sposoby okre±lania zbiorów 1) Zbiór wszystkich elementów postaci f(t), gdzie t przebiega zbiór T : {f(t); t T }. 2) Zbiór wszystkich elementów x zbioru X speªniaj cych warunek ϕ(x):

Bardziej szczegółowo

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na.

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na. Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zadanko 1 (12p.) Na imprezie w Noc Kupaªy s 44 dziewczyny. Nosz one 11 ró»nych imion, a dla ka»dego imienia s dokªadnie 4 dziewczyny o tym imieniu przy czym ka»da

Bardziej szczegółowo

Ekonometria. wiczenia 8 Modele zmiennej jako±ciowej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Ekonometria. wiczenia 8 Modele zmiennej jako±ciowej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej Ekonometria wiczenia 8 Modele zmiennej jako±ciowej (8) Ekonometria 1 / 25 Plan wicze«1 Modele zmiennej jako±ciowej 2 Model logitowy Specykacja i interpretacja parametrów Dopasowanie i restrykcje 3 Predykcja

Bardziej szczegółowo

Wykªad 4. Funkcje wielu zmiennych.

Wykªad 4. Funkcje wielu zmiennych. Wykªad jest prowadzony w oparciu o podr cznik Analiza matematyczna 2. Denicje, twierdzenia, wzory M. Gewerta i Z. Skoczylasa. Wykªad 4. Funkcje wielu zmiennych. Zbiory na pªaszczy¹nie i w przestrzeni.

Bardziej szczegółowo

In»ynierskie zastosowania statystyki wiczenia

In»ynierskie zastosowania statystyki wiczenia Uwagi: 27012014 poprawiono kilka literówek, zwi zanych z przedziaªami ufno±ci dla wariancji i odchylenia standardowego In»ynierskie zastosowania statystyki wiczenia Przedziaªy wiarygodno±ci, testowanie

Bardziej szczegółowo

Jednowarstwowe Sieci Neuronowe jako. klasykatory do wielu klas. (c) Marcin Sydow

Jednowarstwowe Sieci Neuronowe jako. klasykatory do wielu klas. (c) Marcin Sydow Plan dyskretny perceptron i jego ograniczenia inne funkcje aktywacji wielo-klasykacja przy pomocy jedno-warstwowe sieci neuronowej ograniczenia jedno-warstwowej sieci neuronowej miary ewaluacyjne dla klasykacji

Bardziej szczegółowo

1. Wprowadzenie do C/C++

1. Wprowadzenie do C/C++ Podstawy Programowania - Roman Grundkiewicz - 013Z Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub

Bardziej szczegółowo

Wyra»enia logicznie równowa»ne

Wyra»enia logicznie równowa»ne Wyra»enia logicznie równowa»ne Denicja. Wyra»enia rachunku zda«nazywamy logicznie równowa»nymi, gdy maj równe warto±ci logiczne dla dowolnych warto±ci logicznych zmiennych zdaniowych. 1 Przykªady: Wyra»enia

Bardziej szczegółowo

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II.

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II. Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II. Poni»sze zadania s wyborem zada«z kolokwiów ze Wst pu do Informatyki jakie przeprowadziªem w ci gu ostatnich lat. Marek Zawadowski Zadanie 1 Napisz

Bardziej szczegółowo

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Zastosowanie eliptycznych równa«ró»niczkowych

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Zastosowanie eliptycznych równa«ró»niczkowych Janusz Adamowski METODY OBLICZENIOWE FIZYKI 1 Rozdziaª 9 RÓWNANIA ELIPTYCZNE 9.1 Zastosowanie eliptycznych równa«ró»niczkowych cz stkowych 9.1.1 Problemy z warunkami brzegowymi W przestrzeni dwuwymiarowej

Bardziej szczegółowo

Równania ró»niczkowe I rz du (RRIR) Twierdzenie Picarda. Anna D browska. WFTiMS. 23 marca 2010

Równania ró»niczkowe I rz du (RRIR) Twierdzenie Picarda. Anna D browska. WFTiMS. 23 marca 2010 WFTiMS 23 marca 2010 Spis tre±ci 1 Denicja 1 (równanie ró»niczkowe pierwszego rz du) Równanie y = f (t, y) (1) nazywamy równaniem ró»niczkowym zwyczajnym pierwszego rz du w postaci normalnej. Uwaga 1 Ogólna

Bardziej szczegółowo

Materiaªy do Repetytorium z matematyki

Materiaªy do Repetytorium z matematyki Materiaªy do Repetytorium z matematyki 0/0 Dziaªania na liczbach wymiernych i niewymiernych wiczenie Obliczy + 4 + 4 5. ( + ) ( 4 + 4 5). ( : ) ( : 4) 4 5 6. 7. { [ 7 4 ( 0 7) ] ( } : 5) : 0 75 ( 8) (

Bardziej szczegółowo

Rozkªady i warto± oczekiwana

Rozkªady i warto± oczekiwana Rozkªady i warto± oczekiwana Piotr Wilkin Zmienne losowe i rozkªady. Wst p Zmienn losow nazywamy zmienn X przyjmuj c dowolne warto±ci z pewnego zbioru D, która speªnia wªasno± y D P (X = y) = (innymi sªowy

Bardziej szczegółowo

3. (8 punktów) EGZAMIN MAGISTERSKI, Biomatematyka

3. (8 punktów) EGZAMIN MAGISTERSKI, Biomatematyka EGZAMIN MAGISTERSKI, 26.06.2017 Biomatematyka 1. (8 punktów) Rozwój wielko±ci pewnej populacji jest opisany równaniem: dn dt = rn(t) (1 + an(t), b gdzie N(t) jest wielko±ci populacji w chwili t, natomiast

Bardziej szczegółowo

W poprzednim odcinku... Podstawy matematyki dla informatyków. Relacje równowa»no±ci. Zbiór (typ) ilorazowy. Klasy abstrakcji

W poprzednim odcinku... Podstawy matematyki dla informatyków. Relacje równowa»no±ci. Zbiór (typ) ilorazowy. Klasy abstrakcji W poprzednim odcinku... Podstawy matematyki dla informatyków Rodzina indeksowana {A t } t T podzbiorów D to taka funkcja A : T P(D),»e A(t) = A t, dla dowolnego t T. Wykªad 3 20 pa¹dziernika 2011 Produkt

Bardziej szczegółowo

Wst p do sieci neuronowych 2010/2011 wykªad 7 Algorytm propagacji wstecznej cd.

Wst p do sieci neuronowych 2010/2011 wykªad 7 Algorytm propagacji wstecznej cd. Wst p do sieci neuronowych 2010/2011 wykªad 7 Algorytm propagacji wstecznej cd. M. Czoków, J. Piersa Faculty of Mathematics and Computer Science, Nicolaus Copernicus University, Toru«, Poland 2010-11-23

Bardziej szczegółowo

Funkcja kwadratowa, wielomiany oraz funkcje wymierne

Funkcja kwadratowa, wielomiany oraz funkcje wymierne Funkcja kwadratowa, wielomiany oraz funkcje wymierne Šukasz Dawidowski Nocne powtórki maturalne 28 kwietnia 2014 r. Troch teorii Funkcj f : R R dan wzorem: f (x) = ax 2 + bx + c gdzie a 0 nazywamy funkcj

Bardziej szczegółowo

PRZYPOMNIENIE Ka»d przestrze«wektorow V, o wymiarze dim V = n < nad ciaªem F mo»na jednoznacznie odwzorowa na przestrze«f n n-ek uporz dkowanych:

PRZYPOMNIENIE Ka»d przestrze«wektorow V, o wymiarze dim V = n < nad ciaªem F mo»na jednoznacznie odwzorowa na przestrze«f n n-ek uporz dkowanych: Plan Spis tre±ci 1 Homomorzm 1 1.1 Macierz homomorzmu....................... 2 1.2 Dziaªania............................... 3 2 Ukªady równa«6 3 Zadania 8 1 Homomorzm PRZYPOMNIENIE Ka»d przestrze«wektorow

Bardziej szczegółowo

P tle. Rozdziaª Wst p. 4.2 P tle P tla for(...);

P tle. Rozdziaª Wst p. 4.2 P tle P tla for(...); Rozdziaª 4 P tle 4.1 Wst p Niniejszy rozdziaª zawiera opis p tli w j zyku C, wraz z przykªadowymi programami oraz ich obja±nieniem. 4.2 P tle P tla to element j zyka programowania, pozwalaj cy na wielokrotne,

Bardziej szczegółowo

STRUKTURY DANYCH. dane wej±ciowe problemu, ewentualne dane po±rednie, dane wynikowe (czyli rozwi zanie problemu).

STRUKTURY DANYCH. dane wej±ciowe problemu, ewentualne dane po±rednie, dane wynikowe (czyli rozwi zanie problemu). STRUKTURY DANYCH Jak ju» zostaªo wspomniane, do rozwi zania ró»nego rodzaju problemów sªu» odpowiednie algorytmy (które implementujemy przy pomocy ró»nego rodzaju j zyków programowania wy»szego rz du).

Bardziej szczegółowo

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz Lekcja 8 - ANIMACJA 1 Polecenia Za pomoc Baltiego mo»emy tworzy animacj, tzn. sprawia by obraz na ekranie wygl daª jakby si poruszaª. Do animowania przedmiotów i tworzenia animacji posªu» nam polecenia

Bardziej szczegółowo

Informacje pomocnicze

Informacje pomocnicze Funkcje wymierne. Równania i nierówno±ci wymierne Denicja. (uªamki proste) Wyra»enia postaci Informacje pomocnicze A gdzie A d e R n N (dx e) n nazywamy uªamkami prostymi pierwszego rodzaju. Wyra»enia

Bardziej szczegółowo

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej Ekonometria wiczenia 1 Regresja liniowa i MNK (1) Ekonometria 1 / 25 Plan wicze«1 Ekonometria czyli...? 2 Obja±niamy ceny wina 3 Zadania z podr cznika (1) Ekonometria 2 / 25 Plan prezentacji 1 Ekonometria

Bardziej szczegółowo

Biostatystyka, # 5 /Weterynaria I/

Biostatystyka, # 5 /Weterynaria I/ Biostatystyka, # 5 /Weterynaria I/ dr n. mat. Zdzisªaw Otachel Uniwersytet Przyrodniczy w Lublinie Katedra Zastosowa«Matematyki i Informatyki ul. Gª boka 28, bud. CIW, p. 221 e-mail: zdzislaw.otachel@up.lublin.pl

Bardziej szczegółowo

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Bash i algorytmy. Elwira Wachowicz. 20 lutego Bash i algorytmy Elwira Wachowicz elwira@ifd.uni.wroc.pl 20 lutego 2012 Elwira Wachowicz (elwira@ifd.uni.wroc.pl) Bash i algorytmy 20 lutego 2012 1 / 16 Inne przydatne polecenia Polecenie Dziaªanie Przykªad

Bardziej szczegółowo

Elementy geometrii analitycznej w przestrzeni

Elementy geometrii analitycznej w przestrzeni Wykªad 3 Elementy geometrii analitycznej w przestrzeni W wykªadzie tym wi kszy nacisk zostaª poªo»ony raczej na intuicyjne rozumienie deniowanych poj, ni» ±cisªe ich zdeniowanie. Dlatego niniejszy wykªad

Bardziej szczegółowo

Dynamiczne wªasno±ci algorytmu propagacji przekona«

Dynamiczne wªasno±ci algorytmu propagacji przekona« BP propagacji przekona«4. Interdyscyplinarne Warsztaty Matematyczne Wydziaª Fizyki Politechnika Warszawska B dlewo, 26 maja, 2013 BP 1 2 3 4 5 6 BP Rysunek: Zbiór zmiennych losowych. BP Rysunek: Zbiór

Bardziej szczegółowo

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika 2010. Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika 2010. Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska Wst p do informatyki Systemy liczbowe Piotr Fulma«ski Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska 21 pa¹dziernika 2010 Spis tre±ci 1 Liczby i ich systemy 2 Rodzaje systemów liczbowych

Bardziej szczegółowo

Uczenie Maszynowe: reprezentacja wiedzy, wybór i ocena modelu, drzewa decyzjne

Uczenie Maszynowe: reprezentacja wiedzy, wybór i ocena modelu, drzewa decyzjne Uczenie Maszynowe: reprezentacja, wybór i ocena modelu, drzewa decyzjne Plan reprezentacja reguªy decyzyjne drzewa decyzyjne i algorytm ID3 zªo»ono± modelu wybór i ocena modelu przetrenowanie i sposoby

Bardziej szczegółowo

Hotel Hilberta. Zdumiewaj cy ±wiat niesko«czono±ci. Marcin Kysiak. Festiwal Nauki, 20.09.2011. Instytut Matematyki Uniwersytetu Warszawskiego

Hotel Hilberta. Zdumiewaj cy ±wiat niesko«czono±ci. Marcin Kysiak. Festiwal Nauki, 20.09.2011. Instytut Matematyki Uniwersytetu Warszawskiego Zdumiewaj cy ±wiat niesko«czono±ci Instytut Matematyki Uniwersytetu Warszawskiego Festiwal Nauki, 20.09.2011 Nasze do±wiadczenia hotelowe Fakt oczywisty Hotel nie przyjmie nowych go±ci, je»eli wszystkie

Bardziej szczegółowo

DREAM5 Challenges. Metody i rezultaty. Praktyki wakacyjne 2010 sesja sprawozdawcza

DREAM5 Challenges. Metody i rezultaty. Praktyki wakacyjne 2010 sesja sprawozdawcza DREAM5 Challenges Metody i rezultaty Julia Herman-I»ycka Jacek Jendrej Praktyki wakacyjne 2010 sesja sprawozdawcza Plan prezentacji 1 Czym jest uczenie maszynowe 2 Motywacja i sformuªowanie problemów 3

Bardziej szczegółowo

1 Poj cia pomocnicze. Przykªad 1. A A d

1 Poj cia pomocnicze. Przykªad 1. A A d Poj cia pomocnicze Otoczeniem punktu x nazywamy dowolny zbiór otwarty zawieraj cy punkt x. Najcz ±ciej rozwa»amy otoczenia kuliste, tj. kule o danym promieniu ε i ±rodku x. S siedztwem punktu x nazywamy

Bardziej szczegółowo

Teoria grafów i jej zastosowania. 1 / 126

Teoria grafów i jej zastosowania. 1 / 126 Teoria grafów i jej zastosowania. 1 / 126 Mosty królewieckie W Królewcu, na rzece Pregole znajduj si dwie wyspy poª czone ze sob, a tak»e z brzegami za pomoc siedmiu mostów, tak jak pokazuje rysunek 2

Bardziej szczegółowo

1. Wprowadzenie do C/C++

1. Wprowadzenie do C/C++ Podstawy Programowania :: Roman Grundkiewicz :: 014 Zaj cia 1 1 rodowisko Dev-C++ 1. Wprowadzenie do C/C++ Uruchomienie ±rodowiska: Start Programs Developments Dev-C++. Nowy projekt: File New Project lub

Bardziej szczegółowo

Algorytmy grafowe 2. Andrzej Jastrz bski. Akademia ETI. Politechnika Gda«ska Algorytmy grafowe 2

Algorytmy grafowe 2. Andrzej Jastrz bski. Akademia ETI. Politechnika Gda«ska Algorytmy grafowe 2 Algorytmy grafowe 2 Andrzej Jastrz bski Akademia ETI Minimalne drzewo spinaj ce Drzewem nazywamy spójny graf nie posiadaj cy cyklu. Liczba wierzchoªków drzewa jest o jeden wi ksza od liczby jego kraw dzi.

Bardziej szczegółowo

MODEL HAHNFELDTA I IN. ANGIOGENEZY NOWOTWOROWEJ Z UWZGL DNIENIEM LEKOOPORNO CI KOMÓREK NOWOTWOROWYCH

MODEL HAHNFELDTA I IN. ANGIOGENEZY NOWOTWOROWEJ Z UWZGL DNIENIEM LEKOOPORNO CI KOMÓREK NOWOTWOROWYCH MODEL HAHNFELDTA I IN. ANGIOGENEZY NOWOTWOROWEJ Z UWZGL DNIENIEM LEKOOPORNO CI KOMÓREK NOWOTWOROWYCH Urszula Fory± Zakªad Biomatematyki i Teorii Gier, Instytut Matematyki Stosowanej i Mechaniki, Wydziaª

Bardziej szczegółowo

Teoria grafów i sieci 1 / 58

Teoria grafów i sieci 1 / 58 Teoria grafów i sieci 1 / 58 Literatura 1 B.Korte, J.Vygen, Combinatorial optimization 2 D.Jungnickel, Graphs, Networks and Algorithms 3 M.Sysªo, N.Deo Metody optymalizacji dyskretnej z przykªadami w Turbo

Bardziej szczegółowo

Elementarna statystyka Dwie próby: porównanie dwóch proporcji (Two-sample problem: comparing two proportions)

Elementarna statystyka Dwie próby: porównanie dwóch proporcji (Two-sample problem: comparing two proportions) Elementarna statystyka Dwie próby: porównanie dwóch proporcji (Two-sample problem: comparing two proportions) Alexander Bendikov Uniwersytet Wrocªawski 25 maja 2016 Elementarna statystyka Dwie próby: porównanie

Bardziej szczegółowo

Lekcja 9 Liczby losowe, zmienne, staªe

Lekcja 9 Liczby losowe, zmienne, staªe Lekcja 9 Liczby losowe, zmienne, staªe Akademia im. Jana Dªugosza w Cz stochowie Liczby losowe Czasami potrzebujemy by program za nas wylosowaª liczb. U»yjemy do tego polecenia liczba losowa: Liczby losowe

Bardziej szczegółowo

Elementarna statystyka Wnioskowanie o regresji (Inference 2 czerwca for regression) / 13

Elementarna statystyka Wnioskowanie o regresji (Inference 2 czerwca for regression) / 13 Elementarna statystyka Wnioskowanie o regresji (Inference for regression) Alexander Bendikov Uniwersytet Wrocªawski 2 czerwca 2016 Elementarna statystyka Wnioskowanie o regresji (Inference 2 czerwca for

Bardziej szczegółowo

Wska¹niki, tablice dynamiczne wielowymiarowe

Wska¹niki, tablice dynamiczne wielowymiarowe Rozdziaª 11 Wska¹niki, tablice dynamiczne wielowymiarowe 11.1 Wst p Identycznie, jak w przypadku tablic statycznych, tablica dynamiczna mo»e by tablic jedno-, dwu-, trójitd. wymiarow. Tablica dynamiczna

Bardziej szczegółowo