• Nie Znaleziono Wyników

Agnieszka Nowak – Brzezińska

N/A
N/A
Protected

Academic year: 2021

Share "Agnieszka Nowak – Brzezińska"

Copied!
168
0
0

Pełen tekst

(1)

Agnieszka Nowak – Brzezińska

Wykład 2 z 5

(2)

metoda typ Zmienna niezależna

Regresja liniowa Regresja Wszystkie ilościowe Zakłada liniową zależność, prosta w implementacji

Analiza

dyskryminacyjna klasyfikacja Wszystkie ilościowe Zakłada istnienie podobnych grup Regresja logistyczna Klasyfikacja Wszystkie ilościowe Oblicza

prawdopodobieństwo Naiwny klasyfikator

Bayesa klasyfikacja Tylko nominalne

(jakościowe) Wymaga dużego zbioru danych

K-NN Regresja lub

klasyfikacja Wszystkie ilościowe Dobre dla nieliniowych zależności, dla

odchyleń w danych, i dobrze wyjaśnia dane

Sieci neuronowe Regresja lub

klasyfikacja Wszystkie ilościowe Model czarnej skrzynki

CART Regresja lub

klasyfikacja Każde Dobrze wyjaśnia

rozumowanie za pomocą drzew klasyfikacji

(3)

Klasyfikacja to technika, którą wykorzystuje się w takich dziedzinach jak np. statystyka, sztuczna inteligencja i uczenie maszynowe.

Oprócz tego znajduje ona zastosowanie w

wielu sytuacjach, takich jak: rozpoznawanie

obiektów obrazów graficznych,

przewidywanie nowości na rynkach

finansowych, przy wspomaganiu przeróżnych

decyzji opierających się na dużej ilości

informacji oraz w medycynie przy

diagnozowaniu chorób pacjentów.

(4)

Klasyfikacja umożliwia znalezienie w zbiorze predefiniowanych klas odwzorowania nieznanych danych za pomocą stworzonego modelu zwanego klasyfikatorem.

Klasyfikowanie nowych obiektów czy też bardziej pełne uświadomienie istniejących podziałów tych obiektów na predefiniowane klasy określonej bazy danych odbywa się za pośrednictwem modelu, który tworzony jest na podstawie danych zawartych w tej bazie.

Klasyfikację można podzielić na następujące etapy:

1. Budowa klasyfikatora (modelu).

2. Testowanie modelu.

3. Wykorzystanie zbudowanego modelu do przewidzenia

nieznanych wartości.

(5)

Najistotniejszym zadaniem klasyfikacji jest budowa określonego modelu, który posłuży później do predykcji przydziału do klasy, gdzie jest ona nieznana. W tym przypadku wykorzystuje się do tego część zebranych danych (np. przykłady, doświadczenia, czynniki, wektory itd.) tzw.

zbiór treningowy. Zbiór ten wydzielany jest na podstawie podziału całej bazy danych na dwie części, z czego jedna część to właśnie zbiór treningowy, a druga to zbiór testowy.

Oba zbiory składają się z listy cech (atrybutów) oraz przyporządkowanych do tych cech klas, będących wartościami decyzyjnymi.

Klasyfikator opierając się na zbiorze treningowym uczy się

właściwości danych i przypisuje każdemu wektorowi klasę,

czyli wartość decyzyjną, będącą wielkością wyjściową modelu.

(6)

Testowanie zbudowanego modelu to określenie jakości (dokładności) z jaką dokonuje on predykcji klas.

Testowanie to odbywa się z wykorzystaniem zbioru testowego, który jest zbiorem przykładów utworzonym przy wcześniejszym podziale całej bazy danych na dwie części.

W zależności od ilości danych (np. przykładów) jakie posiada określona baza danych, podział ten jest dokonywany w różnych proporcjach, gdzie najczęściej zbiór testowy przyjmuje 25-50% danych, a zbiór treningowy pozostałą część.

Dokładność danego klasyfikatora wyznaczana jest w następujący sposób:

znane wartości decyzyjne przykładów zbioru testowego porównywane są z klasami przewidzianymi przy użyciu tego modelu na tych przykładach.

Z dokonanego porównania wyznaczana jest procentowa dokładność poprawnie zakwalifikowanych przykładów do danych klas, co daje wartość współczynnika jakości danego klasyfikatora.

Jeżeli jest on akceptowalny można wykorzystać ten model przy klasyfikacji nowych danych i przy predykcji wartości decyzyjnych dla przykładów, w których jest ona utracona bądź niewiadoma.

(7)
(8)

Mamy dany zbiór danych podzielony na klasy decyzyjne, oraz pewien algorytm klasyfikujący.

Problem: zbadać skuteczność algorytmu na tych danych.

Kryterium skuteczności: liczba (procent)

prawidłowo rozpoznanych obiektów

testowych, niebiorących udziału w treningu

(9)

W pierwszym kroku budowany jest model opisujący zadany zbiór danych (treningowy zbiór danych) składający się ze zbioru obiektów (krotek) opisanych za pomocą atrybutów.

Jeden z atrybutów jest atrybutem klasyfikującym i określa etykietę klasy, do której należy obiekt. Obiekty tworzące zbiór treningowy wybierane są losowo z pewnej populacji.

Ten etap klasyfikacji nazywany jest też uczeniem z

nadzorem, gdyż podana jest klasyfikacja każdego obiektu

(przykładem nauczania bez nadzoru jest tworzenie skupień,

clustering)

(10)

Utworzony model klasyfikacji reprezentowany jest w postaci:

• reguł klasyfikacji,

• drzew decyzyjnych,

• formuł matematycnych.

• Przykład: mając bazę danych z informacjami o kartach kredytowych klientów można utworzyć reguły klasyfikacyjne określające klientów o dobrej lub

słabej zdolności kredytowej.

• Reguły mogą być wykorzystane do klasyfikacji przyszłych przypadków, jak również do lepszego zrozumienia zawartości bazy danych

(11)

W drugim kroku model jest używany do klasyfikacji. Najpierw oceniana jest dokładność modelu (klasyfikatora). W tym celu posługujemy się zbiorem testowym, który wybrany jest losowo i jest niezależny od zbioru treningowego.

Dokładność modelu na zadanym zbiorze testowym określona jest przez procentową liczbę trafnych klasyfikacji, tzn. jaki procent przypadków testowych został prawidłowo zaklasyfikowany za pomocą modelu. Dla każdego przypadku możemy porównać znaną etykietę klasy z etykietą przypisaną przez model.

Jeśli dokładność modelu została oceniona jako wystarczająca,

model można użyć do klasyfikacji przyszłych przypadków

(obiektów) o nieznanej etykiecie klasy.

(12)

