Visão geral da árvore de decisão em R
Uma árvore de decisão em r é uma forma de aprendizado supervisionado usado para corrigir os problemas de classificação e regressão. Eles são um forte algoritmo de aprendizado de máquina para trabalhar com conjuntos de dados muito complexos. O conceito principal por trás da árvore de decisão é dividir o conjunto de dados fornecido. Para percorrer este artigo, é recomendável ter conceitos básicos de aprendizado no algoritmo da árvore de decisão.
Árvore de decisão em R
Para trabalhar com uma árvore de Decisão em R ou em termos leigos, é necessário trabalhar com grandes conjuntos de dados e o uso direto de pacotes R internos facilita o trabalho. Uma árvore de decisão é um modelo de suposição não linear que usa uma estrutura em árvore para classificar os relacionamentos. A árvore de decisão em R usa dois tipos de variáveis: variável categórica (Sim ou Não) e variáveis contínuas. As terminologias da Árvore de Decisão que consistem no nó raiz (forma um rótulo de classe), nós de decisão (subnós) e nó terminal (não se dividem mais). O conceito único por trás dessa abordagem de aprendizado de máquina é que eles classificam os dados fornecidos em classes que formam fluxo sim ou não (abordagem if-else) e representam os resultados em uma estrutura em árvore. O algoritmo usado na Árvore de Decisão em R é o Índice de Gini, ganho de informação, Entropia. Existem diferentes pacotes disponíveis para construir uma árvore de decisão em R: rpart (recursiva), festa, floresta aleatória, CART (classificação e regressão). É muito fácil implementar uma Árvore de Decisão no R.
Para uma análise clara, a árvore é dividida em grupos: um conjunto de treinamento e um conjunto de testes. A implementação a seguir usa um conjunto de dados do carro. Este conjunto de dados contém 1727 variáveis obs e 9, com as quais a árvore de classificação é construída. Neste artigo, vamos arborizar um pacote de 'festa'. A função create () fornece árvores condicionais com a função plot.
Implementação usando R
O objetivo é estudar um conjunto de dados do carro para prever se o valor do carro é alto / baixo e médio.
i) Preparando dados
Instalando os Pacotes e Carregar Bibliotecas
Este módulo lê o conjunto de dados como um quadro de dados completo e a estrutura dos dados é fornecida da seguinte maneira:
data<-car // Reading the data as a data frame
str(data) // Displaying the structure and the result shows the predictor values.
Resultado:
Determining Factordata$vhigh View(car)
> data<-car
ii) Particionar um dado
Dividindo os dados usando conjuntos de dados de treinamento. Uma árvore de decisão é dividida em subnós para ter boa precisão. A complexidade é determinada pelo tamanho da árvore e pela taxa de erros. Aqui fazendo reprodutividade e gerando um número de linhas.
set. Seed (1234)
dt<-sample (2, nrow(data), replace = TRUE, prob=c (0.8, 0.2))
validate<-data(dt==2, )
Fig : Mostrando valores de dados
Em seguida, tornando o valor dos dados em 2
validate<-data(dt==2, )
Fig : Exibindo o console do R no R Studio
Criando uma árvore de decisão no R com a parte do pacote
- Clique em package-> install -> party. Aqui, extraímos as três primeiras entradas da amostra de 1727 observações sobre conjuntos de dados. Criando um modelo para prever alto, baixo, médio entre as entradas.
Implementação:
library(party)
tree<-ctree(v~vhigh+vhigh.1+X2, data = train)
tree
Resultado:
Gráficos usando Ctree
Predição:
Prob gera probabilidade na pontuação,
Implementação:
predict(tree, validate, type="prob")
predict(tree, validate)
Níveis: alto, baixo e médio
Árvore de decisão usando rpart
Para prever a classe usando a função rpart () para o método de classe. rpart () usa a medida do índice Gini para dividir os nós.
library(rpart)
tr<-rpart (v~vhigh+vhigh.1+X2, train)
library (rpart. plot)
rpart. plot(tr)
"
rpart.plot(tr, extra=2)
Essa linha representa a árvore e exibe a probabilidade de criar recursos extras para o conjunto 2 e o resultado produzido é dado abaixo.
Erro de classificação incorreta
A taxa de erro evita o ajuste excessivo.
tbl<-table(predict(tree), train $v)
print(tbl)
tepre<-predict(tree, new=validate)
Resultado:
impressão (tbl)
alta baixa med alta
alta 332 0 0 0
baixo 0 359 0 0
med 0 0 350 0
0 0 0 351
Conclusão
A árvore de decisão é um desafio-chave em R e a força da árvore é que elas são fáceis de entender e ler quando comparadas com outros modelos. Eles estão sendo usados popularmente em problemas de ciência de dados. Estas são as ferramentas que produzem a hierarquia de decisões implementadas na análise estatística. É necessário conhecimento estatístico para entender as interpretações lógicas da árvore de Decisão. Como vimos, a árvore de decisão é fácil de entender e os resultados são eficientes quando há menos rótulos de classe e a outra parte negativa é quando há mais cálculos de rótulos de classe complexos. Este post faz com que se torne proficiente para criar modelos de aprendizagem preditivos e baseados em árvores.
Artigos recomendados
Este é um guia para a Árvore de Decisão no R. Aqui discutimos a introdução, como usar e a implementação do R. Você também pode consultar nossos outros artigos sugeridos para saber mais -
- O que é uma árvore binária em Java?
- R Linguagem de Programação
- O que é o Código do Visual Studio?
- Introdução ao gráfico de linha em R
- Guia de Distribuição Binomial em R