relatorio 2

24
Lista 2: Predição de a qualidade de vino Luis Enrique Benites Sánchez * Instituto de Matemática, Estatística e Computação Científica IMECC - UNICAMP Janeiro de 2013 Resumo No presente trabalho discutimos a utilização dos diferentes modelos para obter uma melhor prediçãon da qualidade do vinho, para isso trabalhamos com os metodos fei- tem aula e outros, note-se que em o caso de K-nn obtemos um RSS muito baixo mais o RMSE é muito alto mais quando fazemos uso de árbore de desição e assim obtemos um RMSE mais baixo que tudos os 22 modelos feitos. Analisamos um conjunto de dados reais. Os dados são reais e fazem referente ao vinho de Portugal. Palavras Chave: Predição, Regressão linear, k-NN, Ridge, Lasso, CV, SMN, Árbores de desição. * Programa de Mestrado em Estatística. ra:133513 1

Upload: luis-benites-sanchez

Post on 22-Mar-2016

216 views

Category:

Documents


0 download

DESCRIPTION

Modelagem do qualidade do vinho fazendo uso de diferentes modelos tais como knn, svm, etc.

TRANSCRIPT

Page 1: Relatorio 2

Lista 2:Predição de a qualidade de vino

Luis Enrique Benites Sánchez ∗

Instituto de Matemática, Estatística e Computação CientíficaIMECC - UNICAMP

Janeiro de 2013

Resumo

No presente trabalho discutimos a utilização dos diferentes modelos para obter umamelhor prediçãon da qualidade do vinho, para isso trabalhamos com os metodos fei-tem aula e outros, note-se que em o caso de K-nn obtemos um RSS muito baixo mais oRMSE é muito alto mais quando fazemos uso de árbore de desição e assim obtemos umRMSE mais baixo que tudos os 22 modelos feitos. Analisamos um conjunto de dadosreais. Os dados são reais e fazem referente ao vinho de Portugal.

Palavras Chave: Predição, Regressão linear, k-NN, Ridge, Lasso, CV, SMN, Árbores dedesição.

∗Programa de Mestrado em Estatística. ra:133513

1

Page 2: Relatorio 2

1 Descrição dos dados

O estudo original dos dados é o trabalhar com mineração dos dados para predizer as pre-ferencias de sabor de vinho em humanos os quais são baseados em provas analíticas quesão facilmente disponíveis em as etapas de certificação. Os dados originais são amostras devinho1 branco e vermelho (obtido de Portugal2). Em os modelos obtidos é útil para apoiaras avaliações de degustação de vinhos com o objetivo de melhorar a produção de vinho, eassim pode achar quais são os gostos dos consumidores.Os modelos obtidos é útil para apoiar as avaliações de degustação de vinhos com o objetivode melhorar a produção de vinho, e assim podem achar quais são os gostos dos consumi-dores.

Os dados foram coletados de Maio/2004 e Fevereiro/2007 usando apenas denominaçãode origem que testa as amostras que estavam na entidade certificadora oficial (CVRVV) 3.Os dados foram registrados por um sistema computadorizado (iLab), que gerencia auto-maticamente o processo de testes de amostra de vinho a partir de pedidos de produtoresde laboratório e análise sensorial. Cada entrada representa um determinado teste (analí-tica ou sensorial) eo banco de dados final foi exportado em uma única folha (arquivo .csv) 4.

Durante a fase de pré-processamento, o banco de dados foi transformado de modo aincluir uma amostra de vinho distinto (com todos os testes) por linha. Para evitar descartarexemplos, apenas os ensaios físico-químicos mais comuns foram selecionados. Os saboresvermelho e branco são bastante diferentes, a análise será realizada separadamente, assim,dois conjuntos de dados 5 foram construídos amostras de 1599 vermelho e 4898 brancos 6.

O conjunto dos dados que vamos a trabalhar som duas Train (com 2939 observações) eTest (com 1959 observações), as variávesis são 12 e estão mencionados na tabela 1

Em no contexto da Lista 2 nos vamos a trabalhar com dois conjuntos de dados Train(contem todas as 12 variáveis e logo temos que dividir Train em duas conjuntos de dadospara fazer análises)e Test (contem todas as variáveis menos a variável resposta quality, osdados Test é útil para gerar as predições para someter a site do Kaggle).

Na figura 1 é um moderno aparelho que permite que o produtor seguir a fermentaçãoe vinificação de perto. Com efeito, em 2 minutos, o produtor obtém uma análise completada sua amostra (deve, fermentar vinho, vinho acabado): teor de açúcares, sugar content,

