Apendizado po Meoização: IBL & KNNK InstanceBased Leaning (IBL é u paadiga no qual os algoitos tipicaente aazena alguns ou todos os eeplos de teinaento duante o apendizado Paa classifica u novo eeplo, estes sisteas utiliza ua função de ância ou siilaidade paa deteina o quão póio o novo eeplo encontase de u eeplo já aazenado e utiliza este(s eeplo(s ais póio(s paa deteina a classe do novo eeplo Veeos nesta aula o funcionaento de IBL, KNN e alguas éticas de ância Conteúdo IBL IBL IBL3 KNN Méticas de Distância e Siilaidade José Augusto Baanauskas Depataento de Física e Mateática FFCLRPUSP augusto@usp.b http://df.ffclp.usp.b/~augusto InstanceBased Leaning InstanceBased Leaning (IBL: apendizado po eoização de eeplos Meoização: apende conceitos apenas aazenando eeplos típicos do conceito Não constói epesentações abstatas Gealente, eque gande capacidade de eóia Eeplos: IBL, IBL e IBL3 Eeplo IBL Poblea: oviento de u baço de obô Modelo difícil de se analisado analiticaente Equações cineáticas Relaciona ângulos de junções e anipulado de posições Equações dinâicas Relaciona toque de oto a ângulos das juntas Difícil obte bons esultados odelando baços obóticos ou huanos Muitos fatoes e edidas 3 4 Eeplo IBL Solução Moviente o baço do obô Aazene os paâetos be coo a tajetóia Tabela: toques, posições, velocidades, velocidade ao quadado, aceleações Paa segui u novo cainho: Paticione o cainho e segentos Enconte os segentos ais póios na tabela Utilize os toques (intepole quando necessáio IBL Apende u conceito siplesente aazenando todos os eeplos U novo eeplo é classificado calculando a ância Euclidiana paa deteina o vizinho ais póio classe do novo eeplo é dada pela classe do vizinho ais póio Toleante a uídos Usa uita eóia 5 6
Algoito IBL Algoito IBL Eeplos Aazenados Novo Eeplo Eeplos Aazenados 7 8 Algoito IBL Algoito IBL Novo Eeplo Classe Eeplos Aazenados Apendizado: IBLLean(T Tabela aazene todos os n eeplos de T Retone Tabela Classificação: IBLClassify(Tabela,E Calcule a ância ente o eeplo E e todos os deais eeplos da Tabela paa deteina o vizinho ais póio P if P não eiste then Retone NULL else Retone classe(p endif 9 0 IBL Ide ao IBL eceto: Objeto novo: classe coeta: ignoa (não aazena classe eada: aazena Menos toleante a uídos que IBL Usa enos eóia que IBL Algoito IBL Apendizado: IBLLean(T Tabela Ø fo i,,,n do Assua eeplo no foato E i = ( i, y i, ou seja, y i = classe(e i if IBLClassify(Tabela, i y i then Tabela Tabela {E i } endif endfo Retone Tabela Classificação: IBLClassify(Tabela,E Calcule a ância ente o eeplo E e todos os deais eeplos da Tabela paa deteina o vizinho ais póio P if P não eiste then Retone NULL else Retone classe(p endif
Algoito IBL Algoito IBL Mesa classe que o ais póio, não aazena 3 4 Algoito IBL Algoito IBL classe difeente que o ais póio, aazena classe difeente que o ais póio, aazena 5 6 Algoito IBL Algoito IBL classe difeente que o ais póio, aazena classe difeente que o ais póio, aazena 7 8
Algoito IBL Algoito IBL Mesa classe que o ais póio, não aazena classe difeente que o ais póio, aazena 9 0 Algoito IBL Algoito IBL classe difeente que o ais póio, aazena Mesa classe que o ais póio, não aazena Algoito IBL Algoito IBL classe difeente que o ais póio, aazena 3 4
IBL3 Ide ao IBL eceto: Manté u egisto do núeo de classificações coetas e incoetas paa cada eeplo aazenado Este egisto anté o desepenho de classificação daquele eeplo IBL3 avalia cada eeplo, utilizando u teste de significância paa deteina quais eeplos são bons classificadoes e quais são uídos Eeplos co uído são descatados Toleante a uídos Usa enos eóia que IBL IBL IBL IBL3 IBL foteente elacionado co K vizinhos ais póios (KNN, KNeaest Neighbos, K= IBL e IBL3 usa étodos de esqueciento de eeplos (eeplos que não elhoa a pecisão do classificado 5 6 Fonteias IBL Algoito KNN Divisão eal dos objetos no univeso Conceito apendido Noalente utiliza ância Euclidiana ente os eeplos Enconte os K vizinhos ais póios do novo eeplo a se classificado Retone a classe associada à aioia dos vizinhos, ou seja, se a aioia dos eeplos encontados ente os K vizinhos possui classe C i então atibua ao novo eeplo a classe C i Usualente valoes ípaes são utilizados paa evita epate, tipicaente K =, 3, 5 ou 7 Quanto aio a quantidade de uído no conjunto de eeplos, aio deve se o valo de K 7 8 Algoito KNN Ua vaiação do algoito é: Seja u t (pédefinido ou definido pelo usuáio tal que (0 < t <= K Enconte os K vizinhos ais póios do novo eeplo a se classificado Se pelo enos t (0 < t <= K dos eeplos encontados ente os K vizinhos possui classe C i então atibua ao novo eeplo a classe C i, caso contáio o eeplo não é classificado (ou seja, o algoito não etona a classe associada Algoito KNN No caso de egessão, noalente é efetuada ua édia ente os K vizinhos ais póios do novo eeplo Denotando o novo eeplo E=( e,y e e os K vizinhos ais póios de E po ( KNN i, y KNN i, i=,,..., K então o valo de ŷ e é calculado coo K KNN h( e = yˆ e = yi K i= 9 30
Algoito KNN Eeplo: Classificação Novo Eeplo Classe Eeplos Aazenados Assua os seguintes eeplos de teinaento =,,7,8, =,3,7,6, Classifique 3 =,,7,6 Calcula ância ente 3 e cada u dos eeplos de teinaento ( 3 = ( 3 = Classifique (otule 3 baseado nos K vizinhos ais póios, onde K= 3 é classificado coo ua vez que é ais póio a 3 3 Eeplo: Regessão Diagaa de Voonoi Assua os seguintes eeplos de teinaento (, (, ( 3,0 Desejaos classifica 4 usando K= vizinhos ais póios, sabendo que (, 4 = 5 (, 4 = ( 3, 4 = 4 Potanto 4 está ais póio a e 3 Calculando a édia, obtése (0/ = 0.5 33 Novo Eeplo Vizinho ais Póio de Eeplo: poblea de classes (,o e atibutos epesentados nos eios e y 34 Diagaa de Voono K=3 Diagaa de Voono K=7 Novo Eeplo Novo Eeplo 3 vizinhos ais póios 7 vizinhos ais póios,o 3,4o 35 36
KNN: Regessão, K= KNN: Regessão, K=3 37 38 KNN: Regessão, K=5 Fonteias 39 40 Fonteias, K= Fonteias, K=5 4 4
Fonteias, K=0 Fonteias 43 44 Fonteias, K= Fonteias, K=5 45 46 Fonteias, K=0 Fonteias 47 48
Fonteias, K= Fonteias, K=5 49 50 Fonteias, K=0 Fonteias 5 5 Fonteias, K= Fonteias, K=5 53 54
Fonteias, K=0 Fonteias (Ávoe de Decisão 55 56 Análise de Copleidade Custo de Apendizado O(n Aazena eeplos Custo de Classificação Enconta o vizinho ais póio: O(n Coputa ância ente o novo eeplo e todos os deais eeplos Copaa âncias Pobleático paa gande conjunto de eeplos Altenativa: Usa ua ávoe bináia de busca paa eduzi paa O(log n Calculando a Distância A ância é o étodo ais natual paa dados nuéicos Valoes pequenos indica aio siilaidade Méticas de Distância Euclidiana Manhattan Etc. Não genealiza uito be paa dados não nuéicos Qual a ância ente asculino e feinino? 57 58 Noalização Consideando a ância Euclidiana, ais utilizada nas aplicações, u poblea ocoe quando u dos atibutos assue valoes e u intevalo elativaente gande, podendo sobepuja os deais atibutos Po eeplo, se ua aplicação te apenas dois atibutos A e B e A vaia ente e 000 e B ente e 0, então a influência de B na função de ância seá sobepujada pela influência de A Potanto, as âncias são feqüenteente noalizadas dividindo a ância de cada atibuto pelo intevalo de vaiação (i.e. difeença ente valoes áio e ínio daquele atibuto Ass a ância paa cada atibuto é noalizada paa o intevalo [0,] Noalização De foa a evita uídos, é tabé cou: dividi pelo desviopadão ao invés do intevalo ou cota o intevalo po eio da eoção de ua pequena pocentage (e.g. 5% dos aioes e enoes valoes daquele atibuto e soente então defini o intevalo co os dados eanescentes Tabé é possível apea qualque valo foa do intevalo paa os valoes ínio ou áio paa evita valoes noalizados foa do intevalo [0,] Conheciento do doínio pode feqüenteente se utilizado paa decidi qual étodo é ais apopiado 59 60
Méticas Minkowski (L p : escolha de p depende da ênfase que se deseja da a gandes difeenças ente diensões / p p p( i j = = Manhattan/CityBlock (L : se atibutos bináios, é conhecida coo ância Haing M ( i j = = Euclidiana (L ( i j = ( i, = / = ( i = ( j 3 3 Contonos de âncias iguais 6 Méticas Cabea Chebychev Coelação Ca ( i j = = Ch ( i j = a = Co ( i j = i = j édia dos valoesdo atibuto = ( = ( = i j = ( ( ( i 3 i = 3 ( j j 6 Méticas = ( i j = ( 3 3 Méticas = ( i = ( j 3 3 Coelação Peason: Reove efeitos de agnitude; intevalo [.0,.0].0 = invesaente coelacionado, 0.0 = se coelação,.0 = pefeitaente coelacionado No eeplo, as linhas azul e veelha tê alta coelação, eso que a ância ente as linhas seja significante i = Peason ( j = / = = = ( / ( k = = = / O étodo ais siples paa atibutos categóicos é o seguinte ovelap( = 0 se se se ou = Cat ( i j = ovelap( i, = são desconhecidos 63 64 Mética Heteogênea Méticas Heteogeneous EuclideanOvelap Metic: HEOM Utiliza noalização no intevalo [0,] Ua foa de lida co aplicações co atibutos noinais e contínuos consiste e utiliza ua função de ância heteogênea que utiliza funções difeentes paa tipos de atibutos difeentes ovelap(, = j á( ín( H (,, HEOM ( j = i = ( H se atibuto se atibuto é noinal é contínuo Value Diffeence Metic: VDM Atibutos noinais Ua vesão é dada a segui, : núeo de eeplos no conjunto T que te o valo paa o atibuto,,c s : núeo de eeplos no conjunto T que te o valo paa o atibuto e classe igual a C s q: ua constante, usualente ou q k VDM ( = s= 65 66
Méticas Usando VDM, dois valoes são consideados póios se eles possue ais classificações siilaes (i.e. aio coelação co a classe, desconsideando qualque ode que eles possa te Po eeplo, se u atibuto possui tês valoes veelho, vede e azul e a aplicação consiste e identifica se u objeto é ou não ua açã, veelho e vede seão consideados ais póios ente si do que veelho e azul, ua vez que veelho e vede tê coelação siila co a classe Méticas Coo vios, a ância Euclidiana é inapopiada paa atibutos noinais e VDM é inapopiada paa atibutos contínuos Ass nenhua das éticas vistas é suficiente paa uso e ua aplicação heteogênea, ou seja, ua co abos atibutos noinais e contínuos A Heteogeneous Value Diffeence Metic (HVDM é ua função de ância heteogênea Paa atibutos contínuos, HVDM divide a difeença absoluta ente os atibutos pelo desvio padão do atibuto (coo 95% dos valoes de ua ibuição noal estão ente desviospadões, os valoes são divididos po 4 desviospadões paa apea e u intevalo de taanho Paa atibutos discetos, HVDM pode utiliza VDM co q=, q= (as, na pática, a aiz quadada não é tiada pois a função HVDM eleva os valoes ao quadado novaente ou ua função utilizada e edes neuais Radial Basis 67 68 HVDM HDVM ( j = i = ( se ou são desconhecidos ( = no vd( se é noinal nodiff ( se é contínuo no diff ( = 4 std dev( Calculando Siilaidade Nuéica Tadicionalente no intevalo [0.0,.0]: 0.0 = se siilaidade,.0 = identidade Siilaidade =.0 ância no vd( = k s= no vd( = no vd3( = k s= k k s= 69 70 Calculando Siilaidade Booleana/Categóica Dados dois vetoes booleanos e Y, seja A o núeo de atibutos onde abos vetoes assue, etc. coo ostado abaio Dois étodos paa siilaidade são dados ao lado Pode se genealizados paa dados categóicos [j] 0 A C Y[j] 0 B D Coelação = (AD/(ABCD Coef. Jaccad = A / (ABCD Utilizado quando a ausência de u valo vedadeio não significa siilaidade Eeplo: Suponha que estaos ealizando u tabalho de filogenética estutual e [j] é vedadeio se o oganiso te asas Dois oganisos não são ais siilaes se abos não tê asas Dessa foa, o coeficiente de Jaccad é ais natual que o coeficiente de coelação neste caso Maldição da Diensionalidade O núeo de pontos necessáios paa ante ua deteinada pecisão (densidade espacial cesce eponencialente co o auento na diensão (acéscio de novos atibutos Altenativaente, e altas diensões, os pontos tende a se tona eqüiantes uns dos outos 7 7
b b Maldição da Diensionalidade Maldição da Diensionalidade 0 pontos, igualente espaçados, intevalo [0,] Cada atibuto adicional auenta ua diensão, assuindo não ais de 0 valoes possíveis paa cada atibuto: atibutos, ~00 cobinações 3 atibutos, ~,000 cobinações ponto ocupa 0% espaço ponto ocupa % espaço ponto ocupa 0.% espaço 4 atibutos, ~0.000 cobinações 30 atibutos 0.000.000.000.000.000.000.000.000.000.000 cobinações 73 74 Maldição da Diensionalidade Maldição da Diensionalidade Os vizinhos ais póios e espaços de altas diensões noalente estão uito antes ente si E outas palavas, u ponto no espaço encontase quase na esa ância de todos os deais pontos Considee u conjunto de n eeplos nu espaço hipecúbico co diensões e suponha vizinhanças hipecúbicas de lado b e volue b Paa conte K pontos, a vizinhança deve ocupa ua fação K/n do volue total que é n (pontos (volue K (pontos b (volue Assi b = K/n ou b = (K/n / Assuindo K=7, =00 e n=.000.000 então b 0.888 Isto significa que a vizinhança te que abange quase todo os espaço (quase 89% 75 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0. 0. 0 0 0 0 30 40 50 K=7 Diensão ( n=0^ n=0^3 n=0^4 n=0^5 n=0^6 n=0^7 n=0^8 n=0^9 n=0^0 76 Maldição da Diensionalidade Resuo K=7 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0. 0. 0 0 0 40 60 80 00 0 40 60 80 00 Diensão ( Métodos IBL baseia suas decisões na siilaidade de eeplos conhecidos ao invés de constui abstações Conseqüenteente, eles tê tepo pequeno de apendizado, as u gande tepo de classificação (lazy Vantagens Não eque nenhu ecaniso de aciocínio Não se baseia e abstações de conceitos É capaz de odela fonteias (pobleas/conceitos copleas n=0^ n=0^3 n=0^4 n=0^5 n=0^6 n=0^7 n=0^8 n=0^9 n=0^0 77 78
Resuo Desvantagens Necessidade de defini siilaidade ética paa objetos no univeso Méticas apopiadas de ância Repesentação não é inteligível aos huanos Paa a classificação de u novo eeplo, todos os dados de teinaento deve esta disponíveis Coputacionalente dispendioso e altas diensões Indeação eficiente dos eeplos de teinaento A ética de ância pode se tona enganadoa se todos os atibutos são consideados E altas diensões, todos os pontos encontase quase na esa ância ente si Tataento paa atibutos ielevantes (KNN Escolha de K é desconhecida uso de cossvalidation paa deteina K 79