Quando o computador aprende: o que é machine learning?

Machine learning (normalmente traduzido como aprendizado de máquina) é uma área da Inteligência Artificial que trata das técnicas usadas para moldar as ações do um agente com base em determinados dados observados.

O princípio é  melhorar o desempenho de um modelo ou de um programa em uma determinada tarefa a partir de treinamento. Ou seja, mais ou menos como um ser vivo que aprende com a experiência, um determinado programa aprende e melhora seu desempenho em uma tarefa depois de ser treinado nela.

É uma ideia poderosa, certo? E realmente isso é uma coisa impressionante. Hoje você consegue, através da aplicação de técnicas diversas de aprendizado de máquina, fazer um programa que reconhece o que é um rosto em uma foto (porque o programa aprende o que é um rosto), um mecanismo que recomenda os filmes mais interessantes para uma pessoa com um determinado perfil, ou até mesmo um sistema que sabe que um determinado e-mail é um spam, sem que o usuário precise pensar nisso.

Mas, antes de nos aprofundarmos um pouco mais nesse mundo, é necessário fazer uma separação importante: Lembram o exemplo que eu dei no começo desse texto, comparando o aprendizado de máquina com o aprendizado de um ser vivo? Bom, ele funciona para fins ilustrativos, mas, na prática, a coisa é bem mais complicada.

Em primeiro lugar, computadores e seres vivos são coisas muito diferentes, muito diferentes mesmo. É importante lembrar que um ser vivo é fruto de um processo de milhões de anos de evolução e o computador é um objeto criado pelo homem. Todas as comparações entre objetos tão diferentes precisam ser feitas com muito mais cuidado do que normalmente se vê por aí.

Ainda não sabemos exatamente como os seres vivos aprendem: não chegamos na fórmula matemática que descreve o funcionamento dos processos cognitivos envolvidos com exatidão e sem ambiguidades; o problema é que um computador precisa justamente de uma fórmula matemática exata e sem ambiguidades para funcionar, então o que chamamos de aprendizado de máquina é nada mais do que uma metáfora do processo cognitivo.

Chamamos de aprendizado, mas isso não significa que o seu computador vai começar a aprender a pensar, ou que ele vai aprender a dar a patinha.

large-icon
Infelizmente, isso não é  Machine learning.

O aprendizado de máquina que estamos falando na verdade está muito mais para estatística inferencial e modelos  probabilísticos do que qualquer outra coisa.

O aprendizado de máquina do qual estamos falando, como visto por exemplo no sistema de recomendação da Netflix, na verdade está muito mais próximo do que chamamos de estatística inferencial e do conceito de modelos probabilísticos do que disso.

toptal-blog-image-1407513802706
Isso é machine learning no mundo real.

A ideia é que um determinado agente, a partir de um determinado treinamento e de um determinado modelo de aprendizagem, irá executar uma ação. Para isso, precisamos de alguns objetos que vão configurar o cenário de aprendizado de máquina:

1 – Agente: esse é o objeto que executa alguma ação.

2 – Dados para treinamento: Para que o mecanismo funcione, é importante ter uma coleção (de modo geral, quanto maior, melhor) de dados que servirão como um gabarito para o nosso agente. Ele irá se basear nos dados de treinamento para executar a tarefa de forma aprimorada.

3-  Modelo de aprendizagem: Esse objeto é o que transforma os dados usados para o treino em alguma coisa útil para o agente. O que temos aqui é algum modelo probabilístico que, a partir do que foi oferecido no treino, irá atribuir probabilidade para novas observações.

Isso pode ser esquematizado assim:

machine-learning-for-dummies-4-638
Aqui é possível ver todos os envolvidos num processo de aprendizagem de máquina.

Repare: é possível fazer infinitos tipos de modelos de aprendizagem, por isso existem aplicações tão diversas desse tópico no mundo de hoje. O curioso é que o princípio de funcionamento de todas as aplicações mostradas estão contidos neste esquema.

Espero que o panorama apresentado aqui seja o suficiente para uma discussão introdutória sobre o assunto. No próximo post, irei apresentar alguns bons materiais para quem quer começar a estudar esse tópico.

 

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s