Yazan : Şadi Evren ŞEKER

Bilgisayar bilimlerinin yaygınlaşması ve kullanım alanlarının artması ile birlikte gündeme gelen bir konudur. Bilgi getirimi konuları üzerine yapılan çalışmaların gelişmesi sonucunda, artık lisans seviyesinde, üniversitelerde okutulan bir ders halini almıştır.

Bilgi getirim çalışmalarının amacı, genellikle düzenli bir yapıya sahip olmayan bir kaynaktan, istenilen yapıda bilginin elde edilmesidir. Örneğin bir metin içerisinden, metnin hangi konu ile ilgili olduğunun çıkarılması, bir bilgi getirimidir.

Bilgi getirimi, günümüzde özellikle internet üzerinde çalışan arama motorları sayesinde oldukça popüler olmuştur. Aslında bilgi üzerinde yapılan her arama bir bilgi getirimi kabul edilebilir. Örneğin elektronik postalarınız arasında yaptığınız bir arama da bilgi getirimidir.

Getirim yapılacak ortamın hazırlanması da bilgi getiriminin bir parçasıdır. Bu hazırlama işlemine özel olarak bilgi çıkarımı (information extraction) ismi de verilir. Örneğin getirim yapılacak dokümanların sınıflandırılması, bu dokümanlarda bulunan bilgilerin indekslenmesi gibi işlemler, ileride yapılacak getirim işlemlerine zemin hazırlar. Bilgi getirimi, üzerinde çalıştığı veri ortamına göre, yapılandırılmamış, yarı yapılandırılmış veya tam yapılandırılmış gibi sınıflara ayrılabileceği gibi, bilgi getiriminin yapıldığı verinin büyüklüğüne göre, farklı ölçeklerde de incelenebilir.

Örnek

Konunun daha iyi anlaşılması açısından, bir gerçek hayatta belki de pek çok kişinin farkında olmadan yaptığı bir bilgi getirimini ele alalım. Herkesin tanıdıklarını ve tanıdıklarının tanıdıklarını bir matriste tuttuğunu düşünelim. Yani siz, arkadaşlarınızı bir matriste tutuyorsunuz ve arkadaşlarınızın birbirini tanıyıp tanımamasını da bu matriste işaretliyorsunuz.

Ali Ahmet Ayşe Mehmet Veli
Ali 1 0 1 1 0
Ahmet 0 1 1 0 1
Ayşe 1 1 1 1 0
Mehmet 1 0 1 1 0
Veli 0 1 0 0 1

Yukarıdaki tabloda, birbiri ile tanışmış olanları 1, birbirini tanımayanları ise 0 ile işaretledik. Unutulmaması gereken bir nokta, bu bilginin, bilgisayar tarafından işlenebilir olmasıdır. Yukarıdaki tabloda ikilik tabanda sayılar kullanılmış ve veri getiriminin yapılması kolaylaştırılmıştır. Bu tip bilgi getirimlerine ayrıca ikilik bilgi getirimi (binary information retrieval) ismi de verilir.

Yukarıdaki tabloya bakarak, örneğin bir organizasyona arkadaşlarınızı çağırmak istiyorsunuz ve işlerin hızlı yürümesi için, herkesi siz çağırmak yerine en az kişiye ulaşıp herkesi haberdar etmek istiyorsunuz. Bu durumda en verimli çözüm, tek kişiyi aradığınız ve bu tek kişiden oluşan bir zincirin dolaşılabilmesidir.

Örnek zincirimize göre, örneğin siz Ali’yi arayarak başlarsanız, Ali → Ayşe → Ahmet → Veli şeklinde bir zincirden sonra Mehmet’e ulaşılamamaktadır. Bir çözüm olarak Ayşe hem Ahmet’e hem de Mehmet’e haber verebilir veya alternatif bir zincir şu şekilde olabilir: Mehmet → Ali → Ayşe → Ahmet → Veli , dolayısıyla herkes tek bir kişiyi arayarak herkese ulaşılmış olur. Elbette bu zincirin oluşturulmasının, bilgisayarlar tarafından yapılması mümkündür ve bunun için bilgisayarın işleyebildiği bir veri modeline ihtiyaç vardır. Yukarıdaki bu ikilik tabandaki tablo da, bize bu veri modelini sunar.

Örneğin bir romandaki kişiler arasında yukarıdakine benzer bir tablo hazırlanmak isteseydi. Bu tabloyu romandan otomatik olarak çıkaran bilgisayar yazılımı, bilgi çıkarımı (information retrieval) yapmış olacaktı.

Bilgi Getirimi Formülleri

Bilgi getirimi çalışmalarında ayrıca iki önemli ölçüm kriteri bulunur.

  • Kesinlik (Precision) : Getirilen bilginin ne kadarı, istenilen bilgiyle ilgilidir?
  • Hassasiyet (Recall): Getirilmesi gereken bilginin ne kadarı getirilmiştir?

Buradaki kesinlik kavramı genelde p harfi ile gösterilir ve getirilen bilgideki doğru sonuçların, getirilen bilginin tamamına oranı olarak hesaplanır.

Hassasiyet kavramı da genelde r harfi ile gösterilir ve getirilen doğru sonuçların, getirilmesi gereken doğru sonuçlara oranı ile hesaplanır.

Yukarıdaki bu tanımlar ışığında, F1 skoru, bu değerlerin harmonik ortalamasıdır (harmonic mean):

F skorunun bir β değerine bağlanması da mümkündür. Bu durumda , F1 skoru yerine F β skoru terimi kullanılır

Ters İndeks (Inverted Index)

Bilgi getirimi konusundaki önemli kavramlardan birisi de indekslemedir. Normalde bir metin içerisindeki bütün bilgiler indekslidir. Yukarıda verdiğimiz ve bir romanda geçen kahramanları hatırlayalım. Bu kahraman bilgileri roman içerisinde geçtikleri sayfa itibariyle indekslidir, yani romanı okuyan birisi kolaylıkla aşağıdakine benzer bir tablo hazırlayabilir:

  1. Sayfada Ali ve Ahmet’ten bahsediliyor.
  2. Sayfada Ayşe ve Ali’den bahsediliyor.

Bu indeksleme anlamlı olduğu gibi, bazı durumlarda kullanışsız olabilir. Örneğin Ali, romanın kaç sayfasında zikredilmektedir veya Ali’nin geçip Ahmet’in geçmediği bir yer var mıdır? Veya Ayşenin, romanda ilk kez geçtiği sayfa hangisidir gibi sorular sorulursa, yukarıdaki indeks üzerinde ilave işlemler yapılması ve arama algoritmalarının kullanılması gerekir.

Bunun yerine, kişi bazlı aramaları kolaylaştırmak için, yukarıdaki indeksi ters çevirmek mümkündür.

Ali → 1 , 2

Ahmet → 1

Ayşe → 2

Şeklinde herkesin geçtiği sayfa numaralarını indekslersek, yukarıda sıraladığımız soruların hepsine çok daha hızlı cevaplar verebiliriz.

Buradan anlaşılacağı üzere, sorgulanan verinin tipine göre, indeksin dönüştürülmesi gerekebilir ve şayet normalde verinin üzerinde çalıştığı indeks, hızlı erişim gibi kaygılardan dolayı ters çevrilirse bu yeni indekse ters indeks ismi verilir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir