No Campus com Helder Coelho

Atualidade dos Analisadores Semânticos

Helder Coelho

Nos últimos anos, a possibilidade de falar com uma máquina (relógio, telemóvel, computador portátil, automóvel), um dos sonhos da Inteligência Artificial, tornou-se trivial, pois a tecnologia da linguagem (tradução, reconhecimento, análise, síntese) evoluiu bastante desde a aposta da Apple no Siri em 2011 (veja-se o "Technology Quarterly" do "Economist" de 5 de janeiro de 2017, e a melhoria da precisão no reconhecimento das palavras ou na tradução, cada vez mais perto dos 100%). No entanto, esta vitória da ciência (na idade da avalanche dos dados ou Big Data) não foi fácil e, o que estava em causa, o poder de análise semântica (semantic parser) cresceu (scaled up) graças à fusão dos aspetos lógicos e estatísticos. Mais, o analisador é agora capaz de aprender (Liang, 2016), e foram os avanços da Aprendizagem Mecânica e dos Modelos Estatísticos (Hidden Markov Model, a via da força bruta) os principais responsáveis pelo entusiasmo da indústria e dos mercados. A Microsoft, a Facebook, a Google foram também para a luta e parecem estar empenhadas em melhorar os seus resultados.

Duas linhas de investigação confrontaram-se nos últimos 40 anos, o lado da linguística formal, defendido por Noam Chomsky, e o lado da teoria da informação, que se apoiou em Claude Shannon. E, não se deve esquecer Zellig Harris, o qual defendeu uma aliança forte entre os princípios gramaticais e os informacionais, e o mesmo aconteceu com a via da teoria das linguagens formais.

As técnicas matemáticas ganharam espaço e estão hoje na frente pelos avanços e a lidar com as avalanches de dados. Na presente década, graças aos esforços de um grupo pequeno de empresas, a via da teoria da informação ganhou adeptos, sobretudo devido aos sucessos no reconhecimento da voz (discurso), na busca de informação, e na tradução das línguas. Ferramentas online como o BabelFish (apoiada em regras) e o Google Translate, passaram a ser usadas e prezadas. Empresas mais pequenas, como a Nuance (e o programa Dragon Dictate), mostraram que as tecnologias das redes neuronais são úteis (a DeepMind da Google inaugurou, em 2014, um novo modo de sintetizar os discursos orais, recorrendo a redes neuronais profundas).

O mercado do processamento da língua natural (PLN), segmentado em codificação automatizada, análise de textos, reconhecimento de carateres óticos, resposta interativa em voz, reconhecimento de padrões e imagens, e analítica da voz, tenderá a aumentar muito nos próximos dez anos.

A compreensão de uma língua natural (Português) passou a poder ser decomposta em duas etapas, a tradução das frases lógicas (representação do seu significado) e a produção de ações. E, os analisadores semânticos são capazes de aprender as formas lógicas que estão associadas aos pares frases/ações. A compreensão é organizada com vários módulos, como o executor, a gramática, o modelo, o analisador e o aprendiz. E, o sistema por detrás da compreensão é ensinado e, após o treino, aumenta a sua precisão de trabalho. Mas, devemos ter um certo cuidado pois as línguas estão cheias de ambiguidades e exceções.

Compreensão profunda + raciocínio lógico
(sintaxe, semântica e pragmática)

A composição do significado de uma frase (expressão) é o resultado do arranjo/combinação das subexpressões (partes significantes da frase).

No início (anos 60), e nas duas décadas seguintes, era muito difícil ir além de domínios limitados (fechados) e de enfrentar as complexidades de uma língua em geral, apenas com regras feitas à mão. A evolução da aprendizagem mecânica, foi influenciada pelas técnicas estatísticas, já adotadas pelo reconhecimento de padrões (discurso com voz), e também graças ao modo repetitivo de explorar exemplos de comportamento (entrada/saída) e de os obrigar ao encaixe num modelo (estatístico). A revolução passou ainda pelo enfraquecimento da supervisão (na passagem das formas lógicas anotadas às respostas) e pela ampliação (scaling up) dos analisadores semânticos a domínios mais abertos e complicados. Se os primeiros sistemas exigiam as formas anotadas, os novos começaram a ser treinados com as respostas (via aprendizagem). E, finalmente, a aplicação dos analisadores a diferentes domínios e além do que é mais comum, a pergunta/resposta, tais como a navegação de robôs, a identificação de objetos em cenas, ou a conversão da língua natural em expressões regulares.

O escalamento (scaling up) é, hoje em dia, um dos problemas interessantes da Informática. Consiste em passar de um protótipo (em geral com uma escala pequena) para um sistema mais realista, e na maioria dos casos não exige apenas grandes computadores (alta velocidade e poder de processamento, enormes memórias).

Por exemplo, em simulação social baseada em agentes inteligentes, requer paciência para afinar os principais parâmetros, tornar os agentes cognitivos parecidos com os seres humanos, e multitudes de agentes diferentes em cenários com paisagens bem sofisticadas (o filme Avatar de James Cameron é um bom exemplo de um empreendimento que levou dez anos a realizar, recorrendo a novas tecnologias e ferramentas). No caso de conflitos sociais (como as manifestações de protesto em rua) passar de 1.000 agentes para 2.000 é trivial, mas o salto para 10.000 impõe muito trabalho, tempo e paciência para as afinações.

No futuro, os desafios são ainda grandes, como por exemplo a representação semântica da linguagem ou que supervisão se deverá adotar para aprender a semântica. Recentemente, houve bastante interesse em recorrer às redes neuronais, e suas extensões, para atacar as tarefas mais populares do processamento da língua natural, a tradução mecânica e a pergunta/resposta (veja-se o sucesso do sistema Watson da IBM e da interface Siri da Apple, desde 2011). A paridade entre a tecnologia e o desempenho humano está ainda longe, medida em 2/3 anos, embora os produtos comecem a surgir, como os automóveis com controles ativados por voz. Para alguns, criar discurso ou compreendê-lo são duas operações opostas.

No Departamento de Informática (DI) da Faculdade de Ciências da Universidade de Lisboa (Ciências ULisboa), o grupo do professor António Branco, por detrás da unidade de investigação e desenvolvimento NLX (criada no início de 2000), disponibilizou um serviço o LX-Service para se observarem algumas das ferramentas desenvolvidas em cerca de 20 anos de estudo (LX-Suite, LX-Conjugator, LXGram, POS Tagger, LX-Tokenizer, Lematizador verbal). Recentemente foi aprovado o projeto CNPTDeepMT (Tradução Automática Profunda entre Chinês e Português, no domínio do eCommerce), com a duração de três anos, o apoio da FCT e do Ministério da Ciência e Tecnologia da China e a ser realizado na unidade NLX no DI Ciências ULisboa.

Referência
Liang, P. Learning Executable Semantic Parsers for Natural Language Understanding, Communications of the ACM, Setembro, Vol. 59, Nº 9, 2016.

Helder Coelho, professor do Departamento de Informática de Ciências
info.ciencias@ciencias.ulisboa.pt