Machine learning, deep learning e PLN: o que são?

Inteligência artificial, algoritmos e a era dos autodidatas artificiais

Com certeza você já ouviu falar sobre pessoas incríveis, quase que iluminadas, que possuem a incrível capacidade de aprender sozinhas. Elas estabelecem o seu próprio cronograma, horários de estudo e, na base da tentativa e erro, desenvolvem habilidades e conhecimentos surpreendentes.

Esta habilidade autodidata de muitos seres humanos é realmente impressionante e levou muitos cientistas, pesquisadores, músicos e até mesmo atletas a níveis elevados de excelência. Imaginem  se pudéssemos dar essa mesma capacidade para as máquinas e computadores? Se levarmos em consideração seus altos potenciais de processamento de informação, quais limites eles poderiam alcançar? Seria possível desenvolver a ideia plena de uma aprendizagem das máquinas? 

Provavelmente foi tentando responder a estas perguntas que os primeiros cientistas da informática começaram a engatinhar na área de inteligência artificial.

Embora tenha sido imaginado de uma ou de outra forma ao longo da história, a Inteligência Artificial (IA) é um ramo cujo os estudos mais abrangentes ganharam corpo principalmente depois da invenção dos computadores e a partir da Segunda Guerra Mundial. 

A ideia de estudar o comportamento de máquinas emulando o comportamento de seres humanos ou dos demais seres inteligentes não é nova na literatura, porém só a partir do período mencionado é que as ferramentas para executar estes estudos foram sendo desenvolvidas de maneira mais intensiva em conjunto com uma outra ideia que já existia há muitos séculos: o algoritmo.

Esses seres famosos - principalmente nos dias atuais com a popularização da internet, dos cookies e das projeções sobre os gostos dos usuários de redes sociais - existem desde o tempo da Babilônia e, de maneira sintética, nada mais são do que sistemas sequenciais finitos e lógicos de raciocínios, operações ou instruções para alcançar um objetivo.

Explicado assim pode ser complicado à primeira vista, porém imagine que os algoritmos são como receitas de bolo. Se você seguir corretamente os passos e incluir os ingredientes no momento correto e nas quantidades adequadas, no final vai certamente obter uma excelente sobremesa.

Tente imaginar o que alguém ou alguma coisa poderia desenvolver se a instrução dos passos do seu algoritmo fossem coisas como: busque conhecimento sobre química, resolva derivadas, aprenda mandarim, jogue xadrez. Agora adicione a isso uma memória e capacidade de guardar e processar dados gigantescos. Seria impressionante, não é? 

De fato é! Este é o potencial dos autodidatas artificiais.

Cada cabeça é um mundo, Gismundo: as formas de aprender

Embora haja toda uma abrangente área de pesquisa matemática por trás dos conceitos da inteligência artificial, invariavelmente a definição que encontramos no dia a dia sobre esse assunto é uma mistura meio homogênea com a própria definição dos seus dois maiores conceitos ou duas grandes áreas: machine learning e processamento de linguagem natural.

De tal forma que, se não existe uma receita única para fazer bolo de chocolate, também não existe uma forma única de como as máquinas podem emular os comportamentos dos seres inteligentes.

Sendo assim, a seguir vamos ver um pouco sobre o que significa cada uma delas e quais são as suas principais características.

Machine Learning, Redes Neurais e Deep Learning

O machine learning (aprendizado de máquina ou aprendizagem automática, em português) é definido como a capacidade de máquinas e computadores aprenderem a partir de análise de dados e de identificação de padrões.

Os seres humanos precisam ser expostos diversas vezes à imagem de um coelho para entender que um animal pequeno e fofinho, que possui duas orelhas grandes, que pulam com as patas traseiras (e que podem ou não gostar de cenoura) é, de fato, um coelho. De tal maneira que este banco de dados mental que temos com as informações sobre as características destes animais, podemos diferenciar um coelho de um canguru ou de um hamster, por exemplo.

Da mesma forma, uma máquina pode ser exposta a diversas imagens de coelhos e a diversas imagens de não-coelhos para, através da tentativa e erro, ir aprendendo a definir o que é um coelho daquilo que não é um coelho.

Este aprendizado pode ser supervisionado por seres humanos, que poderão delimitar as nuances dos algoritmos e darão a direção da aprendizagem que a máquina irá seguir.

Porém, existem aprendizados não supervisionados, onde as máquinas, tendo o conhecimento das regras de um jogo, por exemplo, podem ir aprendendo a jogar este jogo e a desenvolver estratégias para vencer. Um caso clássico de um teste nesta área ocorreu ao longo da década de 90, onde o grande mestre enxadrista e campeão mundial de xadrez, Garry Kasparov enfrentou o computador Deep Blue, da IBM.