• Predykcja (przewidywanie) może być rozumiana jako wykorzystanie modelu do oszacowania (obliczenia) wartości (lub przedziału wartości), jaką z dużym prawdopodobieństwem może mieć atrybut analizowanego obiektu. Wartością tego atrybutu może być w szczególności etykieta klasy.

• Z tego punktu widzenia klasyfikacja i regresja są dwoma głównymi rodzajami problemów predykcyjnych; przy czym klasyfikacja jest używana do przewidzenia wartości dyskretnych lub nominalnych, a regresja do oszacowania wartości ciągłych lub uporządkowanych.

Umowa:

• przewidywanie etykiet klas – klasyfikacja,

• przewidywanie wartości ciągłych (technikami regresji) –

predykacja.

(13)

Klasyfikacja i predykcja mają wiele zastosowań, na przykład:

• akceptacja udzielenia kredytu,

• diagnostyka medyczna,

• przewidywanie wydajności,

• selektywny marketing,

• inne

(14)

majątek

Duże ryzyko

Średni, duży

oszczędności mały

duże

Małe, średnie

Małe ryzyko majątek

duży Średni

Małe ryzyko Duże ryzyko

(15)
(16)

Techniką bardzo podobną do klasyfikacji jest regresja znajdująca zastosowanie w takich dziedzinach jak np.

logistyka, analiza danych finansowych, prognozowanie sprzedaży, medycyna, procesy produkcyjne itp.

Głównym celem regresji jest zbudowanie modelu, który podobnie jak wcześniej model klasyfikacji posłuży do predykcji jednej zmiennej na podstawie znanych wartości innych zmiennych.

Podstawową różnicą pomiędzy regresją i klasyfikacją, jest to,

że w klasyfikacji przewidywana zmienna przyjmuje wartość

kategoryczną, natomiast w regresji jej celem jest

przewidzenie zmiennej przyjmującej wartość ciągłą

(numeryczną).

(17)
(18)
(19)

Błędy w klasyfikacji

(20)

Ok. !

(21)

Ok. !

(22)

W praktyce stosowanie regresji tak samo jak w klasyfikacji sprowadza się do trzech etapów: budowy klasyfikatora (modelu), testowania modelu oraz wykorzystania zbudowanego modelu do przewidzenia nieznanych wartości.

Budowa modelu regresji odbywa się w podobny sposób do budowy modelu klasyfikacji czyli wykorzystuje się do tego celu zebrane dane podzielone na zbiór testowy i treningowy oraz algorytm regresji.

Jedną z różnic występującą między tymi dwoma technikami jest to, iż w danych do nauki modelu regresji wartością decyzyjną nie jest jak w przypadku klasyfikacji – kategoria, lecz wartość ciągła. Kolejną różnicą jest to, że w klasyfikacji, decyzja opiera się na przyporządkowaniu nowego przykładu do jednej ze znanych wartości kategorycznych zbioru treningowego, natomiast w regresji predykcja ta zachodzi poprzez obliczenie nowej wartości decyzyjnej dla danego przykładu.

(23)

Proces regresji służy do ustalenia wartości parametrów tak, by stworzyć funkcję do obliczania wartości decyzyjnej możliwie jak najlepiej odpowiadającą określonemu zbiorowi danych.

Modele regresji najczęściej opierają się na funkcji:

- regresji liniowej,

- regresji nieliniowej (wielorakiej).

(24)
(25)

Będziemy dokonywać predykcji, a więc przewidywania wartości zmiennej ilościowej.

Przykład będzie dotyczył zbioru 77 płatków

śniadaniowych, dla których badane są różne

parametry: poziom cukru, tłuszczu, błonnika,

a ocena wyrażana jest w postaci tzw. wartości

odżywczej płatków.

(26)
(27)
(28)

Zbiór płatków śniadaniowych (R)

(29)

Zbiór płatków śniadaniowych (Excel)

(30)
(31)
(32)
(33)

Levels Storage

name 77 integer mfr 7 integer type 2 integer calories integer protein integer fat integer sodium integer fiber double carbo double sugars integer potass integer vitamins integer shelf integer weight double cups double rating double

Szukamy wiedzy o płatkach …

(34)

Szukamy wiedzy o płatkach …

(35)

Szukamy wiedzy o płatkach …

(36)

name

n missing unique 77 0 77

lowest : 100%_Bran 100%_Natural_Bran All-Bran All-Bran_with_Extra_Fiber Almond_Delight

highest: Triples Trix Wheat_Chex Wheaties Wheaties_Honey_Gold

--- mfr

n missing unique 77 0 7

A G K N P Q R Frequency 1 22 23 6 9 8 8

% 1 29 30 8 12 10 10

--- type

n missing unique

77 0 2 C (74, 96%), H (3, 4%)

Szukamy wiedzy o płatkach …

(37)

--- calories

n missing unique Mean .05 .10 .25 .50 .75 .90 .95

77 0 11 106.9 70 90 100 110 110 124 140

50 70 80 90 100 110 120 130 140 150 160 Frequency 3 2 1 7 17 29 10 2 3 2 1

% 4 3 1 9 22 38 13 3 4 3 1

--- protein

n missing unique Mean 77 0 6 2.545

1 2 3 4 5 6 Frequency 13 25 28 8 1 2

% 17 32 36 10 1 3

Szukamy wiedzy o płatkach …

(38)

carbo

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 22 14.60 8.0 10.3 12.0 14.0 17.0 21.0 21.0

lowest : -1 5 7 8 9, highest: 19 20 21 22 23

--- sugars

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 17 6.922 0.0 0.6 3.0 7.0 11.0 13.0 14.0

-1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Frequency 1 7 1 3 13 1 5 7 4 5 4 5 5 7 4 3 2

% 1 9 1 4 17 1 6 9 5 6 5 6 6 9 5 4 3

--- potass

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 36 96.08 24 28 40 90 120 190 244 lowest : -1 15 20 25 30, highest: 240 260 280 320 330

Szukamy wiedzy o płatkach …

(39)

vitamins

n missing unique Mean 77 0 3 28.25

0 (8, 10%), 25 (63, 82%), 100 (6, 8%)

--- shelf

n missing unique Mean 77 0 3 2.208

1 (20, 26%), 2 (21, 27%), 3 (36, 47%)

--- weight

n missing unique Mean 77 0 7 1.030

0.5 0.83 1 1.25 1.3 1.33 1.5 Frequency 2 1 64 2 1 5 2

% 3 1 83 3 1 6 3

---

Szukamy wiedzy o płatkach …

(40)

fat

n missing unique Mean 77 0 5 1.013

0 1 2 3 5 Frequency 27 30 14 5 1

% 35 39 18 6 1 sodium

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 27 159.7 0 0 130 180 210 254 282

lowest : 0 15 45 70 75, highest: 250 260 280 290 320

