aprendizado de máquina - introdução

Introdução ao aprendizado de máquina

Nas duas últimas décadas, o Aprendizado de Máquina tornou-se um dos pilares da tecnologia da informação e, com isso, uma parte central, embora geralmente oculta, de nossa vida. Com a crescente quantidade de dados disponíveis, há boas razões para acreditar que a análise inteligente de dados se tornará cada vez mais difundida como um ingrediente necessário para o progresso tecnológico.

O objetivo deste artigo é fornecer ao leitor uma visão geral sobre a vasta gama de aplicações que têm em seu coração um problema de aprendizado de máquina e introduzir o leitor a um tema tão importante.

Além de passar noções básicas sobre aprendizado de máquina, também apresentaremos algumas das suas principais aplicações e discutiremos algumas ferramentas básicas da estatística e da teoria das probabilidades, já que elas formam a linguagem na qual muitos problemas de aprendizado de máquina devem ser formulados para serem passíveis de solução.

O assunto da aprendizagem por máquinas pode ser entendido via diferentes abordagens. Começaremos pela sua conceituação e as suas principais aplicações!

🆕 Este artigo foi revisado e atualizado em maio de 2022!

 

Definição de aprendizado de máquina

Machine Learning, termo original em inglês, ou o aprendizado automático, como também é conhecido, é um subcampo da ciência da computação. Evoluiu do estudo de reconhecimento de padrões e da teoria do aprendizado computacional em inteligência artificial.

De acordo com Arthur Samuel (1959), o aprendizado de máquina é o “campo de estudo que dá aos computadores a habilidade de aprender sem serem explicitamente programados”. Além disso, explora a construção de algoritmos que podem aprender com seus erros e fazer previsões sobre dados a partir de duas abordagens de aprendizagem: supervisionada, não supervisionada e por reforço. Isso permite produzir decisões e resultados confiáveis e repetíveis.

Tais algoritmos podem fazer previsões a partir de amostras ou tomar decisões guiadas unicamente por dados, sem qualquer tipo de programação. Embora semelhante, em certos aspectos, da estatística computacional, que faz previsões com o uso dos computadores, o aprendizado de máquina é usado em tarefas computacionais onde criação e programação de algoritmos explícitos é impraticável.

Entre os exemplos de aplicações temos o processsamento de linguagem natural, filtragem de SPAM, reconhecimento de fala e de escrita, visão computacional, diagnóstico médico, sistemas de busca, entre outros.

 
No vídeo abaixo você encontrará um pouco da história do machine learning e alguns exemplos reais:

 

Aplicações do aprendizado de máquina

A maioria dos leitores deste blog estão familiarizados com o conceito de ranking de páginas da web, popularizado pelo Google. Ou seja, o processo de envio de uma consulta a um mecanismo de pesquisa, que, em seguida, localiza páginas da web relevantes para a consulta e as retorna em sua ordem de relevância.

Para atingir esse objetivo, um mecanismo de pesquisa precisa “saber” quais páginas são relevantes e quais páginas correspondem à consulta. Esse conhecimento pode ser obtido de várias fontes: pela estrutura de links das páginas da Web, seu conteúdo, a frequência com que os usuários seguirão os links sugeridos em uma consulta ou a partir de exemplos de consultas em combinação com páginas web classificadas manualmente.

Cada vez mais o aprendizado de máquina, em vez de adivinhação, é usado para automatizar o processo de criação de um bom mecanismo de pesquisa, como o Google. Uma aplicação relacionada a isso é a filtragem colaborativa, uma técnica utilizada por sistemas de recomendação.

Um Sistema de Recomendação combina técnicas computacionais para selecionar itens personalizados com base nos interesses dos usuários e conforme o contexto no qual estão inseridos. Lojas online, como a Amazon, ou sites de Streaming, como a Netflix, utilizam esse sistema para atrair usuários a comprar produtos adicionais (ou assistir mais filmes).

O problema dos sistemas de recomendação é bastante semelhante ao do ranking da página web. Como antes, queremos obter uma lista ordenada. A principal diferença é que uma consulta explícita está ausente e, em vez disso, só podemos usar o comportamente dos usuário para prever hábitos futuros de visualização e compra.

A informação chave neste caso são as decisões tomadas por usuários similares, daí a natureza colaborativa do processo. É claramente desejável ter um sistema automático para resolver este problema, evitando assim adivinhação e o gasto de tempo.

