Inteligência Artificial: entendendo o aprendizado de máquina
Olá pessoal! Estou de volta com mais um artigo sobre os temas do momento: Inteligência Artificial (IA) e Aprendizado de Máquina (AM). Hoje vou explicar o que é o AM.
Como sempre, os meus conteúdos são para todos os públicos, isto é, não importa sua área de atuação, nem mesmo se você está no ensino médio, ou se já está na melhor idade. Tenho certeza de que vocês conseguirão entender as bulhufas dessas tecnologias estranhas que permeiam a sua vida. Bora lá minha gente?!
Aprendizado
Vocês já pararam para pensar em sobre como você aprende alguma coisa? Você se lembra como aprendeu a falar? A maioria não lembra, mas existe um consenso quanto a isso: aprendemos por imitação, vendo outras pessoas, portanto, aprendemos com exemplos.
Minha sobrinha de 2 anos repete absolutamente tudo o que a gente fala perto dela. Outro dia ela disse “Tia Cissa, senta aqui”. Ela estava com um microfone de karaokê velho que não funciona mais na mão. Aí perguntei: “Você quer cantar?”. Com o microfone grudado na boca, ela movimentou a cabeça respondendo que sim. Então começamos a cantar uma música infantil e ela ficou olhando a minha boca o tempo inteiro.
Quando percebi isso comecei a cantar mais devagar, pronunciando bem as palavras, e ela começou a cantar junto, tentando reproduzir exatamente os mesmos sons e movimentos da boca. Foi uma experiência única! Com poucos minutos ela tinha aprendido todas as palavras da música e depois saiu cantarolando sozinha pela casa.
Nós demoramos, em média, um ano para aprender andar após nascermos. Entre 5 e 6 anos começamos a aprender a ler e escrever com ajuda de outras pessoas. Bem, deu pra notar que leva-se um tempo para aprender qualquer coisa (curva de aprendizado) e que precisamos de ajuda dos outros para isso (exemplos).
A forma como as “máquinas” aprendem é baseada nesse princípio. Ou seja, os algoritmos de AM precisam de informação prévia para aprender alguma coisa. Eles aprendem através de exemplos, assim como as crianças. Se não houver isso, nada será aprendido. Quanto mais informação houver, melhor para aprender e avaliar o aprendizado.
Sim, avaliar o AM é necessário, da mesma forma que somos avaliados na escola, ou na universidade, para analisar se aprendemos, e o quanto aprendemos. Se a prova vale de 0 a 10, uma boa nota pode ser 7, 6 ou 8, enquanto uma nota ruim pode ficar entre 0 e 5. Obviamente gostaríamos de tirar 10 para ter o melhor desempenho possível naquele conteúdo, mas nem sempre isso acontece. Com os algoritmos de AM precisamos fazer exatamente a mesma coisa.
Afinal, como saberemos que eles aprenderam alguma de forma adequada? No entanto, se o seu algoritmo aprendeu 100% de alguma coisa, pode ser que haja algum problema! Sim, é verdade este bilhete!
Contraditório? Um pouco! A explicação ficará para um próximo artigo, segure a sua curiosidade!
Processo Básico do Aprendizado de Máquina
Suponha que nós queremos aprender sobre gêneros musicais. A Figura 1 a seguir ilustra um conjunto de dados de música, como você vê no Spotify, por exemplo. Cada bolotinha roxa representa uma música diferente.
Para ensinar um algoritmo de AM sobre os gêneros musicais desse conjunto particular de músicas, e depois avaliar o conhecimento aprendido, nós precisamos dividir esse conjunto inicial em duas partes: uma para ensinar e a outra para avaliar. A parte usada para ensinar, chamaremos de conjunto de dados de treinamento, pois ela será usada para treinar o algoritmo nesse domínio específico (gêneros musicais).
Você pode imaginar o termo “treino do modelo” (ou treino do algoritmo) como a realização repetida de exercícios para conseguir tirar uma boa nota na prova.
A parte usada para avaliar, chamaremos de conjunto de dados de teste, pois usaremos essa porção de dados para avaliar se, e quanto, o algoritmo realmente aprendeu sobre gêneros musicais. A porção usada em cada divisão pode variar: você pode usar 60% ou 70% do total do conjunto para o treino, e 40% ou 30% para o teste.
Existem outras formas de realizar essa divisão, no entanto, este tópico ficará para outro artigo. A Figura 2 ilustra essa divisão: bolotinhas roxas são as músicas que farão parte do treinamento, enquanto que as bolotinhas cinzas são as músicas do teste.
A Figura 3 ilustra o processo para geração de um MODELO de AM, isto é, um algoritmo que aprende sobre os dados e depois pode ser usado para prever ou classificar novas informações, nunca antes vistas. Depois que você faz uma prova, você já sabe como ela é não é verdade? Se você fizer outra prova do mesmo conteúdo, e do mesmo formato, você provavelmente se saíra muito melhor do que na primeira, pois já saberá como são as perguntas e respostas.
É mais ou menos nessa pegada que funciona o MODELO gerado.
Cada uma das músicas será analisada pelo algoritmo e ele vai aprender sobre elas. Depois que o algoritmo “ver” todas as músicas (cada música é um exemplo) ele deverá ter aprendido os gêneros musicais que existem naquele conjunto de dados em particular.
Agora que temos o modelo, vamos avaliá-lo, isto é, verificar o que ele aprendeu, e o quanto ele aprendeu. Para isso, vamos mostrar pra ele novos exemplos, isto é, músicas que ele nunca “viu” antes, e então ele terá de ser capaz de dizer qual é o gênero daquela música em particular.
A Figura 4 é apenas ilustrativa do processo de teste do aprendizado. O fato de na imagem termos inputado bolotinhas cinzas e saído bolotinhas roxas não significa que o algoritmo acertou todos os gêneros musicais. Significa apenas que o modelo de aprendizado cumpriu com o seu papel de tentar prever os gêneros musicais de cada uma das músicas que ele não conhecia ainda.
A verdade é que o modelo provavelmente vai ter errado alguns, e nessa de errar e acertar é que conseguimos mensurar o quanto o algoritmo aprendeu.
Tipos de Aprendizado
Falando um pouco mais formalmente agora, o Aprendizado de Máquina pode ser definido como “a capacidade de melhorar o desempenho na realização de alguma tarefa por meio da experiência” (Mitchell, 1997). Por exemplo, tentar descobrir os gêneros a que uma música pertence é uma tarefa! A Figura 5 apresenta um sumário dos tipos de AM que existem:
Vamos entender a diferença entre as palavras Descritivo e Preditivo:
“Descritivo: que se consegue descrever; que possui a característica de uma descrição; que é capaz de retratar algo ou alguém; diz-se daquilo que descreve alguma coisa e/ou possui características descritivas” (Fonte).
“Preditivo: ação de afirmar antecipadamente o que poderá ocorrer num momento futuro. Deduzido ou entendido a partir de informações, dados ou ações anteriores à finalização ou à conclusão de. Que se pode predizer, prever por antecipação, com antecedência; em que há previsão” (Fonte).
Das definições podemos então entender que: modelos preditivos preveem coisas e modelos descritivos descrevem coisas. Em ambos os casos precisamos de informações, mas no caso da predição, precisamos de informações já rotuladas ou categorizadas, enquanto que no caso da descrição, temos que descobrir quais são esses rótulos ou categorias a partir dos próprios dados.
Exemplo: em gênero musical, rock, pop, sertanejo são os rótulos, ou categorias, das músicas. Em um modelo preditivo aprendemos os gêneros musicais e depois tentamos prevê-los para novas músicas, desconhecidas pelo modelo. Mas num modelo descritivo, não sabemos nada sobre esses gêneros! Então os modelos descritivos tentam descobrir os gêneros musicais apenas analisando as características dos dados.
Modelos que mesclam predição e descrição (modelos híbridos) também são possíveis, eles tiram proveito de ambas formas de aprendizagem.
Encerrando
Com este artigo eu quis explicar de uma maneira bem didática sobre o processo mais fundamental do aprendizado de máquina. Espero que você tenha conseguido acompanhar. Claro que não vou parar por aqui! Escreverei outros artigos detalhando cada uma daquelas caixinhas ali da Figura 5, e também outros conceitos que mencionei aqui.
Estou muito feliz por você ter chego ao final deste artigo. Ajude outras pessoas a conhecerem e entenderem este mundo compartilhando este artigo! Mande para sua família e amigos e depois conversem a respeito, será uma experiência bem legal. Fico por aqui, te aguardo no próximo artigo.
Referências
Faceli, Katti; Lorena, Ana Carolina; Gama, João; de Carvalho, André C. P. L. F. Inteligência Artificial. Uma Abordagem de Aprendizado de Máquina. Editora LTC, 2011.
Tom M. Mitchell. Machine Learning. Editora McGraw-Hill Education, 1997.
Este artigo foi escrito por Elaine Cecília Gatto - Cissa e publicado originalmente em Prensa.li.