1Vinho Verde é único no mundo. Um vinho naturalmente leve e fresco, produzido na Região Demarcadados Vinhos Verdes, no noroeste de Portugal, uma região costeira geograficamente bem localizada para aprodução de excelentes vinhos brancos. http://www.vinhoverde.pt/pt/vinhoverde/default.asp

2Portugal é o sexto maior produtor de vinhos do mundo3A CVRVV é uma organização Inter profissional com o objetivo de melhorar a qualidade e comercialização

do vinho verde. http://www.vinhoverde.pt/4Cortez et al., 20095http://www3.dsi.uminho.pt/pcortez/wine/6Cortez et al., 2009

2

Page 3: Relatorio 2

alcohol content, total acidity, pH, volatile acidity, malic acid and lactic acid, tartric acid,gluconic acid, assimilable nitrogen.

Figura 1: Fourier Transformed InfraRed Spectrometer or IRTF7

Descrição das variáveis 8

fixed acidity: 9 No entanto, existem também alguns ácidos que surgem como um resul-tado do processo de fermentação a partir de qualquer leveduras e / ou bactérias. Tradici-onalmente acidez total é dividida em dois grupos, a saber, os ácidos voláteis e os ácidosnão-voláteis ou fixos.

volatile acidity: A acidez volátil de um vinho consiste em a parte dos ácidos gordospertencentes à série acético, que está presente no vinho quer no estado livre ou na formade sal. Acidez volátil dá o seu aroma do vinho, mas, quando a dose de ácido é muito alto,o vinho é dito ser "azedo", pois as notas de colagem ou vinagre.

citric acid: Ácidos principais presentes no vinho ácido cítrico existe em uvas de cadavariedade e em maior quantidade na maioria concentrada pela podridão nobre ou o au-mento das uvas.

residual sugar:Este é um indicador essencial de vinificação. Medido durante as inspe-ções de maturidade, o teor de açúcar permite que a data da colheita que ser antecipado. Na

8http://www.cave-cleebourg.com/uk/analyservin.phplph9Ácidos são importantes constituintes do vinho e contribuem grandemente para o seu gosto. Na verdade,

os ácidos transmitir a acidez ou acidez que é uma característica fundamental no sabor do vinho. Vinhos comfalta de ácido são "flat". Quimicamente os ácidos influenciam a acidez titulável que afecta o gosto e pH queafecta a estabilidade de cor, para a oxidação, e conseqüentemente o tempo de vida global de um vinho. Omais abundante destes ácidos decorre das uvas se e transitar para o vinho.

3

Page 4: Relatorio 2

realidade, demora cerca de 16,83 g/l de açúcar a uma levedura para a produção de volumede 1% de álcool Também permite que a fermentação alcoólica para monitorizar (portanto,a transformação do açúcar em álcool), e pode dar a quantidade de açúcares residuais novinho. Os açúcares residuais contribuir para o equilíbrio de um vinho

chlorides:

free sulfur dioxide: O sulfur dioxide é um fruto conservação amplamente utilizados emfrutos secos, bem como de vinho. Também é produzido pelo corpo humano, ao nível decerca de 1000 mg (miligramas) por dia.

total sulfur dioxide:

density:

pH: As funções do ácido livre (ácido tartárico málico e cítrico) são parcialmente dissoci-ado ou ionizado e libertação iões H + para o líquido, que representam a acidez "real", cujaconcentração é expressa como um valor de pH.

sulphates:

Alcohol: O ABV(Alcohol by volume) é o porcentagem de álcool por volume. A ABVé obtido dividindo o teor de açúcar por 16,83 ela representa a quantidade de álcool quepoderia ser proporcionado pela levedura em condições óptimas de fermentação. A ABVrepresenta a quantidade de álcool, na verdade, presente no vinho durante a fermentaçãoou do vinho acabado. Mas note-se que o teor de álcool por si só não é um indicador daqualidade do vinho.

Variável respostaquality (score between 0 and 10) 14

2 Análise descritiva

Note que os dados suministrados são dois conjuntos10 (train11 e test12) onde as estatísticassão obtidas para os dados train assim ahora antes do trabalhar com os dados para obtero ”melhor” modelo para fazer predições se fará uma breve analise descritiva das variá-veis. A Tabela 1 se apresentam algumas estatísticas. Aqui podemos ver como a variáveltotal.sulfur.dioxide tem uma media muito grande em comparação com os outros.