Outro exemplo de aplicação do machine learning é a tradução automática de documentos. Para resolver este problema, poderíamos ter como objetivo entender completamente um texto antes de traduzí-lo, usando um conjunto de regras selecionadas, elaborado por um linguista computacional bem versado nas duas línguas que gostaríamos de traduzir. Entretanto, isso seria um desafio muito complexo, uma vez que um texto nem sempre é gramaticalmente correto e o contexto utilizado pode gerar confusões de entendimento.

Em vez disso, poderíamos simplesmente usar exemplos de documentos semelhantes traduzidos. Esses documentos poderiam ser utilizados para que a máquina possa aprender a tradução entre as duas línguas. Em outras palavras, poderíamos usar exemplos de traduções para aprender como traduzir. Essa abordagem de aprendizado de máquina mostrou-se bem-sucedida e é muito utilizada, uma vez que a própria internet é uma ótima base de dados.

Muitas aplicações de segurança, como controle de acesso, usa o reconhecimento facial como um de seus componentes. Isto é, dada uma foto (ou gravação de vídeo) de uma pessoa, é possível reconhecê-la. Em outras palavras, o sistema precisa classificar rostos a partir das muitas categorias (João, Camila, Felipe, …) ou decidir que é um rosto desconhecido.

Um problema semelhante, mas conceitualmente bastante diferente, é o da verificação. Seu objetivo é verificar se a pessoa em questão é quem ela afirma ser. Note que diferentemente de antes, esta agora é uma pergunta sim ou não. Para lidar com diferentes condições de iluminação, expressões faciais, se uma pessoa está usando óculos, penteado, etc., é desejável ter um sistema que aprende quais recursos são relevantes para identificar um pessoa.

Caso você queira se aprofundar no tema, recentemente eu participei de um evento online onde apresentei alguns exemplos práticos de machine learning. Você pode conferir a gravação:

 

 

Métodos de aprendizagem

Para compreender melhor o assunto explicaremos os principais métodos de aprendizagem.

 

1. Aprendizagem supervisionada

É principalmente utilizada quando o sistema já sabe quais entradas estão associadas com quais saídas e precisa aprender um meio de entender essa associação. Utiliza a detecção de padrões para estabelecer previsões. Um exemplo de aprendizagem supervisionada é a categorização de e-mails, separando do que é relavante e o que é SPAM.

Caso você tenha interesse em se aprofundar no tema, eu recentemente participei de um evento onde apresentei algumas aplicações práticas de machine learning, com um pouco de teoria, é claro:

 

2. Aprendizagem não-supervisionada

Já na aprendizagem não-supervisionada, sua abordagem está na descoberta das relações implícitas em um conjunto de dados não rotulados. Nesse caso, identifica padrões para rotular os dados. O sistema de recomendação, citado anteriormente, é um bom exemplo de aprendizagem não suprvisionada.

 

3. Aprendizagem por reforço

Nesse método, o computador é estimulado a aprender com base em tentativas e erros. O processo é otimizado por meio da prática direta, ensinando o sistema a priorizar certos hábitos. Entre os exemplos desse método estão os veículos autônomos e os sistemas que jogam xadrez.

 

Conclusão

Por fim, este é um campo muito rico e que possui aplicações para resolver problemas complexos em áreas como saúde, educação, entretenimento, tecnologia, etc. Nos próximos anos veremos uma difusão cada vez maior dos conceitos de machine learning em diferentes tipos de novos negócios.

Quer saber mais sobre o assunto? Então continue acompanhando o Blog para entender mais sobre a ciência de dados e suas diferentes áreas!

About the Author: Pedro César Tebaldi Gomes

Trabalho há 10 anos no mercado B2B de tecnologia da informação e hoje atuo como líder de um time de Business Intelligence. Já escrevi mais de 500 artigos sobre tecnologia durante esse período. Estudo ciência de dados, machine learning e estatística para atingir melhores resultados nos diferentes projetos que atuo.

4 Comments

    1. Dentro da mineração de dados, os três principais modelos para descoberta/aquisição de conhecimento são: KDD, SEMMA e CRISP-DM, sendo o último o mais popular na indústria. O processo de CRISP-DM envolve (1) entendimento de negócio, (2) entendimento dos dados (3) preparação dos dados (seleção, limpeza, construção e integração), (4) modelagem dos dados, (5) avaliação dos resultados e (6) deployment (produção). Sendo que na etapa de avaliação pode ser necessário retornar ao entendimento do negócio ou a um dos passos anteriores.

Deixe uma resposta

Introdução ao aprendizado de máquina

tempo de leitura: 8 min