--- fiber

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 13 2.152 0.0 0.0 1.0 2.0 3.0 4.4 5.2

0 1 1.5 2 2.5 2.7 3 4 5 6 9 10 14 Frequency 19 16 3 10 1 1 15 4 4 1 1 1 1

% 25 21 4 13 1 1 19 5 5 1 1 1 1

Szukamy wiedzy o płatkach …

(41)

cups

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 12 0.821 0.466 0.500 0.670 0.750 1.000 1.000 1.026 0.25 0.33 0.5 0.67 0.75 0.8 0.88 1 1.13 1.25 1.33 1.5 Frequency 1 3 7 13 16 1 2 30 1 1 1 1

% 1 4 9 17 21 1 3 39 1 1 1 1 --- rating

n missing unique Mean .05 .10 .25 .50 .75 .90 .95 77 0 77 42.67 22.67 27.92 33.17 40.40 50.83 60.09 68.27 lowest : 18.04 19.82 21.87 22.40 22.74, highest: 68.24 68.40 72.80 74.47 93.70

Szukamy wiedzy o płatkach …

(42)

Szukamy wiedzy o płatkach …

(43)

Szukamy wiedzy o płatkach …

(44)

Szukamy wiedzy o płatkach …

(45)

Szukamy wiedzy o płatkach …

(46)

Szukamy wiedzy o płatkach …sprawdzamy

korelację między poziomem cukru w płatkach a ich

wartością odżywczą

(47)

Szukamy wiedzy o płatkach …sprawdzamy rozkład

wartości odżywczej płatków ze względu na typ

(48)

Szukamy wiedzy o płatkach …histogramy dla

danych ilościowych – NIE !!!

(49)

Szukamy wiedzy o płatkach …histogramy dla

danych jakościowych – TAK !!!

(50)
(51)
(52)

0 20 40 60 80 100

-5 0 5 10 15 20

rating

sugars

sugars

Korelacja Pearsona w excelu

(53)

Korelacja Spearmana w

excelu

(54)

The Spearman correlation, called Spearman’s rho, is a special case of the Pearson

correlation computed on ranked

data.

(55)
(56)
(57)
(58)
(59)
(60)

Szukamy wiedzy o płatkach …korelacja dla

wszystkich zmiennych – NIE !!!

(61)

Szukamy wiedzy o płatkach …korelacja może

być przedstawiona dendrogramem

(62)
(63)
(64)

•Analiza regresji jest bardzo popularną i chętnie stosowaną techniką statystyczną pozwalającą opisywać związki zachodzące pomiędzy zmiennymi wejściowymi (objaśniającymi) a wyjściowymi (objaśnianymi).

•Innymi słowy dokonujemy estymacji jednych danych korzystając z innych.

•Istnieje wiele różnych technik regresji.

(65)

•Metoda zakłada, że pomiędzy zmiennymi objaśniającymi i objaśnianymi istnieje mniej lub bardziej wyrazista zależność liniowa.

•Mając zatem zbiór danych do analizy, informacje opisujące te dane możemy podzielić na objaśniane i objaśniające. Wtedy też wartości tych pierwszych będziemy mogli zgadywać znając wartości tych drugich.

• Oczywiście tak się dzieje tylko w sytuacji, gdy faktycznie między tymi zmiennymi istnieje zależność liniowa.

•Przewidywanie wartości zmiennych objaśnianych (y) na podstawie wartości zmiennych objaśniających (x) jest możliwe dzięki znalezieniu tzw. modelu regresji.

•W praktyce polega to na podaniu równania prostej, zwanej prostą regresji o postaci:

y = b_0 + b_1 x

gdzie: y - jest zmienną objaśnianą, zaś x - objaśniającą. W równaniu tym bardzo istotną rolę odgrywają współczynniki b_0 i b_1, gdzie b_1 jest nachyleniem linii regresji, zaś b_0 punktem przecięcia linii regresji z osią x (wyrazem wolnym) a więc przewidywaną wartością zmiennej objaśnianej gdy zmienna objaśniająca jest równa 0.

(66)

0 10 20 30 40 50 60 70 80 90 100

-2 0 2 4 6 8 10 12 14 16

rating

sugars

sugars

(67)

0 10 20 30 40 50 60 70 80 90 100

-2 0 2 4 6 8 10 12 14 16

rating

sugars

sugars

Liniowy (sugars)

(68)
(69)

x b b

y

0

1

sugars rating

 59 . 4  2 . 42 *

A więc:

b

0

 59 . 4 b

1

  2 . 42

„Oszacowana wartość odżywcza płatków (rating) jest równa 59.4 i 2.42 razy waga cukrów (sugars) w gramach”

Czyli linia regresji jest liniowym przybliżeniem relacji między zmiennymi x (objaśniającymi, niezależnymi) a y (objaśnianą, zależną) – w tym przypadku między zawartością cukrów a wartością odżywczą.

Możemy zatem dzięki regresji: SZACOWAĆ, PRZEWIDYWAĆ…

(70)

Gdy np. chcemy oszacować wartości odżywcze nowego rodzaju płatków (nieuwzględnionych dotąd w tej próbie 77 różnym badanych płatków śniadaniowych), które zawierają x=1 gram cukrów.

Wówczas za pomocą oszacowanego równania regresji możemy wyestymować wartość odżywczą płatków śniadaniowych zawierającym 1 gram cukrów:

98 . 56 1

* 42 . 2 4 .

59  

y

(71)

Gdy np. chcemy oszacować wartości odżywcze nowego rodzaju płatków (nieuwzględnionych dotąd w tej próbie 77 różnym badanych płatków śniadaniowych), które zawierają x=5 gram cukrów.

Wówczas za pomocą oszacowanego równania regresji możemy wyestymować wartość odżywczą płatków śniadaniowych zawierającym 5 gram cukrów:

3 . 47 5

* 42 . 2 4 .

59  

y

(72)

Jak widać, niestety oszacowanie zgodne z równaniem regresji jest nie do końca zgodne z rzeczywistą wartością odżywczą płatków.

(73)

•Czyli każde płatki mające 1 gram cukru powinny mieć wartość odżywczą równą 56,98 ale jak widać tak nie jest.

•Płatki Cheerios mają wartość odżywczą równą 50,765.

•Czyli nastąpiło PRZESACOWANIE wartości odżywczej płatków o 6,215.

•Graficznie tę odległość widzimy jako odległość punktu reprezentującego

te płatki od jego rzutu pionowego na linię regresji.

(74)

•Odległość ta mierzona jako:

•Nazywać będziemy błędem predykcji (błędem oszacowania, wartością resztową, rezyduum).

•Oczywiście powinno się dążyć do minimalizacji błędu oszacowania.

•Służy do tego metoda zwana metodą najmniejszych kwadratów. Metoda polega na tym, że wybieramy linię regresji która będzie minimalizować sumę kwadratów reszt dla wszystkich punktów danych.

)