10http://archive.ics.uci.edu/ml/datasets/Wine+Quality11Contem a variável resposta e tem 2939 observações12Não contem a variável resposta e tem 1959 observações

4

Page 5: Relatorio 2

Tabela 1: Estatísticas descritivas para conjunto dos dados train

var n mean sd median skew kurtosisfixed.acidity 1 2939.00 6.85 0.83 6.80 0.53 1.00

volatile.acidity 2 2939.00 0.28 0.10 0.26 1.52 4.55citric.acid 3 2939.00 0.33 0.12 0.31 1.32 6.92

residual.sugar 4 2939.00 6.41 5.01 5.15 0.77 -0.28chlorides 5 2939.00 0.05 0.02 0.04 5.38 42.17

free.sulfur.dioxide 6 2939.00 35.34 16.17 34.00 0.65 1.06total.sulfur.dioxide 7 2939.00 138.90 41.21 135.00 0.29 0.09

density 8 2939.00 0.99 0.00 0.99 0.28 -0.44pH 9 2939.00 3.19 0.15 3.18 0.44 0.47

sulphates 10 2939.00 0.49 0.12 0.48 0.94 1.32alcohol 11 2939.00 10.48 1.22 10.30 0.54 -0.59quality 12 2939.00 5.87 0.90 6.00 0.13 0.22

Na Figura 2 mostramos um chart.Correlation para as covariáveis y note-se que as cova-riáveis density e residual.sugar tem alta correlação (0.83) e similarmente tem as covariáveisalcohol e density (0.79), as demais tem baixa correlaçõe também temos a presença a maio-ria das covariáveis são assimétricas.

x

Den

sity

fixed.acidity

0.2

0.049 * 0.29***

0 25

0.08*** 0.014 0 100

0.051 * 0.073***

0.990

0.26*** 0.43***

0.2 1.0

0.024

4

0.11***

0.2

x

Den

sity

volatile.acidity0.17*** 0.026

0.094*** 0.11*** 0.10*** 0.0016 0.0046

0.028

0.056 *

x

Den

sity

citric.acid0.063 ** 0.082*** 0.11*** 0.12*** 0.13*** 0.16*** 0.057 **

0.00.074***

0

x

Den

sity

residual.sugar0.05 * 0.32*** 0.40***0.83*** 0.22*** 0.041 .

0.44***

x

Den

sity

chlorides0.075*** 0.18*** 0.23*** 0.077*** 0.027

0.100.35***

0

x

Den

sity

free.sulfur.dioxide0.59*** 0.30*** 0.0081

0.062 ** 0.24***

x

Den

sity

total.sulfur.dioxide0.53*** 0.0054

0.16***

0

0.44***

0.99

5

x

Den

sity

density0.11*** 0.079***0.79***

x

Den

sity

pH0.18***

2.80.12***

0.2

x

Den

sity

sulphates0.031

4 8 0.0 0.00 0 300 2.8 8 13

8

x

Den

sity

alcohol

Figura 2: Gráfico de dispersão, histograma com hás correlações entre as variáveis)

5

Page 6: Relatorio 2

Na figura 3 nota-se que as covariáveis parecem ter dados atípicos, por exemplo ci-tric.acid, chlorides mais isto pode gerar problemas para os modelos de regressão linear.

0

5

10fix

ed.a

cidi

ty

vola

tile.

acid

ity

citr

ic.a

cid

resi

dual

.sug

ar

chlo

rides

free

.sul

fur.d

ioxi

de

tota

l.sul

fur.d

ioxi

de

dens

ity

pH

sulp

hate

s

alco

hol

variable

valu

e

Figura 3: Gráfico boxplot para as covariáveis padronizadas

3 Modelos testados

3.1 Regressão Linear

O primeiro modelo, que será chamado ”Modelo 1”, um modelo de regressão linear in-cluindo todas as variáveis independentes do conjunto de dados. É dizer o primeiro modeloé:

quality=β0+ β1fixed.acidity + β2volatile.acidity + β3citric.acid + β4residual.sugar +β5chlorides + β6free.sulfur.dioxide + β7total.sulfur.dioxide + β8density + β9pH +

β10sulphates + β11alcohol + εonde ε ∼ N(0, 1)

É preciso lembrar que o ajuste só será feito sob o 70% dos dados de conjunto de dadostrain que conformam a amostra de treinamento. Os resultados do ajuste se apresentam acontinuação:

6

Page 7: Relatorio 2

Model 1

(Intercept) 232.6623∗∗∗

(35.5620)fixed.acidity 0.1446∗∗∗

(0.0361)volatile.acidity −1.8577∗∗∗

