Desenvolvimento

27 dez, 2016

Computação Cognitiva: nossa autoevolução programada?

Publicidade

Existe uma frente tecnológica que está sendo capaz de mover, ao mesmo tempo, gigantes como IBM, Microsoft, Google, Cisco, AT&T, Amazon, Apple, CIA e NASA, todas na mesma direção. Essa frente é tida como a maior promessa de evolução da história da humanidade, e não só mais uma batalha comercial pelo consumo, vamos entender o porquê.

Vemor Vinge certa vez idealizou um momento em que a humanidade atingiria uma velocidade de evolução tamanha, que as tecnologias se tornariam autoinventáveis, automáticas e instantâneas. Esse momento é conhecido como Singularidade Tecnológica: se você tiver uma necessidade, a tecnologia para supri-la ou já existirá, ou será criada na hora para você; praticamente sob demanda (TaaS? Technology as a Service?).

Para esse momento ser atingido, precisamos de alto poder computacional à disposição.

Na nova era, o que era ficção e utópico para Vemor Vinge foi traduzido na Lei de Moore, criada pelo fundador da Intel quando tratou do tema: “O poder computacional dos processadores dobrará de capacidade, mantendo-se os mesmos custos a cada 16 meses”. Essa lei está em vigor há 30 anos e ainda não foi quebrada.

Estamos duplicando a capacidade computacional a cada 16 meses ou menos, exponenciando as possibilidades e pesquisas em uma velocidade inimaginável, impactando diretamente na aceleração da criação de novas tecnologias e, consequentemente, em formas de otimizar os processadores e manter a lei. A quantidade de patentes registradas cresce a um nível até superior ao do processamento, como podemos ver no gráfico a seguir:

img-1

O aumento no número de registros e o ingresso de países nesta dança (quem era a China 20 anos atrás no gráfico?) expõe claramente como está mais fácil e mais rápido criar; e isso impacta diretamente na multidão de pessoas encorajadas a dedicar suas vidas a isso. Afinal, “90% de todos os cientistas que já viveram na Terra, ainda estão vivos hoje”. Nunca se pesquisou tanto, nunca se criou tanto e nunca as ideias foram tão possíveis e concretas. Devemos isso à ciência e à tecnologia.

Nossa capacidade de recriação e reinvenção já quebrou uma série de barreiras – inclusive físicas. Houve uma época em que já estava praticamente determinado que a Lei de Moore seria quebrada, pois se atingiria um nível de miniaturização dos transistores tão grande, que os próprios átomos dos transistores gerariam interferências em seus vizinhos e a capacidade computacional não poderia mais evoluir.

img-2

Mas não há limites para a criação. Na IBM, já estão sendo feitas pesquisas avançadas para transistores de silício de 7 nanômetros desde 2014, e em 2015 já foram anunciadas pesquisas para transistores de nanotubos de carbono com inimagináveis 1,8 nanômetros, garantindo a continuidade da Lei de Moore.

Certamente, o processamento como é feito hoje através de transistores e a evolução a cada 16 meses pode ser insuficiente para o objetivo da singularidade ou pode ser uma barreira para ela. Mas aí surge a computação quântica, que foge das limitações clássicas da física de materiais tradicionais e se faz proveito das leis da mecânica quântica, transformando transistores tradicionais e seus bits em qubits, aonde não estamos mais falando de estados fixos de 0s e 1s, agora um bit pode ao mesmo tempo ser 0 e 1.

Parece meio raso esse papo de 0s e 1s simultâneos, mas os efeitos práticos disto são cálculos computacionais sendo feitos simultaneamente, enquanto seu computador processa individualmente cada cálculo. Desta forma, um processador com 30 qubits consegue processar cerca de 10 Teraflops (seu notebook e celular trabalham em Gigaflops) – inclusive já existem computadores sendo comercializados pela D-Wave com até 128 qubits de computação. O poder desses processadores quânticos é tão grande que está preocupando os cientistas de segurança da informação, pois são capazes de quebrar qualquer criptografia praticamente de forma instantânea e isso se tornou um desafio para o futuro da segurança de dados no futuro.

A afirmação que diz que “nunca um computador será igual ao cérebro humano”, tem sido quebrada. O aclamado cientista Kurzweil já prevê a engenharia reversa do cérebro humano em 2020 (e nós, devs comuns, achando o máximo fazer a engenharia reversa daquela DLL já compilada) e já é um consenso entre a maior parte da comunidade científica que a singularidade será atingida entre 2025 e 2070.

