- Academia Pernambucana de Ciências
- Informes APC/SBPC-PE
- Informe APC/SBPC-PE #2
- APRENDIZADO DE MÁQUINA, A CEREJA DO BOLO DA INTELIGÊNCIA ARTIFICIAL
Tereza B. Ludermir (APC, cadeira #95)
Atualmente ouvimos referência à Inteligência Artificial (IA) corriqueiramente. As técnicas de IA são responsáveis pelo avanço de inúmeras atividades que impactam no nosso dia a dia. Técnicas de IA são responsáveis pelo bom desempenho de carros autônomos (Google, Tesla), de bons diagnósticos automáticos, de traduções automáticas, de reconhecimento de imagens, de sistemas de recomendação (Amazon, Netflix).
Inteligência Artificial tem várias definições. O termo foi utilizado a primeira vez em 1956, por John McCarth. McCarth definiu IA como “a ciência e engenharia de produzir máquinas inteligentes”. Usando uma definição mais atual, IA é área de pesquisa que desenvolve modelos, algoritmos e tecnologias que tem por objetivo imitar e mesmo superar raciocínio e ações do ser humano (e de outros seres vivos) na maneira de resolver problemas.
Aprendizado de Máquina (AM) é um dos ramos da IA. É um ramo importante da IA porque para muitos problemas solucionados com técnicas de IA não existem soluções algorítmicas para resolvê-los. Isto é, não se sabe como desenvolver (codificar) os complexos algoritmos para resolver satisfatoriamente muitos desses problemas solucionados pela IA. Por outro, existem muitas informações ou dados (dados das empresas, dados das pessoas, dados dos equipamentos oriundos do uso de Internet das Coisas) disponíveis para tais problemas, o que possibilita o treinamento de algoritmos e o uso das técnicas de aprendizado de máquina.
O objetivo do Aprendizado de Máquina (AM) é a construção de programas que melhorem seu desempenho por meio de exemplos (MITCHELL, 1997). Para isto é necessária uma grande quantidade de exemplos para gerar o conhecimento do computador, que são hipóteses geradas a partir dos dados. Os métodos de Aprendizado de Máquina podem ser agrupados em: Supervisionado, Não Supervisionado e por Reforço.
O método de AM mais comum é o Aprendizado Supervisionado, onde para cada exemplo apresentado ao algoritmo de aprendizado é necessário apresentar a resposta desejada (ou seja, um rótulo informando a que classe o exemplo pertence). Cada exemplo é descrito por um vetor de valores (atributos) e pelo rótulo da classe associada. O objetivo do algoritmo é construir um classificador que possa determinar corretamente a classe de novos exemplos ainda não rotulados.
No Aprendizado Não Supervisionado, os exemplos são fornecidos ao algoritmo sem rótulos. O algoritmo agrupa os exemplos pelas similaridades dos seus atributos. O algoritmo analisa os exemplos fornecidos e tenta determinar se alguns deles podem ser agrupados de alguma maneira, formando agrupamentos. Após a determinação dos agrupamentos, em geral, é necessária uma análise para determinar o que cada agrupamento significa no contexto problema sendo solucionado.
No Aprendizado por Reforço, o algoritmo recebe somente um sinal de reforço, de recompensa ou punição. O algoritmo faz uma hipótese baseado nos exemplos e determina se a hipótese foi boa ou ruim. Aprendizado por Reforço é bastante utilizado em jogos e robótica.
A utilização de técnicas de Aprendizado de Máquina para solucionar problemas necessita de certos requisitos e nem sempre é realizada de maneira correta. O ciclo de um sistema de aprendizado de máquina tem as seguintes etapas: (1) aquisição dos dados, (2) pré-processamento dos dados, (3) escolha do(s) modelo(s), (4) treinamento do(s) modelo(s), (5) avaliação do(s) modelo(s), (6) aperfeiçoamento do sistema.
Um bom conjunto de exemplos (dados) é condição necessária para o bom desempenho dos algoritmos de AM, uma vez que, o conhecimento é adquirido dos exemplos. Para desenvolver as soluções, em muitos casos, a base de exemplos precisa ser construída e atualizada constantemente. Como os algoritmos de AM têm propósitos diferentes, é preciso fazer a seleção dos conjuntos de algoritmos apropriadas para o problema que se precisa resolver. Cada algoritmo tem seu conjunto de parâmetros, que devem ser escolhidos de forma correta, senão o algoritmo pode não funcionar adequadamente. Uma vez terminado o treinamento dos algoritmos, precisa-se saber se o algoritmo está resolvendo o problema e com que precisão o problema está sendo resolvido. Por fim, o sistema precisa ser atualizado, porque mudanças nos dados podem fazer com que os sistemas deixem de funcionar.
O Brasil tem excelentes grupos de pesquisas em Inteligência Artificial e Aprendizado de Máquina. No cenário mundial, em números de publicações científicas, o Brasil está na décima segunda posição mundial. O número de publicações em IA nos últimos 20 anos (entre os anos 2000 e 2018) triplicou. Entre as instituições brasileiras, as pernambucanas, UFPE, UFRPE e UPE se destacam. A UFPE, só perde para USP e está empatada com a UNICAMP em números de publicações. Muitas das empresas brasileiras e pernambucanas já usam adequadamente IA nas suas soluções de negócios mas o cenário poderia ser bem melhor se existissem financiamentos adequados para formação de recursos humanos, pesquisa e desenvolvimento tecnológico no país.
Referências
MITCHELL, T. Machine Learning, McGraw Hill, 1997, ISBN: 0071154671.