E aí [Música] o olá agora a gente vai falar um pouco sobre algoritmos de classificação Ah tá então os modelos gerados para fazer a predição eles usam tão diferentes algoritmos de classificação e Existem algumas categorias principais de sabor itimos a gente vai falar um pouquinho delas aqui tá a primeira delas são os algoritmos baseados em conhecimento esse conhecimento Geralmente vem do conhecimento do especialista da área que conhece algumas características dos dados e pode ajudar a indicar como a classificação deve ser ali para o especialista em em mineração de dados tá é é normal que se
use por exemplo comandos e fiel se o Switch case para representar essas regras específicas existem também os baseados em árvore que a gente vai tratar mais detalhes para frente também baseado em regras e que dividem essa classificação E aí existem ainda os conexionistas que cujo o principal representante são as redes neurais artificiais A então vários atributos são verificados ali em paralelo tá dentro dessa rede de nós que representa o que neurônios e aí é com base nos pesos nas nos valores dos atributos a gente consegue classificar esses valores em diferentes categorias aqui e Existem os
baseados em distância também os baseados em distância eles usam ali para classificar um objeto alguma medida de distância desse objeto em relação aos outros tomando aí como base os outros objetos que existem tá Essa é a gente tenta menos baseados em função os baseados em função eles tentam dividir uma área ali entre objetos que tem características diferentes então um dos representantes é ou svn ou as a sbm ou as máquinas de vetores de suporte tá nós temos também os probabilísticos Então os probabilísticos eles vão classificar objeto de acordo com a probabilidade de pertencer ou não
a uma determinada classe também olhando para o conjunto de dados disponível e um representante ou na invisíveis que a gente vai tratar mais detalhes também não vamos começar com o KNN então ou k-vizinhos mais próximos tá o caminho mais próximos ele é baseado na distância entre um objeto e os seus objetos vizinhos e isso é classificado de acordo com as características deles é como eles estão distribuídos no espaço um objeto ele vai pertencer àquela classe na qual ele tem mais vizinhos tá e uma das medidas mais usadas é a medida de distância euclidiana diz a
distância reta entre dois pontos tá esse algoritmo ele é chamado de algoritmo preguiçoso porque ele não precisa de treinamento é toda vez um novo objeto ele é colocado no espaço e avaliado em relação aos seus vizinhos aí a definição de cá ela pode variar tá então pode ser usado um k = 10 k = 5 ou esse cá pode ser modificado e verificado do dia por tentativa e erro me dá um exemplo de Cayenne aqui nesse gráfico a gente tem três classes de dados e aí a gente vai adicionar um novo objeto tá e definindo
k = 5 tá então o algoritmo ele vai pegar os cinco vizinhos mais próximos desse objeto que vai ser classificado mostrados aqui em branco e aqui a gente pode ver que três desses vizinhos mais próximos pertencem a essa classe verde tá então que vai acontecer aqui como a maioria é verde esse novo objeto ele também vai ser classificado como Verde e dá as árvores de decisão já trabalham de uma forma diferente elas são regras determinadas para para os atributos que são estruturadas como uma árvore tá então esse esse tipo de algoritmo é também conhecido como
modelo caixa branca porque você a partir da estrutura da árvore você consegue ver como é a criação das regras e você consegue identificar como um novo objeto vai ser classificado visualmente Ah tá aqui um exemplo da estrutura da árvore de decisão os atributos eles ficam nos nós do Raízes então na folha uma folha ele vai conter as classes e os Ramos nas ligações entre os nós vão ser representadas por valores desses atributos da uma regra de classificação ela vai ser um caminho completo que o objeto classificados vai percorrer da raiz da Árvore até o na
folha correspondente Ah tá como que é feita a construção das Árvores de decisão tá isso é a lógica na algoritmo dessa de construção é primeiro um atributo ele é selecionado em seguida a gente vai criar um ramo para cada valor desse atributo ou para faixas de valores dependendo do atributo tá esse processo ele vai ser repetido recursivamente para cada Ramo e para reduzir a quantidade de processamento em cada ramo você usa só os objetos que atingem aquele Ramo Ah tá e aí a gente para quando todos os objetos em um determinado ramo é atingirem a
mesma folha tá então quando não tiver mais uma divisão aquele aquele nó vai se tornar uma folha Oi tá aí como é que agente faz para escolher esses atributos que vão gerar a árvore O primeiro é é preciso calcular o ganho de informação de cada atributo para saber qual atributo contribui mais com a classificação da esse ganho ele é dado pelo cálculo da informação a informação quanto maior a variabilidade dos valores melhor a divisão então quanto maior a informação melhor para o ganho de informação esse valor é diminuído aqui da entropia da entropia uma medida
que diz quanto os dados estão misturados quanto menos misturados eles estiverem melhor para classificação e aí O resultado é um ganho maior tá E aí a gente escolhe o atributo que dos atributos avaliados que dá o maior ganho de informação e ele vai ficar Então como sendo a raiz da árvore tá E esse processo é repetido na interativamente para os demais atributos E aí é que a árvore vai se formando na se desenhando Oi tá existem alguns algoritmos de variação desses das Árvores de decisão é o um dos primeiros algoritmos usados é o id3 significa
dicotomiza dor e ter ativo três da ele dicotomiza né dividir os dados é daí que vem esse termo e ele Originalmente usava usa querendo pode vir a ser executado atributos somente categóricos tá esse algoritmo ele foi evoluído para os E 4.5 tá ocê 4.5 além de trabalhar com os valores categóricos ele trabalha também com valores discretos e contínuos discretizadas na colocados ali em faixas da trabalha também com valores nulos e ele tem um processo de otimização da árvore que é o processo de poda depois uma vez que a árvore está montada e formada esse algoritmo
uma das Folhas para a raiz procurando alguma alguns nós que podem ser removidos para tentar simplificar o modelo tá uma evolução desse algoritmo também é o ce 5.0 tá que tem melhorias ali de performance então ele usa menos memória para fazer o processamento e tem menos regras também tá e uma última variação que eu quero apresentar que a carte que é uma árvore de regressão uma árvore que serve tanto para regressão quanto para a classificação tá então ela também pode ser usada para fazer estimação e não só classificação bom então vamos ver aqui um exemplo
de construção de árvore de decisão usando essa base de dados de carros tá então aqui a gente tem algumas características do carro tá E esse último atributo é o atributo alvo aqui algumas possíveis classes aqui para essa base de carros Ah tá primeiro a gente vai calcular o ganho através do tamanho do cálculo da entropia e da informação calculando isso para para os atributos a gente vai ver que o atributo segurança É o que tem maior ganho tá então o atributo segurança vai ser a raiz da nossa árvore tem três valores possíveis aqui para a
segurança baixa média e alta tá os valores para baixa e média vão gerar folhas porque esses valores já estão determinados e o alta ele vai gerar um novo nó que vai ser vai dar origem ao novo atributo tá E por que que baixa e média já estão determinados porque sempre que o a segurança é baixa a classe A inaceitável então não tem mais um preso não há mais necessidade de divisão desses dados e aí a gente tem uma folha a acontecer para o valor média do atributo muito ao do atributo segurança também tá o que
resta então fazer a subdivisão aqui para quando é alta né que pode ter valores diferentes tá então rodando novamente a o cálculo do ganho de informação a gente vai ter que o bagageiro é que tem o maior ganho agora Oi tá com isso bagageiro vai então ocupar esse valor quando da segurança alta e aí o bagageiro ele pode ser pequeno ou grande tá E se o bagageiro for pequeno aceitabilidade desse desse veículo é boa Se esse for grande é ótimo então com isso não há mais subdivisões e a gente tem a árvore com todas as
suas folhas tá esses quatro valores aqui que vão se a classificação da árvore então olhando para esse exemplo aqui a gente consegue ver que o modelo explica né como é feito o processo de classificação por isso a gente chama ele de modelo caixa branca Ah tá um outro algoritmo é o ombro não é uma regra tá uma regra ele é um algoritmo mais simples e que ele testa um único atributo ele testa é qual é o a qualidade de classificação desse atributo e tem bascos computacional e ele é bom também tem uma boa acurácia quando
as bases não são muito grandes ou não tem muitos atributos tá E como que funciona o algoritmo do one world time gera começa a gerando aqui um conjunto de regras e crie uma ramificação para cada valor do atributo tá em seguida é feita a classificação tá dos Ramos desse desse determinado atributo e eles são ordenados para por aquele que tem uso de classe ali mais frequente da por fim é calculada a taxa de erro de classificação então o atributo na combinação de atributo ali tiver o menor taxa de erro é melhor e vai ser usado
então para fazer a classificação Ah tá além disso a gente vai então avaliar essa taxa de erro né do conjunto ali é para as regras de classificação e escolher então o conjunto de regras do atributo tem a menor taxa de erro me dá um exemplo aqui do ano li essa base de dados aqui sobre o jogo da velha tá então a gente tem as posições aqui superior esquerda Central direita o mesmo aqui para o centro e para parte inferior da do Tabuleiro ali né E pode assumir três valores x e o são os jogadores e
B seria o valor em branco Ah tá Oi e aí a gente já era então uma tabela com todos os possíveis valores e o resultado de saída tá que pode ser Vitória ou não Tá então no ângulo ele vai pegar cada tributo e cada possível valor e classificá-los Aqui de acordo com os resultados da base aí a gente vai obter Então os objetos aqui do atributo valor na todos os objetos em que a classe combina aqui com atributo o valor Então nesse caso nesse exemplo aqui 418 todos os objetos aqui dá combinação atributo o valor
classe ou seja aqueles objetos que foram classificados corretamente e a diferença entre esses dois vai ser o erro por valor Vá então a aquele atributo que tiver a menor taxa de erro aqui na na somatória dos possíveis valores é que vai ser utilizado para classificação Oi e aí vai dar origem a uma regra desse tipo comando e fiel se tá então se for um determinado valor a Vitória assim se for outro valor a vitória é não tá por último vamos ver o na ibs tá então Unaí beijo ele é baseado no teorema de bayes tá
que é a independência condicional de classe para os atributos eles contribuem ali de forma independente então um atributo assume-se que um atributo não está relacionado com outro tá por isso o na Índia e significa ingênua né ele ele faz essa proposição e essa divisão dos dados o cálculo é mais simples mas ele perde essa relação entre os atributos Ah tá bom teorema de bis para a gente relembrar um pouquinho aqui é Fala da probabilidade condicional tá então é uma probabilidade de ar acontecer dado que B aconteceu tá essa é a fórmula da de Bis tá
a gente chama de probabilidade a posterior essa probabilidade de dependente né que é uma coisa acontece quando o outro acontece e a priori é a probabilidade ali somente daquele daquela característica né o daquela situação então a probabilidade de que algo aconteça Ah tá então um exemplo aqui do Teorema de Bis é a gente poderia se perguntar aqui para uma base de dados sobre incêndios né qual a probabilidade de haver um incêndio dado que há uma fumaça né ocorre uma fumaça a gente já sabe a priori aqui a probabilidade de ocorrência de um incêndio um por
cento e de ocorrência de fumaça 10% a gente também já sabe a probabilidade de que ocorra um que haja incêndio onde tem fumaça tá então noventa porcento dos incêndios tem fumaça com isso a gente consegue calcular a probabilidade de que haja um incêndio dado que foi detectado uma fumaça tá usando a fórmula de Bis a gente vai ver que isso equivale é nove por cento de probabilidade Tu tá indo onaie Benz usa essa lógica então para montar o algoritmo tá então cada objeto é um vetor com m e atributos tá todos atributos que vão ser
usados para a classificação da gente vai calcular a probabilidade a posteriori dessa combinação entre atributo o valor e classe tá E multiplicar Então as probabilidades a posteriores de cada um dos atributos pela propriedade EA priori daquele daquela classe tá então para todas as classes ele vai repetir esse processo E aí vai ser escolhido então a classe que têm maior probabilidade de ocorrer Ah tá então um exemplo aqui de na ibs pode ser essa base de dados aqui é que relaciona dinheiro na quanto de dinheiro uma pessoa tem a intensidade da fome da pessoa se é
muita nenhuma ou pouca e a decisão de comer ou não sendo que é esse é o atributo o alvo tá então a gente consegue aqui calcular as probabilidades a priori tão primeiro a probabilidade de ser uma classe sim é a quantidade de ocorrências pelo total de ocorrências então 04 e a probabilidade não portanto é 06 Ah tá a probabilidade a posterior Então a gente vai conseguir pegando todos os valores possíveis para cada um dos atributos e vendo Qual é a distribuição deles entre as classes que existem naqueles dados Ah tá então se a gente pegar
a partir desse modelo construído um novo objeto né um objeto X por exemplo que tem muito dinheiro e muita fome tá a gente consegue fazer esse cálculo é para saber a qual classe ele pertence Então qual a probabilidade de ele já decisão se sim para o objeto x a gente vai pegar cada um dos atributos dele dinheiro e fome aproveitar a probabilidade a posteriori que a gente calculou e multiplicar pela probabilidade de ser sim o mesmo para ser não tá E aí qual o resultado né é disse assim O resultado é 0,17 de senão 0,06
então um algoritmo ele vai escolher a maior probabilidade de ocorrência que nesse caso assim e a decisão é ir ao restaurante e comer certo bom então é isso por hoje obrigado e até a próxima aula 1 [Música] [Música]