(0.1749)citric.acid 0.0257

(0.1453)residual.sugar 0.1115∗∗∗

(0.0135)chlorides 0.5667

(0.7754)free.sulfur.dioxide 0.0038∗∗∗

(0.0014)total.sulfur.dioxide −0.0005

(0.0006)density −233.8952∗∗∗

(36.0416)pH 0.9375∗∗∗

(0.1766)sulphates 0.7800∗∗∗

(0.1590)alcohol 0.1013∗∗

(0.0449)

R2 0.2963Adj. R2 0.2925Num. obs. 2057

***p < 0.01, **p < 0.05, *p < 0.1

Tabela 2: Resultados regressão linear para o modelo completo (Modelo 1)

7

Page 8: Relatorio 2

Na tabela 2 as covariáveis citric.acid, chlorides, total.sulfur.dioxide não são significati-vas, outro detalhe das estimativas é a estimada da covariável density pois tem um valornumericamente muito grande, note-se que a R2 = 0.2963 é muito baixo ou seja podemosdizer que as covariáveis não explicam muito a variabilidade da covariável resposta quality.

Tabela 3: Indicadores de predição da qualidade do vinho

RSS (obtido com os dados vinhos.tr13) RMSE (obtido com os dados test 14)0.7667 0.73270

Na tabela 3 temos que a RSME = 0.73270 e embora seja mais próximo de zero ou omodelo é melhor (não necessariamente).

Note-se que RMSE15 (Root Mean Squared Error) é usado por site https://www.kaggle.

com O uso de RMSE é muito comum e faz um excelente propósito geral métrica para erroprevisões numéricas. Em comparação com a média de erro absoluto mesma forma, RMSEamplifica e penaliza severamente grandes erros.

RMSE =

√1n

n

∑i=1

(yi − yi)2 (3.1)

Na Figura 4 o grafico Residuals vs Fitted mostra que não é zero a media de os erro portanto não está satisfeito supondo homocedasticidade grafico Cook Distance mostra que apresença aparente de uma observação influente mais as distâncias são menores que 0.1 en-tão não há problema de observações influentes, o grafico Normal QQ dos residuos note-seque os erro não cumprir com o suposto de normalidade, o grafico de Residuals vs Leveragemostra que há aparentemente observações outliers.

Vamos fazer um test de normalidad de Shapiro-Wilk para os residuos de Modelo 1, osresultados se apresentam a continuação e neste teste a hipótese nula é a normalidade dosresiduais mas como o p-valor é muito pequeno (0.00000000001498) rejeitamos a hipótese.

ri<-rstandard(vinhos.linreg1)

shapiro.test(ri)

## Shapiro-Wilk normality test

##

## data: ri

## W = 0.9888, p-value = 0.00000000001498

15https://www.kaggle.com/wiki/RootMeanSquaredError

8

Page 9: Relatorio 2

−202

4 5 6 7Fitted Values

Res

idua

l Residuals vs Fitted

−202

−2 0 2Theoretical Quantiles

Sta

ndar

dize

d R

esid

uals

Normal Q−Q

0.00.51.01.52.0

4 5 6 7Fitted Values

Roo

t of S

tand

. Res

id.

Scale−Location

0.000.020.04

0 500 1000 1500 2000Observation NumberC

ook'

s di

stan

ce Cook's Distance

−4−2

02

0.000 0.025 0.050 0.075LeverageS

tand

. Res

idua

ls

Residuals vs Leverage

0.000.020.04

0.000 0.025 0.050 0.075LeverageC

ook'

s di

stan

ce Cook's dist vs Leverage

Figura 4: Conjunto de gráficos para avaliar observações influentes e o suposto da normali-dad do error

9

Page 10: Relatorio 2

O teste de Durbin-Watson para comprovar o suposto de independencia dos erros, temosque DW = 1.992 ≈ 2 por tanto temos que o suposto é satisfeito.

dwtest(vinhos.linreg1)

##

## Durbin-Watson test

##

## data: vinhos.linreg1

## DW = 1.992, p-value = 0.4317

## alternative hypothesis: true autocorrelation is greater than 0

Na tabela 4 mostramos o resumo dos supostos.

Tabela 4: Suposto para a regressão linear

Suposto SatisfazemLinearidades das covariáveis Não

Independência dos erros SimHomocedasticidade Não

Normalidad dos erros NãoMulticolinearidade das covariáveis Não

