Resumos de aula: PLN - 2019


Nota: Arquivo gerado por um programa.

Nome Resumo
Renan Baisso A disciplina de Processamento de Linguagem Natural (PLN) lecionada pelo professor Jesús P. Mena-Chalco tem como ementa a introdução ao processamento de linguagem natural, conceitos de processamento sintático, apresentação de técnicas de análise (parsing), fundamentos de interpretação semântica, processamento de discurso e suas aplicações. O curso tem diversas referências bibliográficas, mas a que será mais adotada é o livro Jurafsky, D. & Martin, J. H. (2009). Speech and language processing. An introduction to natural language processing, computational linguistics, and speech recognition. Pearson/Prentice Hall que é livro de conteúdo gratuito. Durante o quadrimestre os alunos deverão entregar resumos de 250 a 500 palavras à respeito de todas as 24 aulas, os quais representam 30% da nota. Terão uma prova no dia 15/08 como avaliação que representa 40% da nota. Apresentarão projetos em dupla que valem os 30% restantes que terá 3 entregas, porém é necessária a aprovação neste critério para se passar na disciplina. Os intervalos dos conceitos serão os seguintes: A - se a nota final seja maior ou igual a 9; B - se a nota final for entre 7,5 e menor que 9; C - se a nota final for entre 6 e menor que 7,5; D - se a nota final for entre 5 e menor que 6; F - se a nota final seja menor do que 5. A aula contou com questionário para verificação de conhecimento dos alunos em linguagem Python, estrutura de dados e PLN. Pois algumas das aulas contarão com partes práticas desenvolvidas em linguagem Python utilizando a ferramenta Jupyter Notebook. A motivação para estudo de PLN está em entender e aplicar processos computacionais especificamente à linguagem humana, que é diferente de uma linguagem artificial, a qual abrange linguagem para programação, isto é, não serão abordados assuntos relacionados com interação homem-máquina. O objetivo ao se estudar PLN é construir artefatos para interpretar linguagens naturais para realizar tarefas ou aplicações próximas do entendimento humano. PLN é uma subárea de inteligência artificial misturada com linguística computacional e está relacionada ao aprendizado de máquina, compiladores, tradução, análise semântica ou sintática. E tem como seus fundamentos processos de busca, machine learning, lógica e processos de representação. Atualmente, convivemos com diversas aplicações sofisticadas de PLN, como o buscador do Google , o qual é um sistema de resposta que tem resultados muito precisos para buscas de palavra chave, que é um tipo mais clássico e relativamente simples de busca, porém para perguntas mais complexas e cheias de relações, o procedimento se torna muito mais complexo e difícil de trazer resultados precisos. Outras aplicações que servem como exemplo de PLN são Wolpfram Apha, Google Assistant, Amazon Alexia, Apple Siri, LATEX e Tay da Microsoft que foi corrompida pela comunidade do Twitter ao tentar aprender a se comunicar através de discursos de usuários. Além disso, há diferenças entre a pesquisa de PLN e o seu desenvolvimento para aplicações, o primeiro tem como objetivo o entendimento e funcionamento da linguagem humana, já o segundo tem objetivo a construção de sistemas que analisem ou gerem a linguagem para reduzir brechas entre homem e máquina. Sendo assim, PLN não é um campo de estudos fácil ou simples, por isso, pode ser classificado com IA-Complete, que é uma classificação para problemas de inteligência artificial mais complexos de resolver. Pois problemas com esta classificação são caracterizados por necessitarem que computadores sejam inteligentes ao nível de humanos (IA-Strong) e não podem ser resolvidos com um algoritmo específico, isto é, seria necessário diversas combinações de algoritmos de IA para resolução deste problema. No contexto de PLN um IA- Complete seria desenvolver uma aplicação que compreende e fala uma língua humana de forma natural, exemplos deste tipo de problema são o Teste de Turing e reconhecimento de SPAM.
Jefferson Leite Rodrigues Dantas A aula começou com a apresentação do professor Jesús, conhecemos sua formação e área de pesquisa. Após essa introdução ele nos falou um pouco sobre dados e como alguns aplicativos em apenas 60 segundos possuem uma gigantesca geração de dados, por exemplo o Facebook que em 1 minuto possui cerca de 900 mil logins, e como os dados estão crescendo de forma exponencial, a cada dois anos a quantidade de dados gerados têm dobrado e boa parte deles(99,5%) não são analisados. A ementa da disciplina foi dividida em 6 tópicos, sendo eles: introdução ao processamento de linguagem natural, processamento sintático, técnicas de análise (parsing), gramáticas, interpretação semântica, processamento de discurso e Aplicações. Foi passado 5 livros de bibliografia, sendo a principal a 3° edição do livro: Speech & language processing dos estudiosos Jurafsky, D. & Martin, J. Para a avaliação da disciplina será necessário escrever um resumo para cada aula, em até 48h após seu término, a entrega será pelo Tidia. Esses resumos contam 30% da disciplina. Também teremos uma prova teórica única que valerá 40%, e por fim um projeto que contará 30%, ele foi divido em 3 mini-relatórios e uma apresentação oral. O projeto será feito em grupo de 4 pessoas usando python, seu objetivo é elaborar um artigo cientifico relacionados aos tópicos da disciplina. A atribuição de notas será da seguinte forma: A para notas >=9, B: notas <9 e >= 7,5, C: notas <7,5 e >= 6, D: notas <6 e >=5 e F: <5. Utilizaremos a linguagem de programação python da qual usaremos conceitos básicos como listas, matrizes e dicionários. Jupyter Notebook foi escolhida como IDE. Processamento de Linguagem Natural (PLN) é uma subárea/intersecção da área de Inteligência Artificial e Linguistica, definido como processamento automático ou (semiautomático) da linguagem humana, seu objetivo é construir mecanismos artificias (computadoras) que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações “próximas” ao entendimento humano. É importante ressaltar que PLN(NLP em inglês) está muito mais associada a linguagem natural(Linguagem falada/escrita por pessoas humanas) do que a linguagem artificial(Python, Java, C, código binário). Sistemas de respostas faz parte de PLN, podemos fazer buscas por palavras chaves(relativamente fácil) ou usando perguntas completas(relativamente dificil), foi mostrado exemplo de busca semântica no WolframAlpha. PLN está relacionado com: Compiladores (autômatos), prova de teoremas, aprendizado de máquina, modelos probabilísticos, etc. Temos duas visões principais em PLN, Pesquisa: entender como opera a linguagem humana e Desenvolvimento: Construção de sistemas que analisem/gerem linguagem. Observe que entender um texto significa reconhecer seu contexto, fazer análise morfológica, análise sintática e análise semântica. PLN é um desafio por possuir um domínio amplo, vocabulário complexo, muitas formas de construção gramatical e muitos significados para uma expressão. Também ficamos sabendo do acontecimento que foi o chatbot Tay da microsoft. IA-Complete é um problema extremamente difícil de ser resolvido, sua dificuldade é comparada à fazer computadores tão inteligentes quanto humanos(problema central da inteligência artificial), não podem ser solucionados por nenhum algoritmo especifico, além disso atualmente não temos tecnologia suficiente para resolvê-los.
Marcelo Schirbel Gomes Introdução Sala do Professor: 517-A, torre 2 Bibliografia Jurafsky, D & Martin, J(2000) Speech and Language Processing. Avaliação Resumos por aula - 30% Prova teoria - 15/08 - 40% Projeto - 30% Prova Sub 30/08 Prova de Recuperação Q3/2019 Prova Teorica Sobre os conceitos vistos em aula Projeto \- Mini relatorio 1 - 1 pagina - 27/06 \- Mini relatorio 2 - 3 páginas - 25/07 \- Mini relatório 3 - 5 páginas - 19/08 \- Apresentacao oral(15min) - 22, 26, 28 e 30/08 Escolher um artigo para aplicar conceitos de PNL O artigo: 1\. deve ser publicado depois de 2010 2\. numero de citacoes com mais ou 6 3\. mais de 6 paginas 4\. codigo fonte nao disponivel 5\. grupos de 4 pessoas 6\. feitos em python 7\. nosso codigo e fonte de dados devem ser disponibilizados Materiais Vamos usar o Python, e especificamente o Jupyter Notebook. Conceitos de Listas, Matrizes e Dicionários. Resumo Aula 01 - NLP Processamento de Linguagem Natural tem relação com atividades que envolvam a linguagem humana. Linguagem Artificial: Java, C, Python Linguagem Natural: Linguagens faladas/escritas por pessoas humanas. Objetivo Construir mecanismos artificiais que permitam o entendimento de linguagem natural para realizar taregas ou aplicações próximas ao entendimento humano Tópicos associados a PLN 1\. tradução 2\. reconhecimento 3\. ia/ml 4\. determinação 5\. análise semantica e sintática 6\. pesquisas Exemplo Comando ```wc``` no bash do Linux. Esse comando é utilizado para fazer contagem, seja de palavras, caracteres ou linhas. Por exemplo: ``` ps -ef|wc -l ``` Outro exemplo é a resposta que o Google dá na barra de pesquisa. Como por exemplo "independencia brasil". O Google reconhece as palavras recebidas e consegue retornar uma data específica. Isso funciona também com placares de futebol, temperatura e etc. Por trás do input, existe uma máquina fazendo o reconhecimento e trazendo uma resposta. E é notável que é possível fazer essa pergunta de diferentes formas: \- "data da independencia do brasil" \- "independencia do brasil" Ambas retornam a mesma resposta. Perguntas mais complexas Como por exemplo, "O que os cientistas pensam sobre a teoria da terra plana?" Esse tipo de pergunta é complexa demais para um sistema encontrar uma resposta única e correta. Existem ferramentas pra isso, como Alexa, Siri e outras Buscas usando termos ou palavras-chave Relativamente fácil para as plataformas atuais Os sistemas clássicos usaram termos simples Bucas usando perguntas completas Relativamente dificil São necessaios resolução de inferências e outras técnicas de lógica O que é NLP? É uma subárea da área de inteligencia artifical e linguistica Definido como processamento automatico ou semi-automatico da linguagem humana PLN é associado com: 1\. Linguistica computacionaç 2\. Tecnologia de linguagem 3\. Engenharia da linguagem Passos para entender um texto 1\. entender o contexto 2\. analise morfologica 3\. analise sintatica 4\. analise semantica IA-complete é um campo de estudo da IA que trata dos problemas mais difíceis, ou seja, a dificuldade computacional deles é como tratar computadores tão inteligentes como pessoas. Um simples algoritmo(P) não pode ser capaz de resolver esse problema. Também cabe no escopo o tratar com circunstâncias inexperadas e problemas reais.
Willian Teruya Kimura 03/06/2019 A primeira aula de PLN (Processamento da Linguagem Natural) apresentou, inicialmente, como será realizado a avaliação no decorrer do quadrimestre. A disciplina apresenta três meios de avaliação: 1 – Entregas de resumos com tamanho variando entre 250 e 500 caracteres cujo tema se refere à última aula dada pelo professor, com o intuito de ser um material de referência de estudo, tanto para o aluno responsável pela construção do resumo, assim como os colegas, que terão acesso ao mesmo. Tais entregas terão valor de 30% na nota final. 2 – Uma prova única abordando todos os conceitos apresentados na disciplina durante o quadrimestre. A prova será realizada no dia 15/08 e terá um valor equivalente a 40% da nota final. 3 – O curso terá um projeto em grupo (composto por 4 membros), cujo objetivo será analisar um artigo científico referente ao tema de PLN, se utilizando de técnicas referentes ao mesmo tema, que serão aprendidas no decorrer do quadrimestre. A linguagem utilizada será o Python, e a avaliação será dividida em 4 etapas: 1 – Mini relatório, com uma página, que equivalerá a 10% da nota do projeto, e a entrega será no dia 27/06; 2 – Mini relatório com três páginas, que equivalerá a 20% da nota do projeto, cujo prazo é no dia 25/07; 3 – Mini relatório com cinco páginas, que equivalerá a 50% da nota do projeto, cujo prazo é no dia 19/08; 4 – Apresentação oral, que será uma apresentação ao professor marcado individualmente, e terá os valores finais do 20%. Resumo da Introdução O Processamento da linguagem Natural é uma subárea referente à Inteligência Artificial e Linguística, em que se refere ao estudo de criação de mecanismos artificiais, no caso computacionais, que visem o entendimento de linguagem natural (falada ou escrita por humanos) e, a partir disso, realizar aplicações que assimilem o máximo possível da compreensão humana. A partir dos estudos de PLN, é possível realizar funções, por exemplo, de sistemas de respostas de pesquisa, como o realizado pelo Google, que realiza buscas por meios de palavras-chaves, cuja dificuldade é menor e é a tecnologia mais aplicada nas plataformas atuais, ou também por perguntas complexas, em que a dificuldade aumenta e será necessário resultados de uma síntese de resultados provenientes de diferentes fontes. O que é AI-Complete? Como analogia aos princípios dos problemas NP referentes a análise de algoritmo, AI-Complete é usado, segundo MIT e Stanford, para descrever os problemas e subproblemas referentes a Inteligência Artificial a fim de descrever se a solução pressupõe uma solução “forte de IA”. Um problema AI-Complete é, em outras palavras, muito difícil. Um exemplo de tal problema são: o “O problema de visão”, em que se trata da construção de um sistema que pode enxergar da mesma maneira que um humano, e “O Problema da Linguagem Natural”, que, no caso, é desenvolver uma aplicação que entende e fala a linguagem natural de maneira similar a um humano.
Rodrigo Akiyama Abrantes Resumo da aula 1 Formas de avaliação A nota final da disciplina consistirá de três módulos de avaliação. * Resumos, contendo de 250 à 500 palavras, de cada aula. Ao fim, contará para 30% da nota final. * Uma prova única, que será realizada no dia 15/08/2019. Contará para 40% da nota final * Um projeto, que terá 3 entregas parciais de mini-relatórios além de uma apresentação. Ele deverá empregar uma das técnicas de PLN e conter uma implementação em forma de programação destes. Seguem as datas das entregas do projeto: 1. Entrega 1: 1 página valendo 10% da nota do projeto. Entregar no dia 27/06. 2. Entrega 2: 3 páginas valendo 20% da nota do projeto. Entregar no dia 25/07. 3. Entrega 3: 5 páginas valendo 50% da nota do projeto. Entregar no dia 19/08. 4. Apresentação: Ocorrerá nas aulas entre o período do dia 22 à 30/08. Ela deverá ter 15 minutos de duração e valerá 20% da nota final do projeto. Além disto, foram definidas algumas regras para a execução do projeto. Os artigos utilizados como referência devem datar de, no mínimo, 2011 e possuir no mínimo 6 citações. Devem conter também no mínimo 6 páginas. O grupo do projeto deve conter no máximo 4 pessoas, o código deve ser escrito em Python e o código fonte e os dados coletados devem ser disponibilizados em anexo ao relatório final. Introdução O acrônimo PLN refere-se a Processamento de Linguagem Natural, que possuem relação com atividades que envolvam a linguagem humana como textos e sons. A partir dela criam-se mecanismos computacionais que permitam a interpretação da linguagem humana e proporcionar formas de interação que a simule. Um exemplo disto são os chatbots, que comumente fornecem serviços básicos de suporte ao cliente. Estes tipos de sistemas podem possuir diversos graus de complexidade, onde o mais simples baseia-se na identificação de palavras ou termos chaves. Os mais sofisticados conseguirão realizar a interpretação de frases completas, realizando buscas semânticas. A busca pelo significado da frase é, inclusive, um dos maiores desafios da área de pesquisa em PLN já que é difícil obter significados como o sarcasmo ou a ironia ao se analisar um fragmento de texto ou uma frase isoladamente. Devido a isso, a inteligência artificial é uma área na qual a PLN possui grande interação e, de certa forma, dependência, pois com o auxílio dela é que se torna possível criar ferramentas inteligentes que sejam capazes de aprender de fato a linguagem humana, com todas as suas particularidades. O que é IA-Complete? IA-Complete é um termo utilizado para descrever problemas ou subproblemas na área de inteligência artificial, indicando que a solução deve pre-supor a existência de uma solução para poderosos sistemas de inteligência artificial. Ou seja, ele supõe em sua solução, que exista um sistema de IA sofisticado o suficiente e que este seja aplicado no método proposto de alguma forma.
Humberto Vagner Tondinelli Correa O curso Processamento de Linguagem Natural será ministrado pelo Prof. Dr. Jesús P. Mena Chalco, considerando a seguinte ementa: \- Introdução ao processamento de linguagem natural. \- Processamento sintático. \- Técnicas de análise (parsing). \- Gramáticas. \- Interpretação semântica. \- Processamento de discurso. \- Aplicações. Onde, nas aulas, teremos uma introdução aos conceitos básicos necessários para compreensão de tópicos mais avançados. A avaliação será feita em três partes: \- Resumos por aula, que constituirão 30% da nota final. Os resumos deverão ser realizados e entregues em até 48h após a aula. \- Uma prova teórica, onde serão abordados os assuntos vistos em sala de aula, que será aplicada no dia 15/08, que constituirá 40% da nota final. \- Um projeto formado por três mini relatórios e uma apresentação oral, que constituirá 30% da nota final. O projeto deverá ser feito em grupo de quatro pessoas e constituirá do estudo e implementação (em Python) de um artigo científico relacionado com um ou mais tópicos de processamento de linguagem natural. Aula 01 - Introdução: Podemos separar as linguagens em dois tipos: \- Linguagem artificial, que são as linguagens interpretadas pela máquina (Javascript, Java, Python, binário, etc...). \- Linguagem natural, que é a linguagem falada ou escrita por humanos. Processamento de linguagem natural tem relação com atividades que envolvam a linguagem humana e seu objetivo é construir mecanismos artificiais (utilizando-se das linguagens artificiais) que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações próximas ao entendimento humano. Processamento de Linguagem Natural é uma subárea da inteligência artificial e linguística, definido como processamento automático ou semi automático da linguagem humana. Diversas áreas estão relacionadas com PLN, como aprendizado de máquina e buscas. PLN é comumente associado com linguística computacional, tecnologia da linguagem e engenharia da linguagem. Nessa disciplina usaremos o termo PLN de forma genérica. Dentro da ciência da computação PLN está associada com compiladores, autômatos, prova de teoremas, modelos probabilísticos, aprendizado de máquina, interação humano-computador e inteligência artificial. Os objetivos de PLN podem ser separados em: Objetivo de pesquisa, onde o foco é entender como opera a linguagem humana e objetivo de desenvolvimento, onde o foco é no desenvolvimento de sistemas que analisem ou gerem a linguagem, de forma a aproximar o homem da máquina. Entretanto, a linguagem humana é difícil de entender. Entender um texto, por exemplo, exige reconhecimento do contexto, análise morfológica, análise sintática e análise semântica. A linguagem humana é muito vasta, possui uma complexidade muito grande, variações e até mesmo palavras que podem ter seu sentido modificado de acordo com a entonação em que é falada ou pelo humor da pessoa (casos de sarcasmo, ironia, trocadilhos). Assim como a visão computacional o entendimento perfeito da linguagem é um problema AI-complete (um problema que exige uma inteligência artificial capaz de realizar qualquer tarefa intelectual que um humano poderia realizar, ou seja, a máquina possuiria inteligência igual ou superior a humana, um problema que não é resolvível por um algoritmo trivial de IA). Humberto Tondinelli, 11024213
Paula Keiko Miyashita Durante a aula de Processamento de Linguagem Natural do dia 3 de Junho foram abordados três principais tópicos. A primeira parte da aula introduziu os métodos de avaliação adotados para a disciplina: Resumos de cada aula, prova única e Projeto. Os resumos de cada aula devem ser entregues via tidia num prazo de até 48 horas após o término da aula. Somente alunos que estiverem presentes na aula e assinarem a lista terão seu resumo considerado para correção. Todo os resumos ficarão disponíveis posteriormente para auxílio nos estudos. O peso desta avaliação é de 30%. A prova será no dia 15 de Agosto e terá peso de 40% sobre a nota final. O projeto deverá reproduzir a aplicação de uma técnica de Processamento de Linguagem Natural de uma publicação escolhida pelo grupo. As exigências para a escolha da publicação são de que esta deve ter sido publicada após 2010, possuir pelo menos 6 páginas, possuir pelo menos 6 citações e também não deve disponibilizar seu código fonte, pois sua implementação é parte do projeto. Também devem ser entregues três relatórios: o primeiro deverá conter uma página e ser entregue no dia 27 de Junho (representa 10% da nota final do projeto), o segundo deverá conter três páginas e ser entregue no dia 25 de Julho (representa 20% da nota final do projeto) e o terceiro deverá conter 5 páginas e ser entregue no dia 19 de Agosto (representa 50% da nota final do projeto). Os grupos deverão ser compostos por 4 alunos e as apresentações serão realizadas conforme horário marcado com professor nos dias 22, 26, 28 e 30 de Agosto. A apresentação deve ter duração médias de 15 minutos e representa 20% da nota final do projeto, o código deve ser desenvolvido em Python e entregue. Em seguida foi realizada uma pequena introdução à disciplina. Comentou-se sobre o objetivo do processamento de linguagem natural, que é a construção de mecanismos artificiais que permitam o entendimento de linguagem natural. Foram também abordados exemplos de sistemas de respostas como Google, Siri e WolframAlpha. PLN é uma subárea de inteligência artificial e linguística que realiza o processamento automático ou semiautomático da linguagem humana. Existem duas visões da área, a área de pesquisa (procura entender como operar com a linguagem humana) e a área de desenvolvimento (procura reduzir a distância entre homem e máquina pela construção de sistemas que analisam/geram linguagem). PLN ainda é um desafio devido à grandes diferenças entre a PLN e a capacidade de processamento de informação e características como sarcasmo e trocadilhos. O entendimento perfeito da linguagem é um problema conhecido como “IA- Complete”. Um problema considerado “IA-Complete” é um problema que, ao ser resolvido, tornaria os computadores tão inteligentes quanto pessoa. Ou seja, são problemas muito complexos que atualmente não podem ser resolvidos.
Leonardo Nascimento A disciplina Processamento de Linguagem Natural (PLN) tem como objetivo a introdução dos conceitos básicos necessários para a compreensão de tópicos mais avançados da área. Serão apresentadas técnicas de análise sintática, análise estatística, análise de dependências e análise semântica, além de gramáticas, processamento de discurso e aplicações. A avaliação será composta por três quesitos: resumos de aula, prova teórica e projeto. Para ser aprovado, nenhum dos quesitos pode ter nota menor do que 5. Os resumos de aula representam 30% da nota final, devem conter entre 250 e 500 palavras e ser entregues pelo Tidia em até 48 horas após a aula. A prova teórica é única, será realizada no dia 15 de agosto, e representa 40% da nota final. A prova substitutiva será no dia 30 de agosto. O projeto representa 30% da nota final, será composto pela nota da apresentação e a nota dos relatórios 1, 2 e 3. O projeto tem como proposta o estudo e a implementação de um artigo científico relacionado a tópicos de PLN. Na entrega do relatório 1, no dia 27 de junho, correspondendo a 10% da nota do projeto, espera-se uma introdução ao artigo escolhido. Na entrega do relatório 2, no dia 25 de julho, correspondendo a 20% da nota do projeto, espera-se um pouco mais de aprofundamento e resultados preliminares. Já na entrega do relatório 3, no dia 19 de agosto, correspondendo a 50% da nota do projeto, espera-se o trabalho completo no formato a ser compartilhado. A apresentação do projeto é oral e deve ter duração de aproximadamente 15 minutos. Os dias reservados para apresentação são 22, 26, 28 e 30 de agosto. PLN é uma subárea de Inteligência Artificial e Linguística, definida como o processamento automático da linguagem humana, i.e., a linguagem falada ou escrita por seres humanos, e tem como objetivo construir mecanismos que consigam fazer com que essa linguagem seja entendida por máquinas, contribuindo para reduzir a distância entre o ser humano e a máquina. Exemplos de PLN em sistemas de busca são: a busca por termos ou palavras-chave e a busca por perguntas completas. A busca por termos ou palavras-chave é algo relativamente fácil para as ferramentas de busca atuais, onde para nós é trivial obter a temperatura de uma cidade em qualquer dia da semana sendo respondido prontamente, por exemplo. Todavia, a busca por perguntas completas, onde é necessária a resolução de inferências, síntese de diferentes fontes e resumo de informações, continua sendo uma tarefa difícil. Ainda, vale notar que o entendimento perfeito da linguagem é um problema conhecido como IA-completo, o que sugere que a dificuldade de resolver esses problemas computacionalmente é equivalente a resolver o problema central da Inteligência Artificial, i.e., fazer com que máquinas sejam tão inteligentes quanto seres humanos.
Brian Alves Andreossi Processamento da Linguagem Natural Aula 0 Professor Dr. Jesus Mena Chalco \--- Ementa Introdução ao processamento de linguagem Natural Processamento sintático Técnicas de análise (parsing) Gramáticas Interpretação semântica Processamento de discurso. Aplicações \--- Livros Speech and Language Processing (Jurafsky & Martin) \--- Avaliações | Avaliação | Porcentagem | Obs | | Resumos por Aula | 30% | | |Prova de teoria (única) | 40%| 15/08| |Projeto (relatórios + apresentação) | 30% | | | \--- Explicação das avaliações Redações Redações de 250 a 500 palavras (apenas texto sem formato). Envio pelo tidia (em ate 48h) Todos os resumos serão publicados Projeto Mini-relatórios | Mini-relatórios | Páginas | Valor | Data | | Mini relatório 1 | 1 | 10% | 27/06 | | Mini relatório 2 | 3 | 20% | 25/07 | | Mini relatório 3 | 5 | 50% | 19/08 | | Apresentações Orais | 15min | 20% | 22, 26, 28 e 30/08 | \--- Linguagem de Programação Python Jupyter Basicamente Listas, Matrizes e Dicionários \--- Aula 00 Ementa Introdução ao processamento de linguagem Natural Processamento sintático Técnicas de análise (parsing) Gramáticas Interpretação semântica Processamento de discurso. Aplicações Avaliações | Avaliação | Porcentagem | Obs | | Resumos por Aula | 30% | | |Prova de teoria (única) | 40%| 15/08| |Projeto (relatórios + apresentação) | 30% | | | \--- Motivação PLN tem relação com atividades que envolvam a linguagem humana. Linguagens Artificiais: Python, C, Java Natural: Linguagem falada ou escrita por humanos. Objetivo Construir mecanismos artificiais (computadoras) que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações "próximas" ao entendimento humano. Alguns Tópicos Associados Evaluation Language Rules Translation Recognition Algorithms \--- Exemplo de Sistemas de respostas Usando termos ou palavras-chave Relativamente fácil Sistemas clássicos usaram termos simples Usando perguntas completas Relativamente difícil \--- Alguns Exemplos: WolframAlpha Siri Cortana \--- O que é de fato PLN? É uma subárea de Inteligencia Artificial e Linguística. Definido como processamento automático ou semi-automático da linguagem humana. É comumente associado com: Linguística Computacional Tecnologia da Linguagem Engenharia da Linguagem Linguagem é comumente utilizada em contraste com Fala (Speech) Tecnologia de fala e da linguagem. Duas visões de PLN Entender como opera a linguagem humana (escrita ou falada) Cnstrução de sistemas que analisem/gerem linguagem Reduzir a brecha homem-máquina. Porque PLN é difícil? A linguagem humana é difícil de entender A lingaugem é aprendida intuitivamente (fácil para crianças, difícil para computadores) Dificuldades: Como lidar com sarcasmo? Como lidar com ironia? Como lidar com gírias? Assim como a visao computacional, entendimento perfeito da linguagem é um problema conhecido como "AI-Complete", ou "AI-Hard" O que significa "AI-Complete"? AI-Complete em TI é usado para descrever problemas ou resultados que possuíriam em tese um forte sistema de inteligência Artificial em loco, ou seja, é ser capaz de colocar junto um sistema computacional que funciona num nível tão alto quanto o humano. Problemas de AI-complete são aqueles que são dificeis demais para serem alcançados/resolvidos pelo uso de algoritmos convencionais.
Rodrigo Hiroaki Ideyama Nome: Rodrigo Hiroaki Ideyama RA: 11042714 Resumo Aula 1 No começo da aula, o ilustríssimo professor Jesus se apresentou ao falar da sua formação e sua área de pesquisa. Logo, em seguida, mostrou o crescimento exponencial dos dados gerados no mundo, demonstrando que em 2020 teremos de dados 35 zettabytes, porém grande parte deles não serão utilizados. Foi comentado sobre os tópicos que serão abordados na disciplina e dos principais recursos que estarão disponíveis para a consulta dos alunos para um melhor aproveitamento (Tidia, site do professor e bibliografia). As formas de avaliação em Processamento de Linguagem Natural será da seguinte forma: * (A) Resumos por aulas ? 30% * (B) Prova de teoria (única): 15/08 ? 40% * (C) Projeto (relatórios+apresentação) ? 30% * Prova substitutiva: 30/08 * Prova de recuperação: Q3/2019 Obs.: Para aprovar na disciplina não pode reprovar em nenhum dos 3 quesitos (A,B,C) Os resumos terão que ter de 250 a 500 palavras sem formatação e serem enviados pelo Tidia até 48h após cada aula. Eles serão publicados na página da disciplina. Terá somente uma única prova onde será cobrado os conceitos vistos em aula. O projeto está dividido da seguinte forma para sua avaliação: * Mini-relatório 1 (1 página – 10%): 27/06 * Mini-relatório 2 (3 páginas – 20%): 25/07 * Mini-relatório 3 (5 páginas – 50%): 19/08 * Apresentações orais (15min -20%): 22, 26, 28 e 30/08 Resumidamente, é colocar em prática algum artigo científico relacionado a um ou mais tópicos de Processamento de Linguagem Natural. Durante as aulas práticas, serão usados o jupyter notebook e a linguagem de programação Python. Depois do término da explicação de como será o lecionação da disciplina, o professor começou a dar a introdução do processamento da linguagem natural. Primeiramente, dizendo que PLN é o estudo para desenvolvimento de aplicações que entendam a linguagem humana por meio da linguagem artificial (java, python, C, etc.). Depois dando exemplos de onde é aplicado essa subárea da inteligência artificial, como busca semântica. Com base nisso, mostrou o quanto é difícil realizar uma tarefa que envolva PLN, dando o exemplo do chatbot da Microsoft que foi corrompido pelos usuários do Twitter. Devido a essa dificuldade no entendimento perfeito da linguagem, é classificada como IA-complete. Por definição, AI-Complete é um termo que foi designado para expressar alto nível de complexidade de um problema de inteligência artificial para conseguir ser resolvido, obedecendo as seguintes propriedades: * É um conjunto de problemas de inteligência artificial. * Qualquer problema de IA que pode ser convertido no problema AI-Complete por alguns algoritmos de tempo polinomial.
Tamiris Gabriele da Silva Lira Nesse primeiro encontro o professor se apresentou e foi abordado como será o desenrolar da disciplina daqui para frente. Deste modo, as aulas acontecerão todas as segundas e quintas, com as quintas sendo usadas, em sua maioria, para aulas práticas. A avaliação será composta, basicamente, de três partes: uma única prova, resumos e um projeto. A prova acontecerá no dia 15 de agosto, e avaliará a parte teórica da disciplina. Tal avaliação servirá para compor 40% do conceito final. Os resumos deverão possuir de duzentas e cinquenta até quinhentas palavras, devem ser entregues em até quarenta e oito horas após a aula e seu conteúdo tem a incumbência de mostrar os pontos principais da aula a que ele se refere. Esses resumos contarão por 30% do conceito final da disciplina. Por fim, o projeto contará pelos 30% restantes do conceito final e serão feitos em grupos de 4 pessoas. Esse projeto deverá implementar um artigo científico sobre Processamento de Linguagem Natural (utilizando a linguagem Python) que possui alguma relevância e, portanto, já foi citado ao menos seis vezes e possui ao menos seis páginas. O projeto será composto por três mini- relatórios entregues no decorrer da disciplina e uma apresentação oral, para o professor, ao final de agosto. Após essa breve explicação sobre o método de avaliação, uma introdução ao processamento de linguagem natural (PLN) foi iniciada. Os pontos principais dessa introdução envolveram a diferença entre as linguagens artificiais (usadas pelo computador) para a linguagem natural (falada ou escrita para e por humanos) e que o objetivo principal de PLN, que é uma subárea de Inteligência Artificial e da Linguística, é encontrar maneiras artificiais para entender e processar linguagens naturais. Dessa forma, muitos sistemas já usam PLN. O mecanismo de pesquisas do Google, por exemplo, produz respostas eficientes para perguntas simples que usam certas palavras-chave. O mecanismo usado pelo Wolfram Alpha, por sua vez, é um dos mais refinados em questão de produzir respostas para perguntas feitas por um humano. Como a linguagem utilizada por seres humanos é extremamente complexa por usar inúmeros trocadilhos, ironia, sarcasmo e possuir, por vezes, diversos significados para uma mesma coisa, PLN é extremamente difícil. Por isso, o entendimento perfeito da linguagem é complexo e, nesse contexto, um problema IA-Complete, o que significa que é um problema difícil que não pode ser resolvido apenas por máquinas ou um algoritmo simples já que, por enquanto, para compreender todas as nuances das linguagens naturais ainda é necessária a ajuda de um humano.
Matheus Tulio Pereira da Cruz No começo da aula tivemos uma breve explicação o porque estamos estudando a matéria. Estamos sob a motivação de que hoje me dia estamos vivendo um momento onde os dados estão sendo cada vez mais relevantes, estamos gerando cada vez mais dados. Acontece que estamos começando a perceber que a importância dos dados não é gerá-los e sim analisá-los. Logo depois da breve explicação do porque da matéria, o professor se apresentou de forma breve, falou sobre sua formação e onde fica sua sala. Depois partimos para a bibliografia recomendada e tivemos o autor XXXXX, ele está fazendo sua terceira edição do livro e possui suas versões em pdf no próprio site do autor. A forma de avaliação será divida em três partes: \- Resumos das aulas (30%): Devem ser entregues no tidia até 48h após a aula. \- Prova única (40%). \- Projeto e apresentação (30%). O projeto será implementar um artigo já publicado que siga uma sério de requisições, como por exemplo: \- Ter sido citada pelo menos 6 vezes. \- Ter pelomenos 6 páginas. Início da matéria de fato Existe uma diferença entre linguagem artificial (Java, Python, C, ...) e linguagem natural (Fala e escrita). Nosso objetivo é usar linguagens artificiais para intrepretar de forma correta as linguagens naturais. Ferramenta de processamento de linguagem: wc (Sistemas operacionais como linux e unix) Vamos estudar o que o humano está querendo quando ele faz uma pergunta com uma sequência de palavras. Diferentes formas da mesma pergunta devem obter a mesma resposta. Queremos entender como o google consegue dar as respostas que temos quando jogar uma pergunta lá. Dois tipos de sistemas de resposta: Um que busca através de termos ou palavras-chave e outro que busca através de perguntas completas. PLN é a intersecção de duas áreas, a área de Inteligência Artificial e a área de Linguística. Também definido como pricessamento automático ou semi- automático de linguagem humana. Entendimento de contexto, análise morfológica, Análise Sintática e Análise semântica. Esses são os passos que devemos fazer para compreender um texto. Como lidar com sarcasmo e trocadilho na hora de analisar o texto? Responder a pergunta, o que significa "IA Completo"? Um problema de IA completo é um problema da área de Inteligência Artificial que é muito díficil de ser resolvido, no qual um algoritmo convencional não conseguiria resolver. Esse problema tem uma peculiariedade, normalmente se diz que, se um problema de IA completo for resolvido, então o problema de conseguir fazer uma máquina "pensar" como um humano será resolvido.
Laura Cestavo Borges Dos Santos A forma de avaliação da disciplina de Processamento de Linguagem Natural (PLN) consistirá em três abordagens. Em todas aulas terão resumos que deverão ser entregues via TIDIA nas próximas 48h e valerão 30% da nota, terá uma única prova que valerá 40% e um projeto que também valerá 30% da nota, tal projeto será dividido em mini relatórios e uma apresentação, os quais juntos compõe a nota total do projeto. Processamento de Linguagem Natural tem relação com atividades que envolvam a linguagem humana e tem como objetivo construir mecanismos artificiais, os quais permitam o entendimento de linguagem natural para realizar tarefas ou aplicações próximas ao entendimento humano. É uma subárea da área de Inteligência Artificial e Linguística e é definida como processamento automático da linguagem humana. Alguns exemplos de processador de linguagem são os sistemas de resposta como, por exemplo, o Google. O Google consegue responder perguntas fáceis, mesmo que elas sejam escritas de modos diferentes, através da busca usando termos. No entanto, ele não consegue responder perguntas mais complexas. Sistemas de resposta podem ser classificados em: os que buscam usando termos ou palavras (fácil para plataformas atuais) e os que buscam usando perguntas complexas, que é mais difícil e requer resolução de inferências, síntese e resumo de informações de diferentes fontes. Um outro tipo seriam as buscas semânticas, que é utilizado pelo Wolfram alpha. É possível notar que esse sistema, ao contrário do Google, consegue responder perguntas mais complexas. Outros exemplos que usam busca semântica são a Siri, o Google Assistant e a Cortana. Apesar de estar cada vez mais em uso, a PLN ainda é um desafio, pois tem um amplo domínio, um vocabulário complexo, várias formas de construção gramatical e uma expressão pode ter diversos significados. Em outras palavras, a linguagem humana é difícil de entender, por exemplo, como uma máquina poderia entender o sarcasmo? Em março de 2016, a Microsoft lançou um _chatbot_ , que ia manter uma conversa natural com usuário do Twitter, porém a ferramenta aprendia enquanto interagia e acabou aprendendo discursos de ódio e foi fechada. Entendimento de linguagem é um problema conhecido como IA-complete ou IA-hard. IA-complete é um termo usado para descrever problemas ou resultados que dependem de um sistema de inteligência artificial forte, ou seja, ser capaz de montar um sistema de computador que funcionasse em um nível de inteligência tão alto quanto um humano. Os profissionais descrevem os problemas AI- completes quando são muito difíceis de serem resolvidos por algoritmos tradicionais.
Diego Pereira de Lima Neste primeira aula de Processamento de Linguagem Natural foi dividida em 3 partes, apresentação e formas de avaliação da Matéria, teste de conhecimentos básicos e a introdução da matéria. Como forma de avaliação será dividida em Resumo por aula 30%, uma prova teórica valendo 40% e por fim um trabalho final em grupo onde será implementado um algoritmo com relação a PLN a partir de um artigo cientifico com mínimo de 6 páginas e 6 citações e publicado a partir de 2010. Após apresentado as formas de avaliação foi passada a ementa do curso, sendo ela a abordagem do conceito de PLN processamento sintático e técnicas de analise, gramática e semântica, processamento do discurso e aplicações. Sendo assim, foi feita uma abordagem geral do que é e onde esta inserida a matéria. Vivendo em um mundo onde atualmente empresas e pesquisas se baseiam e geram uma grande quantidade de informação menos de 0.5% é devidamente analisada e extraída dela conhecimento. Milhões de mensagens de textos e conversas são passadas diariamente pelas mídias sociais, e é onde está inserida a necessidade de processamento da linguagem, no mais a linguagem humana (desestruturada). Desta forma o objetivo do PLN é fazer que linguagens artificiais (computadores) entendam a linguagem natural, e realizem tarefas e aplicações o mais similar ao entendimento humano. Atualmente, mecanismos de busca como o google onde o usuário pesquisa tanto palavras como perguntas ou frases dispostas de varias maneiras diferentes, está evidenciado o desafio de interpreta-las todas as formas de maneira a responde-las da melhor e/ou mesma forma dependendo do caso. Sendo a intersecção da Inteligência Artificial com a linguística está PLN. E assim fazer com quem se possa automatizar por meios computacionais a interpretação da linguagem humana e construir formas de interação entre homem-máquina a partir de linguagens artificiais. Tendo a aleatoriedade presente em todos os casos de interpretação a aprendizagem para computadores não é intuitiva, e sim necessário de técnicas especificas para tal tarefa. Por fim, o termo IA-Complete é o ‘santo graal’ da inteligência artificial onde é abordado em vários filmes de ficção cientifica. Seria a forma mais humana da inteligência fazendo com que computadores sejam inteligentes tanto quanto um humano. Portanto, refere-se a IA-Complete devido a não ser um problema resolvido por um simples algoritmo. Alguns exemplos, podem ser encontrados referentes a PLN ou visão computacional sendo resolvidos pelas novas tecnologias de Inteligência artificial e técnicas mais avançadas de processamento da informação.
Eracton Ferreira Ramalho Podemos dizer que na disciplina de Processamento de linguagem natural (PLN) iremos aprender diversas formas de analisar dados, tentando fazer com que máquinas possam entender a linguagem de seres humanos. Sobre como vai funcionar o quadrimestre podemos iniciar falando que todo o conteúdo que será visto já está exposto na pagina oficial no tidia, e todos os alunos já foram previamente adicionados. Teremos 20 encontros, nos quais 4 deles estão programados para apresentações diretamente para o professor, em sua sala. A avaliação terá o peso de 30% com resumos por aula, 40% uma única prova teórica e, por fim, 30% de um projeto (relatório + apresentação). Não pode zerar em nenhum desses quesitos para ser aprovado na disciplina. Os resumos são a cada aula e devem ser postados até 48 horas após o seu término. Uma atividade simples, porém que estará disponível para todos os alunos e deve ter uma quantidade de palavras de 250 a 500. A prova será única e com todo o conteúdo. Já o projeto será necessário escolher um artigo, dentro das condições apontadas, e desenvolver um código que tenha relação com PLN. Após isso, será necessário apresentar ao professor. O trabalho será em grupo, mas a avaliação será individual. Os conceitos serão: A >= 9, B >= 7.5, C >= 6.0, D >=5.0, F <5.0. Aulas de segunda são teóricas e as aulas de quinta são práticas (levar notebook). O objetivo da PLN está em entender como funciona a linguagem humana. São estudadas formas de analisar e gerar linguagens na tentativa de diminuir a brecha entre as máquinas e os homens. É uma tarefa bem complexa, pois existem muitas variáveis para os casos, dificultando chegar com assertividade em resultados concretos. Agora entrando um pouco no conteúdo da disciplina, fica uma pergunta: O que é IA – complete? IA Complete é uma tentativa de fazer com que a inteligência artificial chegue ao nível tão alto que possa ser semelhante à habilidade de raciocínio de um ser humano. Chegar a isto pode ser complicado, pois esbarram em pontos como a consciência e também problemas de critérios éticos. Há um exemplo negativo da tentativa frustrada de criar uma conta no twitter que respondesse e fosse aprendendo com outros indivíduos na rede. O mesmo aprendeu conceitos ruins, opressores e perigosos. Sendo assim o programa foi desativado por não ter alcançado um resultado satisfatório e ter criado algo “perigoso”. Esse caso foi protagonizado pela Microsoft e durou menos de 24hs.
Lucas Kenzo Kurokawa Após a apresentação do professor, vimos uma série de informações sobre os dados no mundo com infográficos. Exaltou-se a quantidade de dados disponíveis para serem capturados e analisados ao redor do mundo. Um dado que impressiona é o trazido pelo MIT de que 99,5% dos dados nunca são analisados. Após uma breve introdução, vimos que a avaliação da disciplina Processamento de Linguagem Natural (PLN) será composta por 3 critérios de avaliação: resumos (peso 30%), prova única (peso 40%) e projeto (peso 30%), sendo que os resumos serão feitos após todas as aulas e deverão ser entregues em no máximo 48hrs após o término de cada aula. O projeto será em grupos de 4 pessoas e dividido entre 3 mini-relatórios e 1 apresentação oral. Em caso de necessidade de sub, ela ocorrerá no dia 30/08 e no caso de recuperação/exame, será realizado uma prova no próximo quadrimestre. Para ser aprovado na disciplina, o aluno não pode reprovar em nenhum dos 3 critérios de avaliação. Com isso, avançamos para a parte introdutória da disciplina, onde vimos os conceitos e definições de PLN, diferença entre linguagem artificial e natural, objetivos de PLN, quais tópicos estão relacionados, um exemplo de processador de linguagem (comando do linux “wc” para contagem de palavras, linhas, caracteres ou bytes), alguns sistemas de respostas (google, wolfram alpha) e como eles funcionam (termos/palavras-chave ou usando perguntas completas). Aprendemos também que PLN tem dependências com outros ramos da IA como: lógica, busca, representação de conhecimento e aprendizado de máquina. Como foi mostrado, PLN é uma subárea (intersecção) de inteligência artificial e linguística que busca o processamento automático (ou semi) da linguagem humana. Este ramo tem alguns obstáculos pois a linguagem humana é muito difícil de ser compreendida, por exemplo: trocadilhos e sarcasmos. Também vimos que se não tomada as devidas precauções, podemos ter uma aplicação ruim (caso do chatbot da Microsoft que aprendia não-supervisionadamente e acabou não se comportando da forma que se esperava). IA-complete é um termo de Fanya Montalvo usado analogamente ao NP-completo da teoria de complexidade computacional, que descreve a classe dos problemas mais difíceis. Este termo aparece frequentemente quando se tenta construir computadores tão inteligentes quanto as pessoas, ou seja, não é um objetivo que é alcançável simplesmente com um algoritmo específico. Geralmente ao tentarmos resolver um problema do mundo real, estes problemas são diretamente conectados com visão computacional e com compreensão de linguagem natural.
Guilherme Oliveira da Silva Resumo Aula 1 PLN Guilherme Oliveira, 11093713 A aula seguiu 3 etapas, apresentação da matéria feita pelo professor, motivação e um teste rápido de nivelamento da turma. A primeira etapa foi a apresentação do curso e as formas de avaliação, o professor se apresentou, citando sua formação e sua área de pesquisa citando alguns matérias de suas pesquisas e de sua área com o que trabalha, feito isso ele passou a apresentar o curso de forma técnica, ou seja, a emenda do curso que pretende seguir a bibliografia, ferramentas que serão usadas durante o curso os conceitos e os métodos de avaliação, durante a exposição dos métodos houve dúvidas por parte dos alunos que foram esclarecidas pelo professor que também disse ser bastante flexível em relação as avaliações. Citou cada ponto das avaliações de maneira que os alunos pudessem entender o que seria pedido em cada uma delas. Apresentou também qual linguagem de programação iremos usar durante o curso e quais conceitos dessa linguagem iremos nos focar, sendo elas, listas, matrizes e dicionários. A segunda etapa da aula foi uma motivação misturado com apresentação do curso, ou seja, o professor apresentou alguns ambientes em que o curso se aplica, num geral em como a máquina interpreta a linguagem natural dando alguns exemplos reais, como os buscadores na internet interpretam os textos introduzidos em suas caixas de textos e depois convertem isso m resultados de pesquisas de maneira que seja o que o usuário estava pesquisando, também apresentou alguns pontos em que a máquina ainda sofre dificuldades como pro exemplo perguntas mais complexas ou especificas. Após essa parte entrou-se na introdução do que é PLN, de que se trata de uma subárea da inteligência artificial, já que se trata do processamento automático da linguagem humana, mostrou também os termos associados a PLN e o que é PLN em ciência da computação, o que ela aborda em ciência da computação. Durante essa etapa também se mostrou os desafios que essa área ainda enfrenta, pois a linguagem natural não é fácil para a máquina, assim o entendimento perfeito da linguagem humana para a máquina cai num problema conhecido com IA- complete que se trata de uma campo da Ia onde se encontram os problemas mais difíceis que para que sejam solucionados requer a necessidade de resolver os problemas centrais da IA. Falou-se também um pouco dos níveis de PLN e o que teremos durante o quadrimestre.
Rafael Ribeiro Gomes da Silva Forma de avaliação: Serão realizadas 20 aulas, onde 4 serão dedicadas para a apresentação dos projetos. O conceito será dividido em três macro assuntos: Resumos por aula, uma prova teórica e assuntos relacionados ao projeto. Nenhum dos temas pode ter o conceito F para a aprovação. * Resumos por aula (30%): Para cada aula será necessário um resumo sobre os tópicos abordados. O texto será corrido e sem uma formatação específica, com a quantidade de palavras variando entre 250 a 500. O prazo para envio será de até dois dias após a aula relacionada e serão publicados no site da disciplina; * Prova (40%): Será realizada apenas uma prova em que serão abordados os conceitos de todas as aulas; * Projeto(relatórios+apresentação): O projeto poderá ser realizado em grupo, com as tarefas bem definidas entre os membros. Deverá conter uma implementação de código para um tema relacionado a Processamento de Linguagem Natural. Deve ser um artigo moderno, posterior a 2010; com pelo menos 6 páginas e citações e também não pode ter o código fonte disponível. A implementação deve ser realizada em Python. Sobre as aulas: Nas quintas-feiras, apesar de não possuirmos aula de laboratório, teremos aulas práticas de Python utilizando o jupyter. Será uma matéria introdutória para tópicos avançados de IA e PLN. Introdução: PLN é uma ramificação de IA em que tentamos aproximar a linguagem computacional da humana, para entendermos essa comunicação e facilitarmos algumas atividades. Boa parte da população interage com sistemas de PLN e não percebe, ferramentas de buscas como o GOOGLE é um exemplo de sistemas de respostas. Esse sistema pode utilizar termos/palavras-chave: São fáceis de implementar para as plataformas atuais e utilizam termos simples. Também podem utilizar perguntas completas: São difíceis de implementar e é necessário um conhecimento linguístico. Além de IA, PLN é um assunto relacionado com diversas áreas computacionais, como compiladores, modelos probabilísticos, machine learning, etc... E por possuir uma gama elevada de assuntos relacionados, também se torna complexa a sua exploração completa, porque a comunicação humana é muito complicada e compostas de figuras de linguagem, como por exemplo a ironia e trocadilhos. Além do fator humano ser algo decisivo também, pessoas mal- intencionadas podem enviesar um estudo, como vimos em um projeto da Microsoft com o Twitter. IA-Complete: É quando a IA torna-se tão complexa quanto o comportamento humano, conseguem interpretar situações da mesma forma que um humano interpretaria.
Igor Neres Trindade A Disciplina de Processamento de Linguagem Natural possuirá um sistema de avaliação dividido em três partes: resumos por aula (30%), uma prova teórica (40%) e um projeto em grupo de quatro pessoas (30%). É importante salientar que o aluno não poderá reprovar nenhuma dessas partes. O projeto será avaliado por partes também: três mini-relatórios deverão ser entregues ao decorrer do quadrimestre e o grupo deverá fazer uma apresentação oral ao final. De maneira geral, a disciplina abordará técnicas para o processamento automático da linguagem humana, a fim de entendê-la, mesmo com seus nuances e podendo, a partir disso, fazer diversas aplicações. Vimos na aula, por exemplo, como ferramentas de pesquisa utilizam esse processamento para responder perguntas, mesmo que elas estejam escritas de forma diferente. Para chegar nesse resultado, vimos que a PLN é, na verdade, a interseção de duas áreas de estudo: a Inteligência Artificial e a Linguística. Em suma, a PLN é uma tarefa difícil e entender perfeitamente a linguagem é um problema considerado “AI-Complete”. “AI-complete” é um conjunto de problemas em Inteligência Artificial cuja complexidade de resolução se mostra tão difícil que, ao resolvê-los, obteríamos computadores tão inteligentes quanto humanos. A natureza dessa complexidade gira em torno da habilidade cognitiva humana; são problemas providos de contexto e subjetividade. Processamento de Linguagem Natural é um exemplo disso, pois é muito complicado entender os nuances e subjetividades de uma frase qualquer provida de sarcasmo ou ironia. É algo mais complexo que simplesmente resolver um jogo de xadrez, por exemplo, pois nesse jogo, restringem-se as possibilidades em movimentos específicos para um contexto específico em que as peças estão e, por consequência, pode-se chegar em um consenso sobre a melhor jogada com força-bruta. A idéia desse conjunto é análoga à de NP-Completo. Define-se, inicialmente a natureza dos problemas que constituem esse conjunto: problemas que são resolvíveis através da cognitividade humana. Formaliza-se, então, que todos os elementos reduzem entre si com um algoritmo em tempo polinomial. Assim, para que um determinado problema X seja “AI-Complete”, não somente a natureza de sua complexidade deverá tanger a cognitividade humana, mas todos os outros problemas também nesse conjunto deverão ser reduzíveis X. Dessa forma, resolvendo-se qualquer um dos problemas desse conjunto, resolvemos o grande desafio da Inteligência Artificial.
Amanda Cruz Francesconi O processamento de linguagens naturais (PLN) é uma subárea que une inteligencia artificial e linguistica. O PLN consiste em utilizar o poder computacional com algoritmos desenvolvidos para tratar a linguagem humana e assim conseguir utilizar a informação contida no texto. A linguagem natural se caracteriza como aquela especificamente falada ou escrita por pessoas, diferente das linguagens artificiais que são por exemplo as usadas nas máquinas e para desenvolver softwares. Um exemplo da utilização de processamento de linguagens naturais são os sistemas de resposta, como o Google, que através de palavras individuais ou frases identifica os resultados através da correspondencia dos termos encontrados no texto escrito pelo usuário. O PLN está relacionado a vários assuntos como algoritmos, regras, linguagens, dados, exemplos, estatística, informação, entre outros. Tem relação também com as áreas de linguística computacional, tecnologia da linguagem e engenharia da linguagem. Além de ter diversar áreas se utilização como em compiladores, prova se teoremas, aprendizado de máquina, modelos probabilísticos, etc. O PLN é complicado principalmente por envolver a aleatoriedade da fala humana, uma vez que nós aprendemos a fala de uma maneira intuitiva, passo-a-passo, a máquina precisa de um input de informações que nem sempre são simples, como por exemplo sarcasmo, gírias, acentos em diferentes línguas e diferentes estilos de escrita. Um exemplo de como pode ser uma tarefa complexa foi o chatbot criado pela Microsoft que tinha como objetivo aprender com as conversas na internet e assim ser capaz de conversar de forma mais natural com os usuários, entretanto, após poucas horas essa inteligencia foi desligada por apresentar em suas conversas discursos homofóbicos, racistas e de ódio. A diferença entre PLN e a área de processamento da informação (PI) consiste que na primeira, o vocabulário pode ser complexo, ter diversas formas gramaticais, uma expressão pode ter diversos significados e o domínio é amplo, ou seja, pode ser utilizado tudo que se pode expressar. Já em PI o vocabulário deve ser simples, poucas formas gramaticais são aceitas, as expressões podem ter somente um significado e o domínio se restringe a aquilo que pode ser codificado. O PLN assim como a visão computacional é considerado um problema IA completo, que são os problemas mais dificeis da área e que não sao possíveis de serem resolvidos por um algoritmo simples.
Felipe de Campos Mesquita Resumo 1: As formas de avaliação da disciplina de Processamento de Linguagem Natural incluem resumos das aulas, prova teórica única (15/08) e projeto com elaboração de relatórios e apresentação, os itens de avaliação compõem a nota com 30%, 40% e 30%, respectivamente. A prova substitutiva ocorrerá no dia 30/08. Os resumos em forma de texto devem conter de 250 a 500 palavras e o aluno terá 48h para fazê-lo. O projeto terá 3 relatórios (com 1 página e 10% da nota, 3 páginas e 20% da nota, e 5 páginas com 50% da nota) e a apresentação oral de 15min (20% da nota). O projeto deve ser elaborado em grupos de 4 pessoas, com a escolha de um artigo recente e com citações a respeito de Processamento de Linguagem Natural para que o grupo possa implementar e reproduzir os estudos apresentados no artigo. O código do artigo não pode estar disponibilizado e o grupo deverá apresentar o código e os resultados obtidos. O projeto deverá feito usando a linguagem Python. A disciplina de Processamento de Linguagem Natural (PLN) está relacionada a tópicos que envolvam a linguagem humana, podemos pensar em PLN como uma subárea de Inteligência Artificial e Linguística. O intuito é entender os conceitos básicos e técnicas clássicas de processamento automático de linguagem humana. A área de PLN está presente em vários aspectos do cotidiano, como assistentes virtuais que processam linguagem em forma de áudio, mecanismos de busca que interpretam a linguagem e buscam respostas assertivas, também temos ferramentas de tradução de línguas, todos esses exemplos pedem por uma análise semântica e processamento de linguagem humana que vai além de buscas por palavras-chave ou simples árvores de decisão. Queremos aproximar a interação homem-máquina e as dificuldades estão relacionadas com a complexidade da linguagem natural e aspectos como sarcasmo e trocadilhos. AI-complete é uma analogia com os termos de NP-complete e NP-hard de complexidade computacional, o termo é usado para descrever problemas de inteligência artificial (AI de Artificial Intelligence) que em síntese são considerados de inteligência de nível humano. Alguns exemplos são sistemas de processamento de imagens que podem usar a visão como um ser humano, ou então processamento de linguagem natural que possa interagir tão bem quanto um humano.
Michelle Kaori Hamada A forma de avaliação da matéria de Processamento de Linguagem Natural consistirá em resumos por aula, uma prova e um projeto. Os resumos deverão conter entre 250 a 500 palavras e a sua entrega deverá ser realizada em 48 horas. A prova abordará os conceitos vistos em aula. Por fim, os grupos dos projetos serão compostos por 4 membros, haverão relatórios parciais a serem entregues em determinadas datas e uma apresentação oral de 15 minutos de cada grupo. Processamento da Linguagem Natural está relacionado às atividades que envolvam a linguagem humana. Com ela, busca-se construir mecanismos artificiais que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações "próximas" ao entendimento humano. Existem dois aspectos dentro desse contexto: a linguagem artificial e a linguagem natural, a primeira, como exemplo, podemos citar as linguagens de programação como exemplo (java, php, C, Python), já a outra a seriam a linguagem falada/escrita pelos seres humanos. Em suma, PLN é uma subárea de Inteligência Artificial e Linguística, de forma que sua definição baseia-se no processamento automático (ou semi-automático) da linguagem humana. Dentro do período de estudo veremos as técnicas básicas para esse processamento. Podemos ver PLN por meio de duas vertentes, uma é focada na pesquisa que procura entender como opera a linguagem humana seja escrita ou falada, enquanto a outra é com o objetivo no desenvolvimento, na construção de sistemas que analisem/gerem linguagem e reduza-se assim a brecha homem- máquina. A aplicação de uma PLN é complexa pois a linguagem humana é de difícil compreensão. De maneira geral, aprendemos esta intuitivamente, algo difícil para computadores, uma vez que eles não sabem lidar com sarcasmos ou trocadilhos, por exemplo. Assim, dentro das principais aplicações de PLN temos a tradução de linguagem, ela é conhecida como IA-Complete, um dos problemas mais conhecidos na área de inteligência artificial (IA). Essa aplicação objetiva realizar a tradução de texto em uma linguagem humana para outra. Para a resolução deste, faz-se necessário diferentes tipos de conhecimento dos seres humanos como a compreensão da linguagem natural, fatos e contextos do mundo real, entre outros. Ou seja, resolver uma IA-Complete seria como resolver o problema central da IA, tornar um computador tão inteligente quanto um ser humano.
Caique de Camargo Resumo aula 1: Aula introdutória sobre conceitos que visa o fomento dos alunos para que participem da disciplina, nada mais do que uma forma de tentar "vender" o que será compartilhado como algo interessante. Foi realizada toda a parte formal de descrição da disciplina, ementa e métodos de avaliação. Agora, o que é PLN e qual sua utilidade? Talvez seja o tópico central dessa primeira aula. A Linguagem Natural em si é bastante complexa. Processar e ainda compreender o que é dito pode ser algo bastante complicado. Em PLN temos algoritmos que podem ser vistos como mais básicos, ou simples, mas não menos úteis ou poderosos, como a sumarização de textos, até algoritmos mais complexos que trazem respostas mais personalizadas e com maior grau de precisão para questões menos elaboradas e objetivas, mas quando se trata de abstração o problema se torna maior e mais difícil de ser interpretado. Em aula tivemos exemplos do próprio buscador google, que já utiliza muito disso e o poderosíssimo WolframAlpha que, sinceramente, me impressiona até hoje. PLN, então, é uma subárea da Inteligência Artificial e da Linguística, e é definido como o processamento automático ou semi-automático da linguagem humana. É comumente associado com Linguística Computacional, Tecnologia de Linguagem ou Engenharia de Linguagem e dentro da Ciência da Computação pode ser associada a Compiladores (autômatos), prova de teoremas, Modelos probabilísticos, Aprendizado de máquina, Interação humano-computador, Inteligência artificial. Trabalhar com PLN é uma tarefa complexa, pois a linguagem humana em si é bastante complexa, até porque nem sempre queremos dizer aquilo que nossas palavras dizem (sarcasmo ou ironia) ou mesmo trocadilhos. Resumindo o resumo, lidar com a linguagem humana para um computador é uma tarefa nada fácil. E respondendo a ultima questão dos slides, "AI-Complete" pode ser relacionado com os problemas NP-Completo, só que da área da Inteligência Artificial. É a resolução de problemas nos quais o computador tem que ser tão inteligente quanto um humano, ou ter a capacidade de compreender e interpretar tão bem quanto a nossa raça e normalmente não podem ser resolvidos com algoritmos simples, ou únicos, mas um conjunto deles, envolvendo visão computacional e entendimento da linguagem humana e saber lidar com circunstâncias inesperadas para a resolução de problemas da vida real.
Jair Edipo Jeronimo Durante a primeira aula da disciplina Processamento de Linguagem Natural foi apresentado a ementa, a bibliografia de apoio e a forma de avaliação que será utilizada, a qual possui as seguintes três principais atividades avaliativas: os resumos por aula que consistem em 30% da nota final, uma prova de teoria que possui peso de 40% e um projeto, que possui três entregas parciais e uma apresentação no final do curso, representando os outros 30% da nota. O Processamento de Linguagem Natural está diretamente relacionado com a linguagem humana, criando mecanismos para tentar compreender a linguagem natural e realizar tarefas a partir disso. Um exemplo desse tipo de processamento, é a forma com que o Google utiliza seu sistema de pesquisa para fornecer uma resposta direta ao usuário. Nesse caso, ele avalia a entrada do usuário (que pode conter diversas variações por nossa linguagem ser ambígua) e, após isso, fornece uma resposta baseada no processamento realizado. Essa forma de “entender” a linguagem humana pode ser relativamente simples, quando se é utilizado termos ou palavras mais comuns, ou seja, a complexidade do processamento é equivalente a dificuldade de analisar a complexidade da pergunta feita. Além disso, o PLN é uma subárea da Linguística e da Inteligência Artificial e está associada com diversas áreas, como Machine Learning, Representação do Conhecimento, Buscas e Lógica. Deste modo, ao analisarmos a nossa linguagem, o processamento da mesma se torna um desafio, devido a fatores como os diferentes significados de palavras, o amplo domínio que a linguagem natural possui e as diversas formas de construção gramatical. Assim, podemos dizer que o entendimento perfeito da linguagem humana é um problema AI-Complete (análogo a NP-Complete na teoria da complexidade), o que significa que o nível de dificuldade para a resolução desse problema é equivalente à de resolver um grande conjunto de problemas da inteligência artificial que podem ser reduzidos, ou seja, só podem ser resolvidos se tornarmos os computadores tão inteligentes quanto as pessoas. Dessa forma, esse problema não pode ser solucionado por um simples algoritmo, nem pode ser reduzido a um problema mais simples e se encontra no mesmo nível de dificuldade que outros problemas famosos, como: lidar com situações inesperadas, visão computacional, o problema de Bongard, etc.
Luiz Gabriel Correia A avaliação da disciplina se dará por uma prova única teórica ao final do quadrimestre, resumos que devem ser submetidos no Tidia após cada aula e um projeto, composto de 3 mini-relatórios entregues ao longo do curso a uma apresentação oral ao final do quadrimestre. O projeto consistirá na implementação de uma solução descrita por um artigo de impacto em PLN. O Processamento de Linguagem Natural é um campo de estudo que busca construir artefatos para compreender a linguagem escrita ou falada por humanos, bem mais complexo que linguagens artificiais como as linguagens de programação.Sendo assim, é uma subárea da Inteligência Artificial e da Linguística. PLN está relacionado também o estudo de compiladores, modelos probabilísticos, aprendizado máquina, interação humano-computador e está associado com campos como linguística computacional, tecnologia da linguagem e engenharia da linguagem. De uma perspectiva de pequisa, o entendimento da linguagem humana, tanto escrita quanto falada, é o objetivo primário do PLN. Do ponto de vista de engenharia, podemos pensar na construção de sistemas de análise e geração de linguagem, como o principal objetivo. Dentre as etapas necessárias para entender um texto estão: reconhecimento do seu contexto, análise morfológica, análise sintática e análise semântica. Tal tarefa é, mesmo com as capacidades de processamento atual, bastante complicada em comparação com o processamento da informação, onde trabalhamos com um domínio limitado de codificação, um léxico simples, poucas construções gramaticais e apenas um significado para cada expressão. Em PLN, não podemos fazer nenhumas destas simplificações, já que a linguagem humana é difícil de entender, tem domínio e léxico bem mais complexos, é aprendida intuitivamente no lugar de analiticamente e possui um grande grau de ambiguidades e expressões que dependem do contexto. IA-Complete é o nome que se dá informalmente aos problemas mais difíceis em Inteligência Artificial, considerados tão difíceis quanto criar uma uma inteligência de propósito geral, uma IA Forte. Trata-se de uma analogia com os conceitos de NP-Complete e NP-Hard. Chamar um problema IA-Complete atesta a expectativa de que aquele problema não pode ser resolvido completamente por qualquer algoritmo simples em específico. NPL é um exemplo de problema IA- Complete.
Thiago Henrique Gomes Panini Nesta primeira aula, foram abordados conceitos introdutórios sobre como a disciplina será ministrada, apresentando o cronograma do curso, o calendário das aulas e também as formas de avaliação, sendo este último tópico composto por três níveis de tarefas cada qual contendo um peso na nota final: 1. Resumos por aula, responsável por 30% da nota final; 2. Prova teórica (única), responsável por 40% da nota final; 3. Projeto (relatórios e apresentação), responsável por 30% da nota final; Os resumos deverão ser entregues em até 48 horas a partir da aula a que se refere. O projeto deverá ser realizado de acordo com alguns requisitos explicados em aula, sendo estes relacionados a escolha de um artigo sobre NLP com um número mínimo de citações e páginas. Por fim, na segunda parcela da aula, foi dado início as definições envolvendo, de fato, o Processamento de Linguagem Natural. Alguns pré-requisitos foram elencados como forma de inspiração para que os alunos possam aprimorar as áreas carentes de modo a aproveitarem o curso de forma plena. Uma comparação válida com a área Processamento da Informação foi exemplificada com o objetivo de mostrar toda a extensão envolvida com o Processamento de Linguagem Natural, desde o entendimento de expressões até a designação de significados, levando em conta trocadilhos, sarcasmo, entre outras variações presentes em qualquer idioma. Um exemplo interessante mostrado pelo professor diz respeito a inteligência artificial (chatbot) criada pela Microsoft e lançada no Twitter com o objetivo de manter conversas com os usuários para aprender com esta interação. Em poucas horas, o chatbot, nomeado @TayandYou, foi corrompido pelos usuários, armazenando em seu aprendizado conteúdos racistas e homofóbicos, fato este que fez com que a Microsoft fechasse a conta. Este fato e a própria natureza do Processamento da Linguagem fazem com que esta área seja tratada como um problema IA-Complete que, em outras palavras, refere-se a problemas de extrema dificuldade, computacionalmente falando. IA-Complete ou IA-Hard são termos designados a problemas envolvendo Inteligência Artificial cuja resolução está baseada na implementação de sistemas realmente poderosos, sendo até considerados como praticamente impossíveis com o que existe de ferramental computacional nos dias atuais.
Gustavo Murayama Forma de Avaliação A disciplina de Processamento de Linguagem Natural (PLN) terá três formas de avaliação: resumos por aula, uma prova teórica e um projeto, que inclui apresentação e três mini relatórios. As notas de cada avaliação correspondem respectivamente a 30%, 40% e 30% da nota final. Os resumo serão cobrados a cada aula e terão um prazo de 48h para entrega. A submissão será feita pelo Tidia e publicada na página da disciplina. A prova teórica terá todo o conteúdo abordado da matéria. O projeto será a implementação de um artigo científico relacionado ao Processamento de Linguagem Natural, porém, com algumas restrições: a data de publicação deverá ser posterior a 2010, o número de citações deve ser maior ou igual a seis, número de páginas maior ou igual a seis e o código fonte não pode estar disponível. Introdução: Processamento de Linguagem Natural Processamento de Linguagem Natural (PLN) é uma área que intersecta os campos da inteligência artificial e linguística, que tem como objetivo o processamento automático ou semiautomático da linguagem humana (natural) por uma máquina. Há diversos sistemas que utilizam PLN de modo a interpretar e entender a semântica de uma frase construída de forma relativamente complexa (como o Google ou Wolfram Alpha), que conseguem dar uma resposta correta para perguntas construídas de maneiras diferentes. Tal complexidade se deve ao fato da nossa linguagem possuir um domínio muito amplo e com um vasto vocabulário, havendo várias formas de construções gramaticais de frases, além das interpretações e significados das mesmas que podem variar conforme contexto. Comumente associada com termos como linguística computacional, tecnologia da linguagem e engenharia da linguagem, PLN permeia diversas áreas da ciência da computação para ser possível realizar seu processamento, tais como compiladores, aprendizado de máquina e inteligência artificial. IA-complete São problemas de alta dificuldade no campo da Inteligência Artificial. Sua resolução implica resolver os problemas centrais da inteligência artificial, possibilitando a criação de máquinas tão inteligente quanto humanos. Seria possível, por exemplo, uma máquina possuir senso comum e compreensão dos sentimentos humanos, habilidades intelectuais humanas.
Fabio Figueiredo Rodrigues Na primeira aula tivemos uma introdução sobre como a disciplina será ministrada, os métodos de avaliação e uma breve explicação sobre o que é Processamento de Linguagem Natural (PLN). A avaliação está dividida em três pilares, a entrega de resumos do assunto abordado de cada aula, de 250 a 500 palavras (30%), uma prova única no dia 15/8 (40%) e um projeto (30%) devendo conter um relatório de aproximadamente cinco páginas e uma apresentação oral de 15 minutos. Nesta disciplina será utilizada a linguagem Python e o software Jypiter Notebook para o estudo e desenvolvimento das técnicas de PLN. Nas aulas de quinta-feira simularemos um laboratório em sala, e é interessante levar notebook. Sobre a matéria, tivemos uma introdução sobre o que é PLN. PLN é o processamento automático ou semi-automático de linguagem humana e tem como objetivo construir mecanismos artificiais que permitam o entendimento de linguagem natural reduzindo a brecha homem-máquina. É uma sub área de inteligência artificial e linguística e tem relação com pesquisa, lógica, machine learning e conhecimento. Temos como exemplo de PLN o Google, que interpreta as pesquisas dos usuários, e caso seja uma pergunta, ele consegue verificar e buscar por respostas. Outros exemplos são Wolfram Alfa, que é atualmente um dos mais sofisticados sistemas, Siri, Cortana e Google Assistent, e esta disciplina busca entender estes mecanismos. A PLN possui muitas barreiras e dificuldades pois a linguagem humana permite muitos significados, diferentes interpretações e é bastante complexa, dificultando o avanço nesta área. A Microsoft, por exemplo, cometeu uma falha, que ficou bastante conhecida, ao implementar a chatbot Tay, que respondia automaticamente os usuários, mas aprendeu e começou falar discursos racistas, homofóbicos e discursos de ódio. Por fim, o que significa “IA-complete”? IA-complete é como são conhecidos os problemas mais difíceis da inteligência artificial, onde a solução desses problemas pressupõe a solução da síntese de uma inteligência humana. Exemplo: construir um sistema que veja tão bem quanto um humano ou então possa entender e falar a linguagem natural humana.
Arthur Veloso Kamienski A avaliação da disciplina será feita por meio de três quesitos distintos: (i) a escrita de resumos de aula, sendo um para cada aula (19 no total), (ii) uma prova única ao final do quadrimestre sobre o conteúdo passado em aula, e (iii) um projeto, dividido em três mini-relatórios com datas de entrega espalhadas ao longo do quadrimestre e uma apresentação ao final. Linguagem natural é a linguagem de comunicação utilizada por pessoas, seja por fala ou escrita. Essa se contrapõe à linguagem artificial, caracterizada por códigos compreensíveis por máquinas (são exemplos linguagens de programação e código binário). O Processamento de Linguagem Natural, portanto, se caracteriza pela criação de mecanismos/ferramentas artificiais (isto é, inteligíveis por um computador), para realizar tarefas que se aproximem ao entendimento humano. Existem ferramentas disponíveis para a análise de textos. Um exemplo é o programa "wc", presente em sistemas Linux, que disponibiliza o número de linhas, palavras e caracteres de um texto. Existem ainda ferramentas que são capazes de responder perguntas simples, compostas por termos e chaves simples. Ferramentas que interpretam perguntas complexas abordam problemas mais difíceis, requerendo técnicas mais avançadas para seu funcionamento. O Processamento de Linguagem Natural é, portanto, a intersecção das áreas de Inteligência Artificial e da Linguística, buscando alcançar o processamento automático ou semi-automático da linguagem natural. A pesquisa em PLN busca entender a lógica da linguagem humana, enquanto o desenvolvimento em PLN busca a construção de sistemas de geração e análise deste tipo de linguagem. Por fim, nota-se que é difícil de aprender uma linguagem, sendo essa aprendida de forma intuitiva por humanos. Artifícios de linguagem como como o sarcasmo e trocadilhos são especialmente difíceis de se identificar, exemplificando a dificuldade de aprendizado da linguagem natural por um computador. Define-se, então, o Processamento de Linguagem Natural como um problema AI- Complete, isso é, um problema que não pode ser resolvido por um simples algoritmo ingênuo, sendo sua dificuldade comparável ao problema de tornar os computadores tão inteligentes como os humanos.
Alex Arantes Goncalves Uma quantidade quase imensurável de dados tem sido produzido a cada dia mais por humanos em suas interações com sistemas computacionais. Como a capacidade de coletar e armazenar dados tem incrementado cada vez mais e tornando tal coleta e armazenamento mais barata, estima-se que este incremento de quantidades de dados disponível para análise é exponencial. Análise destes dados e extração de informação é estimado em menos de 1%. Dentre as diversas aplicações de análise de dados encontra-se inteligência artificial, que pode, por sua vez, ser utilizada para processamento de linguagem natural. A disciplina de processamento de linguagem natural se propõe a estudar formas de construir mecanismos artificiais que permitam a compreensão da linguagem natural humana. A aplicação de técnicas possibilitam desenvolvimento de interfaces mais naturais entre humanos e computadores. Envolvem áreas de estudo da Inteligência Artificial e Neuro Linguística. Dentre os desafios a serem superados destacam-se ambiguidades, sarcasmo, trocadilhos, entonação e diversidade de se expressar uma mesma idéias por meios diferentes. PLN associado com linguística computacional, tecnologia da linguagem e engenharia da linguagem e está relacionado a compiladores, provas de teoremas, modelos probabilísticos, aprendizado de máquina, interação humano-computador e inteligência artificial. Como se trata de um campo de complexidade elevada, diversas técnicas têm sido estudadas visando lidar com os desafios anteriormente mencionados. Em se tratando de comunicação humana, há ainda de ser considerado um fator importante que compromete significativamente os avanços neste sentido: a própria sociedade humana. Em 2016 a Microsoft se utilizou de técnicas de aprendizado de máquina e inteligência artificial para criar um chatbot apto a aprender linguagem natural por meio de interação humana através do Twiter. Poucas horas depois do lançamento o projeto foi corrompido, o chat interagindo com humanos aprendeu inúmeros discursos racistas, homofóbicos e de ódio, resultando em um fechamento da conta sendo agora aberta a poucos usuários. A disciplina será ministrada neste quadrimestre de 24 aulas, haverá uma prova, um projeto, resumos a serem entregues depois de todas as aulas como formas de avaliação.
Lucas Ferraz Nicolau Inicialmente, foram apresentados os métodos de avaliação que serão utilizados durante a disciplina que correspondem a: resumos diários das aulas que possuam de 250 até 500 palavras (30% da nota), uma prova teórica única ao final do quadrimestre sobre os conceitos vistos em aula (40% da nota) e um projeto em grupo que corresponde relatório e apresentação (30% da nota). O projeto consiste do estudo e implementação de um artigo científico pertinente a disciplina onde será entregue um pequeno artigo em três partes, desenvolvido paralelamente com uma aplicação Python, e, ao final do curso, ocorrerá uma apresentação oral da pesquisa. Foi apresentado que o processamento de linguagem natural (PLN) se trata da área de intersecção das disciplinas de inteligência artificial e linguística tendo como objetivo a criação de mecanismos artificiais para estudar e realizar tarefas com base na linguagem natural que, por sua vez, se trata estritamente da linguagem de entendimento humano. Dentre alguns exemplos de tarefas relacionadas, foram apresentadas a busca por termos e palavras-chaves específicas e análise de perguntas completas através da realização de análises sintática e semântica. Das visões da PLN, se dividem nas pesquisas para ampliar o entendimento do funcionamento da linguagem humana, tanto na escrita quanto na fala, e no desenvolvimento de sistemas que utilizem informação na linguagem humana para fins específicos, reduzindo a distância entre humano e máquina. Dentre outros fatos, foi destacada a complexidade da PLN devido a variedade de maneiras de se expressar que a linguagem humana permite implicando, por exemplo, na dificuldade do rastreamento do significado de algum termo e na ambiguidade de interpretação de uma frase. Dado esse fato, diz-se que o problema de construir um sistema que entenda e utilize a linguagem natural como um ser humano é “AI-complete” ou “AI-hard”, isto é, a solução para este problema pressupõe a solução para o problema fundamental da inteligência artificial que é a criação de uma inteligência geral que poderia realizar qualquer tarefa intelectual de um ser humano.
Ramon Neres Teixeira Jardim Resumo 1 – Processamento de linguagem natural Na aula 1 foram apresentadas informações sobre a disciplina, sendo uma delas a forma de avaliação que será utilizada. Esta consiste em resumos das aulas, uma prova e um projeto que por sua vez tem sua nota composta por relatórios e uma apresentação. A prova vale 40% da nota enquanto os resumos e o projeto valem 30% da nota cada. Nesta aula também foi feita uma introdução do tema abordado na disciplina. Processamento de linguagem natural tem relação com a linguagem utilizada pelos seres humanos para se comunicar, que se difere, por exemplo, das linguagens de programação que são bem menos flexíveis que a linguagem natural, sendo assim muito mais fácil de ser entendida por um computador. O objetivo da disciplina é construir mecanismos artificiais para compreender linguagens naturais de forma a realizar ações parecidas com um entendimento similar ao humano. Atualmente o PLN já é aplicado em diversas situações, por exemplo, ao pesquisar por uma pergunta simples utilizando o Google, muitas vezes a própria ferramente reconhece sua pergunta e consegue destacar a resposta no topo da página, de forma que o usuário não precisa entrar em nenhuma página para procurar a resposta. Em contrapartida, ainda existem muitos desafios na área, por exemplo, perguntas complexas ainda são difíceis de reconhecer e também difíceis de se encontrar uma resposta, que muitas vezes requer uma sintetização de informações de mais de uma fonte e também, podem existir diversas interpretações para uma sentença em linguagem natural, o que deixa difícil para que máquinas compreendam o real sentido da sentença. Problemas NP-Complete são aqueles problemas que podem ser resolvidos por uma máquina de Turing não-determinística em tempo polinomial e que ao mesmo tempo sejam redutíveis ao SAT. Atualmente não se conhece uma forma de resolver problemas NP-completos de forma rápida, portanto, da mesma forma, AI-Complete é uma forma de se referir, informalmente, à problemas de inteligência artificial que são difíceis de resolver.
Lucas Monteiro de Oliveira Lucas Monteiro de Oliveira RA:11002613 O método de avaliação da disciplina de Processamento de Linguagem N tural será composto por uma mistura de avaliações práticas e teóricas. Para cada aula expositiva o aluno deve realizar um resumo do conteúdo da mesma. Cada um dos resumos deve conter entre 250 e 500 palavras e deve ser disponibilizado em texto puro, ou seja, sem nenhum tpo de formatação. O resumo deve ser enviado através do Tidia em até 48h após o termino da aula expositiva. Todos os resumos serão publicados no site oficial da disciplina para ue os memso possam ser utilizados como mateiral de estudos para todos os alunos. A soma da nota de todos os resumos valerá um total de 30%. Além dos resumos, será aplicada uma prova única que corresponderá a 40% da média final. Para completar os 30% restantes, deverão ser entregues 3 relatórios e deverá ser feita uma apresentação do projeto final. O projeto consiste em implementar o conceito abordado por um artigo científico que pode ser escolhido pelos alunos, o artigo deve ter sido públicado após 2010, deve ter sido citado pelo menos 6 vezes, deve conter pelo menos 6 páginas, e não pode ter o seu código já disponível. Além disso, o grupo deve conter no máximo 4 pessoas, sendo que o trabalho realizado por cada integrante do grupo deve ser descrito no trabalho. A implementação deve ser realizada através da linguagem de programação Python. O objetivo da disciplina de processamento de linguagem natural é conseguir construir mecanismos computacionais capazes de entender uma linguagem natural com o objetivo de conseguir realizar tarefas próximas ao entendimento humano. IA-complete consiste em uma classe de problemas de inteligência artificial que possuem um alto grau de dificuldade e uqe por isso não podem ser completamente solucionado com o conhecimento de algoritmos dominado até o presente momento. A solução de tais problemas implicaria em um programa com uma inteligência equivalente à de humanos.
Victor Conceicao Denis A disciplina “Processamento de Linguagem Natural” ministrada pelo Prof. Dr. Jesús P. Mena-Chalco. Como forma de compor a avaliação, serão entregues resumos no prazo de 48h após o término da aula, uma prova teórica que será efetuada no dia 15/08 e um projeto que é composto por projeto e apresentação, sendo que o peso de cada parte será de 30%, 40% e 30% respectivamente. Para os conceitos, serão adotados as conversões seguindo a tabela abaixo: A: maior ou igual a 9 B: maior ou igual a 7,5 e menor do que 9 C: maior ou igual a 6 e menor do que 7,5 D: maior ou igual a 5 e menor do que 6 F: menor do que 5 O processamento de linguagem natural (PLN) consiste em executar tarefas a partir de uma linguagem natural, sendo a conversa entre humanos um exemplo, podendo ser ela por linguagem falada, linguagem por sinais, a língua portuguesa dentre outras. Atualmente esse tipo de processamento já está em algumas aplicações, como por exemplo, o motor de busca da google. O usuário pode escrever uma pergunta em diversas linguagens faladas, que o motor de busca entende e responde à pergunta. Um exemplo seria fazer a pergunta “Quem era o presidente do Brasil em 2008?” e o motor de busca mostra “Luiz Inácio Lula da Silva”. Ainda neste exemplo, o motor deve dar a mesma resposta para a pergunta “Who was the president of brazil in 2008” apesar de ser linguagens diferentes. Esse processamento pode ser simples, utilizando palavras chaves por exemplo, ou pode ser complexa, quando precisa um entendimento sobre a frase como um todo ou um contexto. Por essa dificuldade em interpretar uma frase o PLN é considerado AI-Complete ou AI-Hard. Isso significa que um problema quando ele chega a um nível de dificuldade para ser solucionado em que a Inteligência Artificial (AI) seja tão inteligente quanto a inteligência humana.
Rafael Augusto Zanatta Programação de linguagem natural (PLN) * Objetivo: Construir mecanismos artificias que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações “próximas” ao entendimento humano. * O que é PLN: É uma subárea da Inteligência artificial e Linguística. Definido como processamento automático ou (Semiautomático) da linguagem humana. Avaliação: * Resumos: 30% todas as aulas até 48h após cada aula contendo de 250 a 500 palavras no formato texto puro. * Avaliação: 40% prova única 15/08/2019 * Projeto: 30% 30/08/2019 * Prova Substitutiva: 30/08/2019 * Prova de Rec: Q3/2019 Datas do Projeto: * relatório 1 (1 página – 10%): 27/06 * relatório 2 (3 páginas – 20%): 25/07 * relatório 3 (5 páginas – 50%): 19/08 * Apresentações ( 20%): 22, 26, 28 e 30/08 O projeto deverá ser um estudo e implementação de um artigo científico relacionado com um ou mais tópicos de Processamento de Linguagem Natural , deverá ter sido publicado após 2010 e conter um numero de citações maior ou igual a 6 (indicar fonte) além de um número de páginas maior ou igual a 6. O código fonte não deve estar disponível. O grupo deverá possuir 4 pessoas e será implementado na linguagem Python. AI COMPLETE O QUE É : É um campo da Inteligência artificial com os problemas mais difíceis também conhecido como AI complete ou AI Hard é equivalente a resolver o problema central da IA que é tornar-os computadores tão inteligentes quanto os humanos. Chamar um problema de AI complete reflete em um problema que não poderia ser simplesmente resolvido por um simples algoritmo o que incluiria visão computacional, compreensão da linguagem natural e outras circunstancias inesperadas que resolvem problemas do mundo real. Com a tecnologia atual os AI complete não podem ainda serem resolvidos apenas pelo computador, mas que necessitem dos humanos. Está propriedade pode ser útil, para testar a presença dos seres humanos, como os CAPTCHAs e para segurança de computadores para contornar ataques de força bruta.
Renato de Avila Lopes Forma de avaliação O conceito da matéria será formado por: resumos por aula, uma prova teórica e um projeto. Resumos: haverá um resumo por aula e a nota de todos os resumos valerá 30% do conceito final. Os resumos devem ser enviados pelo Tidia dentro do prazo estipulado e devem conter entre 250 e 500 palavras. Todos os resumos serão publicados na página da disciplina. Prova teórica única: valendo 40% do conceito que será aplicada no dia 15 de agosto, abordando os conceitos vistos em aula. Projeto: valendo 30% do conceito. A nota do projeto será composta por: Mini relatório 1, contendo uma página e peso 10% no dia 27 de junho. Mini relatório 2, contendo 3 páginas e peso 20% no dia 25 de julho. Mini relatório 3, contendo 5 páginas e peso 50% no dia 19 de agosto. Apresentação oral de 15 minutos e peso 20% nos dias 22, 26, 28 e 30 de agosto. Introdução Processamento de Linguagem Natural está relacionado com atividades que envolvam a linguagem falada e/ou escrita por pessoas. O objetivo de PNL é construir mecanismos artificiais que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações "próximas" ao entendimento humano. PNL é uma subárea de inteligência artificial e linguística. Definido como processamento automático, ou semiautomático, da linguagem humana. Está relacionado com: compiladores (autômatos), prova de teoremas, modelos probabilísticos, aprendizado de máquina, interação humano-computador, inteligência artificial. Duas visões: objetivo de pesquisa e objetivo de desenvolvimento. O que é AI-complete ? Em inteligência artificial dizer que um problema é AI-Complete implica dizer que este é tão difícil de resolver quanto resolver o problema central de inteligência artificial, ou seja, criar um computador tão inteligente quanto uma pessoa. Colocando de outra forma, problemas AI-complete não podem ser resolvidos com um determinado algoritmo simples. AI-Complete é uma analogia ao conceito de NP-Complete da teoria da complexidade computacional.
Guilherme Beo Arqueiro Processamento de Linguagem Natural Professor: Jesús P. Mena-Chalco Aluno: Guilherme Béo Arqueiro - RA: 11102313 O que é AI-Complete? AI-Complete é um termo em inglês, utilizado na computação, de forma análoga ao termo NP-Completo ou NP-Difícil, utilizado para definir de forma mais clássica o nível de dificuldade dos problemas. Dessa analogia, o campo da Inteligência Artificial utiliza o termo AI-Complete (IA-Completo) ou AI-Hard (IA-Difícil) para categorizar os problemas mais difíceis relacionados a essa área, de forma que é possível implicar que um problema IA-Completo não é resolvido por um algoritmo simples específico e deve ser necessária a solução de um problema central muito mais complexo, relacionado à Inteligência Artificial, como fazer com que computadores "enxerguem" da mesma forma que os seres humanos, ou que os computadores sejam capazes de entender e falar uma linguagem naturalmente, da mesma forma que os humanos. De maneira geral, os problemas IA-Completos atualmente não são resolvidos somente por computadores, e requerem pelo menos algum tipo de interação humana. Alguns exemplos de problemas IA-Completos são: Prevenção de Spam - em geral, esse tipo de solução é facilmente alcançada ao utilizarem pessoas para votarem em e-mails recebidos e categorizá-los como spam ou não, mas é uma tarefa complexa para ser realizada somente por Inteligência Artificial; Elaboração de conteúdo - projetos de bibliotecas e enciclopédias online, como Wikipedia, YouTube e SourceForge, por exemplo, precisam de interações de seres humanos para auxiliar na curadoria e para a própria produção do conteúdo, de forma que esse é um problema IA-Completo, já que não é possível de ser realizado somente com instruções de máquina, providas pela Inteligência Artificial. Além disso, a definição de IA-Completo não leva em conta o tempo para a solução de determinado problema, mas sim se há, ou não, a necessidade de interação de um ser humano para a solução do problema.
Marcio Jose de Carvalho A matéria de Processamento de Linguagem Natural terá três instrumentos de avaliação, sendo que uma reprovação em qualquer dos instrumentos acarreta reprovação automática: Resumos das aulas: 30% da nota final; 1 por aula, sobre o conteúdo da aula, 250 a 500 palavras, 48h para entrega no Tidia, serão publicados na página da disciplina. Prova teórica única: 40% da nota final; Projeto (relatórios + apresentação): 30% da nota final: 10%, 1 página; 20%, 3 páginas; 50%, 5 páginas; 20%, 1 apresentação oral. O tema do processamento de linguagem natural é multidisciplinar, atual e vasto, tendo uma relevância cada vez maior em um mundo que produz um volume enorme de dados, sendo uma grande parte originada nas interações humanas. O desenvolvimento de aplicações que consigam auxiliar o ser humano no dia-a- dia passa pela integração entre máquina e homem, e a interface mais natural e intuitiva é a comunicação escrita ou falada. O estudo da linguagem precede os computadores, e de fato a ideia de “linguagens” de programação deriva da ciência da linguística, enquanto formalização das estruturas da comunicação humana. Hoje, a computação facilita o estudo da comunicação natural, mas esse ainda é um problema complexo, envolvendo diversas áreas como probabilidade, inteligência artificial e aprendizado de máquina. A criação de agentes capazes de compreender a comunicação humana exige outras habilidades (entender estrutura, contexto, aprender com exemplos), e por isso se supõe que ela está além da capacidade de uma inteligência artificial que não seja equivalente a um ser humano, ou seja, uma AGI (inteligência artificial genérica). Esse tipo de problema na inteligência artificial é considerado AI-completo, ou seja, a menos de uma AGI, só é possível solucionar com auxílio de seres humanos, que no caso da linguagem assumiriam a capacidade de generalização, adaptação a novas situações, senso comum e referências sensoriais que permeiam a construção das línguas humanas e que não são quantificáveis.
Rodrigo San Martin Ignacio Gomes Um sistema AI-complete tem a capacidade de resolver problemas que necessitam de funções superiores de um ser humano para que seja executado. Esses problemas não podem ser resolvidos por algoritmos convencionais de IA pois estes não desempenham como humanos em tarefas de alto nível de complexidade em um universo não restrito. Isto é, um sistema de IA pode ter performance acima da capacidade do ser humano para resolver problemas com determinadas condições específicas. Um exemplo é um sistema de IA jogador de xadrez que tem seu universo restrito aos movimentos das peças e tamanho do tabuleiro. No entanto, para tarefas que não possuem regras nem procedimentos claros, os sistemas de AI atuais fracassam. Tarefas mundanas para o ser humano, como processamento visual, interpretação de ironia ou subjetividade não são resolvidas pelos sistemas de IA atuais e podem ser classificados como um problema IA-complete. A classificação de problemas de IA-complete pode ser erroneamente dada para problemas que ainda não foram resolvidos devido a limitação de disponibilidade de dados. Isto é, o algoritmo tradicional já existe e logo que os dados para treinamento estiverem disponíveis, o problema será solucionado com performance equivalente a de um humano. No entanto, um problema IA-complete ainda pode continuar não resolvido mesmo que um dataset hipotético com todas ocorrências e soluções já executas por humanos seja disponibilizado para o treinamento. Por exemplo, supondo que todos tweets que contiveram ironia sejam rotulados, armazenados e disponibilizados para algoritmos tradicionais. Provavelmente trechos inéditos de ironia não serão corretamente detectados por este algoritmo tradicional visto que necessitam de contexto para que sejam interpretados. Ou seja, dataset não necessariamente é uma condição limitante para que um problema seja classificado como IA-complete. Assim, o sistema artificial que consiga resolver problemas que necessitam de capacidade de abstração, possivelmente conseguirão emular capacidades humanas de interpretação de contexto, sendo classificados como Strong-AI.
Rafael Correia de Lima Nessa primeira aula de Processamento de Linguagem Natural, PLN, foi feita a apresentação da disciplina com a bibliografia, forma de avaliação e conceitos iniciais sobre o tema. O objetivo do campo de estudo em questão é a construção de mecanismos computacionais que possibilitem a compreensão da linguagem natural (escrita ou falada) humana e que sejam então capazes de realizar tarefas a partir desse entendimento. PLN é uma área derivada da Inteligência Artificial e da Linguística, associada com outros temas como linguística computacional ou tecnologia e engenharia da linguagem. Na ciência da computação, PLN se relaciona fortemente com os tópicos de modelos probabilísticos, provas de teoremas, aprendizado de máquina e interação humano-computador. PLN é uma tarefa difícil pois a linguagem humana é de difícil entendimento e aprendida de forma intuitiva, algo realizável para uma mente humana, mas não por um computador. Sarcasmo e trocadilhos são exemplos de ocorrências na linguagem humana na qual o significado das palavras foge da literalidade, gerando uma subjetividade pouco perceptível por uma máquina. Um exemplo dado para representar essa dificuldade das máquinas em aprender a linguagem humana é o do chatbot Tay, criado pela Microsoft em 2016 com o objetivo de interagir com os usuários do Twitter e aprender a partir das conversas. Em menos de um dia de funcionamento, a inteligência aprendeu comportamentos racistas, homofóbicos e de ódio. A avaliação será feita através de três componentes de nota: uma prova única ao final do quadrimestre, resumos como este a serem entregues após cada aula e um projeto de implementação prática de um artigo acadêmico sobre PLN, com os respectivos pesos de 40%, 30% e 30%. O que é AI-complete? Problemas classificados como AI-complete são os de mais difícil resolução no âmbito da inteligência artificial, e encontrar uma solução para esses problemas significaria tornar uma máquina em tão inteligente quanto um ser humano.
Marcelo de Souza Pena Na aula foi apresentada a forma de avaliação: 30% da nota será composta por resumos de cada aula entregues em até 48h, 40% em uma prova teórica e 30% em um projeto, contando relatório e apresentação, que consiste em escolher um artigo que envolva PLN para estudar e implementar. Na introdução ao conteúdo da disciplina vimos que linguagens naturais envolvem linguagem humana, falada, escrita, diferente da artificial, como linguagens de programação e que o objetivo da área de processamento de linguagem natural é construir mecanismos que entendam essa linguagem para realizar tarefas. Vimos sistemas de resposta como o do Google, busca semântica como do Wolfram Alpha, Donald ou Dom Knuth criador do TeX, processamento de linguagem natural pode ser automático ou semi-automático e tem relação com diversas áreas e conceitos da computação, principalmente aprendizado de máquina, representação do conhecimento, busca, lógica, compiladores, provas de teoremas, modelos probabilísticos e interação humano-computador. A disciplina de PLN pode ser vista como uma generalização das linguagens vistas na disciplina Processamento de Informação, uma vez que tem um domínio mais amplo, um vocabulário mais complexo, pode ter a gramática construída de muitas formas e suas expressões podem ter mais de um significado. Ainda vimos o caso do chatbot da Microsoft que após algum tempo aprendendo com usuários do Twitter, basicamente declarou que votaria no Bolsonaro. Foi nos solicitado que explicássemos o que é IA-complete, um nome inspirado no conceito NP-complete. Problemas AI-complete ou IA-completos são problemas de IA cuja dificuldade ainda não pode ser resolvida por algoritmos simples, como revisão por pares usando IA, visão computacional, entendimento de linguagem natural, lidar com circunstâncias inesperadas enquanto resolve algum problema do mundo real. Basicamente, são problemas que ainda não podem ser resolvidos sem uma inteligência humana ajudando, como o usado para identificar imagens em CAPTCHAs por exemplo.
Eduardo Haberler Cardoso Esta primeira aula foi uma aula introdutória às ideias que estão relacionadas à disciplina de processamento da linguagem natural (PLN). Em suma, PLN é um campo das ciências computacionais que é resultado da mistura das áreas de inteligência artificial e linguística. Pode ser definido também como o processamento "automático" da linguagem humana. Dentre os desafios que são enfrentados no estudo desta área, estão aqueles que envolvem a tradução da semântica da língua falada, tradução esta que muitas vezes não deriva apenas de regras gramaticais e sintaxes, mas sim de experiências e contextos particulares e situacionais que oferecem um determinado sentido àquela sentença ou expressão linguística. Como exemplo, não muito bem sucedido, foi mostrado o famoso caso da inteligência artificial da Microsoft, a Tay. De fato, a empresa criou uma inteligência artificial muito promissora, que conseguia interagir e adquirir conhecimentos de outros usuários. Porém, por conta da fronteira semântica que ainda existe entre as linguagens artificial e natural, a tecnologia da Microsoft adquiriu discursos e ideologias que propagam ódio e desrespeito. Explicando o que significa o termo IA-Completo, temos que se trata de uma analogia ao termo que deriva do estudo de complexidade, NP-Completo. NP- Completo são problemas que ainda não encontramos maneiras de resolvê-los em tempo polinomial. Além disso, caso encontremos a solução em tempo polinomial para um único problemas NP-Completo, por meio da redução, se tornaria possível solucionarmos todos os problemas da classe NP. Portanto, analogamente, os problemas IA-Completo são problemas com um alto nível de dificuldade que ainda não encontramos maneiras eficientes de resolvermos, e que, uma vez que encontremos uma maneira eficiente de resolver um deles, abriríamos portas promissoras para resolvermos outros problemas de dificuldade semelhante. Falamos também sobre as regras que serão aplicadas no quadrimestre, das datas importantes e dos requisitos desejados.
July Anne Pinheiro Aula 1: Introdução da disciplina, ementa e métodos de avaliação que serão utilizados. Métodos de avaliação A disciplina terá como forma de avaliação: * Entrega de resumo para cada aula * Desenvolvimento de um projeto em grupo com 4 integrantes * Prova avaliativa com todo o conteúdo do quadrimestre Introdução de disciplina Motivação: Relacionar atividades que envolvam a linguagem humana. Objetivo de PLN: Construir mecanismos artificiais (computadoras) que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações “próximas” ao entendimento humano. O que é PLN: É uma subárea da área de Inteligência Artificial e Linguística, definida como processamento automático ou (semiautomático) da linguagem humana. Ela relaciona essas duas áreas para melhor compreensão da linguagem humana em tarefas autônomas. Características desafiantes da área: A área de processamento de linguagem natural é desafiadora devido à dificuldade que ainda temos em análise de textos relacionados ao seu entendimento. A área de PLN possui um domínio amplo e um nível léxico complexo para análise, além de características de construção gramaticais diversas que geram múltiplos significados às expressões construídas. Diante desta complexidade de entender um texto de acordo com seu contexto, análise morfológica, análise sintática e análise semântica, a construção de mecanismos que compreendam essas características semelhantes a humanos se torna uma tarefa árdua e desafiadora. Problemas IA-Complete: Na computação os problemas possuem classificação para nível de dificuldade de solução do mesmo através da execução de algoritmos. Na área de inteligência artificial, é utilizado a nomenclatura, de forma informal, AI-complete ou AI-hard, para problemas com solução difícil. Ou seja, chamar um problema de IA-Complete, significa que o problema em questão não pode ser resolvido com um simples algoritmo específico. A dificuldade desses problemas computacionais é equivalente a solucionar o problema central da inteligência artificial - tornar os computadores tão inteligentes quanto as pessoas.
Elsio Antunes Junior A aula do dia 03/06 foi dividia em três partes. Na primeira o professor se apresenta; apresenta a disciplina, informando datas das duas provas; os pesos e a rec que será dada no próximo quadrimestre; tabela de conversão de notas e regras para o projeto de quatro pessoas e cinco páginas, divididos em três entregas de relatórios ao longo das 12 semanas em que se darão 20 aulas, seguidas de quatro dias para a apresentação do projeto. Em um segundo momento o professor aplica um pequeno questionário/diagnóstico com cinco perguntas básicas a respeito de programação, da linguagem Python e de conceitos básicos de LFA (linguagens formais). Segue-se uma pequena apresentação da matéria de Processamento de Linguagem Natural e da topificação dos temas que serão vistos durante as aulas e, por fim, o professor nos pede que apresente este resumo, constando uma pequena pesquisa sobre o termo 'AI-complete'. AI-complete refere-se a uma classe de problemas da computação, especificamente de inteligência, que não podem ser modelados em algoritmos simples sem a intervenção humana por serem dependentes de contextos complexos dificilmente computáveis, como por exemplo, percepções, nuances, repertórios filosóficos, dilemas, emoções e outras características tipicamente presentes na cultura do homem. Os especialistas citam como exemplo as traduções automáticas onde a interpretação semântica e as características impressas em cada cultura são relativamente difíceis de sumarizar em algoritmos; problemas de visão computacional, onde elementos facilmente reconhecidos pelos seres humanos oferecem grandes obstáculos para softwares; problemas relacionados a fala e outros problemas que, apesar de poderem ser processados facilmente pelo ser humano, precisariam ser, de alguma forma, traduzidos e modelados para que possam ser processados por máquinas. Uma parte destes problemas e os conceitos básicos desta matéria, segundo o professor, serão abordados nesta disciplina.
Gabriel Peterlini Pinto O processamento da linguagem natural é uma subárea da Inteligência Artificial, juntamente com o campo da Linguística, responsável pelo processamento da linguagem humana, tem como principal objetivo criar mecanismos que permitam ler, decifrar, entender e fazer sentido da linguagem natural humana de maneira a realizar e (ou) automatizar tarefas ou aplicações “próximas” ao entendimento humano. O PLN já está muito presente nos dias atuais e é um dos motores principais por trás de aplicações modernas como: pesquisas e traduções realizadas nas plataformas do Google, processamento de palavras em editores de texto como o Microsoft Word para verificação ortográfica, assistentes pessoais com reconhecimento de voz como Siri, Cortana, Alexa e também sistemas de " _call centers_ " capazes de responder requisições de um usuário automaticamente. O estudo da linguística no PLN tem suma importância, de forma que diversos conceitos se aplicam à esta forma de IA. Podemos citar como exemplo a fonologia, pelo reconhecimento dos sons, sílabas e letras que compõem as palavras, já a sintaxe e a semântica são responsáveis pelas estruturas de frase e o significado das palavras que a compõem, e a pragmática, estudo do contexto. Estas áreas, criam uma experiência mais natural e próxima da realidade para o usuário. Apesar de tudo, o processamento de linguagem natural é algo muito difícil de ser realizado devido a complexidade da linguagem humana, existem muitas particularidades e uma mesma sentença, frase ou palavra pode possuir diferentes interpretações possíveis. Por isso, problemas de linguagem natural são definidos como "AI - Complete" que, por definição, são os problemas mais difíceis de serem resolvidos na área de Inteligência Artificial, solucioná-los por completo seria equivalente a tornar uma máquina tão inteligente quanto o ser humano, ou seja, um simples e único algoritmo não é capaz de resolver tais problemas
Matheus de Oliveira Finotti Na primeira parte da aula tivemos a apresentação da disciplina, métodos de avaliação, critérios, site da disciplina, além do calendário do curso. Nesta parte de apresentação também foram mostrados alguns indicadores sobre a importância dos dados e quantidade dos dados gerados e analisados, sendo que aproximadamente 0,5% dos dados são analisados sendo que milhões são gerados a cada minuto que passa. Os critérios de avaliação se baseiam em 30% dos resumos enviados em cada aula, 40% da nota da prova e 30% do projeto em grupo. O projeto deve ser baseado em um artigo que tenha sido publicado depois de 2010, tenha no mínimo 6 páginas e no mínimo 6 citações. E será feito em Python com algumas entregas ao longo do curso. Na segunda parte tivemos a introdução da disciplina, no qual foi apresentado as motivações e alguns exemplos de aplicações (sistemas de respostas, como o Google, e semântica), o objetivo, que é fazer com que as linguagens artificiais entendam a linguagem natural, diminuindo a brecha entre homem e máquina. Passamos também pela definição de PLN que consiste em subáreas de IA e linguística sendo um processo automático ou semiautomático da linguagem humana e como se relaciona com outras áreas. Também foi mostrado os desafios encontrados (como por exemplo o quanto a linguagem humana é difícil de ser entendida). Como exemplo foi citado pelo professor o corretor ortográfico, que muitas vezes podem cometer enganos devido a formas de língua portuguesa. E por último quais são os níveis de PLN e o que veremos na disciplina ao longo do quadrimestre. IA- Complete significa o entendimento da máquina com relação aos pensamentos inteligentes dos humanos, ou seja, entender a linguagem que utilizamos, o padrão de comportamentos que temos entre outras situações.
Daniel Vieira Batista IA-completo ou IA-difícil (AI-complete e AI-hard) são termos que fazem analogia aos conceitos da teoria da complexidade computacional NP-completo e NP-difícil, foi criado por Fanya Montalvo na segunda metade do século XX. O termo designa uma classe de problemas complexos em inteligência artificial que não são resolvidos por um simples algoritmo específico, ou por um conjunto de algoritmos específicos. Na teoria da complexidade computacional os problemas são classificados com base na sua dificuldade inerente, de acordo com a quantidade de recursos, sejam estes temporais, matemáticos ou de armazenamento. Quando falamos na teoria da complexidade computacional na perspectiva da IA, a complexidade de um algoritmo é dada por uma máquina de Turing assistida por humanos. Em outras palavras, temos que dar a complexidade com uma componente do humano e uma componente da parte da máquina. A complexidade associada ao problema quando solucionado por um humano e a complexidade associada ao problema quando solucionado por uma máquina. Quando lidamos com um problema computacional que demanda uma grande variedade de habilidades intelectuais e competências cognitivas dos humanos para resolvê- lo, então espera-se que tal problema seja IA-completo ou IA-hard. Atualmente os sistemas baseados em IA só conseguem revolver problemas muito específicos e com um grau de aprendizado baixo (teoria do aprendizado estatístico) quando comparado aos humanos. Alguns exemplos de problemas IA-completo/IA-difícil: - Visão computacional: detecção de objetos, reconhecimento de objetos; - Problemas de reconhecimento de voz e áudio; - Problemas de processamento de linguagem natural: detecção de figuras de linguagem, tradução automática, entendimento de contexto, etc; Fontes: - https://en.wikipedia.org/wiki/AI- complete - http://catb.org/esr/jargon/oldversions/jarg282.txt (procure ctrl+f por AI-complete) - https://es.wikipedia.org/wiki/IA_completo
Mauro Mascarenhas de Araujo PLN - RESUMO DA AULA DE 04/06/2019 PLANEJAMENTO E NOTAS A nota final será composta por uma prova + um projeto final + resumos de aula. Prova: \- Haverá uma única prova com todo o conteúdo da disciplina no dia 15/08, de acordo com o cronograma. Resumos: \- Após cada aula, deve-se entregar um resumo da aula (até 48 horas depois) através do TIDIA em formato de texto corrido (plain TXT). Projeto: \- Dever-se-á reproduzir um experimento de um artigo científico na área de PLN: \-- O artigo deve ter o mínimo de 6 páginas e 6 citações. \-- A implementação deve ser feita em Python. INTRODUÇÃO \- Processamento de Linguagem Natural (PLN) tem relação com atividades que envolvam a linguagem humana. \-- Tentar interpretar o que os humanos falam/escrevem. \- Objetivo: Construir mecanismos artificiais para entender a linguagem para fazer tarefas de maneira "próxima" à humana. \- Processamento de linguagem (exemplos): \-- Busca usando termo ou palavra-chave: Google, Bing, Yahoo, etc. \-- Busca usando perguntas completas (complexas): WolframAlpha. \- PLN = IA ? Linguística: Processamento automático (ou semi) de linguagem humana. \- Para entender um texto precisa-se analisar: \-- Contexto. \-- Morfologia. \-- Sintaxe. \-- Semântica. (Mesmo com todas as análises, é complicado detectar sarcasmos e trocadilhos, por exemplo). PERGUNTA: O que significa "IA-Completo"? \- De acordo com um trecho retirado da Wikipedia: "IA-Completo ou IA-Difícil são termos informais no ramo de IA para descrever os problemas mais difíceis, implicando que a dificuldade computacional destes problemas é equivalente a resolver o problema central da inteligência artificial: Fazer computadores tão inteligentes quanto pessoas, ou "IA Forte". Para chamar um problema de IA- Completo, reflete uma atitude que não seria possível resolvê-la com o uso de um algoritmo específico." \-- Fonte: .
Matheus Dos Santos Pereira A matéria possui 2 sites, o da página da disciplina e o tidia, a maior parte da informação está na página, sendo as entregas feitas pelo tidia. Nas aulas será visto uma introdução sobre os conceitos básicos necessários para a compreensão dos tópicos mais avançados, relacionados a processamento de linguagem natural. Teremos 24 aulas, sendo 5 relacionada a avaliações (apresentação e prova) e 19 de conteúdo. A avaliação da disciplina será composta de um projeto com base em um artigo, obrigatoriamente tendo parte pratica reproduzível no artigo, sendo avaliado com 3 relatórios e 1 apresentação para o professor, onde será feito perguntas, aconselhado a fazer alguns slides, aproximadamente 15 minutos, 1 prova teórica de toda a matéria e resumos simples de 250-500 palavras por aula que serão publicados na página da disciplina. O projeto tem peso de 30%, a prova tem peso de 40% e os resumos de 30%, sendo que terá reprovação automática se em qualquer umas das notas forem inferiores a 5. Na terça-feira teremos aulas teóricas e nas quintas-feiras teremos as aulas práticas em sala de aula, recomendado trazer o computador. IA-Complete se refere a problemas onde o nível de complexidade é alta e seria necessário que o computador conseguisse pensar como um ser humano para resolve-lo, atualmente não temos soluções para estes problemas. Atualmente existem programas que conseguem resolver de modo simples e/ou restritos de IA- Completo. O grupo do projeto é composto por 4 pessoas, sendo que o projeto deve ser feito em python, e o código fonte e os dados devem ser disponibilizados, assim como o artigo base, o artigo possui algumas restrições de escolha que podem ser vistos nos slides da aula 00.
Yago Sorrilha Avaliação 30% Resumos por Aula 40% Prova 30% Projeto (relatórios + apresentação oral) Obs.: Para aprovar na disciplina não pode reprovar em nenhum dos itens acima Resumos: 250 a 500 palavras submetidos no TIDIA após cada aula. Prova: teórica, abordando todo o conteúdo da matéria Projeto: mini-relatórios + apresentação, reprodução prática de um artigo da área. Introdução Processamento de Linguagem Natural tem relação com atividades que envolvam a linguagem humana. Objetivo: construir mecanismos artificiais que permitam o entendimento de linguagem natural para realizar tarefas próximas ao entendimento humano. Ex.: sistemas de busca como Google, assistentes virtuais como Siri e Cortana. Busca usando termos ou palavras-chave: relativamente fácil. Busca usando perguntas completas: relativamente difícil; são necessários resolução de inferências. PLN é uma subárea que é o ponto de encontro entre a inteligência artificial e a linguística, é definida como processamento automático da linguagem humana. Linguagem é comumente usada em contraste com fala (speech); tecnologia da fala e linguagem Objetivo de Pesquisa: entender como opera a linguagem humana Objetivo de Desenvolvimento: construção de sistemas que analisem/gerem linguagem; reduzir a brecha homem-máquina PLN é um desafio devido ao fato de que a linguagem humana é difícil de entender. A linguagem é aprendida intuitivamente, o que é fácil para crianças e difícil para computadores Desafios: Como lidar com sarcasmo? E com trocadilhos? PLN é um desafio IA-Complete IA-Complete é o termo utilizado para se referir aos problemas mais difíceis na área de Inteligência Artificial. Implicando que a dificuldade de se resolver problemas como esse é equivalente a resolver o problema central da IA: fazer computadores ser tão inteligentes quanto pessoas. Isso quer dizer que um problema IA-Complete não pode ser resolvido por um algoritmo simples.
Tiago Suzukayama Forma de avaliação A avaliação será composta por resumos por: Resumos por aula, 30% Prova teórica única, 40%, Projeto, 40%, Os resumos por aula deve conter de 250 a 500 palavras, apenas o texto não formatado. Na prova teórica serão abordados os conceitos vistos em aula. Para o projeto, serão cobrados: \- Mini-relatório de uma página – 10% da nota \- Mini-relatório de três páginas – 20% da nota \- Mini-relatório cinco páginas – 50% da nota \- Apresentação oral de 15 minutos – 20% da nota O projeto consiste em estudar e implementar o algoritmo de um artigo científico relacionado com um ou mais tópicos de Processamento de Linguagem Natural. Introdução O processamento de linguagem natural (PLN) tem como objetivo diminuir a barreira entre o humano e o computador. Seu objetivo é construir mecanismos que permitam o entendimento da linguagem natural para realizar tarefas ao aplicações próximas ao entendimento humano. Um exemplo, é como a busca do Google funciona para certos resultados, como por exemplo, se você pesquisar sobre o resultado de jogos de futebol, onde o buscador entende sua pergunta e trás a informação formatada para você. Busca usando termos ou palavras-chave, como o exemplo citado, são relativamente fáceis de se implementar. O problema está em perguntas complexas, onde o contexto influencia naquilo que o locutor quer perguntar. PLN acaba sendo um desafio por alguns motivos: \- A linguagem humana é difícil de entender; \- A linguagem é aprendida intuitivamente; \- Máquinas não conseguem lidar com sarcasmo e trocadilhos; O que é IA-Complete São os problemas mais difíceis de se resolver da área de Inteligência Artificial, implicando que ao resolver estes problemas, você resolveria todos os problemas da inteligência artificial - assim como os problemas NP-Completo de análise de algoritmos.
Pedro Ricardo Bronze As formas de avaliação são fundamentalmente três: os resumos a cada aula com 48h de delay para entrega que somam 30% da nota final, o projeto final que vem subdividido em três entregas de 20%, 30% e 50% da nota do projeto que para o conceito final contribui com 30%, ao fim uma prova única baseado na matéria toda da disciplina pesa com 40%. Na primeira aula foi feita uma introdução sobre PLN, um breve histórico sobre a área e como será abordada na disciplina. "Mas que linguagem Pedro?" Galera, Python FTW. Usarlho-e-mos com o Jupyter Notebook. "E as aulas práticas?" Professor Jesus recomendou que trouxéssemos laptop afinal não há condições de enfiar 90 pessoas de verde num CPD. Não esqueçam a bateria cheia, quem quiser trazer uma régua pra ajudar os colegas será bem vindo. Por hora, that's all folks. IA-Complete: Tratam-se de problemas que não são triviais para algoritmos simples da área de aprendizado de máquina. Problemas como visão computacional, PLN assim como resolução dinâmica de problemas com alterações de circunstâncias inesperadamente se encaixam nessa classificação. No caso de PLN problemas de semântica de palavras e conjuntos de palavras em frases, entender situações como sarcasmos ou ironias também não é mera análise dos caracteres que estão ali presentes, tampouco sua ordem, quantidade ou frequência. Há a necessidade de entender o contexto, questões culturais envolvidas do que é ou não é considerado engraçado/cômico por exemplo. Estes são alguns dos exemplos que fazem com que PLN seja classificada como um problema do gênero IA-Complete e portanto justificando o por quê de PLN continuar como tema de pesquisa e de algoritmos mais complexos como Redes Neurais Profundas.
Victor Arruda Ganciar _Avaliação_ A disciplina terá 3 critérios de avaliação: * Resumos: ao final de cada aula o aluno deverá escrever um resumo sobre o que foi apresentado em sala e valerá 30% da nota final. * Prova: haverá uma avaliação ao final do curso, com todo o conteúdo abordado em sala de aula e valerá 40% da nota final. * Projeto: o projeto prática deverá ser um estudo e implementação de um artigo científico relacionado com um mais tópicos de Processamento de Linguagem Natural, desenvolvido em Python usando a plataforma Jupyter. Será dividido em 3 relatórios e uma apresentação em grupo. Este artigo deverá ter no mínimo 6 citações e pelo menos 6 páginas. _Introdução_ Processamento de Linguagem Natural tem relação com atividades que envolvem a linguagem humana e tem o objetivo de construir mecanismos artificiais que permitam o entendimento de linguagem natural para realizar tarefas ou aplicações “próximas” ao entendimento humano. Sistemas de respostas, como os utilizados nos buscadores, são exemplos de processamento de linguagem natural e podem ser categorizados em dois tipos, buscas usando termos ou palavras-chave ou buscas usando perguntas complexas, este segundo é mais difícil de implementar onde são necessários: resolução de inferências, síntese e resumo de informação de diferentes fontes. Processamento de Linguagem Natural é uma subárea da Inteligência Artificial e da Linguística, pode ser definido como o processamento automático (ou semi- automático) da linguagem humana. Assim como em Visão Computacional, o entendimento perfeito da linguagem é um problema conhecido como AI-complete, ou seja, problema de difícil resolução em Inteligência Artificial. São problemas que necessitam um processamento de tão alto nível que beiram a inteligência humana e são muito difíceis de serem solucionados utilizando algoritmos convencionais.
Carlos Eduardo Ramos A forma de avaliação da disciplina envolverá: resumos a cada aula, valendo 30% da nota; uma prova única com valor de 40%; e um projeto valendo 30%. Os resumos serão entregues via TIDIA, a prova envolverá todo o conteúdo da disciplina e o projeto será feito em grupo de 4 pessoas, sendo baseado na reprodução dos resultados de algum artigo científico. A linguagem de programação será o Python. A introdução a disciplina de Processamento de Linguagem Natural (PNL) trouxe a motivação e objetivos desta área do conhecimento, onde relacionaremos a Linguagem Natural Humana |(linguagem falada) com a linguagem Artificial (usada por máquinas), criando artifícios de linguística computacional que possam interpretar/compreender a linguagem Humana. Mapeando a área de PNL, foi apresentado que a mesma transita entre a área de Inteligência Artificial e a área de Linguística, de modo que existem duas abordagens nesta segmento, a parte de engenharia e desenvolvimento, que constrói os sistemas que trabalham com PNL e a parte de pesquisa, que visa entender os artifícios de PNL funcionam. Uma das maiores dificuldades para os sistemas de PNL esta relacionada com a linguagem humana. Por exemplo: o sarcasmo ou um trocadilho não podem ser identificados, gerando análises fora do normal. Foi também introduzido o termo _IA-Complete,_ que representa uma classe de problemas difíceis de se resolver na área de Inteligência Artificial. Estes problemas são complexos e não podem ser resolvidos com um simples algoritmo. O termo faz analogia a teoria da computação, citando a classe dos problemas NP- difícil, NP-completo, etc. Como exemplo deste tipo de problema, temos: problemas de Visão Computacional e reconhecimento de objetos; Compreensão da Linguagem Natural; etc.
Joao Victor Fontinelle Consonni O aluno de PLN será avaliado por meio de três quesitos: resumos das aulas (30%), entregues em até ~48h após cada aula; prova teórica única (40%) a ser realizada no dia 15/08; e projeto da disciplina (30%), composto por duas entregas parciais e uma entrega final, além de uma apresentação. O projeto consiste no estudo e implementação de um artigo científico relacionado com ao menos um dos tópicos da disciplina. Na última aula, além da apresentação da disciplina, foi também apresentado o conceito de Processamento de Linguagem Natural (PLN), que consiste em uma área que combina Inteligência Artificial (IA) e Linguística com o intuito de processar, de forma automática (ou semi automática) a linguagem humana, tanto falada quanto escrita. Os estudos nessa área buscam reduzir a distância entre homem e máquina, assim como construir sistemas capazes de analisar e até gerar linguagens humanas. Durante a aula também foram vistos alguns exemplos de aplicações em PLN, assim como os principais desafios da área. O processamento de linguagem natural é considerado um problema IA-completo, pois a compreensão de construção de linguagens arbitrárias exige um sistema computacional com um nível de inteligência tão alto quanto o do ser humano, ou seja, tais problemas são extremamente difíceis de serem resolvidos por meio de algoritmos convencionais. O termo foi cunhado pelo cientista da computação Fanya Montalvo como uma analogia com a classificação NP-completo da teoria da complexidade. Ainda não existem formulações matemáticas da classe IA-completo, por isso o termo é utilizado para comunicar a dificuldade qualitativa de um problema. Ao longo do curso serão abordados aspectos relacionados à aná?ise sintática e interpretação semântica de linguagens.
Mayza Cristina da Silva Resumo Aula 1 Forma de Avaliação 3 itens compõem a avaliação total: Resumos de cada aula: 30% Prova única: 40% Projeto: 30% Introdução: \- O que é PLN (Processamento de Linguagem Natural)? Ele está ligado à atividades que envolvem comunicação e linguagens humanas. Temos por linguagem natural as diversas línguas, idiomas, falados ou escritos por humanos. Já como linguagens artificiais temos como exemplo as utilizadas em programação como o java, Python, C. O PLN têm como objetivo construir mecanismos artificiais que permitam o entendimento de linguagens naturais para realizar tarefas mais próximas à realidade humana. Como mecanismo visual de aplicação de uma análise de PLN temos a Cloud Word. Algumas perguntas feitas no Google já são respondidas pela própria ferramenta. Buscas semânticas podem ser utilizadas, como no wolframAlpha. O PLN é uma subárea de Inteligência artificial e de Linguística, definido como processamento automático ou semi-automático da linguagem humana. Algumas disciplinas que se relacionam com PLN são: \- Compiladores \- Prova de teoremas \- Modelos Probabilísticos \- Aprendizado de Máquina \- Interação Humano Computador \- Inteligência artificial A linguagem humana é complexa e possui suas peculiaridades relacionadas à uso de expressões com significados ambíguos ou trocadilhos. O uso de ironia e combinação de mesmas palavras para se obter significados diferentes. O que é a IA-complete? Existem uma grande dificuldade que encontramos em IA para fazer com que os sistemas entendam acontecimentos inesperados. O IA-complete é uma maneira de classificar os problemas em IA com grande complexidade e que, no caso de aplicação de PLN, teríamos uma inteligência que compreenderia perfeitamente uma linguagem. Essa nomenclatura é análoga ao uso das classificações NP- completo ou NP-difíceis, no caso de algoritmos.
Marcela Akemi Yamashita Marcela Akemi Yamashita - RA: 21083913 Aula 1 - 03/06/19 Trata-se da aula inaugural da disciplina, onde foram apresentados datas importantes, métodos de avaliação e conceitos gerais introdutórios sobre processamento natural de linguagens. PLN tem como objetivo o uso de algoritmos para processar e analisar linguagem humana e torná-la compreensível para máquinas. PLN é um subconjunto que envolve diversas áreas, entre elas inteligência artificial e linguística. A popularidade e emprego de inteligência artificial em diversas tecnologias presentes torna PLN recorrente em nosso uso diário. A aula teve vários exemplos pertinentes aos dias atuais, como assistentes virtuais (Siri, Google Assistant, ), Google oferecendo respostas para perguntas simples, tais como “que ano a UFABC foi fundada” e até o sistema de respostas de equações e frases empregados no Wolfram Alpha. Tratam-se de exemplos maior de destaque de sistemas que empregam conceitos de PLN para interação direta entre seres humanos e máquinas. No entanto, há também exemplos malfadados: a robô Tay lançada pela Microsoft, que aprenderia interagindo com usuários no Twitter e acabou por assimilar discursos de ódio. Um dos campos centrais de Inteligência Artificial é AI Complete ou Strong AI. Tratam-se de problemas de difícil resolução pois competem ao problema central de inteligência artificial: tornar máquinas tão inteligentes quanto seres humanos. Em PLN esse problema é refletido na dificuldade de compreensão por parte das máquinas de certos discursos humanos que envolvam ambiguidades ou discursos de linguagem tais como sarcasmo. Figuras de linguagem trabalham com arranjo especial de palavras ou tonalidades que conferem as expressões significados diferentes daquele expresso literalmente. Para uma máquina é ainda difícil reconhecer e interpretar tais tipos de nuances.
Augusto Goncalves da Silva A matéria terá como método de composição da nota três diferentes tipos de atividade: 30% será de resumos entregues após as aulas; 40% virá de uma prova teórica, única; e 30% corresponderá a um projeto, a ser realizado em grupo, que abrange os temas ministrados em sala. Os conceitos serão atribuídos da seguinte maneira: A: nota ? 9; B: nota ? 7,5 e < 9; C: nota ? 6 e < 7,5; D: nota ? 5 e < 6; e F: nota < 5\. A matéria tem como objetivo o aprendizado e elaboração de aplicações utilizadas para interpretação e tradução da linguagem natural humana em linguagem artificial programada. Alguns exemplos da aplicabilidade desses sistemas: 1. Mecanismo de buscas do Google Tenta interpretar o que foi buscado e devolver um resultado, na própria página de buscas, com o resultado esperado. 2. Wolphran Alfa Ainda mais robusto que o Google, traz diversas informações sobre a interpretação do texto digitado na barra de busca. A área de Processamento da Linguagem Natural é divisível em duas partes: pesquisa e desenvolvimento. Enquanto a pesquisa foca em entender a própria linguagem (sua composição e sutilezas), o desenvolvimento é que, de fato, constrói os sistemas para a interpretação. A maior dificuldade do PLN é a existência de sentenças não-literais na comunicação humana, os como sarcasmos, e também os diversos outros fatores que mudam a mensagem a ser transmitida, como a entonação. O entendimento perfeito da linguagem natural é um problema conhecido como IA-complete. O conceito de IA-complete é a utilização de algoritmos não-padrões para a resolução de problemas que exigem um nível de complexidade de interpretação parecido com o da mente humana.
Rodolfo Azevedo Dos Santos Atualmente menos de 1% dos dados é analisado. Antigamente era difícil coletar dados, hoje em dia a dificuldade reside na análise. O foco de PLN (Processamento da Linguagem Natural) ou NLP (Natural Language Processing) é a linguagem natural humana. Linguagem artificial: Java, C, Python, etc Linguagem natural: Linguagem falada por humanos. Implementações: Ex: Interpretador de perguntas do Google (Busca Semântica). O Google retorna respostas para termos chave pesquisados. Obs: Perguntas complexas não geram resultados/respostas claras. O que de fato é PLN? É uma subárea de inteligência artificial e linguística, ou seja, é a intersecção entre as duas áreas. Termos relacionados: Linguística computacional / Tecnologia da linguagem / Engenharia da linguagem PLN possui duas visões: 1) Pesquisa 2) Engenharia Por que PLN é uma tarefa difícil? Linguagem humana é difícil de entender (contexto). Ex: Sarcasmo, trocadilho. Um erro de aplicação foi a Tay (desenvolvida pela Microsoft), tinha como objetivo aprender a partir de conversas com pessoas. Passou a emitir comentários de ódio e devido a isso foi descontinuada. AI complete: No campo da inteligência artificial, os problemas mais difíceis (complexos) são informalmente denominados AI-Complete, isso implica que para resolvê-los é necessário tornar os computadores tão inteligentes quanto humanos. Não podem ser resolvidos por algoritmos simples específicos. Estes problemas não podem ser resolvidos com a computação moderna sozinha, ou seja, necessitam de computação humana. Avaliação da disciplina: Resumos por aula – 30 % Prova única (Teoria) – 40 % Projeto (Relatórios e apresentações) – 30% Sub: 30/08 Rec: Q3/2019 Projeto: 4 pessoas e feito em Python. Escolher um artigo científico reproduzível (artigo origem com no mínimo 6 citações e de no mínimo 6 páginas).
Rafael Pauwels de Macedo Hoje em dia existem diferentes maneiras de realizar pesquisar na internet, algumas das implementações mais simples utilizam recursos como palavras chaves para realizar buscas no banco de dados, implementações mais complexas como as utilizadas pelo Wolfram, Google, Siri, Alexa, Cortana se baseam no processamento de uma frase escrita ou falada, a informação passa por diversos processos como síntese, inferência, resumo de informações e em alguns casos até mesmo tradução antes da consulta de dados ser realizada. Processamento de Linguagens Naturais é uma intersecção entra a inteligência artificial e a linguística, é resumidamente o processamento automático da linguagem humana. Por sua complexida esse é um problema extremamente desafiador, sendo considerado um dos problemas do conjunto chamado AI- Completa. AI-Completa é na sua essência o conjunto dos mais difíceis problemas da inteligência artificial encontrados até então. Incluídos nesse conjunto se encontram problemas como visão computacional, adaptabilidade frente a problemas não esperados e o próprio processamento de linguagens naturais. Atualmente problemas AI-Complete não podem ser resolvidos pela computação moderna, dado seu nível de complexidade ainda é necessário ajuda humana. Esses problemas são altamente relacionados aos chamados problemas NP-completo, dentro da teoria da complexidade computacional esses problemas são um subconjunto de NP (Tempo polinomial não determinístico), ou seja, o conjunto de problemas cuja soluções podem ser verificadas em tempo polinomial. É aceito que os problemas NP-completo são os problemas NP mais complexos, e que provavelmente não fazem parte da complexidade P. Algumas das abordagens para resolução de problemas NP-completo utilizadas são a Aproximação, o método Probabilístico, a aplicação de Restrições na entrada, a Parametrização e as Heurísticas.
Gabriel Jose da Silva A disciplina Processamento de Linguagem Natural (PNL) é uma subárea da linguística e da inteligência artificia que se preocupa com soluções computacionais para problemas envolvendo linguagem natural. De modo que, por exemplo, um computador seja capaz de realizar uma conversa com um humano, sem que esse consiga diferenciar se o interlocutor é humano ou máquina. Outro exemplo de problemas envolvendo PNL é a busca de dados. Existem dois métodos de busca: o por palavras chaves e o semântico. O primeiro é mais simples, pois as palavras utilizadas na busca são procuradas em um banco de dados. Porém na busca semântica as informações da busca devem ser previamente tratadas para que se possa buscar um determinado assunto, isto é, a frase informada para busca não expressa necessariamente as informações necessárias para uma busca direta. Podemos citar como exemplo de busca semântica perguntas como: “como você está se sentindo?” ou “qual é o sentido da vida?”. Um dos grandes problemas para se solucionar os problemas de PNL é que as linguagens humanas apresentam um léxico gramatical complexo, onde uma dada informação pode ter diferentes significados. Porém na computação tradicional os léxicos dos problemas são mais simples onde uma dada informação tem apenas um significado. Assim, os problemas de PNL são considerados IA-complete, isto é, são difíceis de resolver com os recursos algorítmicos e de hardwares existentes hoje, sendo necessária a participação de humanos para que tais problemas possam ser solucionados. O método avaliativo da disciplina é composto por resumo das aulas (30%), uma prova teórica (40%) e um projeto que consiste em relatórios e apresentação (30%).
Henrique Augusto Santos Batista (A) Resumos por aula: ? 30% Deverão ser feitos um resumo por aula que totalizarão 20 resumos em 20 aulas a media deles irá valer 30% da nota final do quadrimestre. O resumo devera conter de 250 a 500 palavras e ser enviado pelo tidia em no máximo 48h depois da aula e todos os resumos serão publicados no site da disciplina. (B) Prova de teoria (única): 15/08 ? 40% A prova teórica vai abordar todo o conteúdo da disciplina e irá compor 40% da nota final. (C) Projeto (relatórios+apresentação): ? 30% O projeto será o estudo de um artigo cientifico relacionado a pln publicado após 2010 com um número de citações maior ou igual a 6 e um numero de paginas maior ou igual a 6 e deve ser realizado uma implementação sobre ele onde o código fonte não deve constar no artigo. O Processamento de Linguagem Natural tem relação com interpretação de linguagem humana com o objetivo de construir mecanismos artificiais que permitam o entendimento de linguagem natural para realizar ações próximas ao entendimento humano, um bom exemplo é o sistema de busca do Google. PLN é uma subárea de inteligência artificial e linguística. AI-complete é um termo usado no campo de inteligência artificial para problemas difíceis os quais a solução envolve resolver um problema antigo e centra esse campo que é fazer um software que reage tão rápido tão assertivamente quanto um ser humano, isso é uma software tão “inteligente” quanto um humano problemas que são famosos por normalmente serem AI-complete são problemas de visão computacional e problema de PLN.
Tamara Cavalcante dos Santos Através da Inteligência Artificial é possível fazer com que máquinas aprendam com experiências, se ajustando as novas entradas de dados durante um período pré-determinado ou toda a sua "vida", e com isso, através de mecanismos ou softwares, performem tarefas similares aos humanos, como o ato de aprender algo ou resolver um problema. O processamento de linguagens natutais é um dos subtópicos da área de Inteligência Artificial, o qual abrange a interação entre as linguagens de programação e linguagens naturais, como a de humanos. Mais especificamente, o processamento de linguagens naturais é uma área na qual é abordado como programar máquinas que sejam capazes de processar e analisar dados de linguagens natutais. O processamento e análise de linguagens naturais não é algo simples, visto que isso pode englobar questões de reconhecimento de discurso, semântica, etc. Os problemas mais difíceis relacionados a inteligência artificial e consequentemente ao processamento de linguagens naturais são denominados AI-Complete. Apesar do avanço tecnológico e mais precisamente do avanço em IA (Inteligência Artificial), a maior dificuldade ainda encontrada é a de conseguir criar máquinas que sejam tão inteligentes como humanos, ou seja, máquinas que sejam capazes de identificar e executar ações cognitivas complexas, como compreensão e uso de sarcasmo, algo muito comum em linguagem natural de humanos. Problemas de AI-Complete não são capazes de serem resolvidos através de algoritmos simples, sendo necessária a utilização de HBC (human-based computation), na qual há a necessidade da delegação de certos passos para que a máquina seja capaz de processar ações cognitivas de alta complexidade da mesma forma como humanos são capazes.
Luana Ferreira do Nascimento Forma de avaliação As atividades entregues no tidia valem 30% da nota e devem ser entregues depois de cada aula. A prova teórica é dia 15/08 e vale 40% da nota. Só vamos ter uma prova única. Também vamos ter um projeto que vai valer 30% das notas. Este trabalho consiste na entrega de um relatório e uma apresentação. O aluno vai reprovar caso obtenha uma nota abaixo de 5 em qualquer uma destas avaliações, então todas precisam ser feitas. Dia 30/08 temos a prova substitutiva e no próximo quadrime vamos ter a prova de recuperação. Notas abaixo de 5 tiram F, de 5 até 6 é D, de 6 até 7,5 é C, de 7,5 até 9 é B e de 9 a 10 é A. Introdução Neste curso eu espero aprender formas de programar um computador para conseguir entender uma linguagem humana, para ser capaz de realizar outros processamentos que podem se aplicar a diversos contextos. Pretendo ser capaz inclusive de implementar as técnicas aprendidas no curso. Responda brevemente: O que é IA-complete? IA-complete é quando as máquinas conseguem entender as informações que lhes são apresentadas tão bem quanto um humano entenderia, ou seja, uma IA forte. Alguns problemas apresentam um grau de complexidade tão alto para uma máquina entender que devem ser classificados desta forma. Para ser IA-complete a máquina não deve necessáriamente processar as informações da forma que um humano faria, mas devem ser capazes de compreender seu input da mesma forma, permitindo a solução de uma gama muito grande de problemas.
Jairo da Silva Freitas Junior Na primeira aula de PLN foi apresentado o modelo de avaliação do curso, que consistirá em resumos de todas as aulas (submetissão por Tidia até 48h após a aula), prova única (em 15/08) e projeto final (apresentação em 22, 26, 28 e 30/08). Estas atividades valem, respectivamente, 30%, 40% e 30% da nota da disciplina. O projeto deverá ser entregue em etapas e consistir na implementação/reprodução de um artigo científico da área de PLN que tenha pelo menos 6 páginas e 6 citações, publicado após 2010. Nesta aula apresentou-se a definição de PLN e a motivação do seu estudo: no contexto de Big Data muitos dados disponíveis não são analisados. As dificuldades enfrentadas no desenvolvimento da área foram ilustradas e comparadas com as atividades de processamento de dados tradicionais, incluindo um exemplo notório da Tay AI, da Microsoft, que foi um fracasso sem precedentes. De fato, PLN é considerada uma atividade AI-Complete, ou seja, uma atividade com complexidade similar a criação de uma inteligência artificial com a capacidade de pensar como um ser humano (ser verdadeiramente inteligente). Exemplo de atividade de PLN que ilustra a dificuldade (a “IA-Completude” do problema) é a interpretação e criação de textos, sobretudo poesia, pois esta envolve a compreensão de fatos atuais, da história e o impacto emocional dela na memória dos povos, e uma profunda percepção dos sentidos, necessidades e desejos humanos, que emanam principalmente de relações sociais e experiências físicas. Em última instância, o estado da arte de PLN envolve desenvolver algoritmos capazes de reproduzir a empatia humana.
Matheus Miranda Teles Processamento de Linguagem Natural (PLN) tem relação com atividades que envolvam a linguagem humana. PLN e uma subárea da área de Inteligência Artificial e Linguística, sendo a intersecção de ambas. Ao longo da disciplina serão estudadas técnicas clássicas para processamento automático da linguagem humana. PLN é uma área ampla e tem relação com Compiladores, prova de teoremas, modelos probabilísticos, aprendizado de máquina, interação humano- computador e inteligência artificial. PLN possui duas divisões: Entender como funciona a linguagem humana; Construção de sistemas que trabalham com linguagem para reduzia a brecha homem-máquina; PLN ainda é difícil pois a linguagem humana é difícil de entender, uma sentença pode ter mais de um significado, vide sarcarmos e trocadilhos. Esse problema de entendimento perfeito da linguagem é um problema IA-complete. Dizer que é IA-complete significa que a resolução deste problema está diretamente atrelada a desenvolver uma IA tão inteligente quanto um ser humano, assim este problema não é resolvido somente com um algoritmo. A disciplina terá 3 tipos de avaliação: Resumos da aula: que devem ser entregue toda aula num prazo de até 48h da data da aula, contendo entre 250 e 500 palavras, valendo 30% da nota somando todos os resumos; Uma prova única com toda a matéria valendo 40% da nota E um projeto que consiste de relatórios e apresentação, valendo 30% da nota. São 3 relatórios incrementais e uma apresentação de 15min. O projeto deve estudar e implementar um artigo científico relacionado aos tópicos de PLN, O projeto deve ser feito em grupos de 4 pessoas e deve utilizar Python
Iasmin de Haro Pracchias Na aula do dia 03/06, segunda-feira, o professor iniciou o curso apresentando a disciplina, sua ementa, e os seus critérios de avaliação que serão: resumos de cada aula a serem entregues pelo Tidia até um prazo de 48h após a aula, uma prova que englobará todo o conteúdo estudado, um projeto com implementação de código que será desenvolvido em grupo e apresentado no final do quadrimestre, e que deverá utilizar um artigo que trate do assunto de Processamento de Linguagem Natural como base. Foi feito um exercício em classe constituído de algumas perguntas com o objetivo de verificar o nível de conhecimento da turma na linguagem Python. O professor passou uma introdução onde mencionou que o processamento de linguagem natural é uma subárea da linguística e da inteligência artificial e que tem por objetivo realizar o processamento automático ou semi-automático da linguagem humana. Foram apresentados os conceitos de linguagem artificial e a linguagem natural, os objetivos de se estudar PLN (pesquisa e desenvolvimento), exemplos de processamento de linguagem, sistemas de respostas (palavras chave-fácil, perguntas completas-difícil), exemplos de busca semântica, e as atuais dificuldades em PLN. Por fim o professor solicitou que respondêssemos a pergunta: o que significa IA-Complete? IA-Complete é uma classificação para problemas dentro da área de inteligência artificial que são considerados os mais difíceis de resolver, pois para serem resolvidos exigem que a inteligência artificial em questão tenha a mesma capacidade de resolução de problemas que o humano tem, não sendo possível resolver esse tipo de problema com um algoritmo simples.
Jean Augusto de Araujo Resumo 1 Forma de avaliação A avaliação na disciplina é composta por atividades de resumo de aula, baseada em entregas semanais, uma prova de teoria e projeto, em grupo de 4 pessoas (apresentação + relatórios). Para aprovação, é requisito que a nota em nenhum desses itens seja inferior a 5. Introdução O objetivo em PLN é a construção de computadores capazes de entender a linguagem natural. É considerado a intersecção entre a área de IA e de Linguistica. O assistente de voz do Google é um exemplo de PLN, que é capaz de dar uma resposta a partir de uma frase ou de um comando de voz. O entendimento de um texto exige o reconhecimento do contexto, análise morfológica, sintática e semântica. Assim, PLN se relaciona com compiladores, modelos probabilísticos, machine learning e IA. Possui um domínio amplo, léxico completo, a construção gramatical possui muitas formas e, a depender da análise, uma mesma expressão pode ter diferentes significados. AI-Complete AI-Complete é uma classificação para problemas que exigem Inteligência Artificial para resolução, como classicamente é o processamento de linguagem natural, onde é esperado que se entenda construções linguísticas complexas e dinâmicas, que podem assumir diversas formas. A dificuldade é considerada equivalente ao tornar o computador tão inteligente quanto um humano. O nome é uma analogia aos problemas NP-complete (complexidade computacional), mas também pode ser chamado de AI-hard. O consenso é de que esses problemas ainda não podem ser completamente resolvidos no atual nível de desenvolvimento de Inteligência Artificial, entretanto alguns problemas já podem ser solucionados.
Paulo Alexander Simoes Paulo Alexander Simões RA: 11084915 Resumo - PLN O que significa “IA – COMPLETE” No ramo da inteligência artifcial o termo “IA – complete” é utilizado para descrever o uso da inteligência artificial de forma a colocar um sistema computacional com um nivel de funcionamento, inteligência e capacidade tão alta quanto a de um ser humano. Ou seja, problemas que requerem este nível de solução não são resolvidos com algoritmos convencionais. Em suma são problemas em que humanos não são previamente capazes de construir um sistema que sintetiza uma inteligência de nível humano. Como por exemplo: identificação de imagens, processamento de linguagem natural, etc. Para a criação de soluções para estes problemas compexos, é necessário utilizar de ramos da IA que tenham capacidade de aprendizado, como aprendizado de máquina, redes neurais, deep learning dentre outras áreas de estudos. Porém, mesmo utilizando de métodos tão avançados não é possível resolver problemas que nunca tiveram uma solução prévia ou não foram formalisados. Um dos maiores desafios para processamento de linguagem natural é otimizar uma máquina que entenda fielmente a linguagem natural. O uso dela pode ser feito para interpretar e também devolver respostas em linguagem natural, algo que já é usado em algumas empresas como chatbot, mas que ainda possui muitas falhas a serem corrigidas. Deve-se desenvolver em tal solução diversas tarefas, reconhecer contexto, realizar análise sintática, léxica, morfológica, extrair informação útil, interpretar os sentidos, analisar sentimentos e até mesmo aprender com os textos já processados.
Estevao Crippa da Veiga Processamento de Linguagem Natural (PLN) é uma subárea da Inteligência Artificial e da Linguística que tem como objetivo construir mecanismos para processar a linguagem humana, a fim de obter aplicações e resultados próximos ao entendimento humano. Pode ser utilizada como mecanismo de estudo acerca do entendimento da linguagem humana, tanto escrita como falada, ou para construção de sistemas que analisem ou gerem a linguagem. PLN é considerada uma tarefa IA-completa. Tal termo é uma analogia a NP-completo, que é conhecida como a classe dos problemas mais difíceis. Uma tarefa IA-completa indica que não é capaz de ser resolvida somente com os computadores modernos, sendo necessária a intervenção humana para a solução desses problemas. O motivo dessa incapacidade provém da dificuldade de compreender a linguagem humana, já que possui gírias, trocadilhos e sarcasmos. Além disso, a PLN está diretamente relacionada com compiladores, provas de teoremas, modelos probabilísticos, aprendizado de máquina, interação humano-computador e inteligência artificial, que são áreas complexas e difíceis. Esses itens tornam o estudo da PLN essenciais tanto para o entendimento da linguagem humana quanto no auxílio à obtenção de informações provenientes de grandes quantidades de dados e ressaltam a sua importância. Algumas aplicações da PLN que podemos citar são: uso de reconhecimento de voz para navegar no smartphone, obtenção de resultados mais eficientes em sites de pesquisa, tradução de frases complexas de um idioma para outros e objetivação da interpretação dada a frases e textos.
Thiago Bruini Cardoso Silva A primeira aula teve caráter introdutório tanto da estrutura da matéria quanto de seu conteúdo. A forma de avaliação é baseada em três atividades: uma única prova com peso de 40%, um trabalho em grupo com partes de redação de relatório (dividida em três partes com pesos diferentes, sendo que a primeira entrega é a que menos vale e a última é a que mais vale) e apresentação (que completa a nota dos relatórios) com peso de 30% e resumos do conteúdo da última aula com peso de 30%. Processamento de Linguagem Natural surge a partir da intersecção das áreas de Linguística e de Inteligência Artificial, se baseando na extração de informação a partir de dados em linguagem humana, sendo essa inicialmente não estruturada para análise computacional. O grande intuito por trás dessa área é possibilitar que uma máquina consiga entender linguagem natural de forma semelhante a um ser humano e, a partir disso, possa realizar tarefas baseado nesses dados. Esse objetivo pode ser quebrado em dois grandes eixos: um focado na pesquisa e entendimento da linguagem humana; outro focado no desenvolvimento de ferramentas capazes de analisar a linguagem baseado no que foi aprendido a partir da pesquisa. Problemas IA-completo referem-se à classe de problemas com dificuldade equivalente à resolução do problema central de Inteligência Artificial: “Como fazer máquinas pensarem como humanos?”. Se uma máquina tivesse a capacidade de raciocínio e aprendizado por intuição que um humano tem, a criação de algoritmos capazes de analisar linguagem natural e tomar decisões seria muito simples. Bla Ble Bli Blo Blu Ala Lie As sAFsa aseda ASEd aweda aefds sdfasd fasinfasui aeed fsadas saee asrhr rgtiua eguia asdgaseiu sfnuie e fieaj eEIUFE iunes eNIE eONWE p noqeo fewifoaesfnodsagoa ewbf ewewagb aen efwnaeof ewifuewnf weaubfewfweaa ewf ew oel wmdu eg ee qqq fniuef na fsadio ewfioe eqiu eiur wiue eiw ewiut eoisdfjwepre fnv f,mewui svnsvioasmadslrew ojin ewof aoew eawo eweg pqpq winwe. Fonte: Shapiro, Stuart C. (1992). Artificial Intelligence In Stuart C. Shapiro (Ed.), Encyclopedia of Artificial Intelligence (Second Edition, pp. 54–57). New York: John Wiley. (Section 4 is on "AI-Complete Tasks".)
Matheus Fama Machado de Sousa Resumo aula 01 Processamento de Linguagem Natural é uma subárea da Inteligência Artificial e Linguistica que tem como objetivo o processamento da linguagem humana através de mecanismos artificiais. Atualmente, a linguagem natural(humana) ainda é um desafio complexo para os computadores a processarem pois tem um domínio muito amplo, com um vocabulário léxico complexo com construções gramaticais variadas e com muitos significados. Os sistemas de respostas mais comuns conseguem, de maneira relativamente fácil, fazer pesquisas utilizando termos ou palavras-chaves(google, yahoo, bing, etc) diferentemente de quando há necessidade de se buscar semanticamente já que exigem operações ainda muito complexas. O entendimento perfeito da Linguagem humana se encaixa na classe de problemas “AI-complete”(analogamente parecido com problemas da classe NP-completo ou NP- difíceis).
Lucas Vitalino Severo Pais Nesta aula fomos introduzidos a disciplina e pegamos informações sobre o cornograma, ementa, bibliografia método de avaliações. O método de avaliações consiste em uma prova, uma apresentação de um trabalho com 3 sub entregas de um artigo elaborado por uma equipe de 4 pessoas mais o codigo fonte da aplicação desenvolvida. Além disso deverá ser entregue um resumo em até 48h após cada aula. Ao final da aula foi dado um questionário simples para avaliação dos conhecimentos da turma sobre conceitos básicos de programação e lingugagens formais e automata. Para a produção do projeto deve ser escolhido um artigo com pelo menos seis páginas e seis citações e implementar o algoritmo descrito juntamente de um relatório.
Felipe Dias Correia A primeira aula foi uma apresentação e introdução sobre a matéria de Processamento de Linguagem Natural, onde foi abordado alguns tópicos de pesquisa e uma pequena explicação sobre Dados, com uma comparação de dois gráficos, do ano de 2017 e 2018, sobre o “minuto na internet” e outros dados mostrando que a quantidade de dados gerados cresce exponencialmente, com algumas previsões para os anos subsequentes.


Arquivo gerado por um programa.

Observação: