bby 220 - bilgi erişim İlkeleri
DESCRIPTION
BBY 220 - Bilgi Erişim İlkeleri. Erişim Fonksiyonları: Vektör Uzayı Modeli. Erişim Fonksiyonu: Vektör Yaklaşımı. Ters Dizin Kütüğünde bulunan her bir doküman bir vektör olarak düşünülebilir. - PowerPoint PPT PresentationTRANSCRIPT
1
BBY 220 - Bilgi Erişim İlkeleri
Erişim Fonksiyonları: Vektör
Uzayı Modeli
2
Erişim Fonksiyonu: Vektör Erişim Fonksiyonu: Vektör Yaklaşımı Yaklaşımı
Ters Dizin Kütüğünde bulunan her bir doküman bir vektör olarak düşünülebilir.
Örnek kütükte, D1,D2…D6 ve Q1
aynı boyutlarda vektörler olarak düşünülebilir. Vektörlerdeki her bir indis aynı dizin terimini ifade etmektedir.
Eğer kullanıcı sorgusunu da bir vektör olarak ifade edersek vektörel işlemlerle sorgu ve belgelerin benzerliklerini belirlemek mümkündür.
Terimler Dokümanlar Sorgu
D1 D2 D3 D4 D5 D6 Q1
bilgi 1 1 0 0 0 0 1
erişim 1 0 0 0 0 0 1
dizinleme 1 0 0 0 0 0 0
sanal 0 1 0 0 0 0 0
dünyada 0 1 0 0 0 0 0
kütüphane 0 0 1 0 0 0 0
ve 1 1 1 0 0 1 0
veri 0 0 1 0 0 0 0
saklama 0 0 1 0 0 0 0
dünyada 0 0 0 1 0 0 0
ekonomik 0 0 0 1 1 0 0
durum 0 0 0 1 0 0 0
günlük 0 0 0 0 1 0 0
veriler 0 0 0 0 1 1 0
haftalık 0 0 0 0 0 1 0
veya 0 0 0 0 0 1 0
günlük 0 0 0 0 0 1 0
mal 0 0 0 0 0 1 0
3
Vektörler Vektörler
Uzunluk, alan ve hacim gibi büyüklüklerin yanlızca bir gerçel sayı ile belirtilmelerine karşın, özellikle fizikten gelen ivme, hız, kuvvet gibi nicelikleri belirlemek için bir gerçel sayı yeterli değildir.
İkinci türden niceliklerin bir yönü, doğrultusu, büyüklüğü ve uygulama noktası vardır. Bu büyüklükler için yönlendirilmiş doğru parçaları kullanılır.
Bir düzlemde, yönü, doğrultuları ve büyüklükleri olan yönlendirilmiş doğru parçalarına vektör denir.
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite03.pdf
4
Vektörler Vektörler İki Vektörün Eşitliği: İki vektörün eşit olması için gerek ve yeter koşul bu iki vektörün
karşılıklı bileşenlerinin eşit olmasıdır.
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite03.pdf
İki Vektörün Toplamı: İki vektörün toplamı, bu iki vektörün karşılıklı koordinatlarının toplanmasıyla elde edilir.
Bir vektörün gerçel bir sayıyla çarpılması: İki vektörün toplamı, bu iki vektörün karşılıklı koordinatlarının toplanmasıyla elde edilir.
5
Vektörler: Toplama Örneği Vektörler: Toplama Örneği
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite03.pdf
6
Vektörler: Vektörler: Bir Vektörün BoyuBir Vektörün Boyu
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite03.pdf
Başlangıç noktası R ve bitiş noktası S olan vektörünün boyu bu iki nokta arasında kalan uzaklıktır.
Vektörün boyu yerine vektörün büyüklüğü, vektörün uzunluğu ve vektörün normu terimleri de kullanılır ve biçiminde gösterilir. Vektörün boyu aşağıdaki gibi hesaplanır.
RS
|| RS
Özel olarak bir R(r1,r2) yer vektörünün boyu aşağıdaki gibi hesaplanır.
7
Vektörler: Vektörler: Bir Vektörün BoyuBir Vektörün Boyu Örneği Örneği
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite03.pdf
8
Vektörler: İki Vektörün Skaler ÇarpımıVektörler: İki Vektörün Skaler Çarpımı
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite04.pdf
9
Skaler Çarpımın Özellikleri: Vektörün Skaler Çarpımın Özellikleri: Vektörün NormuNormu
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite04.pdf
10
Skaler Çarpımın Özellikleri: İki vektör Skaler Çarpımın Özellikleri: İki vektör arasındaki açıarasındaki açı
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite04.pdf
11
Skaler Çarpımın Özellikleri: İki vektör Skaler Çarpımın Özellikleri: İki vektör arasındaki açı örneği 1arasındaki açı örneği 1
http://www.aof.anadolu.edu.tr/kitap/IOLTP/2288/unite04.pdf
12
Skaler Çarpımın Özellikleri: İki vektör Skaler Çarpımın Özellikleri: İki vektör arasındaki açı örneği 2arasındaki açı örneği 2
)0,0,1(),1,1,1(),1,0,1(
cba
Verilen a,b ve c vektörleri için bir birine en yakın olanlar hangileridir.
816,045,2
2
6
2
32
2
111101
)1.11.01.1(
||||
.cos
222222
ba
ba
707,0414,1
1
2
1
12
1
001101
)0.10.01.1(
||||
.cos
222222
ca
ca
577,0732,1
1
3
1
13
1
001111
)0.10.11.1(
||||
.cos
222222
cb
cb
Bir birine en yakın olan vektörler a ve b, neden?
13
Benzerlik Ölçüsü (ya da skoru)Benzerlik Ölçüsü (ya da skoru)
Vektörler arasında hesaplanan cos Ø değeri açıyı değil açısının cos değerini gösteriyor.
Ø açsı büyüdükçe açının cos değeri küçülüyor. O zaman cos Ø değeri ne kadar büyükse vektörler bir birine o kadar yakındır diyebiliriz.
Vektörler arasındaki cos Ø değeri iki vektörün bir birine ne kadar yakın olduğunu gösterir.
İki vektör arasındaki açının cosinüsünün 1.0 çıkması iki vektörün aynı ya üst üste olduğunu gösterir. Yani aralarındaki Ø açısı 0(sıfır).
Vektörler arasındaki bu açı Bilgi Erişim alanında benzerlik ölçüsü (similarity) olarak adlandırılır.
14
Benzerlik Ölçüsü (ya da skoru)Benzerlik Ölçüsü (ya da skoru)
O zaman vektörler arasındaki bu ilişki ters dizin kütüğü üzerinde de kullanılabilir.
Derlemde bulunan her bir belge ve her bir sorgu birer vektör olarak düşünülür.
Vektör elemanları ters dizin kütüğünde bulunan tekil kelimelerden oluşturulur.
Vektör katsayıları kullanılan modele göre değişiyor.
Örneğin bool modelinde katsayılar 1 ve 0 oluyor.
Örneğimizde her bir vektörün eleman sayısı = derlemdeki tekil kelime sayısı = 18
Tüm vektörler eşit eleman sayısında olmak zorunda.
Terimler Belgeler Sorgu
D1 D2 D3 D4 D5 D6 Q
bilgi 1 1 0 0 0 0 1
erişim 1 0 0 0 0 0 1
dizinleme 1 0 0 0 0 0 0
sanal 0 1 0 0 0 0 0
kütüphane 0 0 1 0 0 0 0
ve 1 1 1 0 0 1 0
veri 0 0 1 0 0 0 0
saklama 0 0 1 0 0 0 0
dünyada 0 1 0 1 0 0 0
ekonomik 0 0 0 1 1 0 0
durum 0 0 0 1 0 0 0
günlük 0 0 0 0 1 0 0
veriler 0 0 0 0 1 1 0
haftalık 0 0 0 0 0 1 0
veya 0 0 0 0 0 1 0
günlük 0 0 0 0 0 1 0
mal 0 0 0 0 0 1 0
15
Benzerlik Ölçüsü (ya da skoru)Benzerlik Ölçüsü (ya da skoru)
Sorgu (“bilgi erişim”) ve D1, D2, D3 belgeleri arasındaki benzerlik skorları nedir?
Terimler Belgeler Sorgu
D1 D2 D3 D4 D5 D6 Q
bilgi 1 1 0 0 0 0 1
erişim 1 0 0 0 0 0 1
dizinleme 1 0 0 0 0 0 0
sanal 0 1 0 0 0 0 0
dünyada 0 1 0 0 0 0 0
kütüphane 0 0 1 0 0 0 0
ve 1 1 1 0 0 1 0
veri 0 0 1 0 0 0 0
saklama 0 0 1 0 0 0 0
dünyada 0 0 0 1 0 0 0
ekonomik 0 0 0 1 1 0 0
durum 0 0 0 1 0 0 0
günlük 0 0 0 0 1 0 0
veriler 0 0 0 0 1 1 0
haftalık 0 0 0 0 0 1 0
veya 0 0 0 0 0 1 0
günlük 0 0 0 0 0 1 0
mal 0 0 0 0 0 1 0
707,08
2
11*1111
11),(
2222221
QDsim
354,08
1
11*1111
1),(
2222222
QDsim
011*1111
0),(
2222223
QDsim
16
Benzerlik Ölçüsü (ya da skoru)Benzerlik Ölçüsü (ya da skoru)
Terimler Belgeler Sorgu
D1 D2 D3 D4 D5 D6 Q
bilgi 1 1 0 0 0 0 1
erişim 1 0 0 0 0 0 1
dizinleme 1 0 0 0 0 0 0
sanal 0 1 0 0 0 0 0
dünyada 0 1 0 0 0 0 0
kütüphane 0 0 1 0 0 0 0
ve 1 1 1 0 0 1 0
veri 0 0 1 0 0 0 1
saklama 0 0 1 0 0 0 0
dünyada 0 0 0 1 0 0 0
ekonomik 0 0 0 1 1 0 0
durum 0 0 0 1 0 0 0
günlük 0 0 0 0 1 0 0
veriler 0 0 0 0 1 1 0
haftalık 0 0 0 0 0 1 0
veya 0 0 0 0 0 1 0
günlük 0 0 0 0 0 1 0
mal 0 0 0 0 0 1 0
Sorgu (“bilgi veri erişim”) olursa sorgu ve D1, D2, D3 belgeleri arasındaki benzerlik skorları ne olur?
577,012
2
111*1111
011),(
22222221
QDsim
289,012
1
111*1111
001),(
22222222
QDsim
289,012
1
111*1111
010),(
22222223
QDsim
Sadece “bilgi” ve sadece “veri” terimlerinin kesiştiği durumda aynı benzerlik skoruna erişildi (0,289).
Sorgu ve D1 belgesi arasındaki benzerlik skoru düştü, neden?
17
Bool Ağırlıklandırma (0-1) ProblemleriBool Ağırlıklandırma (0-1) Problemleri
Bool modelindeki en büyük problem doküman belge eşleşmeleri için bir derece (rank) belirlenememesiydi.
Vektör yaklaşımı ile bu bir nebze giderildi.
Şimdi problem belge içerisindeki her terimin aynı önemle değerlendirilmesi. Oysa bir kelime bir belge içerisindeki ne kadar çok geçiyorsa o belge için o kadar değerlidir.
Diğer taraftan bir terim derlemdeki belgelerde ne kadar çok geçiyorsa ayırt edici olma olasılığı o kadar düşüktür.
O halde bir belge içinde çok geçen ancak derlemde çok sayıda belgede bulunmayan terimler bizim için daha anlamlı bu nedenle erişim fonksiyonunda bu tür terimler daha değerli olmalı ama nasıl?
18
tf*idf ağırlıklandırmatf*idf ağırlıklandırma
Ters dizin kütüğünde terimler için 0/1 ağırlığı yerine tf(w)*idf(w) çarpımı kullanılır.
tf (term frequency): Terim sıklığı anlamına gelir ve bir terimin bir belge içerisindeki geçeme sayısını ya da sıklığını (frequency) ifade eder. tf değerini hesaplamak için 2 yöntem var:
• Birincisinde; terimin ilgili doküman içerisinde geçme sayısı doğrudan kullanılır,• İkincisinde; terimin ilgili doküman içerisinde geçme sayısı, ilgili dokümandaki
toplam kelime sayısına bölünür ve sayı normalleştirilir.
idf (inverse document frequency): Ters doküman sıklığı anlamına gelir ve bir terimin derlemdeki diğer belgelerde geçme sıklığını ifade eder.
• idf hesaplanırken aşağıdaki formül kullanılır,• NDerlemde bulunan toplam belge sayısı• df(w) w teriminin geçtiği belge sayısı• Ölçeği küçültmek için bölümün logaritması alınır
10( ) log( )
Nidf w
df w
19
tf*idf ağırlıklandırmatf*idf ağırlıklandırma
• Bir terim bir belge içerisinde ne kadar çok geçiyorsa o kadar değerlidir.• Bir terim derlemdeki diğer belgelerde ne kadar çok geçiyorsa belge için ayırt edici
olma gücü o kadar düşüktür.
log(1) = 0log(10) = 1log(100) = 2log(1000) = 3log(10000) = 4
log(5,67) = ?log(128,4) = ?log(18912) = ?
1000 adet belgenin bulunduğu bir derlemde idf değerleri:
20
tf*idf ağırlıklandırma örneğitf*idf ağırlıklandırma örneği
“bilgi” teriminin D1 belgesi için tf ve idf değerleri nedir?
• tf(“bilgi”) = 2• idf(“bilgi”)=log(6/2) = 0,477• tf(“bilgi”)*idf(“bilgi”) = 0,954
Derlemdeki Belgelerimiz: D1 : bilgi erişim ve bilgi dizinlemeD2 : sanal dünya ve bilgiD3 : kütüphane ve veri saklamaD4 : dünyada ekonomik durum D5 : günlük ekonomik verilerD6 : haftalık mali ve günlük mali veriler
“ve” teriminin D6 belgesi için tf ve idf değerleri nedir?
• tf(“ve”) = 1• idf(“ve”)=log(6/4) = 0,176• tf(“ve”)*idf(“ve”) = 0,176
“mali” teriminin D6 belgesi için tf ve idf değerleri nedir?
• tf(“mali”) = 2• idf(“mali”)=log(6/1) = 0,778• tf(“mali”)*idf(“mali”) = 1,556
Örnekler içinde en değerli kelime hangisi? Neden?
21
tf*idf ağırlıklandırma ve ters dizin tf*idf ağırlıklandırma ve ters dizin kütüğükütüğü
Derlemdeki terimlere göre ters dizin kütüğündeki terim ağırlıklarını D1 için güncelleyelim.
Derlemdeki Belgelerimiz: D1 : bilgi erişim ve bilgi dizinlemeD2 : sanal dünya ve bilgiD3 : kütüphane ve veri saklamaD4 : dünyada ekonomik durum D5 : günlük ekonomik verilerD6 : haftalık ve günlük mali veriler
Terimler Dokümanlar Sorgu
D1 D2 D3 D4 D5 D6 Q
bilgi 0,954 0,477 0 0 0 0 1
erişim 0,778 0 0 0 0 0 1
dizinleme 0,778 0 0 0 0 0 0
sanal 0 1 0 0 0 0 0
dünyada 0 1 0 0 0 0 0
kütüphane 0 0 1 0 0 0 0
ve 0,176 1 1 0 0 1 0
veri 0 0 1 0 0 0 0
saklama 0 0 1 0 0 0 0
dünyada 0 0 0 1 0 0 0
ekonomik 0 0 0 1 1 0 0
durum 0 0 0 1 0 0 0
günlük 0 0 0 0 1 0 0
veriler 0 0 0 0 1 1 0
haftalık 0 0 0 0 0 1 0
veya 0 0 0 0 0 1 0
günlük 0 0 0 0 0 1 0
mal 0 0 0 0 0 1 0
tf(“bilgi”)*idf(“bilgi”)= 2*0,477 = 0,954
tf(“erişim”)*idf(“erişim”)= 1*0,778 = 0,778
tf(“dizinleme”)*idf(“dizinleme”)= 1*0,778= 0,778
tf(“ve”)*idf(“ve”)= 1*0,176 = 0,176
22
tf*idf ağırlıklandırma ve ters dizin tf*idf ağırlıklandırma ve ters dizin kütüğükütüğü
Aynı işlemlerin sorgular için de yapılması gereklidir.Q={bilgi erişim}tf(“bilgi”)*idf(“bilgi”)= 1*0,477 = 0,477tf(“erişim”)*idf(“erişim”)= 1*0,778 = 0,778
ÖDEV 1. Yandaki ters dizin kütüğünü tüm terim/doküman çiftleri için güncelleyiniz.
ÖDEV 2. Q sorgusu ağrılıkları güncellenmiş bu derlem üzerinde yürütülürse erişim çıktısı ne olur? Sıralı ve benzerlik skorları ile beraber yazınız.
Terimler Dokümanlar Sorgu
D1 D2 D3 D4 D5 D6 Q
bilgi 0,954 0,477 0 0 0 0 0,477
erişim 0,778 0 0 0 0 0 0,778
dizinleme 0,778 0 0 0 0 0 0
sanal 0 1 0 0 0 0 0
dünyada 0 1 0 0 0 0 0
kütüphane 0 0 1 0 0 0 0
ve 0,176 1 1 0 0 1 0
veri 0 0 1 0 0 0 0
saklama 0 0 1 0 0 0 0
dünyada 0 0 0 1 0 0 0
ekonomik 0 0 0 1 1 0 0
durum 0 0 0 1 0 0 0
günlük 0 0 0 0 1 0 0
veriler 0 0 0 0 1 1 0
haftalık 0 0 0 0 0 1 0
veya 0 0 0 0 0 1 0
günlük 0 0 0 0 0 1 0
mal 0 0 0 0 0 1 0
23
Eşik Değer (Threshold) SeçimiEşik Değer (Threshold) Seçimi
• N adet belgenin bulunduğu bir derlemde Q kullanıcı sorgusu ile ilgili belgelere erişim sağlanıyor. Erişim çıktısında kaç adet belgeye erişim sağlanacak?• Belge ile sorgu arasında bir kelime bile kesişse bu belge erişim çıktısında yer alacak mı?• Derleme yollanan sorgu derlemdeki her bir belge ile karşılaştırılarak her bir belge – sorgu çifti için bir skor değeri oluşturulur,• Hangi skordan yüksek eşleşmeler ilgili ?
Sorgu Belge Skor
Q D1 0.92
Q D2 0.75
Q D3 0.46
Q D4 0.19
Q D5 0.02
Q D6 0.01
… … …
24
Eşik Değer (Threshold) SeçimiEşik Değer (Threshold) Seçimi
• Eşik değer: erişim çıktısında bulunan belgeler için belli bir skor değerinin altında kalanlar ilgisiz kabul edilir, ilgili / ilgisiz ayrımının yapılmasını sağlayan bu skor değeri eşik değer olarak kabul edilir,
• Eğer BES’de eşik değeri kullanılmazsa erişim çıktısında ilgisiz ya da çok az ilgili belge sayısı artar,
• İlgililik ile ilgili skorlar için eşik değeri hangi noktada seçilecek, yani hangi skorlar ilgili hangileri ilgisiz kararı nasıl verilecek?
•Eşik değerleri seçilirken BES’de anma ve duyarlık değerlerinin en yüksek olduğu noktadaki skor değeri alınır.
•Anma: Sistem tarafından erişilen ilgili belgelerin (a) derlemdeki toplam ilgili belgelere (a+c) oranıdır.
•Duyarlık: Sistem tarafından erişilen ilgili belgelerin (a) erişim çıktısında yer alan ilgili veya ilgisiz toplam belge sayısına (a+b) oranıdır.
prec
isio
nrecall
x
xx
x
25
Eşik Değer (Threshold) SeçimiEşik Değer (Threshold) Seçimi
• BES’de eşik değerini hesaplamak için bir eğitim kümesi (training set) yaratılır. Bu eğitim kümesi belgeler ve sorgulardan oluşur.
• Eğitim kümesinde her bir sorgunun hangi belgelerle ilgili olduğu önceden bilinir. Bu sayede BES’in sorguya karşılık olarak döndürdüğü belgelerin doğru mu yanlış mı olduğu belirlenebilir.
• Eğitim kümesindeki her bir sorgu derlem üzerinde yürütülerek sorgu ve belgenin ilgili olduğu eşleşmeler için benzerlik skor değerleri elde edilir.
• Sonraki aşamada ilgili belge – sorgu çiftleri için ortalama bir skor değeri belirlenir ve bu eşik değerine göre örnek sorguların anma ve duyarlık değerleri hesaplanır,
• Daha sonra başlangıçta belirlenen eşik değerinin altında ve üstünde yeni eşik değerleri seçilerek yeni anma ve duyarlık değerleri hesaplanır,
• Anma ve duyarlık değerleri arttıkça eşik değeri değiştirilmeye (arttırılmaya ya da azaltılmaya) devam edilir,
• Anma ve duyarlık değerlerinin en yüksek olduğu durumdaki skor değeri sistem için eşik değeri olarak kabul edilir.
26
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
27
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
28
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
29
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
30
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
31
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
32
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
33
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
34
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
35
Eşik Değer (Threshold) Seçimi ÖrnekEşik Değer (Threshold) Seçimi Örnek
Eşik Anma Duyarlık0,100 0,915 0,7150,120 0,865 0,7730,140 0,810 0,8200,160 0,730 0,8500,180 0,621 0,8800,200 0,540 0,9040,220 0,478 0,9300,240 0,417 0,941
0,260 0,377 0,940
36
Vektör Uzayı Modeli DeğerlendirmeVektör Uzayı Modeli Değerlendirme
• Sorgu sonucu derecelendirilebilmektedir,
• Cos ölçümüne göre her belgeye bir sorgu ile benzerlik değeri verilebilmektedir,
• Terim ağırlıklandırma sorgu sonucu döndürülen belgelerin kalitesini artırmaktadır yani bilgiye erişim daha başarılı olmaktadır,
• Hızlı ve etkin bir fonksiyon, hala popüler olarak kullanılıyor,
• Terimleri bir birlerinden bağımsız görmesi dezavantajı (belgedeki kelimeler arası ilişkiler göz ardı ediliyor)