“Inteligência artificial é o futuro. Inteligência artificial é ficção científica. Inteligência artificial é parte da nossa vida no dia a dia.”
Todas essas afirmações são verdadeiras, só depende de que tipo de Inteligência Artificial você está procurando saber.
Quando o AlphaGo da Google derrotou o mestre Sul Coreano Lee Se-dol em uma partida do jogo de tabuleiro Go, os termos IA, machine learning e deep learning foram usados na mídia para descrever como o Alpha Go venceu. Todos esses três são parte do motivo da vitória sobre Lee Se-Dol. Mas eles não são a mesma coisa.
A maneira mais fácil de pensar como se relacionam é imaginar como círculos concêntricos com IA (a ideia que veio primeiro, a maior), então Machine Learning ( que floresceu depois), e finalmente Deep Learning (que está liderando a explosão de IA hoje, em várias frentes) contendo parte das duas.
Do nascimento ao BOOM!!
IA tem sido parte da nossa imaginação desde que alguns cientistas começaram com o termo nas conferências de Dartmouth em 1956 e deram luz ao campo de IA. Desde então, IA tem sido vista de forma alternada entre a chave do futuro mais brilhante da nossa tecnologia e as viagens da ficção científica (coisa que todos os mais decolados adoram, não somente os Nerds) que imaginamos que as maquinas mais inteligentes deveriam fazer.
Nos últimos anos a popularidade de IA explodiu, especialmente desde 2015. Muito disso tem a ver com a disponibilidade dos avanços impressionantes dos processadores, da Computação Quântica, que fazem processamento paralelo mais rápido, mais barato e mais poderoso. Também tem a ver com todo a enxurrada de dados que temos hoje na internet (todo o movimento de Big Data) — imagens, textos, transações, dados de mapas, pode escolher.
Vamos navegar em como cientistas da computação levaram algo que era tão ambíguo (até 2012) para o boom que desencadeou aplicações usadas por centenas de milhões de pessoas todos os dias.
Inteligência artificial — Inteligência Humana Exibida por Máquinas
Naquela conferência no verão de 1956 o sonho dos pioneiros da IA era de construir máquinas complexas (possibilitadas por computadores que emergiam na época) que possuíssem as mesmas características da inteligência humana. Esse é o conceito que pensamos como “IA genérica”. Máquinas fabulosas que tem todos os nossos sentidos (e talvez até mais), toda a nossa razão e pensam como nós pensamos (Lembra do C3PO de Star Wars).
O que conseguimos construir se encaixava no conceito de “IA limitada”. Tecnologias que são capazes de executar tarefas específicas tão bem quanto, ou até melhor, que nós humanos conseguimos. Exemplos de IA limitadas são coisas como classificação de imagens em um serviço como o Pinterest ou reconhecimento de rostos no Facebook.
Esses são exemplos de IA limitadas na prática. Essas tecnologias exibem algumas facetas da inteligência humana. Mas como? De onde essa inteligência vem? Isso nos leva ao próximo círculo, Machine Learning.
Machine Learning — Uma alternativa para chegar em uma Inteligência Artificial
Machine Learning da maneira mais básica é a prática de usar algoritmos para coletar dados, aprender com eles, e então fazer uma determinação ou predição sobre alguma coisa no mundo. Então ao invés de implementar as rotinas de software na mão, a máquina é “treinada” usando uma quantidade grande de dados e algoritmos que dão e ela a habilidade de aprender como executar a tarefa.
Machine Learning veio direto das mentes do pessoal do início da IA, e a abordagem com algoritmos através dos anos incluiu árvore de aprendizado, programação lógica indutiva, agrupamento, aprendizado reforçado, redes Bayesianas, entre outros. Como sabemos, nenhuma dessas soluções chegou ao objetivo final de uma IA genérica, e mesmo uma IA limitada estava fora do nosso alcance com as abordagens iniciais de Machine Learning.
Da maneira que as coisas evoluíram, uma das melhores áreas de aplicação para Machine Learning por muitos anos foi a de visão computacional, apesar de ainda requerer muito trabalho manual para completar uma tarefa. Pessoas escreveram na mão classificadores como filtros que os programas conseguissem identificar onde um objeto começa e termina basicamente. E basicamente esta é a regras que esta mais sendo empregada em programação para veículos autômatos. Legal! Mas a evolução do tempo e novos algoritmos estão fazendo toda a diferença.
Deep Learning — Uma técnica para Implementar Machine Learning
Outra abordagem em forma de algoritmo do início do movimento de Machine Learning, Redes Neurais, surgiram e desapareceram através das décadas. Rede neurais são inspiradas pelo nosso entendimento da biologia do nosso cérebro (todas as interconexões entre neurônios). Mas, diferente de um cérebro biológico onde qualquer neurônio pode se conectar com qualquer outro neurônio dentro de uma certa distância física, essas redes neurais artificiais tem camadas discretas, conexões e direções de propagação de dados.
Você pode, por exemplo, pegar uma imagem, cortar ela em uma pilha de pequenos pedaços que são recebidos pela primeira camada da rede neural. Na primeira camada neurônios individuais, então passam os dados para uma segunda camada. A segunda camada faz o seu trabalho, e assim por diante, até que a camada final produza a saída.
Cada neurônio atribui um peso para os dados que entram ( o quão correto ou incorreto ele é relativo a tarefa que está sendo executada ). A saída final é então determinada pelo total desses pesos. O trabalho da rede neural é concluir o que é a imagem, construindo um “vetor de probabilidade”, que é um valor calculado a partir dos pesos atribuídos a imagem. Mesmo esse exemplo está indo a frente, porque até recentemente redes neurais eram evitadas pela comunidade pesquisadora de IA. Elas estavam presentes desde o início de IA, e haviam produzido muito pouco no sentido de “inteligência”. O problema era que mesmo a rede neural mais básica exigia muito poder computacional, então estava se tornando pouco prática. Ainda assim, um grupo de pesquisa pequeno liderado por Geoffrey Hinton na Universidade de Toronto se manteve firme, finalmente conseguindo paralelizar os algoritmos para supercomputadores executa-los e provar o conceito, mas somente com a evolução dos novos processadores.
Enquanto a rede está sendo ajustada ou “treinada”, está produzindo respostas erradas recorrentemente. Ela precisa de treino. A rede precisa ver centenas de milhares, até milhões de imagens, até os pesos de cada informação recebida pelos neurônios estarem tão precisamente calibrados que conseguem responder de forma correta praticamente toda vez. É nesse ponto que a rede neural aprendeu como que uma imagem parece; ou um rosto no caso do Facebook; ou um gato, que é o que Andrew Ng fez na Google em 2012.
O grande avanço de Ng foi de pegar essas redes neurais, e essencialmente faze-las grandes, aumentar as camadas e os neurônios, e então alimentá-las com um nível massivo de dados para que fossem treinadas. No caso de Ng, eram imagens de 10 milhões de vídeos do YouTube. Ng colocou a palavra “deep” no deep learning, que descreve todas as camadas nessas redes neurais.
Hoje, reconhecimento de imagens por máquinas treinadas através de deep learning em alguns cenários possuem uma taxa de acerto maior que a de humanos, e isso varia de gatos até identificar indicadores de câncer no sangue e tumores em exames de ressonância magnética. O AlphaGo da Google também aprendeu as regras do jogo e treinou para sua partida ( calibrou sua rede neural ) jogando contra si mesmo repetidamente.
Graças ao Deep Learning, IA tem um Futuro Brilhante
Deep Learning permitiu muitas aplicação práticas de Machine Learning e por extensão o campo todo de IA. Deep Learning se quebra em diversas tarefas de maneira que todo tipo de ajuda de uma máquina é possível, mesmo as mais remotas. Carros que dirigem sozinhos, melhor saúde preventiva, mesmo recomendações melhores de filmes, todos já estão aqui ou no horizonte. IA é o presente e o futuro. Com a ajuda de Deep Learning, IA pode até chegar no estado de ficção científica que imaginamos por tanto tempo.
Que a IA traga mais C3PO e menos Exterminadores do Futuro. =)