Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mineração de Dados no Weka - Regressão Linear

1,694 views

Published on


O modelo de regressão é então usado para prever o resultado de uma variável dependente desconhecida, dados os valores das variáveis independentes.
Nesta aula, mostro um passo a passo com a bordage teórica e prática de como fazer regressão linear utilizando o WEKA

Published in: Data & Analytics
  • Be the first to comment

Mineração de Dados no Weka - Regressão Linear

  1. 1. Introdução à Mineração de dados Regressão Linear PROF. JOÃO GABRIEL LIMA @JGABRIEL_LIMA LINKEDIN.COM/IN/JOAOGABRIELLIMA Mineração de dados com WEKA - Prof. João Gabriel Lima
  2. 2. O que é mineração de dados?
  3. 3. Mineração de dados A transformação de grandes quantidades de dados em padrões e regras: Direcionada e Não Direcionada Direcionada: tentamos prever um ponto de dados em particular ◦ Ex.: preço de venda de uma casa baseado em informações sobre outras casas à venda no bairro Mineração de dados com WEKA - Prof. João Gabriel Lima
  4. 4. Mineração de dados Não direcionada: ◦ Tentamos criar grupos de dados, ou achar padrões em dados existentes Mineração de dados com WEKA - Prof. João Gabriel Lima
  5. 5. Qual o objetivo?
  6. 6. Mineração de Dados O objetivo da mineração de dados é criar um modelo que possa melhorar o modo pelo qual interpretamos nossos dados existentes e futuros. Como há muitas técnicas de mineração de dados, o passo principal para criar um bom modelo é determinar que tipo de técnica deve ser usada. Mineração de dados com WEKA - Prof. João Gabriel Lima
  7. 7. Modelos de Regressão GUIA PRÁTICO E PASSO A PASSO Mineração de dados com WEKA - Prof. João Gabriel Lima
  8. 8. Regressão Linear O modelo de regressão é então usado para prever o resultado de uma variável dependente desconhecida, dados os valores das variáveis independentes. Modelos de regressão linear são frequentemente ajustados usando a abordagem dos mínimos quadrados. Mineração de dados com WEKA - Prof. João Gabriel Lima
  9. 9. Regressão Linear - SIMPLES - MÚLTIPLA Mineração de dados com WEKA - Prof. João Gabriel Lima
  10. 10. Método dos mínimos quadrados Regressão Linear Simples Para estimar os valores da variável dependente y, considerando os valores da variável x temos: 𝛼 - Parâmetro do modelo chamado de constante (porque não depende de x. 𝛽- Parâmetro do modelo chamado de coeficiente da variável x. 𝜀 - Erro - representa a variação de y que não é explicada pelo modelo Mineração de dados com WEKA - Prof. João Gabriel Lima 𝑦 = 𝛼 + 𝛽𝑥 + 𝜀
  11. 11. Método dos mínimos quadrados Regressão Linear Simples Também temos uma base de dados com n valores observados de y e de x y e x são vetores - representam uma lista de valores, um para cada observação da base de dados. O método dos mínimos quadrados ajuda a encontrar as estimativas de 𝛼 e 𝛽 Serão somente estimativas desses parâmetros, porque o valor real dos parâmetros são desconhecidos. Mineração de dados com WEKA - Prof. João Gabriel Lima
  12. 12. Método dos mínimos quadrados Regressão Linear Simples O método dos mínimos quadrados minimiza a soma dos quadrado dos resíduos, ou seja, minimiza A ideia por trás dessa técnica é que, minimizando a soma do quadrado dos resíduos, encontraremos a e b que trarão a menor diferença entre a previsão de y e o y realmente observado Mineração de dados com WEKA - Prof. João Gabriel Lima
  13. 13. Método dos mínimos quadrados Regressão Múltipla A regressão múltipla apresenta um funcionamento parecido com o da regressão simples, porém, leva em consideração diversas variáveis explicativas x influenciando y ao mesmo tempo Mineração de dados com WEKA - Prof. João Gabriel Lima
  14. 14. Método dos mínimos quadrados Observações Ao usar o método dos mínimos quadrados, assumimos algumas premissas a respeito das variáveis: Os regressores são fixos: As variáveis da matriz X não são estocásticas. Erro é aleatório com média 0: O erro é Homoscedasticidade: A variância do erro é constante. Sem correlação: Não existe correlação entre os erros das observações Parâmetros são constantes: 𝛼 e 𝛽 são valores fixos desconhecidos. Modelo é linear: Os dados da variável dependente y foram gerados pelo processo linear Erro tem distribuição normal: O erro é distribuído conforme a curva de distribuição normal. Caso alguma dessas premissas não seja verdadeira, o método pode gerar resultados sub-ótimos ou com viés. Mineração de dados com WEKA - Prof. João Gabriel Lima
  15. 15. R² Coeficiente de determinação É uma medida de ajuste de um modelo estatístico linear em relação aos valores observados. O R² varia entre 0 e 1, indicando, em percentagem, o quanto o modelo consegue explicar os valores observados. Quanto maior o R², mais explicativo é modelo, melhor ele se ajusta à amostra Componentes: - Soma Total dos Quadrados: a soma dos quadrados das diferenças entre a média e cada valor observado - Soma dos Quadrados Explicada: a soma dos quadrados das diferenças entre a média das observações e o valor estimado para cada observação - Soma dos Quadrados dos Resíduos: calcula a parte que não é explicada pelo modelo Mineração de dados com WEKA - Prof. João Gabriel Lima
  16. 16. R² Soma Total dos Quadrados Soma dos Quadrados Explicada Soma dos Quadrados dos Resíduos Sabemos que Mineração de dados com WEKA - Prof. João Gabriel Lima
  17. 17. R² Equação : Mineração de dados com WEKA - Prof. João Gabriel Lima
  18. 18. R² Ajustado A inclusão de inúmeras variáveis, mesmo que tenham muito pouco poder explicativo sobre a variável dependente, aumentarão o valor de R². Isto incentiva a inclusão indiscriminada de variáveis, prejudicando o princípio da parcimônia. Para combater esta tendência, podemos usar uma medida alternativa do coeficiente de determinação, que penaliza a inclusão de regressores pouco explicativos Mineração de dados com WEKA - Prof. João Gabriel Lima
  19. 19. R² Ajustado Trata-se do R² ajustado: Onde (k+1) representa o número de variáveis explicativas mais a constante. A inclusão de mais variáveis com pouco poder explicativo prejudica o valor do R² ajustado, porque aumenta k uma unidade, sem aumentar substancialmente o R². Mineração de dados com WEKA - Prof. João Gabriel Lima
  20. 20. Regressão Linear ABORDAGEM PRÁTICA
  21. 21. Regressão - Exemplo Ex.: Calcular o preço de uma casa: (dados- https://goo.gl/5aZzcs) O preço da casa (a variável dependente) é o resultado de muitas variáveis independentes — a metragem quadrada da casa, o tamanho do lote, se há granito na cozinha, se os banheiros foram reformados, etc O modelo é criado com base em outras casas comparáveis no bairro e no preço pelo qual elas foram vendidas (o modelo), e então colocando os valores de sua própria casa neste modelo para produzir o preço esperado. Mineração de dados com WEKA - Prof. João Gabriel Lima
  22. 22. Regressão Ex.: Estes são números reais de casas que estão à venda no bairro, e vamos tentar achar o valor da casa que se quer vender: Valores da casa para o modelo de regressão Tamanho Tamanho do lote Quartos Granito Banheiro reformado Preço de venda 3529 9191 6 0 0 $205,000 3247 10061 5 1 1 $224,900 4032 10150 5 0 1 $197,900 2397 14156 4 1 0 $189,900 2200 9600 4 0 1 $195,000 3536 19994 6 1 1 $325,000 2983 9365 5 0 1 $230,000 3198 9669 5 1 1 ?????
  23. 23. Waikato Environment for Knowledge Analysis (WEKA)
  24. 24. Waikato Environment for Knowledge Analysis (WEKA) Mineração de dados com WEKA - Prof. João Gabriel Lima
  25. 25. Waikato Environment for Knowledge Analysis (WEKA) O WEKA é um produto da Universidade de Waikato (Nova Zelândia) GNU General Public License (GPL) Linguagem Java™ API para incorporar o WEKA em aplicações próprias Mineração de dados com WEKA - Prof. João Gabriel Lima
  26. 26. Carregando dados no WEKA Formato de Arquivo de Atributo-Relação (ARFF) No arquivo, definimos cada coluna e o que cada coluna contém: @relation <relation-name> @attribute <attribute-name> <datatype> * numeric, nominal, string, date [<date-format>] @data <data 1>, <data 2>, <data 3>, <data 4>, <data 5> Mineração de dados com WEKA - Prof. João Gabriel Lima
  27. 27. Carregando dados no WEKA @relation LCCvsLCSH @attribute LCC string @attribute LCSH string @ attribute timestamp DATE "yyyy-MM-dd HH:mm:ss" @data AG5, 'Encyclopedias and dictionaries.;Twentieth century.' , "2001-04-03 12:12:12" AS262, 'Science -- Soviet Union -- History.' , "2001-04-03 12:12:12" AE5, 'Encyclopedias and dictionaries.' , "2001-04-03 12:12:12" AS281, 'Astronomy, Assyro-Babylonian.;Moon -- Phases.' , "2001-04-03 12:12:12" AS281, 'Astronomy, Assyro-Babylonian.;Moon -- Tables.’, "2001-04-03 12:12:12" Mineração de dados com WEKA - Prof. João Gabriel Lima
  28. 28. Conhecendo o Ambiente de Trabalho WEKA WORKBENCH Mineração de dados com WEKA - Prof. João Gabriel Lima
  29. 29. Mineração de dados com WEKA - Prof. João Gabriel Lima
  30. 30. Abrindo nosso arquivo arff no WEKA
  31. 31. Criando o modelo de regressão com o WEKA Na guia Classify: 1 - Clique no botão Choose, e então expanda a ramificação functions. 2 - Selecione a folha LinearRegression. Obs: No caso do modelo de regressão, estamos limitados a uma coluna de NUMERIC ou de DATE Nosso arquivo de dados… Mineração de dados com WEKA - Prof. João Gabriel Lima
  32. 32. Criando o modelo de regressão com o WEKA – Opções Supplied test set: onde é possível fornecer um conjunto diferente de dados para construir o modelo; Cross-validation: que deixa o WEKA construir um modelo baseado em subconjuntos dos dados fornecidos e então calcular sua média para criar um modelo final; Percentage split: onde o WEKA toma um subconjunto percentual dos dados fornecidos para construir um modelo final. Use training set: Isto diz ao WEKA que para construir nosso modelo desejado, podemos simplesmente usar o conjunto de dados que fornecemos em nosso arquivo ARFF Mineração de dados com WEKA - Prof. João Gabriel Lima
  33. 33. Criando o modelo de regressão com o WEKA – Opções O último passo para criar nosso modelo é escolher a variável dependente (a coluna que estamos tentando prever). Sabemos que este deve ser o preço de venda, pois é isso que estamos tentando determinar. Mineração de dados com WEKA - Prof. João Gabriel Lima
  34. 34. Criando o modelo de regressão com o WEKA Analisando o Resultado Mineração de Dados - Prof. Msc. João Gabriel Lima
  35. 35. Mas… é esse o resultado?
  36. 36. Interpretando o modelo de regressão Mineração de dados com WEKA - Prof. João Gabriel Lima
  37. 37. Resultado da regressão preco = (-26,6882 * tamanhoCasa) + (7,0551 * tamanhoLote) + (43.166,0767 * quartos) + (42.292,0901 * banheiro) - 21.661,1208 Mineração de dados com WEKA - Prof. João Gabriel Lima
  38. 38. Calculando o Valor da casa usando o modelo de regressão preco = (-26,6882 * 3198) + (7,0551 * 9669) + (43.166,0767 * 5) + (42.292,0901 * 1) -21.661,1208 preco = $ 219,328 Tamanho Tamanho do lote Quartos Granito Banheiro reformado Preço de venda 3198 9669 5 1 1 ????? Mineração de dados com WEKA - Prof. João Gabriel Lima
  39. 39. Ahhhh!
  40. 40. Interpretando os padrões e conclusões do modelo ◦ O granito não tem importância ◦ O WEKA só usa as colunas que contribuem estatisticamente para a precisão do modelo (medido em R ao quadrado). ◦ Ele descarta e ignora as colunas que não ajudam a criar um bom modelo. ◦ Assim, este modelo de regressão está nos dizendo que o granito da cozinha não afeta o valor da casa. Mineração de dados com WEKA - Prof. João Gabriel Lima
  41. 41. Interpretando os padrões e conclusões do modelo ◦ Os banheiros são importantes ◦ Como usamos um simples valor 0 ou 1 para um banheiro reformado, podemos usar o coeficiente do modelo de regressão para determinar o valor que um banheiro reformado representa para o valor da casa. ◦ O modelo nos diz para acrescentarmos $42.292 ao valor da casa. Mineração de dados com WEKA - Prof. João Gabriel Lima
  42. 42. Que massa!
  43. 43. Interpretando os padrões e conclusões do modelo ◦ Casas maiores reduzem o valor ◦ Não faz sentido? ◦ O modelo pode estar sendo afetado por uma variável que não é indepenendente. ◦ “Tamanho”? Mineração de dados com WEKA - Prof. João Gabriel Lima
  44. 44. Vamos exercitar! Agora aplique seus conhecimentos em um novo desafio… Mineração de dados com WEKA - Prof. João Gabriel Lima
  45. 45. Exercício 1 ◦ Na aba Preprocess do WEKA é possível remover colunas do conjunto de dados. ◦ Remova a coluna TamanhoCasa e crie outro modelo. Como isso afeta o preço da casa? ◦ Este novo modelo faz mais sentido? ◦ Qual o novo valor da casa com esta alteração nos dados de entrada? Mineração de dados com WEKA - Prof. João Gabriel Lima
  46. 46. Exercício 2 A partir da base disponível em: https://goo.gl/GfFX8l Aplique os conhecimentos adiquiridos nesta aula, destacando as variáveis independentes que tem influência sobre o resultado e a função que expressa o modelo de regressão para a base de dados analisada. Apresente explicando a abordagem matemática e a utilização da ferramenta Mineração de dados com WEKA - Prof. João Gabriel Lima
  47. 47. Referências Abaixo estão listadas as principais fontes utilizadas para a concepção desta apresentação: http://www.portalaction.com.br/analise-de-regressao/ http://www.mathsisfun.com/data/correlation.html https://pt.wikipedia.org/wiki/R%C2%B2 https://pt.wikipedia.org/wiki/M%C3%A9todo_dos_m%C3%ADnimos_quadrados http://support.minitab.com/pt-br/minitab/17/topic-library/modeling-statistics/regression-and-correlation/goodness-of-fit-statistics/r- squared/ https://www.ibm.com/developerworks/br/opensource/library/os-weka1/ https://mineracaodedados.wordpress.com/ http://hunch.net/?p=3692542 http://en.wikipedia.org/wiki/Regression_analysis http://weka.wikispaces.com/ARFF+%28book+version%29 http://www.ibm.com/developerworks/forums/dw_forum.jsp?forum=375&cat=5 http://machinelearningmastery.com/regression-machine-learning-tutorial-weka/ Mineração de dados com WEKA - Prof. João Gabriel Lima
  48. 48. Introdução à Mineração de dados Regressão Linear PROF. JOÃO GABRIEL LIMA @JGABRIEL_LIMA LINKEDIN.COM/IN/JOAOGABRIELLIMA Mineração de dados com WEKA - Prof. João Gabriel Lima

×