( y

y

(75)
(76)

Odpowiedź: pewnie NIE.

Prawdziwą liniową zależność między wartością odżywczą a zawartością cukrów dla WSZYSTKICH rodzajów płatków reprezentuje równanie:

  

x

y 0 1

- Losowy błąd

(77)

1.

Obliczamy wartości x

i

,y

i

,x

i

y

i

,x

i2

(78)

xi=534

yi=3285.26

xiyi=19186.76

xi2=5190

1. Obliczamy wartości:

2. Podstawiamy do wzorów:

42 . 67 2

. 1486

79 . 3596 77

/ 534 5190

77 / 26 . 3285

* 534 76

. 19186

1 2

   

  b

4 . 59 935

. 6

* 42 . 2 6657 .

1

42

0

yb x   

b

(79)

Wyraz wolny b0 jest miejscem na osi y gdzie linia regresji przecina tę oś czyli jest to przewidywana wartość zmiennej objaśnianej gdy objaśniająca równa się zeru.

Współczynnik kierunkowy prostej regresji oznacza szacowaną zmianę wartość y dla jednostkowego wzrostu x wartość b

1

=- 2.42 mówi, że jeśli zawartość cukrów wzrośnie o 1 gram to wartość odżywcza płatków zmniejszy się o 2.42 punktu.

Czyli płatki A których zawartość cukrów jest o 5 większa niż w

płatkach B powinny mieć oszacowaną wartość odżywczą o 5 razy

2.42 = 12.1 punktów mniejszą niż płatki typu B.

(80)

Omawiając regresję liniową (prostą) rozpatrywaliśmy dotąd jedynie takie przypadki zależności między zmiennymi objaśniającymi a objaśnianymi gdzie zmienna objaśniana była zależna tylko od jednej konkretnej zmiennej objaśniającej.

Jednak w praktyce niezwykle często zmienna objaśniana zależna jest nie od jednej ale od kilku (wielu) zmiennych objaśniających.

Będziemy zatem rozważać ogólne równanie regresji postaci:

m m x b

x b x

b b

y     

2 ...

2 1

1 0

gdzie m oznacza liczbę (najczęściej kilku) zmiennych objaśniających.

(81)

W środowisku R procedura znajdowania równania regresji dla podanego zbioru danych możliwa jest dzięki wykorzystaniu funkcji lm.

Komenda R postaci lm(y ~ x) mówi, że

chcemy znaleźć model regresji liniowej dla

zmiennej y w zależności od zmiennej x.

(82)

równanie regresji, gdy zmienną objaśnianą będzie zmienna rating (wartość odżywcza płatków) zaś objaśniającą sugars (poziom cukrów), będzie

następującej postaci:

Wówczas pełny zapis okna dialogu z R-em będzie następujący:

> dane<- read.table("C:\\Cereals.data", header = TRUE, row.names = 1)

> model<-lm(rating~sugars, data=dane)

> summary(model)

Call:

lm(formula = rating ~ sugars, data = dane)

Residuals:

Min 1Q Median 3Q Max -17.853 -5.677 -1.439 5.160 34.421

Coefficients:

Estimate Std. Error t value Pr(>|t|) (Intercept) 59.2844 1.9485 30.43 < 2e-16 ***

sugars -2.4008 0.2373 -10.12 1.15e-15 ***

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 9.196 on 75 degrees of freedom Multiple R-squared: 0.5771, Adjusted R-squared: 0.5715 F-statistic: 102.3 on 1 and 75 DF, p-value: 1.153e-15

>

rating = -2.4 * sugars+ 59.3

(83)

Teraz możemy przewidywać, że gdy poziom cukrów wynosi np 1 to wartość odżywcza płatków będzie wynosić 56.9 zaś gdy poziom cukrów będzie wynosił 10 wówczas wartość odżywcza zmaleje do wartości 35.3 (patrz poniżej).

> predict(model,data.frame(sugars=10), level = 0.9, interval = "confidence") fit lwr upr

1 35.27617 33.14878 37.40356

> predict(model,data.frame(sugars=1), level = 0.9, interval = "confidence")

fit lwr upr

1 56.88355 53.96394 59.80316

(84)
(85)
(86)

Widać z nich, że między zmienną objaśniającą sugars a zmienną objaśnianą fiber istnieje pewna zależność (w miarę wzrostu wartości sugars spada wartość rating).

Z kolei analizując rozrzut obserwacji ze względu na wartości zmiennej objaśniającej fiber oraz objaśnianej rating już tak silnej zależności nie dostrzegamy.

Sprawdźmy jak będzie się zachowywać rozrzut wartości zmiennych objaśnianych w oparciu o te dwie zmienne objaśniające razem.

(87)

> model<-lm(rating~sugars+fiber, data=dane)

> summary(model)

Call:

lm(formula = rating ~ sugars + fiber, data = dane)

Residuals:

Min 1Q Median 3Q Max -12.133 -4.247 -1.031 2.620 16.398

Coefficients:

Estimate Std. Error t value Pr(>|t|) (Intercept) 51.6097 1.5463 33.376 < 2e-16 ***

sugars -2.1837 0.1621 -13.470 < 2e-16 ***

fiber 2.8679 0.3023 9.486 2.02e-14 ***

---

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 6.219 on 74 degrees of freedom Multiple R-squared: 0.8092, Adjusted R-squared: 0.804 F-statistic: 156.9 on 2 and 74 DF, p-value: < 2.2e-16

W tym przypadku równanie regresji będzie wyglądać następująco:

Rating = - 2.1837 * sugars+ 2.8679 * fiber+ 51.6097

(88)

Uogólniając będziemy mówić, że dla m zmiennych objaśniających zachodzi reguła, zgodnie z którą: oszacowana zmiana wartości zmiennej odpowiedzi to} b

i

, jeśli wartość zmiennej x

i

rośnie o jednostkę i zakładając, że wszystkie pozostałe wartości zmiennych są stałe.

Rating = - 2.1837 * sugars+ 2.8679 * fiber+ 51.6097 Aby zinterpretować współczynnik nachylenia prostej regresji:

b1 = -2.1837

wartość odżywcza maleje o 2.1837 punktu, jeśli zawartość cukru rośnie o jedną jednostkę.

Zakładamy przy tym, że zawartość błonnika (fiber) jest stała.

b2 = 2.8679 wartość odżywcza rośnie o 2.8679 punktu, jeśli zawartość błonnika rośnie o jedną jednostkę a

zawartość cukru (sugars) jest stała.

(89)

Błędy predykcji są mierzone przy użyciu reszt $y - \hat{y}$.