“Quem vai programar os algoritmos prevendo todo e qualquer tipo de situação do mundo? Isso é impossível!”. Era exatamente nesse ponto que eu queria chegar: “não precisamos”. A inteligência artificial, as redes neurais, o machine learning e o deep learning já fazem parte da nossa realidade. São tecnologias já comprovadas e que já trabalham em conjunto no que estamos chamando de computação cognitiva, que é basicamente dar o poder de cognição ao computador.

Como isso é possível? Simples: ensinando-o.

Estamos em uma era em que armazenamento de dados e Big Data já não são um desafio, com espaço cada vez mais barato e em espaço físico menor, se torna cada vez mais simples manter todos os dados digitais disponíveis instantaneamente. Você sabia que toda a história da internet (505 bilhões de páginas) está armazenada em https://archive.org/? Toda essa massa de dados de Big Data pode ser utilizada para alimentar sistemas de machine learning e deep learning, que consomem esses dados e aprendem com eles, passando a analisar e prever soluções para qualquer problema que lhes for questionado em relação àquela base de conhecimento, fazendo uso de padrões detectados e aprendidos, ou criando novos padrões com base nos anteriores.

Já existem sistemas cognitivos que foram alimentados com bases gigantescas de prontuários médicos, capazes de diagnosticar câncer, alimentados com dados do mercado financeiro capazes de prever tendências econômicas e também existem soluções mais comerciais, que substituem URAs, aqueles atendimentos automáticos no telefone ou chat que conversam com você para resolver o seu problema ou te dar uma orientação com base na sua necessidade, considerando inclusive o seu tom de voz e humor como bases. Existem até algumas brincadeiras, como você dar os ingredientes que tem disponível na geladeira e o computador te responder com uma receita que utilize esses ingredientes e ainda vá ter um paladar agradável (ele não busca em uma base de receitas prontas, ele cria ela na hora mesmo!).

Voltando à singularidade do começo do texto, imagine alimentar um sistema cognitivo com todos os dados de todas as patentes do mundo, de todas as pesquisas do mundo, laboratórios, livros, bancos de dados de todas as empresas. Quais as possibilidades? Dados para isso já temos (Big Data), computação para isso já temos (computação quântica).

Negociar a liberação de tantos dados levaria mais tempo que a própria alimentação do sistema em si. Mas e se ensinarmos a própria computação cognitiva a negociar isso? Temos dados de milhões de contratos comerciais disponíveis, bilhões de trades em bolsas de valores, milhares de livros sobre técnicas de venda e negociação, incontáveis horas de vídeos de YouTube com as mais variadas técnicas (falando em vídeos, recentemente foi feito um trailler de filme inteiramente com cenas selecionadas por computação cognitiva, de uma forma que deixaria o trailler mais atrativo aos humanos, poupando meses de trabalho da equipe de produção; você sabia?).

Sendo até um pouco mais subversivo e futurista, imaginem quando inserirem na computação cognitiva todo o conhecimento sobre protocolos de internet, de redes, de segurança e criptografias e utilizarem isso para juntar a maior base de dados e aprendizado possível com toda e qualquer informação que esse sistema conseguir capturar, atingindo um nível de conhecimento nunca antes imaginado de ser centralizado em um único lugar. E uma situação perfeitamente plausível, não?! “Se um computador tiver a capacidade de se auto-otimizar e se autoevoluir, ele não teria mais motivo para se manter sob o domínio do ser humano”. Assustador, não? Essa possibilidade assombra a humanidade há muitos anos, expressa em diversos filmes como Exterminador do Futuro, Matrix, Eu, Robô, Transformers e muitos outros. Um dia, eles foram encarados como sensacionalistas, mas existem cientistas que defendem fortemente que essa evolução pode acabar culminando no fim da humanidade, através de catástrofes financeiras com a falência do sistema capitalista (computadores saberão fazer absolutamente tudo e mais rápido, livre de erros, inviabilizando a contratação de humanos, lentos, desanimados, procrastinadores, suscetíveis a erros) que resultará em guerras (falam de 3ª Guerra Mundial) – algumas entre os próprios humanos, encurralados em suas necessidades básicas da pirâmide de Maslow, e outras entre humanos e máquinas, que lutarão pela supremacia do planeta.

