Classificação em Machine Learning

 

    Existem algumas tarefas fundamentais que são utilizadas pelos algoritmos no aprendizado de máquina, e cada uma delas é escolhida de acordo com a especificidade do problema que será abordado no projeto. Vamos falar um pouco sobre uma delas?

    Classificação em Machine Learn

    Quando somos crianças geralmente aprendemos as coisas associando, como quando provamos o cocolate pela primeira vez e gostamos, associamos aquele sabor agradável a qualquer chocolate que aparece na nossa frente. A mesma coisa acontece com os legumes, quando provamos um e não gostamos, imediatamente já classificamos os legumes como ruins, baseados em experiências anteriores ou em uma outra criança da escola que comentou que não gosta de legume ou mesmo no visual menos atrativo do que uma barra de chocolates e vários outros motivos que possam influenciar nessa classificação de alimentos bons e ruins. 

No aprendizado de máquina existe uma tarefa que tem esse mesmo objetivo, assim como os seres humanos, aprender através de exemplos dados e de qual é o resultado de cada exemplo e identificar os padrões para tentar classificar as próximas informações com base nos dados fornecidos.

    Enquanto os seres humanos aprendem através das interações com o mundo, as máquinas aprendem com dados rotulados. Vamos ver um exemplo?

Exemplificando

    Uma forma simples de tentar entender a classificação é imaginando um exemplo de uma loja que quer classificar seus clientes como clientes bons(os que tem mais chances de voltar a comprar) e clientes ruins(os que não tem muitas chances de voltar a comprar).

    E para isso, ela vai fazer um cadastro dos seus clientes e vai levar em consideração algumas características que cada cliente fornece no momento do cadastro como a idade, sexo, renda mensal e estado civil. E a partir destes dados vai rotular os clientes que voltam a comprar e os que não voltam.

    A classificação vai tentar, com base nos dados do cadastro, prever nos cadastros futuros quais serão as chances do novo cliente comprar muito na loja e oferecer vantagens e incentivos para ele como créditos mais altos por exemplo.

    Você deve estar se perguntando como a máquina pode fazer isso né? Então vou explicar.

    Basicamente, o classificador precisa de uma base de dados com estes dados fornecidos no cadastro do exemplo que usamos, por ser uma técnica de aprendizado supervisionado, ela precisa de alguns dados predeterminados como exemplos de clientes já classificados como bons e outros como ruins. O que chamamos de dados de treinamento. Desta forma o classificador consegue entender o padrão utilizado na classificação destas 2 classes de clientes.

E como fazer o treinamento?

    Imagine que temos uma base de dados de clientes, todos eles com padrões definidos que tornam eles "bons" ou "ruins" de acordo com as informações do cadastro, precisaremos dividir essa base em 2 subconjuntos(geralmente divididas em 2/3 para treinamento e 1/3 para teste).

    A ideia é treinar o algoritmo com o subconjunto treinamento e depois fazer testes usando o subconjunto testes para testar a precisão dele comparando com os resultados que já temos do subconjunto. 

Como medir a precisão do algoritmo?

    Você lembra que eu falei que todos os clientes desta base já estavam com as classes definidas? Então, nós já sabemos quais clientes são "bons" e quais são "ruins" que estão na base de dados.

    É assim que conseguimos testar a acurácia do algoritmo. Usaremos o classificador para classificar todos os clientes do subconjunto teste e comparamos com os resultados que já temos, obtendo uma porcentagem de acerto do algoritmo.

    A partir daí ele poderá ser usado para classificar novos dados. Porém, o treinamento do algoritmo exige muito cuidado, por que se não forem bem treinados podem apresentar alguns problemas de Overfitting ou Underfitting.

Overfitting

    É um problema que ocorre no treinamento em que o algoritmo fica tão ajustado aos dados no treinamento que não consegue entender padrões para classificar dados novos. Ele tem um bom desempenho apenas com os dados de treinamento, mas não com os dados de teste e nem com novos dados. O overfitting ocorre quando o algoritmo perde a capacidade de generalização.

Underfitting

    Este é o oposto do overfitting, acontece quando o algoritmo é muito simples e não consegue entender os padrões nos dados de treinamento. E por isso, é um modelo ruim no treinamento e no teste também. Pode acontecer, por exemplo, por quantidade insuficiente de dados ou uma quantidade baixa de parâmetros

Alguns exemplos que utilizam os classificadores



Os bancos em aprovações de crédito

    Os bancos utilizam dados do cliente como renda, saldos, idade, e outros, para tentar prever pessoas que tem mais chances de dar lucro se for oferecido um empréstimo ou um cartão de crédito.

E-mails para verificar se é spam ou não

    Os serviços de e-mail classificam alguns como spam baseados no conteúdo e em algumas características dele, ajudando o usuário a ter menos e-mails indesejados na sua caixa de entrada.

Reconhecimento de imagens

    Muito usada em empresas de tecnologia, em buscas por imagens, reconhecimento facial, desenvolvimento de veículos autônomos, segurança, etc.

Análise de sentimento

    Muito usada por agencias de marketing, jornalismo, financeiras, redes sociais e várias outras, com a finalidade de analisar campanhas de publicidade, postagens, pois com a análise de sentimento é possível identificar tendências através dos comentários e feedbacks.

Herben Oliveira

Sou estudante do curso superior de tecnologia em Inteligência Artificial na UNIFAEL e de licenciatura em Matemática na UNISA.

Postar um comentário

Postagem Anterior Próxima Postagem