Redes Neuronais e Aprendizagem Automática 2005/2006 17 a aula Fernando.Silva@ist.utl.pt Instituto Superior Técnico Redes Neuronais e Aprendizagem Automática 1
Sumário Árvores de decisão (continuação) Entropia. Selecção de atributos por critério de entropia. Redes Neuronais e Aprendizagem Automática 2
Interpretação de entropia A entropia mede a incerteza sobre uma determinada variável aleatória Caso determínistico H(X) = 0 Caso equiprovável: H(X) = log 2 (K) Entropia mede a informação fornecida por uma VA: Maior incerteza = mais informação = maior entropia Menor incerteza = menos informação = menor entropia Em teoria da informação, a entropia mede o número de bits necessário para codificar 1 de K possíveis acontecimentos Caso equiprovável: codificação binária convencional Caso determinístico: 0 bits Casos intermédios: cada acontecimento pode ser codificado com log 2 (P (x i )) bits. Número de bits necessário para codificar cada acontecimento reduz-se com o aumento da probabilidade de ocorrência (menos informativo). Número médio de bits: H(X) Redes Neuronais e Aprendizagem Automática 3
Entropia conjunta Entropia conjunta de X e Y H(X, Y ) = n i=1 m P (x i, y k ) log 2 (P (x i, y k )) k=1 X e Y independentes: P (x i, y k ) = P (x i )P (y k ) H(X, Y ) = H(X) + H(Y ) Entropia condicional de X dado Y = y j H(X Y = y j ) = n P (x i Y = y j ) log 2 (P (x i Y = y j )) i=1 Redes Neuronais e Aprendizagem Automática 4
Entropia condicional Entropia condicional m H(X Y ) = E[H(X Y = y j )] = H(X Y = y j )P (y j ) j=1 m n P (x i, y j ) log 2 (P (x i y j )) j=1 i=1 (1) H(X Y ) mede a incerteza de X admitindo que se conhece Y. X e Y independentes: H(X Y ) = H(X) Relação determinística: X = F (Y ) P (x i Y = y j ) = δ ik(j), H(X Y ) = 0 (2) m n H(X Y ) = P (y j ) P (x i y j ) log 2 (P (x i y j )) = 0 j=1 Relação determinística: Não há qualquer incerteza (informação) em X quando Y é conhecido. i=1 Redes Neuronais e Aprendizagem Automática 5
Entropia condicional e conjunta Entropia condicional H(X, Y ) = H(X Y ) + H(Y ) Informação conjunta de X, Y é igual à informação de X dada Y mais a informação de Y. Redes Neuronais e Aprendizagem Automática 6
Informação mútua Informação comum (partilhada) entre X e Y : I(X; Y ) = H(X) H(X Y ) = H(X) + H(Y ) H(X, Y ) Redes Neuronais e Aprendizagem Automática 7
Diagramas de Entropia H(X,Y) H(X) H(Y) H(X Y) Caso geral I(X;Y) H(Y X) Redes Neuronais e Aprendizagem Automática 8
Diagramas de Entropia 2 H(X,Y) H(X) H(Y) I(X;Y) H(X Y) H(Y X) Variáveis com interdependência determinística Redes Neuronais e Aprendizagem Automática 9
Diagramas de Entropia 3 H(X,Y) H(X) H(Y) H(X Y) H(Y X) I(X;Y) Variáveis independentes Redes Neuronais e Aprendizagem Automática 10
Telecomunicações Shannon, 1949 Telecomunicações: x(n) H(X) Canal y(n) H(Y) Entropia do emissor: H(X) (taxa de transmissão) Incerteza sobre X à chegada: H(X Y ) (taxa de erro) Informação mútua I(X; Y ) = H(X) H(X Y ) (capacidade do canal) r(n) Redes Neuronais e Aprendizagem Automática 11
Selecção de atributo em árvores de decisão Informação mútua entre a saída e o atributo Critério de selecção: atributo com informação mútua máxima com o valor desejado I(Y ; A) = H(Y ) H(Y A) H(Y A) = P (v k )H(Y A = v k ) Redes Neuronais e Aprendizagem Automática 12
Interpretação Interpretação Impureza: medida de incerteza ou entropia Entropia do conjunto inicial T H(Y ) = i P (y i ) log 2 P (y i ) Entropia em cada folha v k quando é seleccionado o atributo A: H(Y A = v k ) = i P (y i v k ) log 2 P (y i v k ) Entropia média nas folhas ao seleccionar o atributo A H(Y A) = k P (v k )H(Y A = v k ) Redes Neuronais e Aprendizagem Automática 13
Atributo óptimo T A H(Y) v 1 v 2 v3 v4... v Ns T 1 T 2 T 3 T 4... T Ns H(Y A=v ) 1 H(Y A=v ) 2 H(Y A=v ) 3 H(T A=v ) 4 H(Y A=v ) Ns H(Y A) = E[H(Y A=v )] k Ganho de informação (redução de entropia) por seleccionar A I(Y ; A) = H(Y ) H(Y A) Decisão: arg max A I(Y ; A) = arg min A H(Y A) Redes Neuronais e Aprendizagem Automática 14
Exemplo: seleccção de atributo A 1 A 2 A 3 Y A 0 1 X 2 A 1 2 X 1 C 1 3 X 1 B 1 4 X 2 B 1 5 X 2 H(Y ) = 2 5 log 2 2 5 3 5 log 3 2 5 = 0.971 H(Y A 1 = A) = 1 2 log 1 2 2 1 2 log 1 2 2 = 1.0 H(Y A 1 = B) = 0 H(Y A 1 = C) = 0 H(Y A 1 ) = 2 5 H(Y A 1 = A) = 0.400 H(Y A 2 ) = 4 5 1 = 0.800 H(Y A 3 ) = 0 I(Y ; A 1 ) = 0.571 I(Y ; A 2 ) = 0.171 I(Y ; A 3 ) = 0.971 Redes Neuronais e Aprendizagem Automática 15
Exemplo 2: seleccção de atributo Selecção por ganho de informação: atributo A 2 A 1 A 2 Y A X 0 A X 0 A Y 0 A Y 0 A Y 0 A Y 0 B Z 1 B Z 1 B Z 1 B Z 1 B Z 1 B Z 1 B Z 1 B Z1 1 B Z1 1 B Z1 0 B Z1 1 B Z1 1 Selecção por número de erros: atributo A 1 ou A 2 ID3 favorece a selecção de atributos com maior ganho de informação (V. exemplo) De um modo geral, o critério de informação mútua usado pelo ID3 favorece árvores pequenas relativamente a grandes. O método greedy utilizado apenas permite derivar uma solução, que pode não ser globalmente óptima. É possível derivar um algoritmo de selecção da árvore mais curta, testando exaustivamente todas as árvores que produzem um conjunto consistente de hipóteses. O algoritmo ID3 é uma aproximação heurística deste algoritmo usando um método greedy (e, portanto, muito mais eficiente). Redes Neuronais e Aprendizagem Automática 16