Na tabela 5 obtemos um RMSE = 0.73261 mais pequeno obtido fazendo regressãolinear, note-se que consideramos 10 interações onde há una particularidade com Modelo21 pois nos consideramos um modelo com interações com certo sentido quimico mais nomodelo na tabela 7 consideramos dois interações con muito sentido quimico e obtimos umRMSE mais alto. O modelo 21 esta baseado em um aspecto quimico e o aleatoriedade poisnão podemos establecer um fundamento solido para justificar as interações mostradas natabela 5.

Na tabela 6 as interações estan baseadas em a seleção das covariáveis considerando doscovariáveis (o programa no R acho as interações) e assim temos un RMSE = 0.74195

Na tabela 7 consideramos dois interações baseado em na quimica (ver Descrição dasvariáveis) e obtemos um RMSE = 0.7632 que é maior a do modelo 21, os demas modelode regressão são mostrado em na tabela 9

10

Page 11: Relatorio 2

Model 21

(Intercept) −323.95∗∗∗

(54.17)fixed.acidity 0.02

(0.05)citric.acid −0.10

(0.14)volatile.acidity −6.76∗∗∗

(2.01)free.sulfur.dioxide 0.02∗∗∗

(0.01)density 314.08∗∗∗

(52.85)pH 4.06

(3.88)sulphates 51.28∗∗

(24.46)alcohol 29.33∗∗∗

(5.41)total.sulfur.dioxide 0.02∗∗∗

(0.00)pH:sulphates −14.54∗

(7.58)pH:alcohol −0.41

(0.36)sulphates:alcohol −4.88∗∗

(2.26)free.sulfur.dioxide:total.sulfur.dioxide 0.00∗∗∗

(0.00)fixed.acidity:volatile.acidity −0.11

(0.17)density:alcohol −27.91∗∗∗

(5.30)volatile.acidity:alcohol 0.54∗∗∗

(0.13)sulphates:total.sulfur.dioxide −0.02∗∗∗

(0.01)free.sulfur.dioxide:sulphates 0.04∗∗∗

(0.01)pH:sulphates:alcohol 1.44∗∗

(0.70)

R2 0.33Adj. R2 0.32Num. obs. 2057

***p < 0.01, **p < 0.05, *p < 0.1

Tabela 5: Modelo de regressão linear com interações

11

Page 12: Relatorio 2

Model 11

(Intercept) −289.29∗∗∗

(58.89)fixed.acidity −0.12∗∗∗

(0.05)volatile.acidity −7.78∗∗∗

(1.34)free.sulfur.dioxide 0.01∗

(0.01)total.sulfur.dioxide 0.01∗∗∗

(0.00)density 295.34∗∗∗

(59.23)pH 0.14

(0.14)sulphates 0.38∗∗

(0.15)alcohol 28.38∗∗∗

(5.27)free.sulfur.dioxide:total.sulfur.dioxide 0.00∗∗∗

(0.00)density:alcohol −28.43∗∗∗

(5.30)volatile.acidity:alcohol 0.56∗∗∗

(0.13)pH:chlorides −0.21

(0.24)free.sulfur.dioxide:residual.sugar 0.00

(0.00)fixed.acidity:free.sulfur.dioxide 0.00∗∗∗

(0.00)

R2 0.32Adj. R2 0.32Num. obs. 2057

***p < 0.01, **p < 0.05, *p < 0.1

Tabela 6: Modelo de regressão linear com interações

12

Page 13: Relatorio 2

Model 20

(Intercept) 240.10∗∗∗

(33.97)fixed.acidity −0.39

(0.36)citric.acid −0.01

(0.14)volatile.acidity −1.83∗∗∗

(0.17)residual.sugar 0.23∗∗∗

(0.03)free.sulfur.dioxide 0.00∗∗∗

(0.00)density −238.42∗∗∗

(34.19)pH −0.19

(0.78)sulphates 0.73∗∗∗

(0.16)alcohol 0.16∗∗∗

(0.05)residual.sugar:alcohol −0.01∗∗∗

(0.00)fixed.acidity:pH 0.17

(0.11)

R2 0.30Adj. R2 0.30Num. obs. 2057

***p < 0.01, **p < 0.05, *p < 0.1

Tabela 7: Modelo de regressão linear com interações

13

Page 14: Relatorio 2

3.2 K-nn

Os métodos de vizinhos mais próximos usa essas observações no conjunto de treinamentodo conjunto τ mais próximo do espaço de entrada de X para formar Y. A estimação dok-vizinhos mais próximos para Y é definido como:

Y =1k ∑

xi∈Nk(x)yi (3.2)