Uwaga: w prostej regresji liniowej reszty reprezentują odległość (mierzoną wzdłuż osi pionowej) pomiędzy właściwym punktem danych a linią regresji, zaś w regresji wielokrotnej, reszta jest reprezentowana jako odległość między właściwym

punktem danych a płaszczyzną lub hiperpłaszczyzną regresji.

Przykładowo płatki Spoon Size Shredded Wheat zawierają x1=0 gramów cukru i x2 = 3 gramy błonnika, a ich wartość odżywcza jest równa 72.80 podczas gdy wartość oszacowana, podana za pomocą równania regresji:

Zatem dla tych konkretnych płatków reszta jest równa 60.21 - 72.80 = 12.59.

> predict(model, data.frame(sugars=0,fiber=3),level=0.95, interval="confidence")

fit lwr upr 1 60.21342 57.5805 62.84635

Zwróćmy uwagę na to, że wyniki, które tutaj zwraca funkcja R: predict są bardzo istotne. Mianowicie, oprócz podanej (oszacowanej, przewidywanej) wartości zmiennej objaśniającej, otrzymujemy również przedział ufności na zadanym poziomie ufności równym 0.95, który to przedział mieści się między wartością 57.5805 (lwr) a 62.84635 (upr).

(90)

Pozwala stwierdzić czy oszacowane równanie regresji jest przydatne do przewidywania.

Określa stopień w jakim linia regresji najmniejszych kwadratów wyjaśnia zmienność obserwowanych danych.

y yy ( yy )

2

x y

(91)

y yy

(

yy

)

2

x

y

n

i

y y

SST

1

)

2

Całkowita suma kwadratów…

(

n

i

y y SSR

1

)

2

Regresyjna suma kwadratów …

(

n

i

y y

SSE

1

)

2

Suma kwadratów błędów oszacowania:

(

SST r

2

SSR

Wówczas współczynnik determinacji r2:

(92)

SST r

2

SSR

Współczynnik determinacji r2:

Współczynnik determinacji r 2

Mierzy stopień dopasowania regresji jako przybliżenia liniowej zależności pomiędzy zmienną celu a zmienną objaśniającą.

Jaka jest wartość maksymalna współczynnika determinacji r2 ?

Jest ona osiągana wtedy, gdy regresja idealnie pasuje do danych, co ma

miejsce wtedy gdy każdy z punktów danych leży dokładnie na oszacowanej linii regresji. Wówczas nie ma błędów oszacowania, a więc wartości resztowe

(rezydua) wynoszą 0, a więc SSE=0 a wtedy SST = SSR a r2=1.

Jaka jest wartość minimalna współczynnika determinacji r2 ?

Jest ona osiągana wtedy, gdy regresja nie wyjaśnia zmienności, wtedy SSR = 0, a więc r2=0.

Im większa wartość r

2

tym lepsze dopasowanie regresji do zbioru

danych.

(93)

Jak już wspomnieliśmy na początku, często w świecie rzeczywistym mamy do czynienia z zależnościami zmiennej objaśnianej nie od jednej ale raczej od wielu zmiennych objaśniających.

Wykonanie tego typu analiz w pakiecie R nie jest rzeczą trudną. Wręcz przeciwnie.

Nim przeprowadzimy analizę zależności zmiennej rating od wielu zmiennych objaśniających np. sugars oraz fiber przyjrzyjmy się wykresom rozrzutu dla tych zmiennych osobno. Wykres rozrzutu bowiem doskonale odzwierciedla zależności między pojedynczymi zmiennymi.

(94)
(95)
(96)

Widać z nich, że między zmienną objaśniającą sugars a zmienną objaśnianą fiber istnieje pewna zależność (w miarę wzrostu wartości sugars spada wartość rating).

Z kolei analizując rozrzut obserwacji ze względu na wartości zmiennej objaśniającej fiber oraz objaśnianej rating już tak silnej zależności nie dostrzegamy.

Sprawdźmy jak będzie się zachowywać rozrzut wartości zmiennych objaśnianych w oparciu o te dwie zmienne objaśniające razem.

(97)

gdzie SSR to regresyjna suma kwadratów zaś SST to całkowita suma kwadratów

Będziemy go interpetować jako część zmienności zmiennej objaśnianej, która jest wyjaśniana przez liniową zależność ze zbiorem zmiennych objaśniających.

Im większa będzie liczba zmiennych objaśniających tym \textbf{nie mniejsza} będzie wartość współczynnika determinacji $R^2$.

Możemy wnioskować, że gdy dodajemy nową zmienną objaśniającą do modelu, wartość $R^2$ będzie nie mniejsza niż przy modelu o mniejszej liczbie

zmiennych. Oczywiście skala (wielkość) tej różnicy jest bardzo istotna w

zależności od tego czy dodamy tę zmienną do modelu czy też nie. Jeśli wzrost jest duży to uznamy tę zmienną za znaczącą (przydatną).

Niezwykle istotna jest miara nazwana już wcześniej współczynnikiem determinacji R2 określana za pomocą wzoru:

SST

R

2

SSR

^

1

ˆˆ )

( y y

SST

n

i

 

^ 2ˆ 1

ˆˆ )

