Matemática por trás das árvores de classificação e regressão

14

Alguém pode ajudar a explicar algumas das matemáticas por trás da classificação no CART? Estou procurando entender como duas etapas principais acontecem. Por exemplo, eu treinei um classificador CART em um conjunto de dados e usei um conjunto de dados de teste para marcar seu desempenho preditivo, mas:

  1. Como é escolhida a raiz inicial da árvore?

  2. Por que e como cada ramo é formado?

Meu conjunto de dados, com 400 mil registros com 15 colunas e 23 classes, alcança uma precisão de 100% a partir de uma matriz de confusão, uso validação cruzada de 10 vezes no conjunto de dados. Eu ficaria muito grato se alguém pudesse ajudar a explicar os estágios da classificação CART?

G Gr
fonte

Respostas:

24

O CART e as árvores de decisão, como algoritmos, funcionam com o particionamento recursivo do conjunto de treinamento para obter subconjuntos o mais puros possível para uma determinada classe de destino. Cada nó da árvore está associado a um conjunto específico de registros que é dividido por um teste específico em um recurso. Por exemplo, uma divisão em um atributo contínuo A pode ser induzida pelo teste A x . O conjunto de registros T é então particionado em dois subconjuntos que levam ao ramo esquerdo da árvore e ao direito.TAAxT

Tl={tT:t(A)x}

e

Tr={tT:t(A)>x}

Da mesma forma, um recurso categórico pode ser usado para induzir divisões de acordo com seus valores. Por exemplo, se B = { b 1 , ,B cada ramo i pode ser induzido pelo teste B = b i .B={b1,...,bk}EuB=bEu

A etapa de divisão do algoritmo recursivo para induzir a árvore de decisão leva em consideração todas as divisões possíveis para cada recurso e tenta encontrar a melhor de acordo com uma medida de qualidade escolhida: o critério de divisão. Se o seu conjunto de dados for induzido no seguinte esquema

UMA1,...,UMAm,C

onde são atributos e C é a classe de destino, todas as divisões candidatas são geradas e avaliadas pelo critério de divisão. As divisões em atributos contínuos e categóricos são geradas conforme descrito acima. A seleção da melhor partição geralmente é realizada por medidas de impureza. A impureza do nó pai deve ser diminuída pela divisão . Let ( E 1 , E 2 , , E kUMAjC uma divisão induzida no conjunto de registros E , um critério de divisão que utiliza a medida de impureza I ( ) é:(E1,E2,...,Ek)EEu()

Δ=Eu(E)-Eu=1k|EEu||E|Eu(EEu)

As medidas padrão de impureza são a entropia de Shannon ou o índice de Gini. Mais especificamente, o CART usa o índice Gini definido para o conjunto seguinte maneira. Seja p j a fração de registros em E da classe c j p j = | { t E : t [ C ] = c j } |EpjEcj então Gini(E)=1- Q j=1p

pj=|{tE:t[C]=cj}||E|
ondeQé o número de classes.
GEunEu(E)=1-j=1Qpj2
Q

Isso leva a uma impureza 0 quando todos os registros pertencem à mesma classe.

Como exemplo, vamos dizer que temos um conjunto de classe binário de registros , onde a distribuição de classe é ( 1 / 2 , 1 / 2 ) - o seguinte é uma boa divisão para TT(1/2,1/2)T

Boa divisão

Teu(1,0 0)Tr(0 0,1)TeuTr|Teu|/|T|=|Tr|/|T|=1/2Δ

Δ=1-1/22-1/22-0 0-0 0=1/2

ΔDivisão incorreta

Δ=1-1/22-1/22-1/2(1-(3/4)2-(1/4)2)-1/2(1-(1/4)2-(3/4)2)=1/2-1/2(3/8)-1/2(3/8)=1/8

A primeira divisão será selecionada como melhor divisão e, em seguida, o algoritmo prosseguirá de forma recursiva.

É fácil classificar uma nova instância com uma árvore de decisão; na verdade, basta seguir o caminho do nó raiz para uma folha. Um registro é classificado com a classe majoritária da folha que atinge.

Digamos que queremos classificar o quadrado nesta figura

Conjunto de dados de dois recursos

UMA,B,CCUMAB

Uma possível árvore de decisão induzida pode ser a seguinte: insira a descrição da imagem aqui

É claro que o quadrado do registro será classificado pela árvore de decisão como um círculo, uma vez que o registro cai em uma folha rotulada com círculos.

Neste exemplo de brinquedo, a precisão no conjunto de treinamento é de 100%, porque nenhum registro é classificado incorretamente pela árvore. Na representação gráfica do conjunto de treinamento acima, podemos ver os limites (linhas tracejadas em cinza) que a árvore usa para classificar novas instâncias.

Há muita literatura sobre árvores de decisão, eu queria apenas escrever uma introdução superficial. Outra implementação famosa é a C4.5.

Simone
fonte
1
ótimos diagramas!
Cam.Davidson.Pilon
Obrigado, infelizmente, parece que o editor não suporta o upload em formato PDF. Eles eram vetoriais.
Simone
2

Eu não sou especialista em CARTs, mas você pode experimentar o livro "Elementos de Aprendizagem Estatística", disponível gratuitamente on-line (consulte o capítulo 9 para CARTs). Acredito que o livro foi escrito por um dos criadores do algoritmo CART (Friedman).

Bit a bit
fonte
Isso ajudou muito! +1 brilhante encontrar!
G Gr
@GarrithGraham não tem problema, eu pensei que este livro grátis é um "segredo bem conhecido".
Bitwise