Onde Nk(x) é a vizinhança de x denotada pelo ponto K mais próximo xi na amostrade treino. A proximidade implica uma métrica, que para o momento em que assumir éa distância euclidiana. Assim, em palavras, encontramos as observações k com xi maispróximos de x no espaço de entrada e médios suas respostas.

Um k pequeno pode dar estimativas mais flexíveis, mas muita flexibilidade pode resul-tar em sobre-estimação e portanto com uma variância grande. Maior k vai dar estimativasmais estáveis, mas pode não ser flexível.

O mostramo o siguente codigo no R para trabalgar o predição da qualidade do vinho, eassim obtemos um RSS = 0.4142573 um valor muito baixo em comparação com os outrosmais o RMSE = 0.72703

library(FNN)

TrainKnny5 <- knn.reg(train=vinhos.tr,test=vinhos.tr,y=vinhos.tr$quality, k=2)

TestKnny5 <- knn.reg(train=vinhos.tr,test=vinhos.te,y=vinhos.tr$quality, k=2)

3.3 Regressão Ridge

A regressão ridge pode apresentar melhores resultados de predição com observações futu-ras que a regressão mínimos quadrados 16

O estimador ridge βridge minimiza a soma dos quadrados dos resíduos penalizada ver(Notas de aula do MI 814 - Métodos Estatísticos Aplicados ao Aprendizado de Máquina)17.

PRSS(β, λ) =N

∑i=1

(yi − β0 −p

∑j=1

xijβ j)2 + λ

p

∑j=1

β2j (3.3)

Ou seja para usar a regressão ridge seria as covariáveis devem ser multicolineares, maispor na Figura 2 notamos que não muita presença de multicolinearidade em as covariáveis,mais provaremos que resultados obtemos para as prediçãoes de qualidades do vinho.Assimtemos a tabela 5 e notamos que

Na tabela 8 obtemos que o melhor RSME de os três modelos é o modelo 14, ver saídano R em apêndice.

16http://www.cin.ufpe.br/~rmcrs/PRED/MulticolinariedadeAutocorrelacao.pdf17Notas de aula da professora Samara Kiihl https://www.dropbox.com/sh/bmo1bk1g639mxgx/

M5-Nym3ivp/Aulas/08.pdf

14

Page 15: Relatorio 2

Tabela 8: RSS e RMSE para os diferentes modelos fazendo uso da regressão ridge

Modelos Ridge RSS RMSEModelo 13 0.7651 0.72874Modelo 14 0.7501 0.72172Modelo 15 0.7576 0.72703

3.4 Regressão Ridge com validação cruzada

Na Figura 7 note-se que a o erro da validação cruzada diminui quando aumenta os gradosde libertade.

Figura 5: Validação cruzada e df

7 8 9 10 11

0.57

50.

590

0.60

5

effective df

CV

−er

ror

As estimativas com o regressão Ridge e com validação cruzada é mostrada na tabela 9.

15

Page 16: Relatorio 2

Model 18

(Intercept) 228.8987fixed.acidity 0.1393citric.acid −0.0098volatile.acidity −1.8987residual.sugar 0.1052free.sulfur.dioxide 0.0040density −229.9384pH 0.8812sulphates 0.7100alcohol 0.1079

Tabela 9: Modelo de regressão Ridge com validação cruzada

3.5 Regressão Lasso com validação cruzada

O lasso é um método de contração como ridge, com diferenças sutis, mas importantes. Aestimativa do lasso é definido por:

βlasso = arg minβ

{∑N

i=1(yi − β0 −∑pj=1 xijβ j)

2 + λ ∑pj=1 β2

j

}sujeito a

∑pj=1

∣∣β j∣∣ ≤ t

Termo de penalidae permite que coeficientes sejam encolhidos até 0. Permite obtermodelos mais simples, com menos covariáveis. O valor absoluto não diferenciável, Lassonão tem forma fechada.

O RSS na regressão de Lasso é R = 0.7693 e um RMSE =Usando Validação Cruzada para Escolha do Parâmetro de Ajuste 18 o parâmetro de

ajusta que obtemos é 0.01678482.

3.6 Máquina de vetores de suporte (Super Vector Machine)

Máquina de vetores de suporte (SVM) é um sistema de aprendizagem baseado no uso deum espaço de hipótese de funções lineares em um espaço de maior dimensão induzido porum kernel, em que as hipóteses são treinados por um algoritmo. SVM é um sistema paratreinar maquinas de aprendizagem linear com eficiência.Idéia do algoritmo SVM:enumerate