( y y

SSR

n

i

 

(98)

Jeśli takie reszty obliczymy dla każdej obserwacji to możliwe będzie wyznaczenie wartości współczynnika determinacji R2. W naszym przypadku jest on równy 0.8092 czyli 80.92 %. Oznacza to w naszej analizie, że 80.92 % zmienności wartości odżywczej jest wyjaśniane przez liniową zależność pomiędzy zmienną wartość odżywcza a zbiorem zmiennych objaśniających - zawartością cukrów i zawartością błonnika.

Jeśli popatrzymy jaka była wartość tego współczynnika, gdy badaliśmy na początku zależność zmiennej objaśnianej tylko od jednej zmiennej objaśniającej (cukry) to wartość ta wynosiła R2 = 57.71% . Dla dwóch zmiennych objaśniających ta wartości wyniosła 80.92 %. Czyli powiemy, że dodając nową zmienną objaśniającą (w tym przypadku błonnik) możemy wyjaśnić dodatkowe 80.92 - 57.71 = 22.19% zmienności wartości odżywczej (rating) płatków.

Typowy błąd oszacowania jest tu obliczany jako standardowy błąd oszacowania s i wynosi 6.22 punktu. Oznacza to, że estymacja wartości odżywczej płatków na podstawie zawartości cukrów i błonnika zwykle różni się od właściwej wartości o 6.22 punktu. Jeśli nowa zmienna jest przydatna, to błąd ten powinien się zmniejszać po dodaniu nowej zmiennej.

(99)

gdzie p oznacza liczbę parametrów modelu (i jest to zazwyczaj liczba zmiennych objaśniających + 1) zaś n oznacza wielkość próby. Zwykle wartość R2adj będzie po prostu nieco mniejsza niż wartość R2.

W środowisku R współczynnik determinacji R2 wyznaczymy stosując bezpośrednio komendę:

summary(model.liniowy)\$r.square

Z kolei współczynnik determinacji ale ten tzw. skorygowany (ang. Adjusted) za pomocą komendy:

summary(model.liniowy)\$adj.r.squared

Najprostszym sposobem na wybór optymalnej liczby zmiennych objaśniających jest współczynnik R2adj zwany skorygowanym. Wiedząc, że R2 = 1 – SSE/SST wartość R2adj obliczymy jako:

1

2

1

 

n SST

p n

SSE

R

adj

(100)

> dane<- read.table("C:\\Cereals.data", header = TRUE, row.names = 1)

> model<-lm(rating~sugars+fiber, data=dane)

> summary(model)$r.square [1] 0.8091568

> summary(model)$adj.r.squared [1] 0.8039988

Chcąc wyznaczyć wartości tych współczynników dla naszego testowego modelu z dwiema zmiennymi objaśniającymi sugars oraz fiber w środowisku R użyjemy odpowiednich komend, jak to pokazuje poniższy kod R wraz z wynikami:

Jak widzimy współczynnik R2 wynosi 0.809 zaś R2adj odpowiednio 0.804.

(101)

Obserwacja jest wpływowa (ang. influential), jeśli jej obecność wpływa na prostą regresji, w taki sposób, że zmienia się współczynnik kierunkowy tej prostej. Inaczej powiemy, że jeśli obserwacja jest wpływowa to inaczej wygląda prosta regresji w zależności od tego czy ta obserwacja została ujęta w zbiorze, czy też nie (gdyż została usunięta).

W praktyce, jeśli obserwowana wartość leży w I-ym kwartylu rozkładu (czyli ma wartość mniejszą niż 25 centyl), to mówimy, że ma ona mały wpływ na regresję. Obserwacje leżące między I a III kwartylem nazywamy wpływowymi.

Wykrycie obserwacji wpływowych umożliwia pomiar odległości Cooka, w której wykorzystujemy tzw.

modyfikowane rezydua. Usuwając obserwację, którą chcemy uznać za wpływową ze zbioru obserwacji i obliczając różnicę (między tym jak wyglądają równania regresji z tą obserwacją i gdy jej nie ma) uznajemy obserwację za wpływową gdy ta różnica będzie wysoka.

Odległość Cooka mierzy poziom wpływu obserwacji i jest obliczana jako:

jest wartością przewidywaną dla j-tej obserwacji obliczoną w modelu z usuniętą obserwacją i-tą

y

j ) (i

y

j jest wartością przewidywaną dla j-tej obserwacji w modelu, w którym nie usunięto i-tej obserwacji (potencjalnie wpływowej).

(102)

Teraz jeśli chcemy poznać obserwacje wpływowe możemy użyć komendy:

> influencePlot(lm(b~a), main="Influence

Plot",sub="Rozmiar kółka jest proporcjonalny do odległości Cooka)

(103)

Jak widać, ostatnia kolumna wskazuje na obserwacje wpływowe zaznaczając przy nich symbol *.

Z naszych danych wynika, że w zbiorze 10 obserwacji mamy 2 wpływowe. Są to obserwacje 1 i 9.

Do wykrycia obserwacji wpływowych możemy także użyć funkcji.

> influence.measures(lm(b~a))

> influence.measures(lm(b~a)) Influence measures of

lm(formula = b ~ a) :

dfb.1_ dfb.a dffit cov.r cook.d hat inf 1 0.0000 0.00e+00 -1.14e-15 1.781 7.45e-31 0.267 * 2 0.5570 -4.52e-01 5.71e-01 1.399 1.65e-01 0.267 3 0.0000 0.00e+00 2.10e-16 1.581 2.52e-32 0.174 4 -0.2337 1.24e-01 -3.13e-01 1.215 5.08e-02 0.119 5 0.0000 0.00e+00 1.42e-16 1.482 1.15e-32 0.119 6 -0.1187 2.05e-18 -2.82e-01 1.195 4.12e-02 0.100 7 0.0217 2.99e-01 7.57e-01 0.573 2.03e-01 0.119 8 0.2719 -6.52e-01 -9.99e-01 0.563 3.40e-01 0.174 9 0.0000 0.00e+00 2.69e-16 1.781 4.13e-32 0.267 * 10 -0.4910 7.42e-01 8.58e-01 1.607 3.62e-01 0.396

>

której efekty będzie następujący

(104)

library(car)

> outlier.test(model)

max|rstudent| = 2.850639, degrees of freedom = 73, unadjusted p = 0.005668692, Bonferroni p = 0.4364893 Observation: Golden_Crisp

Obserwacje odstające będziemy wykrywać przy użyciu znanego już pakietu car i funkcji outlier.test w ramach tego pakietu.

Wykryliśmy jedną obserwację odstającą (płatki o nazwie Golden_Crisp).

(105)

influence.measures(model) Influence measures of

lm(formula = rating ~ sugars + fiber, data = dane) :

dfb.1_ dfb.sgrs dfb.fibr dffit 100\%_Bran -0.029606 0.006873 8.71e-02 0.09114 100\%_Natural_Bran -0.032678 -0.025977 3.28e-03 -0.11268 All-Bran 0.107395 0.004022 -4.24e-01 -0.45329 All-Bran_with_Extra_Fiber -0.051238 -0.047248 2.62e-01 0.28122 ...

Frosted_Flakes -0.000309 0.015791 -6.58e-03 0.02575 Frosted_Mini-Wheats 0.065331 0.017652 9.33e-02 0.27267 ...

Golden_Crisp -0.171769 0.576328 -2.20e-01 0.73321 Golden_Grahams -0.087125 -0.053260 1.31e-01 -0.21490 Grape_Nuts_Flakes 0.031668 -0.020034 1.55e-02 0.05831 Grape-Nuts -0.005289 0.004597 -1.28e-03 -0.00738 Shredded_Wheat_'n'Bran 0.287978 -0.328880 1.26e-01 0.43414 Shredded_Wheat_spoon_size 0.373845 -0.378815 3.42e-02 0.46093 Wheaties_Honey_Gold -0.007926 -0.002691 6.93e-03 -0.01710

cov.r cook.d hat inf 100\%_Bran 1.233 2.80e-03 0.1565 * 100\%_Natural_Bran 1.018 4.24e-03 0.0138 All-Bran 1.116 6.80e-02 0.1216 * All-Bran_with_Extra_Fiber 1.588 2.67e-02 0.3480 * ...

Frosted_Flakes 1.068 2.24e-04 0.0257 Frosted_Mini-Wheats 0.867 2.35e-02 0.0147 * ...

Golden_Crisp 0.809 1.63e-01 0.0621 * ...

Post_Nat._Raisin_Bran 1.147 1.57e-04 0.0918 *

Wartości wpływowe będziemy wykrywać za pomocą fukcji influence.measures.

Wyniki takiej analizy widzimy poniżej.

(106)

influence.measures(model) Influence measures of

lm(formula = rating ~ sugars + fiber, data = dane) :

dfb.1_ dfb.sgrs dfb.fibr dffit 100\%_Bran -0.029606 0.006873 8.71e-02 0.09114 100\%_Natural_Bran -0.032678 -0.025977 3.28e-03 -0.11268 All-Bran 0.107395 0.004022 -4.24e-01 -0.45329 All-Bran_with_Extra_Fiber -0.051238 -0.047248 2.62e-01 0.28122 ...

Frosted_Flakes -0.000309 0.015791 -6.58e-03 0.02575 Frosted_Mini-Wheats 0.065331 0.017652 9.33e-02 0.27267 ...

Golden_Crisp -0.171769 0.576328 -2.20e-01 0.73321 Golden_Grahams -0.087125 -0.053260 1.31e-01 -0.21490 Grape_Nuts_Flakes 0.031668 -0.020034 1.55e-02 0.05831 Grape-Nuts -0.005289 0.004597 -1.28e-03 -0.00738 Shredded_Wheat_'n'Bran 0.287978 -0.328880 1.26e-01 0.43414 Shredded_Wheat_spoon_size 0.373845 -0.378815 3.42e-02 0.46093

Wheaties_Honey_Gold -0.007926 -0.002691 6.93e-03 -0.01710 cov.r cook.d hat inf

100\%_Bran 1.233 2.80e-03 0.1565 * 100\%_Natural_Bran 1.018 4.24e-03 0.0138 All-Bran 1.116 6.80e-02 0.1216 * All-Bran_with_Extra_Fiber 1.588 2.67e-02 0.3480 * ...

Frosted_Flakes 1.068 2.24e-04 0.0257 Frosted_Mini-Wheats 0.867 2.35e-02 0.0147 * ...

Golden_Crisp 0.809 1.63e-01 0.0621 * ...

Post_Nat._Raisin_Bran 1.147 1.57e-04 0.0918 *

(107)

Za wpływowe uznamy 6 obserwacji:

100%_Bran All-Bran

All-Bran_with_Extra_Fiber Frosted_Mini-Wheats

Golden_Crisp (

które zresztą uznaliśmy za obserwację odstającą, outlier

) oraz

Post_Nat._Raisin_Bran.

(108)

Gdy zmienne objaśniające są wysoko skorelowane wyniki analizy regresji mogą być niestabilne. Szacowana wartość zmiennej xi może zmienić wielkość a nawet kierunek zależnie od pozostałych zmiennych objaśniających zawartych w tak testowanym

modelu regresji. Taka zależność liniowa między zmiennymi objaśniającymi może zagrażać trafności wyników analizy regresji.

Do wskaźników oceniających współliniowość należy, m.in. VIF (Variance Inflation Factor) zwany współczynnikiem podbicia (inflacji) wariancji. VIF pozwala wychwycić wzrost wariancji ze względu na współliniowość cechy.

Innymi słowy: wskazuje on o ile wariancje współczynników są zawyżone z powodu zależności liniowych w testowanym modelu. Niektóre pakiety statystyczne pozwalają także alternatywnie mierzyć tzw. współczynnik toleracji (TOL - ang. tolerance), który mierzy się jako: 1/VIF

dla modelu xi = f(x1, …., xi-1, xi+1, …, xp) gdzie zmienna xi będzie wyjaśniana przez wszystkie pozostałe zmienne.

Gdy VIF > 10 mówimy, że współliniowość wystąpiła i chcąc się jej pozbyć z modelu, usuwamy te cechy, które są liniową kombinacją innych zmiennych niezależnych.

2 1

) 1