Como aprendemos tanto na escola como na vida, o processo de aprendizagem nem sempre é linear. É possível aprender através de conexões, cruzamento de informações, usando as fofocas das vizinhas, batendo papo com os amigos, lendo um livro, saindo para passear com o cachorro, vendo uma série e por aí vai. Podemos até mesmo atribuir internamente um peso diferente para cada uma destas fontes de experiência ou informação, classificando-as como mais ou menos relevantes. 

Estas ideias estão por trás da definição de redes neurais.

As redes neurais são um processo mais complexo onde, de maneira sintética, ao invés de fazer análise de um para um, vários algoritmos podem - mas não necessariamente o farão - se especializar em uma característica ou detalhe que compõe alguma coisa para tomar uma decisão ou dar um prognóstico. Ou até mesmo usar a resposta com pesos de relevância dependendo da fonte para tomar uma decisão ou dar um prognóstico

Ainda usando o exemplo do coelho, seria como se cada algoritmo ou grupo de algoritmo dentro daquele processo de aprendizagem fosse se especializando em entender as nuances do que é uma orelha, enquanto outro vai aprendendo como são as pernas e quão longas elas podem ser, e um outro algoritmo vai observando as características do focinho e assim consequentemente, até que, em conjunto a máquina possa definir o que é um coelho daquilo que não é um coelho.

Este processo pode ter inúmeras variáveis, outras tantas conexões, diversas nuances, além de diferentes pesos, sendo assim um processo profundo e interligado de aprendizado. Isso seria, portanto, o famoso deep learning (aprendizado profundo).

Machine Learning x Deep Learning: Características

Em comparação com o deep learning, o processo de machine learning pode exigir um menor nível de complexidade dos algoritmos e equipamentos utilizados.

Ele identificará padrões e fará previsões mais rapidamente, porém pode ser que estas previsões sejam feitas com um menor nível de precisão. Para atingir o seu potencial mais elevado, o machine learning exige que os dados a serem processados tenham sido previamente estruturados e, sendo assim, acaba sendo necessário um pouco mais de intervenção humana.

Por outro lado, no deep learning a busca por imitar-replicar-reproduzir o comportamento do seres inteligentes ao processar as informações ocorre usando redes neurais artificiais que se organizam em diferentes níveis, processando dados e permitindo fazer previsões com menor intervenção humana e mais autonomia.

O deep learning pode trabalhar tranquilamente com dados não estruturados. No entanto, a exigência é maior em relação ao nível de complexidade dos algoritmos e equipamentos envolvidos no processo. Já a identificação dos padrões e da realização de previsões acontece de maneira um pouco mais lenta, porém pode ser com maior precisão.

Processamento de Linguagem Natural 

O Processamento de Linguagem Natural (PLN) é a segunda grande área da inteligência artificial que veremos aqui. Ela está focada em estudar como os computadores e máquinas podem entender, interpretar e manipular a linguagem humana. 

A linguagem, de modo geral, tem sido uma grande, senão a principal, aliada humana para a comunicação dos indivíduos entre si e para o desenvolvimento de ideias, processos, colaboração, organização de cidades e de suas sociedades. 

Ao nos referir ao PLN, pensamos em uma maneira onde as máquinas e computadores tenham a capacidade de interpretar, compreender e responder ao input de dados que damos a eles com a nossa linguagem. 

Com certeza você já deve ter se admirado com a velocidade com que os assistentes virtuais de voz compreendem a sua pergunta e rapidamente dão uma resposta que coincide com aquele contexto. Os mecanismos que estão por trás desta tecnologia são exatamente os avanços obtidos pelos estudos na área de processamento de linguagem natural.

Transformar a voz em informação é um destes exemplos, porém existem vários outros: aquele chatbot de atendimento que responde as suas dúvidas no site da empresa de compras online, os filtros do seu e-mail que separam os spam e os demais tipos de comunicação recebidas, os resultados de pesquisa, os tradutores online, , quando o seu aplicativo de mensagens indica alguma palavra para completar a frase que você começou a escrever, as ligações telefônicas digitais que ficam gravadas para consulta posterior e as análises de textos e de dados que organizam as informações em blocos inteligíveis, enfim, tudo isso é fruto do desenvolvimento dessa tecnologia.

Conclusão

O mundo da inteligência artificial é bastante amplo, já impacta a nossa vida no presente e possui opotencial de seguir influenciando de uma maneira ainda mais robusta no futuro.

Conhecer as aplicabilidades e extensões de temas como o machine learning, deep learning e PNL pode nos tornar mais conectados e conscientes da realidade que influi sobre a tecnologia à nossa volta, bem como nos ajudar a dar melhor uso para ela.

Se você gosta de temas como este, continue nos acompanhando aqui no Tech Takes, o site de dicas de tecnologia da HP.