Documente Academic
Documente Profesional
Documente Cultură
Indexing
web pages
Terminologia IR
document:
IR: Definiții
• similaritatea între interogare și document
dj = ( t1,j, t2,j, t3,j, ... tN,j ) qk = ( t1,k, t2,k, t3,k, ... tN,k )
TF - TERM FREQUENCY
Se sumează pentru
fiecare document
Wi,j = ti,j / j ti,j 2
importanţa cuvintelor-cheie
Ponderea cuvîntului
în dependență de mărimea documentului
TERM FREQUENCY
importanţa cuvintelor-cheie
Ponderea cuvîntului
în dependență de numărul de documente în care
acesta apare
idfi
log(3/2)=log(1,5)=0.176
log(3/2)=log(1,5)=0.176
log(3/3)=log(1)=?
importanţa cuvintelor-cheie
Ponderea cuvîntului
TF-IDF METRICS
idfi = N / ni
idfi
log(3/2)=log(1,5)=0.176
log(3/2)=log(1,5)=0.176
log(3/3)=log(1)=0
importanţa cuvintelor-cheie
Ponderea cuvîntului
TF-IDF METRICS
idfi = N / ni
docs
terms
Stop words
de în şi la a să cu nu pe se ce
că mai o un din dar când ca el
iar eu lui care sunt cum tot prin
nici pentru mă este tu ei căci lor
au le am te numai fi asa noi însă
fost prea fără îi toti apoi sau ai
face cel voi decât poate ea ne pot
IR: Similaritatea
• similaritatea între
interogare: speech and language processing
q=( 1 1 1 )
• similaritatea între
interogare: speech and language processing
q=( 1 1 1 )
3
Cats
0
0.5 1 1.5 2 2.5 3 3.5 4 4.5
Dogs
Exemplu
Două cuvinte: cats, dogs
Doc 1 vector = ( 3 2 )
Doc 2 vector = ( 1 4 )
Interogarea vector = (1 1)
Amit Singhal
Google, Inc.
Modern Information Retrieval:
A Brief Overview
2001
IR: Implementarea
preprocesarea documentelor
1. Tokenization
împărțirea în cuvinte
Opriți-vă copiii până-n 12 ani
Opriți-vă , până-n - un cuvînt sau două?
http://nlp.stanford.edu/IR-book/html/htmledition/irbook.html
IR: Implementarea
preprocesarea documentelor
2. Normalizarea
convertăm tot textul in litere mici
Ce facem cu abrevieri?
caut
informatia
despre
peste
U.S., 3/12/91
U.S., Mar. 12, 1991.
Europa, 3 Dec 1991
IR: Implementarea
preprocesarea documentelor
2. Normalizarea
stemming
work
worked work
working
worker ???
IR: Implementarea
preprocesarea documentelor
2. Normalizarea
lemmatization
lucra lucrat
lucrai lucrată
lucram lucrate
lucrară lucrați lucra
lucrarăm lucrau
lucrarăți lucră
lucrași lucrăm
IR: Implementarea
ce facem cu ambiguitatea cuvintelor?
nouă
http://wikibon.org/blog/big-data-statistics/
IR: stocarea datelor
Inverted index (inverted file)
d1 d2 d3 d4 d5 d6 d7
Antony - > d1 d2 d6
Brutus - > d1 d2 d4
Caesar - > d1 d2 d4 d5 d6
Calpurnia - >
Cleopatra - >
mercy - >
worser - >
IR: stocarea datelor Document
Inverted index (inverted file) ID
d1 d2 d3 d4 d5 d6 d7
Antony - > d1 d2 d6
Brutus - > d1 d2 d4
Lexicon
Caesar - > d1 d2 d4 d5 d6 Inverted
Dictionar
Calpurnia - > index lists
Vocabular
Cleopatra - >
mercy - >
worser - >
IR: stocarea datelor
Inverted index (inverted file)
http://nlp.stanford.edu/IR-book/html/htmledition/irbook.html
Search Engines Optimization
Optimizare pentru motoare de căutare
Поиско́вая оптимиза́ция
• Un proces de
favorizare a vizibilității
site-urilor web sau
paginilor web în
cadrul ordonării
rezultatelor căutării în
lista făcută de
motorul de căutare
http://tools.seobook.com/general/keyword-density/
Search Engines Optimization
Optimizare pentru motoare de căutare
Поиско́вая оптимиза́ция
Off-site SEO*
optimizarea elementelor în afară paginilor – link-uri ce vin pe pagină,
social media, etc.
http://www.webdesignstuff.co.uk/fc103 /
IR Theory and Practice
Text Retrieval Conferinte Content classification,
categorisation, clustering
TREC Web and Social Media
European Conference on IR
Blog and online-
Information Retrieval community search,
ERIC User aspects
User modelling, user
studies, user interaction
IR system
architectures
Crawling and indexing
Compression,
optimisation
Content representation
and processing
Reasoning for IR
Opinion mining,
sentiment analysis,
Cross-language retrieval,
multilingual retrieval
Evaluation
Multimedia and cross-
IR: Evaluarea
Precision – Recall –
rata celor rata celor
relevante în cele selectate în cele
selectate relevante
F-measure = 2PR/(P+R)
Sentiment analysis
analiza sentimentelor
http://sentistrength.wlv.ac.uk/
Sentiment analysis
analiza sentimentelor
https://www.csc.ncsu.edu/faculty/healey/tweet_viz/tweet_app/
SMILE tool
• http://intime.dlsi.ua.es:8080/Smile/pages/
Sentiment analysis
analiza sentimentelor
http://blog.datumbox.com/how-to-build-your-own-twitter-sentiment-analysis-tool/
In order to build the Sentiment Analysis tool we will
need 2 things:
1) connect on Twitter and search for tweets that
contain a particular keyword.
2) evaluate the polarity (positive, negative or neutral)
of the tweets based on their words.
For the first task we will use the Twitter REST API 1.1v
and for the second the Datumbox API 1.0v.
You can find the complete PHP code of the
Twitter Sentiment Analysis tool on Github.
In order to detect the Sentiment of the tweets we used our Machine Learning
framework to build a classifier capable of detecting Positive, Negative and
Neutral tweets. Our training set consisted of 1.2 million tweets evenly
distributed across the 3 categories.
Semantic search
Căutarea semantică are scopul să
îmbunătățească relevanța
rezultatelor prin înțelegerea
intenției utilizatorului și
semnificația contextuală a
termenilor întroduși analizînd
Pașii spre căutarea semantică apariția lor în spațiu de date
Sistemul semantic trebuie să poată: căutate.
1- procesa forme morfologice ale
cuvintelor
2- găsi sinonimele
3- generaliza
4- găsi conceptele similare
5- găsi cunoștințele corespunzătoare
6- procesa întrebări în limbaj natural
Graful de cunoștințe
Ontologii
Raţionament (inferența)
• Bărcile pot tranversa
mici curgeri de apă
• Cayac este o barcă
• Cayac a tranversat o
curgere de apă
http://www.wired.co.uk/news/archive/2015-11/03/google-smart-reply-machine-
learning-email
Google is not selling
access to its deep
learning engine. It’s
open sourcing that
engine, freely
sharing the
underlying code with
the world at large.
This software is
called TensorFlow,
and in literally giving
the technology away,
Google believes it
can accelerate the
evolution of AI.
http://www.wired.com/2015/11/google-open-sources-its-artificial-intelligence-engine/
IR: Similaritatea