( 

i

i

R

VIF

(109)

Radą na współliniowość jest według niektórych prac zwiększenie zbioru obserwacji o nowe, tak, by zminimalizować istniejące zależności liniowe pomiędzy zmiennymi objaśniającymi. Oczywiście, zwiększenie liczby obserwacji nie gwarantuje poprawy -stąd takie rozwiązanie na pewno nie należy do najlepszych i jedynych. Lepszym wydaje się komponowanie zmiennych zależnych w nowe zmienne (np. waga i wzrost są skorelowane silnie i zamiast nich stworzenie jednej zmiennej stosunek wzrostu do wagi. Taką nową zmienną nazywa się w literaturze kompozytem.

Często - dla dużej liczby zmiennych objaśniających - stosuje sie metodę analizy składowych głównych (ang. principal component analysis) dla redukcji liczby zmiennych do jednego lub kilku kompozytów niezależnych.

(110)

Gdzie x3i = 10 * x1i - 2 * x2i .

Wtedy powiemy, że zmienna x3 jest kombinacją liniową zmiennych x1 i x2.

Próba szacowania takiego modelu związana jest ze świadomym popełnianiem

błędu, gdyż w modelu tym występuje dokładna współliniowość (jedna ze zmiennych objaśniających jest kombinacją liniową pozostałych).

Dla modelu postaci:

yi = b0 + b1 x1i + b2 x2i + b3 x3i + e1i

(111)

W środowisku R sprawdzanie współliniowości nie jest trudne. Wystarczy skorzystać z funkcji vif której argumentem jest model regresji dla danego zbioru danych.

Przykład dotyczący naszego zbioru płatków zbożowych przedstawiamy poniżej:

> vif(lm(rating~sugars+fiber, data=dane)) sugars fiber

1.020345 1.020345.

Wartości współczynnika $VIF$ nie są zbyt wysokie toteż uznajemy, że w modelu tym nie występuje zjawisko współliniowości.

(112)

Naiwny klasyfikator bayesowski jest prostym probabilistycznym klasyfikatorem.

Zakłada się wzajemną niezależność zmiennych niezależnych (tu naiwność)

Bardziej opisowe może być określenie- „model cech niezależnych”.

Model prawdopodobieństwa można wyprowadzić korzystając z twierdzenia Bayesa.

W zależności od rodzaju dokładności modelu prawdopodobieństwa,

naiwne klasyfikatory bayesowskie można „uczyć” bardzo skutecznie

w trybie uczenia z nadzorem.

(113)
(114)
(115)
(116)
(117)
(118)
(119)
(120)
(121)
(122)

Jeśli wiemy, że kulek czerwonych jest 2 razy mniej niż zielonych (bo czerwonych jest 20 a zielonych 40) to prawdopodobieństwo tego, że kolejna (nowa) kulka będzie koloru zielonego jest dwa razy większe niż tego, że kulka będzie czerwona.

Dlatego możemy napisać, że znane z góry prawdopodobieństwa:

(123)

Jeśli więc czerwonych jest 20 a zielonych 40, to razem wszystkich jest 60. Więc

Więc teraz gdy mamy do czynienia z nową kulką ( na rysunku – biała):

(124)

To spróbujmy ustalić jaka ona będzie. Dokonujemy po prostu klasyfikacji kulki do jednej z dwóch klas: zielonych bądź czerwonych.

Jeśli weźmiemy pod uwagę sąsiedztwo białej kulki takie jak zaznaczono, a więc do 4 najbliższych sąsiadów, to widzimy, że wśród nich są 3 kulka czerwone i 1 zielona.

Obliczamy liczbę kulek w sąsiedztwie należących do danej klasy : zielonych bądź czerwonych z wzorów:

W naszym przypadku, jest dziwnie, bo akurat w sąsiedztwie kulki X jest więcej kulek czerwonych niż zielonych, mimo, iż kulek zielonych jest ogólnie 2 razy więcej niż czerwonych. Dlatego zapiszemy, że

(125)

Dlatego ostatecznie powiemy, że

Prawdopodobieństwo że kulka X jest zielona = prawdopodobieństwo kulki zielonej * prawdopodobieństwo, że kulka X jest zielona w swoim sąsiedztwie

=

Prawdopodobieństwo że kulka X jest czerwona = prawdopodobieństwo kulki

czerwonej * prawdopodobieństwo, że kulka X jest czerwona w swoim sąsiedztwie =

Ostatecznie klasyfikujemy nową kulkę X do klasy kulek czerwonych, ponieważ ta klasa dostarcza nam większego prawdopodobieństwa posteriori.

(126)

Tylko dla cech jakościowych

Tylko dla dużych zbiorów danych

(127)
(128)
(129)
(130)

Aby obliczyć P(diabetes=1) należy zliczyć liczbę obserwacji dla których spełniony jest warunek

„diabetes=1”. Jest ich dokładnie 9 z 20 wszystkich.

Podobnie, aby obliczyć P(diabetes=0) należy zliczyć liczbę obserwacji dla których spełniony jest warunek

„diabetes=0”. Jest ich dokładnie 11 z 20 wszystkich.

(131)

Zakładając, że zmienne niezależne faktycznie są niezależne, wyliczenie P(X|diabetes=1) wymaga obliczenia prawdopodobieństwa warunkowego wszystkich wartości dla X:

Np. obliczenie P(BP=high|diabetes=1) wymaga znów obliczenia P(BP=high) i

P(diabetes=1) co jest odpowiednio równe 4 i 9 zatem prawdopodobieństwo

to wynosi 4/9:

(132)

Zatem:

Mając już prawdopodobieństwa P(X|diabetes=1) i P(diabetes=1)

można wyznaczyć iloczyn tych prawdopodobieństw:

(133)

Teraz podobnie zrobimy w przypadku P(X|diabetes=0)

(134)

Możemy więc wyznaczyć P(X|diabetes=0):

Ostatecznie iloczyn prawdopodobieństw jest wyznaczany:

Jakoże P(X|diabeltes=1)P(diabetes=1) jest większe niż

P(X|diabetes=0)P(diabetes=0) nowa obserwacja będzie zaklasyfikowana do klasy diabetes=1.

Prawdopodobieństwo ostateczne że jeśli obiekt ma opis taki jak X będzie z klasy diabetes=1 jest równe:

(135)

Jakie będzie prawdopodobieństwo klasyfikacji do klasy „diabetes=1” gdy mamy następujące przypadki:

X:BP=Average ; weight=above average; FH= yes; age=50+

X:BP=low ; weight=average; FH= no; age=50+

X:BP=high ; weight=average; FH= yes; age=50+

(136)
(137)
(138)
(139)

– jeden z algorytmów regresji nieparametrycznej używanych w

statystyce do prognozowania wartości pewnej zmiennej losowej.

Może również być używany do klasyfikacji.

-

• Dany jest zbiór uczący zawierający obserwacje z których każda ma przypisany wektor zmiennych objaśniających oraz wartość zmiennej objaśnianej Y.

• Dana jest obserwacja C z przypisanym wektorem zmiennych objaśniających dla której chcemy prognozować wartość zmiennej objaśnianej Y.

Założenia

(140)
(141)
(142)

Wyznaczanie odległości obiektów: odległość

euklidesowa

(143)

Obiekty są analizowane w ten sposób , że oblicza się odległości bądź podobieństwa między nimi. Istnieją różne miary podobieństwa czy odległości. Powinny być one wybierane konkretnie dla typu danych analizowanych: inne są bowiem miary typowo dla danych binarnych, inne dla danych nominalnych a inne dla danych numerycznych.

Nazwa Wzór

odległość euklidesowa

odległość kątowa

współczynnik korelacji liniowej Pearsona

Miara Gowera

gdzie: x,y - to wektory wartości cech

porównywanych obiektów w przestrzeni p- wymiarowej, gdzie odpowiednio

wektory wartości to: oraz .

(144)

Oblicz odległość punktu A o współrzędnych (2,3) do punktu B o współrzędnych (7,8).

D (A,B) = pierwiastek ((7-2)2 + (8-3)2) = pierwiastek (25 + 25) = pierwiastek (50) = 7.07

0 1 2 3 4 5 6 7 8 9

0 2 4 6 8

A B

Cytaty

Powiązane dokumenty

 diss logical flag: if TRUE (default for dist or dissimilarity objects), then x is assumed to be a dissimilarity matrix.. If FALSE, then x is treated as a matrix of observations by

 diss logical flag: if TRUE (default for dist or dissimilarity objects), then x is assumed to be a dissimilarity matrix.. If FALSE, then x is treated as a matrix of observations by

 x data matrix or data frame, or dissimilarity matrix, depending on the value of the diss argument..  diss logical flag: if TRUE (default for dist or dissimilarity objects), then

• Dana jest obserwacja C z przypisanym wektorem zmiennych objaśniających dla której chcemy prognozowad wartośd zmiennej objaśnianej

 Zmienne reprezentowane przez węzły przyjmują wartości dyskretne (np.: TAK, NIE)..  Siecią Bayesa nazywamy skierowany graf acykliczny o wierzchołkach

 diss logical flag: if TRUE (default for dist or dissimilarity objects), then x is assumed to be a dissimilarity matrix.. If FALSE, then x is treated as a matrix of observations by

 Preprocessing danych: czyszczenie danych, transformacja danych, selekcja atrybutów, dyskretyzacja atrybutów liczbowych..  Zalety: ułatwia analizę dużych zbiorów

 jeśli jest to klasa publiczna, nazwa tej klasy musi być taka sama jak nazwa pliku, w której jest zdefiniowana5.  po kompilacji pliku źródłowego .java do Bkodu (polecenie