Você está na página 1de 36

INTRODUÇÃO A NATURAL

LANGUAGE PROCESSING
(NLP)
QUEM SOU EU?

• Pablo Ernesto Vigneaux Wilton


• Originário de Viña del Mar – Chile
• Formado em Ciências da Computação – USFC
• Trabalhando em sistemas desde 95
• Principal interesse em algoritmos de IA aplicados
especialmente a NLP e processamento de imagens
• Atualmente atuando na Qualirede como Analista de
Dados com atividades em migração.
DESAFIO!

Enquanto entendemos o quê é


NLP que tal pensarmos onde
podemos usar?
O QUE É NLP?

Natural Language Processing (NLP) é uma área de


ciências da computação que faz uso de Inteligência Artificial,
Estatística e Linguística para a interação entre computadores e
a linguagem humana (natural).
UM POUCO DE HISTÓRIA

Inicio da década de 1950 com a publicação de “Computing Machinery and Intelligence” por
Alan Turing, nesta publicação ele propõe “The Imitation Game” onde um humano interage com
duas “entidades” por meio de mensagens, uma das entidades é um computador e a outra é
humana, mesmo assim não é possível diferenciar entre eles.
UM POUCO DE HISTÓRIA

Em 1954, a experiência de Georgetown envolveu a tradução automática de mais de


sessenta frases russas para o inglês.
Nos anos 60 foram criados os sistemas: SHRDLU, um sistema de linguagem natural que
trabalhava em "blocks worlds" com vocabulário restrito e ELIZA, uma simulação de um
psicoterapeuta escrita por Joseph Weizenbaum entre 1964 e 1966.
Até a década de 1980, a maioria dos sistemas de NLP se baseava em conjuntos
complexos de regras manuscritas. A partir do final dos anos 1980, no entanto, houve uma
revolução no NLP com a introdução de algoritmos de aprendizagem automática (aprendizado
de máquina) para o processamento de linguagem.
ÁREA DE CONHECIMENTO
ÁREA DE CONHECIMENTO
ÁREA DE CONHECIMENTO
SUBDIVISÕES DE NLP
 Natural language generation (NLG): Geração ou criação de
linguagem natural a partir de dados estruturados armazenados
em computador;
 Natural language understanding (NLU) ou Natural Language
Interpretation (NLI): É a compreensão da linguagem natural pelo
computador;
 Information extraction: Representa a extração de informações
de textos, como o caso de extração de nomes de pessoas e de
empresas;
 Ontology: Represnetando conceitos e os relacionamentos entre
estes;
 Speech processing: Processamento de fala, transformando a
fala em palavras escritas
 Statistical NLP: Classificação e extração de dados com
estatística pura; (word2text)
SUBDIVISÕES DE NLP

 Aprendizado Automático (Aprendizado de máquina):


Aprendizado realizado utilizando algoritmos de machine
learning, deep learning e outros. Normalmente com base
estatística, e neste ponto surge a chamada SNLP (Statistical
Natural Language Processing).
 Aprendizado Manual: Obtido com base em codificação manual
das regras da linguagem.
SUBDIVISÕES DE NLP - APRENDIZADO
SUBDIVISÕES DE NLP - APRENDIZADO
SUBDIVISÕES DE NLP - APRENDIZADO
PROCESSAMENTO
FUNCIONALIDADES

 Part-of-speech tagging  Question answering


 Stemming  Relationship extraction
 Lemmatization  Sentiment analysis
 Word segmentation  Word sense disambiguation
 Lexical semantics  Automatic summarization
 Machine translation  Discourse analysis
 Named entity recognition (NER)  Speech recognition
 Optical character recognition  Text-to-speech
(OCR)
 Language Detection
FUNCIONALIDADES

Stemming (Stemização)

O processo de stemização (do inglês, stemming) consiste em


reduzir uma palavra ao seu radical. A palavra “meninas” se
reduziria a “menin”, assim como “meninos” e “menininhos”. As
palavras “gato”, “gata”, “gatos” e “gatas” reduziriam-se para
“gat”. Com isto podemos dizer que consiste no processo de reduzir
palavras flexionadas (ou às vezes derivadas) ao seu tronco (stem),
base ou raiz.
FUNCIONALIDADES

Lemmatization (Lematização)

A lematização reduz a palavra ao seu lema, que é a forma no


masculino e singular. No caso de verbos, o lema é o infinitivo. Por
exemplo, as palavras “gato”, “gata”, “gatos” e “gatas” são todas
formas do mesmo lema: “gato”. Igualmente, as palavras “tiver”,
“tenho”, “tinha”, “tem” são formas do mesmo lema “ter”.

A vantagem de aplicar a stemização ou lematização é clara:


redução de vocabulário e abstração de significado.
‫‪FUNCIONALIDADES‬‬
‫‪Language detection‬‬

‫"""‪arabic_text = u‬‬
‫أفاد مصدر امني في قيادة عمليات صالح الدين في العراق بأن " القوات االمنية‬
‫تتوقف لليوم‬
‫الثالث على التوالي عن التقدم الى داخل مدينة تكريت بسبب‬
‫انتشار قناصي التنظيم الذي يطلق على نفسه اسم "الدولة االسالمية" والعبوات‬
‫الناسفة‬
‫والمنازل المفخخة واالنتحاريين‪ ،‬فضال عن ان القوات االمنية تنتظر وصول تعزيزات‬
‫اضافية "‪.‬‬
‫""“‬
‫)‪detector = Detector(arabic_text‬‬
‫)‪print(detector.language‬‬
FUNCIONALIDADES

Language detection

name: Arabic code: ar confidence: 99.0 read bytes: 907


FUNCIONALIDADES

Sentiment analysis

Consiste em identificar ou classificar o sentimento contido em


um texto, este pode ser negativo, neutro ou positivo. Normalmente
esta classificação é representada pelos valores -1, 0 1 mas existem
variantes de -5, 0 e -5 entre outras.
PIPELINE DE PRÉ-PROCESSAMENTO?

Consiste na execução de certas tarefas com a finalidade de


“limpar” ou “ajustar” o texto. São tarefas comuns:

 Normalização do texto aplicando lowercase;


 Retirada de símbolos;
 Retirada das stopwords;
 Aplicação de stemming ou lematization;
PIPELINE DE PRÉ-PROCESSAMENTO
PIPELINE DE PRÉ-PROCESSAMENTO
PARTS OF SPEECH
PARTS OF SPEECH
PARTS OF SPEECH
PARTS OF SPEECH
BAG OF WORDS
NER (NAMED-ENTITY RECOGNITION)–
RELACIONAMENTO ENTRE ENTIDADES
NER (NAMED-ENTITY RECOGNITION)–
RELACIONAMENTO ENTRE ENTIDADES
NER – RELACIONAMENTO ENTRE
ENTIDADES
DIKW - HIERARQUIA
DIKW - HIERARQUIA
COMO APLICAR NA NOSSA
REALIDADE?
COMO APLICAR NA NOSSA
REALIDADE?

 Extração de dados de formulários ou questionários;


 Extração de dados de redes sociais;
 Predição de surtos e mapeamento de doenças (Twitter);
 Extração de dados de prontuários médicos;
 Bots de atendimento ou de triagem / filtragem;
 Classificação de documentos;
 Avaliação de nossos serviços com o uso de análise de sentimentos;
 Identificação de fraude nos tratamentos ao identificar exames e
tratamentos desnecessários;
 Auxilio a diagnósticos com base em relatos, prontuários e prescrições;
 Telemedicina;

Você também pode gostar