18Ver aula da Professora Samara Kiihl https://www.dropbox.com/sh/bmo1bk1g639mxgx/rp_mdJxRyV/

Aulas/09.pdf

16

Page 17: Relatorio 2

• Encontre hiperplano de maximização do margem entre conjuntos de dados.

• Penalizar os dados erroneamente classificados, isto é, incluir o "trade-off"de excessode treinamento no modelo.

1. As classes sobrepostas: Os pontos de dados no lado "errado"da margem discrimi-nante são oprimidos para reduzir sua influência ("margem soft");

2. Não-linearidade: Se não podemos encontrar um separador linear, os pontos de dadossão projetados em uma (geralmente) mais dimensões do espaço onde os pontos dedados se tornar efetivamente linearmente separáveis.

3. A solução do problema: Toda a tarefa pode ser formulado como um problema deotimização quadrática que pode ser resolvido com o algoritmo SMO, que verifica sesatisfazem as condições de Karush-Kuhn-Tucker de otimização não-linear.

Figura 6: Performance of super vector machine

0.5

1.0

1.5

2.0

0.02 0.06 0.10

2000

4000

6000

8000

10000

Performance of `svm'

gamma

cost

Note-se que o valor de gamma e costo são usado para obter as predição e assim obte-mos un RSS = 0.70116 e um RMSE = 0.70116

17

Page 18: Relatorio 2

model2

##

## Call:

## svm(formula = quality ~ ., data = vinhos.tr, method = "C-classification",

## kernel = "radia", probability = T, gamma = 0.01,

## cost = 10)

##

##

## Parameters:

## SVM-Type: eps-regression

## SVM-Kernel: radial

## cost: 10

## gamma: 0.01

## epsilon: 0.1

##

## Sigma: 0.6284

##

##

## Number of Support Vectors: 1819

3.7 Árvore de decisão (Decision tree)

Aprendizagem da árvore de decisão, em estatísticas de mineração de dados, e aprendi-zagem de máquina, usa um árvore de decisão como um modelo preditivo que mapeiaobservações sobre um item a conclusões sobre o valor do item objectivo

Algumas técnicas, muitas vezes chamados métodos Ensemble, construir mais de umaárvore de decisão, nestre relatorio usamos o randomforest19, usa um número de árvores dedecisões, a fim de melhorar a taxa de classificação.

Com árvore de decisão obtemos o melhor RSS = 0.2927 e um RMSE = 0.61448.

require(randomForest)

vinho.rf <- randomForest(quality ~ ., data=vinhos.tr

,importance=TRUE,keep.forest=TRUE, proximity=TRUE)

##

## Call:

## randomForest(formula = quality ~ ., data = vinhos.tr, importance = TRUE,

19http://cran.r-project.org/web/packages/randomForest/randomForest.pdf

18

Page 19: Relatorio 2

## keep.forest = TRUE, proximity = TRUE)

## Type of random forest: regression

## Number of trees: 500

## No. of variables tried at each split: 3

##

## Mean of squared residuals: 0.4332

##

Figura 7: Erro vs árvore

0 100 200 300 400 500

0.5

0.7

vinho.rf

trees

Err

or

4 Considerações finais

O melhor modelo de acordo RMSE é o modelo de árvores de decisão, no entanto, os dadosnão atendem aos pressupostos de homocedasticidade normalidade, para a regressão linear,o RSS obtidos em diferentes 23 modelos considerados para o trabalho feito para obter omelhores previsões de qualidade do vinho eram, no máximo, 2,9369 valor (obtido atravésdo modelo de regressão linear com transformação de covariáveis) e um valor mínimo de0,29268 (obtido pelo modelo de árvore de decisão).

Os modelos apresentados podem ser melhorados fazendo um análise mais extenso dosdados, por exemplo podemos fazer transformaçóes nas covariáveis, BoxCos no modelo de

19

Page 20: Relatorio 2

regressão linear,melhores escolgas das medidas de distancias utilizadas no Knn, em geralé posível fazer um análise mais riguroso mas por não ser objetivo do presente relatorio naõforam abordados.

5 Apêndice

Tabela 10: RSS e RMSE para os diferentes modelos fazendo uso da regressão ridge

Numero do modelo Nome do modelo RSS RMSE1 lm() incluindo a interceptação 0.7667 0.732702 lm() excluindo a interceptação 0.76763 lm() com transformação Box-Cox 0.80 2.12414 lm() com transformação Box-Cox 0.79 2.16385 lm() com seleção das covariáveis do modelo 1 0.76656 lm() com seleção das covariáveis do modelo 2 0.76717 lm() seleção e Box-Cox 2.12368 lm() com transformação das covariáveis 2.12369 lm() com transformação e com interacção 0.7510

10 lm() com transformação e seleccção 0.751011 lm() com seleção ??e remoção do citric.acid 0.742012 lm() com transformação e seleccção 0.758213 Ridge com transformação e seleccção 0.765114 Ridge com transformação e seleccção 0.7501 0.7287415 Ridge com transformação e seleccção 0.7576 0.7270316 knn com todas as covariáveis 0.4143 0.7270317 CV Lasso com todas as covariáveis 0.769318 CV Ridge com todas as covariáveis 0.766819 lm() com transformação e com interacção e seleção 0.762920 lm() com interação 0.763221 lm() com interação e seleção 0.732622 SVM com todas as covariáveis 0.7012 0.7011623 Decision trees com todas as covariáveis 0.2927 0.61448

20

Page 21: Relatorio 2

Figura 8: Grafico dos pontos de RSS para os diferentes modelos

1

2

3

0 5 10 15 20Numero do modelo

RS

S

vinhos.Ridgereg14

##

## Call:

## linearRidge(formula = quality ~ log(fixed.acidity) + log(volatile.acidity) +

## citric.acid + sqrt(residual.sugar) + log(chlorides) + log(free.sulfur.dioxide) +

## log(density) + pH * sulphates * alcohol + citric.acid * log(volatile.acidity) *

## sqrt(residual.sugar), data = vinhos.tr, lambda = "automatic")

##

## (Intercept)

## 9.550e-02

## log(fixed.acidity)

## 4.743e-01

## log(volatile.acidity)

## -2.622e-01

## citric.acid

## 3.928e-01

## sqrt(residual.sugar)

## 1.561e-01

## log(chlorides)

## -4.802e-02

## log(free.sulfur.dioxide)

## 2.266e-01

## log(density)

21

Page 22: Relatorio 2

## -1.238e+02

## pH

## -8.972e-02

## sulphates

## -2.803e-01

## alcohol

## 5.442e-02

## pH:sulphates

## 4.493e-02

## pH:alcohol

## 4.317e-02

## sulphates:alcohol

## -6.821e-03

## log(volatile.acidity):citric.acid

## 9.542e-02

## citric.acid:sqrt(residual.sugar)

## -1.299e-01

## log(volatile.acidity):sqrt(residual.sugar)

## -1.527e-01

## pH:sulphates:alcohol

## 2.309e-02

## log(volatile.acidity):citric.acid:sqrt(residual.sugar)

## -2.814e-02

22

Page 23: Relatorio 2

Código no R do Figura 2

cor.prob <- function (X, dfr = nrow(X) - 2) {

R <- cor(X, use="pairwise.complete.obs")

above <- row(R) < col(R)

r2 <- R[above]^2

Fstat <- r2 * dfr/(1 - r2)

R[above] <- 1 - pf(Fstat, 1, dfr)

R[row(R) == col(R)] <- NA

R

}

flattenSquareMatrix <- function(m) {

if( (class(m) != "matrix") | (nrow(m) != ncol(m)))

stop("Must be a square matrix.")

if(!identical(rownames(m), colnames(m)))

stop("Row and column names must be equal.")

ut <- upper.tri(m)

data.frame(i = rownames(m)[row(m)[ut]],

j = rownames(m)[col(m)[ut]],

cor=t(m)[ut],

p=m[ut])

}

# get some data from the mtcars built-in dataset

mydata <- vinhos.tr[,1:11]

# correlation matrix

cor(mydata)

# correlation matrix with p-values

cor.prob(mydata)

# "flatten" that table

flattenSquareMatrix(cor.prob(mydata))

# plot the data

library(PerformanceAnalytics)

chart.Correlation(mydata)

23

Page 24: Relatorio 2

Referências

[1] Hastie, T e Tibshirani, R. (2007) The Elements of Statistical.

[2] Alexandros Karatzoglou, David Meyer, Kurt Hornik- Support Vector Machine in R -Journal of Statisticsl Software http://www.jstatsoft.org/v15/i09/paper

[3] http://archive.ics.uci.edu/ml/datasets/Wine+Quality

[4] http://www.minitab.com/pt-BR/training/articles/articles.aspx?id=

10818&langType=1046

[5] http://www.cave-cleebourg.com/uk/analyser_vin.php#lph

[6] http://waterhouse.ucdavis.edu/whats-in-wine/fixed-acidity

[7] http://eprints.utas.edu.au/3427/1/008.pdf

24