“E se direcionarmos isso para o bem?”.

Exato, meu caro. Imagine todo esse poder computacional do cognitive, direcionado à medicina. Todos os dados de todas as pesquisas, quadros de pacientes, medicamentos, comportamentos das doenças e vírus, evoluções e involuções de tumores, medicinas alternativas e fitoterápicos. Quais são as possibilidades? Em quanto tempo uma doença sua seria curada? Em quanto tempo um computador quântico com deep learning encontraria a cura da AIDS? Do Ebola?

Imagine você ficar gripado de uma mutação nova da gripe, dar uma picada no dedo para coletar uma amostra para um computador quântico analisar e sintetizar um remédio exclusivo para o seu organismo e para a mutação de vírus que você foi infectado.

Imaginemos mais longe ainda: você manda a amostra para um computador cognitivo analisar e, depois de uma hora, passa na farmácia para pegar sua cápsula de nano-robôs programados para combater diretamente os vírus daquela gripe no seu organismo e se autoeliminarão na urina, sem efeitos colaterais que todas as drogas trazem junto com o tratamento.

Precisa de um órgão novo? Ok, computação cognitiva pode te ajudar com isso também. “Fazemos seu órgão novo em 30 minutos” através de impressoras 3D de biomateriais (já existem, inclusive), livres de rejeição do seu organismo, pois serão feitas exclusivamente para você, com seu DNA e sua anatomia.

“Refugiados precisam de moradia, em uma área que contenham apenas um material que não é adequado a construção civil”. Já vai virar cliché, mas cognitive te ajuda nisso também, meu caro. Alimente-o com toda a base de conhecimento de engenharia, de física, de química, de mecânica de materiais e ele acha um jeito de construir naquela área.

Alimente-o com toda a base de conhecimento de robótica, eletrônica e mecatrônica, e ele ainda te faz um robô para isso. Futurista demais? Não, isso é singularidade; e já está batendo aí na porta! Quer ver?

  • O Bradesco já usa atendimento com computação cognitiva, capaz de reconhecer o seu problema e o melhor especialista para te ajudar no seu problema. Ele consegue, inclusive, perceber pelo seu tom de voz o seu nível de irritabilidade;
  • O IBM Watson colabora com mais de uma dúzia de institutos do câncer, utilizando genoma para tratamentos individualizados às necessidades de cada paciente;
  • Estão sendo pesquisadas soluções de combate a catástrofes, utilizando Internet das Coisas, sensores acústicos espalhados em regiões suscetíveis a enchentes ficam escutando o solo e alertam sobre enchentes iminentes;
  • Grandes bancos já utilizam cognitive para analisar transações financeiras e prever riscos e fraudes.

As empresas já levam tão a sério a computação cognitiva que foi criado em conjunto do TED e da IBM, o AI X Prize (http://ai.xprize.org/), uma competição que premiará um total de US$ 5 milhões as melhores ideias de interação colaborativa entre humanos e inteligência artificial. A Reuters também está formando um núcleo de pesquisa focado em cognitive.

A forma como sistemas cognitivos são programados, obviamente, é diferente das linguagens de programação comuns, como a KEEL Dynamic Graphical Language, por exemplo, na qual as estruturas de decisão influenciam as subsequentes decisões. Dessa forma, é possível “ver” o que o computador“pensou” para chegar a uma decisão e influenciar diretamente nas próximas decisões. Reparou? “Influenciar” nas decisões e não decidir por ele. Estamos descendo gradualmente do palco e dando lugar à computação.

A DARPA já está desenvolvendo um sistema chamado SyNAPSE, em parceria com a IBM, que desenvolveu a arquitetura TrueNorth, focada em simular a construção do cérebro humano, inclusive ele tem 256 “neurônios” (processadores), 256 “axônios” (memória) e 64.000 “sinapses” (comunicação entre os neurônios e axônios). A IBM já tem planos em elevar essa equação para até 100 trilhões de sinapses.

Seguindo uma outra forma de raciocínio na programação (que basicamente é a mesma desde o FORTRAN, em 1950, para o ENIAC), existe uma nova linguagem de programação baseada em “corelets”, que se baseia em abstrair cada um desses neurônios do TrueNorth. Cada “corelet” tem 256 entradas e 256 saídas simultâneas, que se conectam aos outros neurônios com seus próprios “corelets”.

É, vamos ter que nos reinventar para não ficarmos pra trás…