Como explicar os resultados de um modelo de análise preditiva de classificação r
Outra tarefa em análise preditiva é classificar novos dados ao prever que classe um item de destino dos dados pertence, dado um conjunto de variáveis independentes. Você pode, por exemplo, classificar um cliente por tipo - por exemplo, como um cliente de alto valor, um cliente regular, ou um cliente que está pronto para mudar para um concorrente - usando uma árvore de decisão.
Conteúdo
Video: Nd008 Ud978 P3 L3 A07 L Forest Model Results T
Para ver algumas informações úteis sobre o modelo R Classification, digite o seguinte código:
gt; Resumo (modelo) Comprimento Classe Modo1 BinaryTreeS4
o Classe coluna diz que você criou uma árvore de decisão. Para ver como as divisões estão sendo determinado, você pode simplesmente digitar o nome da variável na qual você atribuiu o modelo, neste caso modelo, como isso:
Video: MegaParty, BitCoin Machine no Brasil, Netflix no Oscar [CT News #41]
gt; árvore inferência modelConditional com seis terminais nodesResponse: seedTypeInputs: área, perímetro, compacidade, comprimento, largura, assimetria, length2Number de observações: 1471) da área lt; = 16.2- critério = 1, estatística = 123,4232) área lt; = 13.37- critério = 1, estatística = 63,5493) length2 lt; = 4.914- critério = 1, estatística = 22,2514) * pesos = 113) length2 gt; 4.9145) * pesos = 452) área gt; 13,376) length2 lt; = 5.396- critério = 1, estatística = 16.317) * pesos = 336) length2 gt; 5.3968) * pesos = 81) área gt; 16,29) length2 lt; = 5.877- critério = 0,979, estatística = 8,76410) * pesos = 109) length2 gt; 5.87711) * = 40 pesos
Mesmo melhor, você pode visualizar o modelo criando um gráfico da árvore de decisão com este código: gt; trama (modelo)
Esta é uma representação gráfica de uma árvore de decisão. Você pode ver que as imita gerais forma que de uma árvore real. Ele é feito de nós (os círculos e rectângulos) e ligações ou arestas (as linhas de ligação).
O primeiro nó (a partir do topo) é chamado o nó raiz e os nós na parte inferior da árvore (retângulos) são chamados nós terminais. Há cinco nós de decisão e seis nós terminais.
Em cada nó, o modelo toma uma decisão com base nos critérios do círculo e os links, e escolhe um caminho a percorrer. Quando o modelo alcança um nó terminal, um veredicto ou uma decisão final seja alcançado. Neste caso particular, dois atributos, a e a, são usadas para decidir se um determinado tipo de semente é na classe 1, 2 ou 3.
Por exemplo, pegue a observação nº 2 do conjunto de dados. Tem um de 4.956 e um de 14,88. Você pode usar a árvore que você acabou de construir para decidir qual tipo de semente especial esta observação pertence. Aqui está a seqüência de passos:
Começar no nó raiz, o qual é o nó 1 (o número é mostrado no pequeno quadrado na parte superior do circulo). Decidir com base no atributo: é a de observação # 2 igual ou inferior a (denotado por lt; =) 16,2? A resposta é sim, então mover ao longo do caminho para o nó 2.
No nó 2, o modelo de pergunta: É a área lt; = 13,37? A resposta é não, então tente o próximo link que pergunta: É a área gt; 13,37? A resposta é sim, então mover ao longo do caminho para o nó 6. Neste nó do modelo pergunta: É a length2 lt; = 5,396? É, e você se move para o nó de terminal 7 e o veredicto é que a observação # 2 é do tipo de semente 1. E é, de fato, semente de tipo 1.
O modelo faz esse processo para todas as outras observações para prever suas classes.
Para descobrir se você treinou um bom modelo, verificá-lo contra os dados de treinamento. Você pode ver os resultados em uma tabela com o seguinte código:
gt; mesa (predizer (modelo), COMPOSIÇÕES $ seedType) 1 2 31 45 4 32 3 47 03 1 0 44
Os resultados mostram que o erro (ou taxa de erros de classificação) 11 é de 147, ou 7,48 por cento.
Com os resultados calculados, o próximo passo é ler a tabela.
As previsões correctas são os que apresentam os números de colunas e linhas como a mesma. Esses resultados mostram-se como uma linha diagonal do canto superior esquerdo para inferior-direito; por exemplo, [1,1], [2,2], [3,3] são o número de previsões correctas para essa classe.
Assim, para um tipo de semente, o modelo previu correctamente que 45 vezes, enquanto a semente misclassifying 7 vezes (4 vezes como semente tipo 2, e 3 vezes como do tipo 3). Para o tipo de semente 2, o modelo previu correctamente que 47 vezes, enquanto que misclassifying 3 vezes. Para o tipo de semente 3, o modelo previu correctamente que 44 vezes, enquanto misclassifying apenas uma vez.
Isso mostra que este é um bom modelo. Então agora você avaliá-lo com os dados de teste. Aqui está o código que utiliza os dados de teste para prever e armazená-lo em uma variável (testPrediction) Para uso posterior:
gt; testPrediction lt; - prever (modelo, newdata = testSet)
Para avaliar como o modelo realizado com os dados de teste, vê-lo em uma tabela e calcular o erro, para o qual o código se parece com isso:
gt; mesa (testPrediction, testSet $ seedType) testPrediction 2 31 23 1 2 12 1 19 03 1 0 17
Os resultados mostram que o erro é 5 de 64, ou 7,81 por cento. Isto é consistente com os dados de treinamento.