Eliza: A psiquiatra de inteligência artificial do Emacs |
Eliza, como já é de conhecimento de muitos de nós, é uma psiquiatra feita de inteligência artificial que fica escondida no editor de texto emacs. Bastando digitar no terminal de comandos M-x doctor, é disponibilizado um chatbot dentro do emacs que te serve como uma psiquiatra e responderá as suas perguntas.
Mas quem criou a Eliza? E com qual propósito? Como é uma inteligência artificial do Emacs, não teria sido Richard Stallman o autor da Eliza? E a resposta para a ultima pergunta é não. Mesmo que muitos afirmam que sim por ter trabalhando no instituto de inteligência artificial do MIT, na verdade aqui neste artigo vamos tratar do verdadeiro pai da Eliza.
Muito se fala sobre inteligência artificial nos dias atuais. As pessoas passaram a temer que algo como exterminador do Futuro de James Cameron possa ser desencadeado com tal tecnologia. AI é algo muito presente no Linux; a versão 4.0 do kernel Linux foi lançada tendo como destaque exatamente estar pronto para AI; em 2015 a empresa Takepoint anunciou um rifle com Linux que mira automaticamente (lendo tal noticia, parece que cada vez mais esse temor se concretiza). Mas de onde surgiu a ideia de inteligência artificial? Quem são seus autores? E para qual finalidade?
Em 1950, Alan Turing publicou o Teste de Turing (Turing Test) que na verdade o nome real é Maquinário e inteligência da computação (COMPUTING MACHINERY AND INTELLIGENCE) que propõe a teoria se computadores seriam realmente capazes de pensar como seres humanos ao ponto que humanos não conseguiriam distinguir se estariam conversando com máquinas ou com humanos de verdade. Este artigo é um dos princípios da inteligência artificial; porém, no mesmo ano, Isaac Asimov publicaria a ficção cientifica Eu, Robo que em 2004 se tornia o filme estrelado por Will Smith. Asimov também é o autor das Leis da Robótica (criadas em 1942) que determina três regras que os robôs devem seguir para não representarem uma ameaça a humanidade (são regras que podem ser percebidas na animação Astro boy de 2009).
A inspiração para o nome da obra de Asimov veio de outra obra datada de 1939 e de autoria dos irmãos Earl e Otto Binder (Otto é conhecido por ser o co-autor de Supergirl) que se chamava exatamente... Eu, robo... E em 1942, seria publicado Adam Link salva o mundo (também de autoria de Earl) e que basicamente é uma continuação da obra de 1939. Anterior as obras citadas, já havia peça teatral A revolta dos robôs, originalmente conhecida como R. U. R (abreviação de Rossumovi Univerzální Roboti = Robôs Universais de Rossum) escrita pelo tcheco Karel Čapek em 1920.
Séculos antes de todas estas obras, René Descartes (o mesmo autor do termo "penso, logo exito") já tratado sobre inteligencia artificial em "DISCOURSE ON METHOD" de 1637 que descreve:
“E não devemos confundir a fala com os movimentos naturais que indicam as paixões — e que podem ser imitados por máquinas, assim como manifestados por animais —, nem tampouco pensar, como alguns dos antigos, que os animais falam, ainda que não compreendamos a sua linguagem.”
A da Ada Lavelace pouco mais de 200 anos depois descreveu em 'Sketch of the Analytical Engine invented by Charles Babbage, Esq.' [by I. F. Menabrea with notes by Ada Lovelace], Scientific Memoirs, 1843 que as máquinas carecem de capacidade para pensamento independente, criatividade ou consciência, servindo, em vez disso, como ferramentas sofisticadas que executam instruções concebidas por humanos:
"A Máquina Analítica não tem qualquer pretensão de originar algo. Ela pode realizar tudo o que soubermos instruí-la a executar. Ela pode seguir análises, mas não possui a capacidade de antecipar quaisquer relações ou verdades analíticas."
Ok, mas o que todas essas obras tem a ver com a Eliza? Na verdade somente uma nos interessa para a explicação, que é o teste de Turin. Eliza foi criada em 1.966 pelo judeu Joseph Weizenbaum (um dos fundadores do campo de inteligência artificial do M.I.T) em uma linguagem de programação de sua autoria chamada MAD-SLIP e que foi baseada em outras linguagens sendo MAD (Michigan Algorithm Decoder) baseada na linguagem Algol e SLIP (Symmetric LIst Processor que é o recurso de processamento de listas) baseada na própria linguagem LISP e que foi adicionado à linguagem MAD em 1963. O código da Eliza está disponível em PDF sob a licença CC0.
Weizenbaum descreve como a ELIZA funciona:
"De um ponto de vista, um script ELIZA é um programa e ELIZA é um interpretador. De outra perspectiva, ELIZA aparece como um ator que deve depender de um script para suas linhas. O script determina o framework contextual que a ELIZA possa estar esperando para conversar plausivelmente".
O primeiro programa a ser executado chama-se DOCTOR e o nome da damília desses programas é ELIZA. O DOCTOR faz com que a ELIZA responda as perguntas. somente o nome DOCTOR apareceu em sua publicação em 1966, não o código ELIZA que interpreta os scripts. Os códigos para o doctor podem ser conferido aqui.
Na época as pessoas chegaram a acreditar que a ELIZA teria sido escrito em Lisp devido Bernie Cosell ter escrito sua própria versão de ELIZA na linguagem Lisp. Cosell nunca viu o código original da ELIZA, mas se baseou na descrição de algoritmo de Joseph Weizenbaum.
A Eliza passou no Teste de Turing provando que o conceito de computadores com inteligência parecida com a humana é facilmente algo falso. O chatbot psicoterapeuta parece estar conversando com você, mas que no decorrer da conversa, parece estar mudando de assunto ou as frases começam a ficar repetitivas e não fazer mais sentido. O que ocorre é que a Eliza respondia somente a certos parâmetros das conversas; ao invés de ler toda a frase, a Eliza lia certas palavras chaves do seu texto e respondia baseado nisso.
O nome ELIZA foi inspirado no personagem Eliza Doolitle da peça teatral Pigmalião de George Bernard Shaw. Joseph demonstrou como é fácil fazer com que um computador aparente ser inteligente. ELIZA é de certa forma a precursora de tecnologias que utilizamos hoje em dia como Siri da Apple, Alexa da Amazon, Google assistente e Cortana da Microsoft; mas existem vários clones da ELIZA que podem ser conferidos clicando aqui. Um deles é o GNU EMACS "doctor" (disponível aqui) e como está descrito na página de clones da ELIZA que:
"O GNU EMACS incluiu um built-in "Doctor" desde mais ou menos 1985. Ele afirma utilizar técnicas "semelhantes à da clássica Eliza", mas não diz se é baseado no código Lisp de Cosell ou na publicação de Weizenbaum. Lars Brinkhoff, que coleciona versões históricas do Emacs, observa que o "Doctor" não estava presente no GNU Emacs 16.60, de julho de 1985, mas aparece no Emacs 17.61, de abril de 1986, com a seguinte informação: "Copyright (C) 1985 Sidney Markowitz e Richard M. Stallman". Embora seja desconhecido se Stallman na verdade viu a versão de Cosell, é bem parecido com o que ele fez, sendo um hacker Lisp e nos arredores do MIT na época que a versão de Lisp estaria circulando."
O código disponibilizado por Lars pode ser conferido clicando aqui. Na verdade eu acredito que o Stallman teve acesso ao código fonte da Eliza e simplesmente o incorporado no Emacs fazendo modificações como inserir seu nome no lugar dos autores originais, mas que também não vai admitir isso já que reconhecer o trabalho de terceiros não é o seu forte.







Nenhum comentário:
Postar um comentário
Viu algum erro e quer compartilhar seu conhecimento? então comente aí.
Observação: somente um membro deste blog pode postar um comentário.