Search
Test 06
* Klasifikace podle maxima aposteriorní pravděpodobnosti * Převod apriorní znalosti a pozorování na aposteriorní pravděpodobnost pomocí bayesova vzorce * Proč je klasifikátor naivní
Příklad: Hráči chodí hrát tenis, ale hrají pouze za příznivého počasí. Příklady jejich rozhodnutí jsou v následující tabulce. Atributy jsou “outlook”, “temperature”, “humidity”, “windy” a rozhodnutí je ve sloupečku “play”. Vyzkoušejte rozdování pomocí jednoho příznaku ()
“outlook”
“temperature”
“humidity”
“windy”
“play”
# naivni Bayes library(e1071) # je treba zkonvertovat "logical" priznak na "numeric" d$windy <- as.numeric(d$windy) mod <- naiveBayes(play~., data) # vyzkousejme klasifikator predict(mod,data) table(predict(mod,data),data$play) # a klasifikujme nove pozorovani: newdata <- data.frame(outlook='sunny',temperature='hot',humidity='normal',windy=0) predict(mod,newdata)
* lineární rozhodovací nadrovina * pod lineární klasifikaci spadá mnoho metod - perceptron, logistická regrese, SVM * učení klasfikátoru - optimalizační úloha (např. minimalizace počtu špatně klasifikovaných pozorování)
* lineární klasifikátor, který predikuje log odds * generalizovaný lineární model * vyzkoušejte v R
data("iris") iris <- iris[iris$Species %in% c('setosa','versicolor'),] iris$Species <- factor(as.character(iris$Species)) iris$Species_setosa <- iris$Species == 'setosa' # loistická regrese logreg <- glm(Species_setosa ~ Sepal.Length + Sepal.Width,data=iris,family=binomial(link='logit')) summary(logreg) logregcoef <- coef(logreg) plot(iris$Sepal.Length,iris$Sepal.Width,col=iris$Species_setosa + 2) abline(a=-logregcoef[1]/logregcoef[3],b=-logregcoef[2]/logregcoef[3]) table(predict(logreg) > 0,iris$Species_setosa)