SlideShare uma empresa Scribd logo
1 de 31
rodrigo matheus
rodrigorizando.com
rodrigorizando@gmail.com
Node Natural
Node Natural:
Shake especial para programadores
http://www.youtube.com/watch?v=mPOQTskNEbk
90% dos dados no mundo foram
gerados nos últimos 2 anos
já reclamou no Reclame Aqui?
já fez post em algum blog?
já fez algum comentário em site ou blog?
já abriu chamado para reclamar da operadora?
tweets? post na timeline? selfie?
semi-estruturadonão estruturado estruturado
99% do que escrevemos
são dados não estruturado
80% das informações no mundo
são dados não estruturado
pln
pln =  nlp
processamento de
linguagem natural
natural language
processing
☻ Extração de informação
☻ Recuperação de informação
☻ Tradução automática
☻ Geração Automática de Texto
☻ Geração de linguagem natural
☻ Interpretação de linguagem natural
☻ Simplificação de texto
☻ Correção ortográfica.
☻ Reconhecimento Vocal
☻ Reconhecimento de Escritura Manuscrita
como faz isto em node.js?
com Natural
Processamento de linguagem natural
npm install natural
Tokenizer
var natural = require('natural');
var tokenizer = new natural.WordTokenizer();
console.log(tokenizer.tokenize("your dog has flees."));
// [ 'your', 'dog', 'has', 'flees' ]
String Distance
var natural = require('natural');
console.log(natural.JaroWinklerDistance("dixon","dicksonx"))
console.log(natural.JaroWinklerDistance('not', ‘same'));
// 0.7466666666666666
// 0
Stemmer
var natural = require('natural');
console.log(natural.PorterStemmer.stem(“words"));
// word
Classifiers
var natural = require('natural’);
var classifier = new natural.BayesClassifier();
classifier.addDocument(‘eu quero, 'buy');
classifier.addDocument(‘vou comprar, 'buy');
classifier.addDocument(‘vendo, 'sell');
classifier.addDocument(‘promoção, 'sell');
classifier.train();
console.log(classifier.classify(‘iPhone em promoção, aproveite.));
// sell
console.log(classifier.classify(‘vou comprar hoje o iphone));
// buy
Phonetics
var natural = require('natural’);
var metaphone = natural.Metaphone, soundEx = natural.SoundEx;
var wordA = 'phonetics';
var wordB = 'fonetix';
if(metaphone.compare(wordA, wordB)){
console.log(‘Eles são iguais);
}
Pluralized/Singularized
var natural = require('natural’);
var nounInflector = new natural.NounInflector();
console.log(nounInflector.pluralize('radius'));
// radii
console.log(nounInflector.singularize('beers'));
// beer
Pluralized/Singularized
var natural = require('natural’);
var nounInflector = new natural.NounInflector();
console.log(nounInflector.pluralize('radius'));
// radii
console.log(nounInflector.singularize('beers'));
// beer
N-Grams
var natural = require('natural’);
var NGrams = natural.NGrams;
console.log(NGrams.bigrams('some words here'));
// [ [ 'some', 'words' ], [ 'words', 'here' ] ]
console.log(NGrams.trigrams(['some', 'other', 'words', 'here']));
// [ [ 'some', 'other', 'words' ], [ 'other', 'words', 'here' ] ]
tf-idf
var natural = require('natural’);
var TfIdf = natural.TfIdf;
var tfidf = new TfIdf();
tfidf.addDocument('this document is about node.');
tfidf.addDocument('this document is about ruby.');
tfidf.addDocument('this document is about node. it has node examples');
tfidf.tfidfs('node', function(i, measure) {
console.log('document #' + i + ' is ' + measure);
});
// document #0 is 1.4469189829363254
// document #1 is 0
// document #3 is 2.8938379658726507
WordNet
// npm install WNdb
var wordnet = new natural.WordNet();
wordnet.lookup('node', function(results) {
results.forEach(function(result) {
console.log('------------------------------------');
console.log(result.synsetOffset);
console.log(result.pos);
console.log(result.lemma);
console.log(result.synonyms);
console.log(result.pos);
console.log(result.gloss);
});
});
obrigado!
rodrigorizando.com
rodrigorizando@gmail.com
@rodrigorizando

Mais conteúdo relacionado

Mais procurados

유지보수를 고려한 SW 개발
유지보수를 고려한 SW 개발유지보수를 고려한 SW 개발
유지보수를 고려한 SW 개발도형 임
 
Voice input and speech recognition system in tourism/social media
Voice input and speech recognition system in tourism/social mediaVoice input and speech recognition system in tourism/social media
Voice input and speech recognition system in tourism/social mediacidroypaes
 
An Actor Model in Go
An Actor Model in GoAn Actor Model in Go
An Actor Model in GoWeaveworks
 
賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)
賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)
賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)William Yeh
 
Introduction to Gitea with Drone
Introduction to Gitea with DroneIntroduction to Gitea with Drone
Introduction to Gitea with DroneBo-Yi Wu
 
Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Noa Harel
 
자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅Yoonsung Jung
 
Advanced nGrinder 2nd Edition
Advanced nGrinder 2nd EditionAdvanced nGrinder 2nd Edition
Advanced nGrinder 2nd EditionJunHo Yoon
 
Scrum Overview by Mark Hoogveld
Scrum Overview by Mark HoogveldScrum Overview by Mark Hoogveld
Scrum Overview by Mark Hoogveldmhoogveld
 
What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...
What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...
What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...Edureka!
 
Comparison of SVN and Git
Comparison of SVN and GitComparison of SVN and Git
Comparison of SVN and GitDaniel Wieth
 
레가시 프로젝트의 빌드 자동화
레가시 프로젝트의 빌드 자동화레가시 프로젝트의 빌드 자동화
레가시 프로젝트의 빌드 자동화Jaehoon Choi
 

Mais procurados (18)

유지보수를 고려한 SW 개발
유지보수를 고려한 SW 개발유지보수를 고려한 SW 개발
유지보수를 고려한 SW 개발
 
Git tutorial
Git tutorialGit tutorial
Git tutorial
 
Voice input and speech recognition system in tourism/social media
Voice input and speech recognition system in tourism/social mediaVoice input and speech recognition system in tourism/social media
Voice input and speech recognition system in tourism/social media
 
An Actor Model in Go
An Actor Model in GoAn Actor Model in Go
An Actor Model in Go
 
Git
GitGit
Git
 
Ansible Playbook
Ansible PlaybookAnsible Playbook
Ansible Playbook
 
賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)
賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)
賣 K8s 的人不敢告訴你的事 (Secrets that K8s vendors won't tell you)
 
Introduction to Gitea with Drone
Introduction to Gitea with DroneIntroduction to Gitea with Drone
Introduction to Gitea with Drone
 
Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Introducing GitLab (June 2018)
Introducing GitLab (June 2018)
 
자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅
 
Advanced nGrinder 2nd Edition
Advanced nGrinder 2nd EditionAdvanced nGrinder 2nd Edition
Advanced nGrinder 2nd Edition
 
Scrum Overview by Mark Hoogveld
Scrum Overview by Mark HoogveldScrum Overview by Mark Hoogveld
Scrum Overview by Mark Hoogveld
 
What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...
What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...
What is Git | What is GitHub | Git Tutorial | GitHub Tutorial | Devops Tutori...
 
Comparison of SVN and Git
Comparison of SVN and GitComparison of SVN and Git
Comparison of SVN and Git
 
레가시 프로젝트의 빌드 자동화
레가시 프로젝트의 빌드 자동화레가시 프로젝트의 빌드 자동화
레가시 프로젝트의 빌드 자동화
 
Redmine
RedmineRedmine
Redmine
 
Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
 
Speech Recognition
Speech RecognitionSpeech Recognition
Speech Recognition
 

Destaque

Mini-curso Processamento de linguagens naturais: pondo em prática
Mini-curso Processamento de linguagens naturais: pondo em prática Mini-curso Processamento de linguagens naturais: pondo em prática
Mini-curso Processamento de linguagens naturais: pondo em prática William Colen
 
Nger 2012 summary_report_2013_web
Nger 2012 summary_report_2013_webNger 2012 summary_report_2013_web
Nger 2012 summary_report_2013_webJarchin Raj
 
IPSec | Computer Network
IPSec | Computer NetworkIPSec | Computer Network
IPSec | Computer Networkshubham ghimire
 
Msc. carlos antequera n. la elocucion mapa mental
Msc. carlos antequera n. la elocucion mapa mentalMsc. carlos antequera n. la elocucion mapa mental
Msc. carlos antequera n. la elocucion mapa mentalcarlos antequera
 
Cloud computing & its Basic
Cloud computing & its BasicCloud computing & its Basic
Cloud computing & its BasicPatrik Soleman
 
Super bellpdf
Super bellpdfSuper bellpdf
Super bellpdfbrutaka
 
พลังธรรมชาติ
พลังธรรมชาติพลังธรรมชาติ
พลังธรรมชาติSoar2dasky
 

Destaque (12)

Mini-curso Processamento de linguagens naturais: pondo em prática
Mini-curso Processamento de linguagens naturais: pondo em prática Mini-curso Processamento de linguagens naturais: pondo em prática
Mini-curso Processamento de linguagens naturais: pondo em prática
 
Nger 2012 summary_report_2013_web
Nger 2012 summary_report_2013_webNger 2012 summary_report_2013_web
Nger 2012 summary_report_2013_web
 
Function of ceo
Function of ceoFunction of ceo
Function of ceo
 
Baocaocuoiki
BaocaocuoikiBaocaocuoiki
Baocaocuoiki
 
Boycott israel
Boycott israelBoycott israel
Boycott israel
 
IPSec | Computer Network
IPSec | Computer NetworkIPSec | Computer Network
IPSec | Computer Network
 
Appraoch 12plan
Appraoch 12planAppraoch 12plan
Appraoch 12plan
 
Msc. carlos antequera n. la elocucion mapa mental
Msc. carlos antequera n. la elocucion mapa mentalMsc. carlos antequera n. la elocucion mapa mental
Msc. carlos antequera n. la elocucion mapa mental
 
Cloud computing & its Basic
Cloud computing & its BasicCloud computing & its Basic
Cloud computing & its Basic
 
Super bellpdf
Super bellpdfSuper bellpdf
Super bellpdf
 
Taxonomiadebloom
TaxonomiadebloomTaxonomiadebloom
Taxonomiadebloom
 
พลังธรรมชาติ
พลังธรรมชาติพลังธรรมชาติ
พลังธรรมชาติ
 

Semelhante a Processamento de linguagem natural com nodejs

Python Com Baterias Incluídas
Python Com Baterias IncluídasPython Com Baterias Incluídas
Python Com Baterias IncluídasJonh Edson
 
Desenvolvimento web com Python, Zope e Plone
Desenvolvimento web com Python, Zope e PloneDesenvolvimento web com Python, Zope e Plone
Desenvolvimento web com Python, Zope e PloneJacson Tiola
 
Dar caos a ordem
Dar caos a ordem Dar caos a ordem
Dar caos a ordem secomp2011
 
Desenvolvimento Ágil com Scrum e XP
Desenvolvimento Ágil com Scrum e XPDesenvolvimento Ágil com Scrum e XP
Desenvolvimento Ágil com Scrum e XPlucianocoelho
 
Algoritmos 0 - apresentação
Algoritmos   0 - apresentaçãoAlgoritmos   0 - apresentação
Algoritmos 0 - apresentaçãoDaniel Moura
 

Semelhante a Processamento de linguagem natural com nodejs (7)

Python Com Baterias Incluídas
Python Com Baterias IncluídasPython Com Baterias Incluídas
Python Com Baterias Incluídas
 
Desenvolvimento web com Python, Zope e Plone
Desenvolvimento web com Python, Zope e PloneDesenvolvimento web com Python, Zope e Plone
Desenvolvimento web com Python, Zope e Plone
 
Dar caos à ordem
Dar caos à ordemDar caos à ordem
Dar caos à ordem
 
Dar caos a ordem
Dar caos a ordem Dar caos a ordem
Dar caos a ordem
 
POG nunca mais - SOLISC
POG nunca mais - SOLISCPOG nunca mais - SOLISC
POG nunca mais - SOLISC
 
Desenvolvimento Ágil com Scrum e XP
Desenvolvimento Ágil com Scrum e XPDesenvolvimento Ágil com Scrum e XP
Desenvolvimento Ágil com Scrum e XP
 
Algoritmos 0 - apresentação
Algoritmos   0 - apresentaçãoAlgoritmos   0 - apresentação
Algoritmos 0 - apresentação
 

Processamento de linguagem natural com nodejs

Notas do Editor

  1. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  2. http://www.sciencedaily.com/releases/2013/05/130522085217.htm
  3. http://www.sciencedaily.com/releases/2013/05/130522085217.htm
  4. http://www.sciencedaily.com/releases/2013/05/130522085217.htm
  5. http://www.sciencedaily.com/releases/2013/05/130522085217.htm
  6. http://www.sciencedaily.com/releases/2013/05/130522085217.htm
  7. http://www.sciencedaily.com/releases/2013/05/130522085217.htm
  8. Dado não estruturado: Informação textual sem modelo de dados definido (texto livre). Ex: blogs, redes sociais, Diário Oficial, livros etc. Dado semi-estruturado: dados cujo esquema de representação está presente, ou seja, é auto-descritivo, permitindo que sua estrutura possa ser reconstruída. Ex: Relatórios, Dados da Receita Federal etc. Dado estruturado: Informação extraída de bases com modelo de dados e estrutura conhecidos. As informações são extraídas e podem ser utilizadas sem intervenção. Ex: Tabelas, Convênios com troca de arquivos, bureaux de crédito, etc.
  9. Dado não estruturado: Informação textual sem modelo de dados definido (texto livre). Ex: blogs, redes sociais, Diário Oficial, livros etc. Dado semi-estruturado: dados cujo esquema de representação está presente, ou seja, é auto-descritivo, permitindo que sua estrutura possa ser reconstruída. Ex: Relatórios, Dados da Receita Federal etc. Dado estruturado: Informação extraída de bases com modelo de dados e estrutura conhecidos. As informações são extraídas e podem ser utilizadas sem intervenção. Ex: Tabelas, Convênios com troca de arquivos, bureaux de crédito, etc.
  10. Dado não estruturado: Informação textual sem modelo de dados definido (texto livre). Ex: blogs, redes sociais, Diário Oficial, livros etc. Dado semi-estruturado: dados cujo esquema de representação está presente, ou seja, é auto-descritivo, permitindo que sua estrutura possa ser reconstruída. Ex: Relatórios, Dados da Receita Federal etc. Dado estruturado: Informação extraída de bases com modelo de dados e estrutura conhecidos. As informações são extraídas e podem ser utilizadas sem intervenção. Ex: Tabelas, Convênios com troca de arquivos, bureaux de crédito, etc.
  11. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  12. Processamento de linguagem natural = natural language proccessing
  13. Principais aplicações de pln
  14. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  15. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  16. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  17. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  18. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  19. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  20. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  21. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  22. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  23. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  24. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  25. Processamento de linguagem natural (PLN) é uma subárea da inteligência artificial e da linguística que estuda os problemas da geração e compreensão automática de línguas humanas naturais.
  26. http://pt.slideshare.net/ivonascimento/processamento-de-linguagem-natural-com-php