Ontoloji Odaklı Web Arama Sistemi


Özet

Günümüzde, Internet ortamının hızla büyümesi sonucu, genel amaçlı arama motorları güncel ve doğru bilgi verme açısından birçok sorunla karşılaştı ve bu büyüme hızı karşında çaresiz kaldı. Bu yüzden yapılan çalışmalar daha akıllı ve odaklanmış arama sistemleri üzerine yoğunlaştı. Genel amaçlı arama sistemleri Web üzerindeki tüm sayfaları incelemeye çalışırken,  bu tür  akıllı ve odaklanmış sistemler, kendisini belirli bir konuda sınırlı tutar ve sadece ilginç bulduğu Web sayfalarını inceler. Bu şekilde odaklanmış arama motorları, genel amaçlı arama motorlarına göre çok daha güncel ve doğru sonuçlar döndürür.

Bu tez, ontoloji odaklı arama sistemlerine örnek bir yapı teşkil eder. Geliştirilen sistem, kullanıcı tarafından verilen ontolojiyi kullanarak ilgili kelimelere çeşitli ağırlık değerleri verir. Daha sonra, bu değerleri kullanarak bu kelimelerin geçtiği Web sayfalarının skorlarını hesaplar. Bu şekilde, hangi linklerin izleneceği ve hangi sayfaların konuyla ilgili olduğu saptanmış olur. Bu yaklaşım, Web dökümanlarının içeriğini ön planda tutar ve Internet bağlantısını verimli bir  biçimde kullanır. “Casus” adını taşıyan sistem, öngörülen yapının uygulanmış bir prototipidir. “Casus“ ümit veren sonuçları bakımından bu tür odaklanmış sistemlere güzel bir örnek teşkil etmiştir.

1. Giriş

Genel anlamda, Web  tüm dünyaya dağılmış ve birbirine bağlanmış bir bilgi havuzudur[1]. Son birkaç yıldaki hızlı gelişiminden sonra Web dünyanın en büyük dijital bilgi kaynağı haline gelmiştir. Ancak Web’de bulunan bilgilerin dinamik olması, düzgün ve standardize bir yapıda olmaması nedeniyle arama motorları için doğru ve güncel  bilgi bulmak önemli bir sorun haline geldi. Her ne kadar birçok yeni arama motoru geliştirilse de Web’in ivmelenerek artan büyümesi tüm Web sayfalarını toplayıp indekslemeyi ve bu indeksleri de güncel tutmayı neredeyse imkansız hale getirdi. Örneğin en büyük arama motorlarından Google iki milyar Web sayfasını  ve yaklaşık tüm Web’in yüzde 40’ını toplayabildi.[2] Ancak birçok arama motoru genelde eksik ve güncel olmayan sonuçlar döndürerek kullanıcıların isteklerine yanıt verememektedir. Bu yüzden son zamanlarda yapılan çalışmalar  odaklanmış arama motorları üzerine yoğunlaştı. Bu tür sistemler Google gibi genel amaçlı arama motorlarının aksine Web’in sadece belirli bir konuyla ilgili kısmında faaliyet gösteren ve sadece konuyla ilgili Web alanlarını gezmeye çalışan sistemlerdir. Bu şekilde genel arama motorlarının en büyük sorunlarından olan güncel ve doğru bilgi verme sorununu bir çözüm getirirler.

Bu bildiride ontoloji kullanarak odaklanmış  arama motorları tanıtılacak, bu güncel teknolojinin uygulandığı bir prototip sonuçları ile açıklanacaktır.

2. Web Arama Sistemleri

2.1 Genel Amaçlı Arama Sistemleri

Web arama sistemleri, diğer bilinen adıyla “örümcek”, “robot”, “ajan” sistemleri, arama motorlarının kullanımına yönelik Web sayfalarına erişen sistemlerdir[3]. Bu sistemler genel olarak daha önceden tanımlanmış başlangıç URL’leriyle başlar ve bu sayfaları indirir. Daha sonra her bir sayfa için o sayfanın URL bağlantılarını URL listesine ekler . URL listesindeki bu bağlantılar daha sonra belirlenmiş bir şekilde işlenir ve sayfanın içeriği ortaya çıkarılır. Genellikle bu tür sistemler kullanıcıların kullanımına yönelik sayfanın indirilme ve yüklenme zamanı gibi fazladan sayfa bilgileri de içerir.

Genel amaçlı arama sistemlerinin  başlangıç URL’lerinden başlayarak Web’deki tüm linkleri ziyaret edebildiği varsayılır[4]. Ancak pratikte bu mümkün değildir. İlk olarak, Web’deki tüm sayfaları içeren bir yol yoktur. Bunun yanında genel amaçlı sistemler Internet’ten sayfa indirme konusunda Web’in artan büyüme hızıyla yarışamamaktadır. Buna ek olarak zaman ve performans sorunları da önemli bir dezavantajdır. Günde yaklaşık 3 milyon ve 59 Giga Bytes veri dosyası Web’e eklenmektedir. Bunun yanında birçok sayfanın dinamik olması ve bir Web sayfasının averaj ömrünün 49 gün olması güncellik sorununu ortaya çıkarmıştır. Güncelliği sürdürebilmek için arama sistemlerinin saniyede 10 mega bytes veri dosyası indirmesini gerektirir[5].

2.2 Odaklanmış Arama Sistemleri

Odaklanmış arama sistemleri [6,7], Web’in sadece konuyla ilgili  parçasını inceler ve arar. İdeal odaklanmış sistemler, konuyla ilgili maksimum sayıda sayfayı indirip konuyla ilgisiz minimum sayıda sayfayı gezmeyi amaçlar. Bu yüzden odaklanmış sistemler içeriğin hızla değiştiği ortamlarda güncellği korumaya yönelik potansiyel bir çözüm oluşturur. Bunun yanında sadece konuyla ilgili sayfaları indirdikleri için band genişliği ve depolama alanı konusunda büyük bir avantaj sağlar.

Odaklanmış arama sistemlerinde uygulanan yaklaşım birçok varsayıma dayanır. İlk varsayıma göre ilgili bir sayfayla bağlantılı olan sayfalar da yine bağlantılıdır[8]. Bu varsayım Davison’ın[7] yaptığı çalışmada ispatlanmıştır. Bu çalışmada biribiriyle bağlantılı olan sayfaların içerikleri benzerlik göstermektedir. Diğer varsayıma göre sayfalardaki bağlantıları gösteren metinler o bağlantı hakkında fikir elde etmemizi sağlar. Ancak bu metinlerin çok kısa olmaları nedeniyle sayfaların içeriğiyle ilgili bilgi içerdikleri pek söylenemez.. Son varsayıma göre ise bağlantının kendisi önem taşır. Örneğin arama sistemi aynı sunucudan daha önce konuyla alakasız birçok sayfayla karşılaştıysa bu sunucu işaretlenerek gözardı edilebilir.

Özet olarak odaklamış sistemler için en önemli kısım URL listesindeki sayfaların hangi sırayla indirileceğinin saptanmasıdır. Bu da bağlantı tarafından gösterilen sayfanın konuyla ilgisini o sayfaya gitmeden tahmin etmeyi gerekli kılar. Ancak tahminler yanlış çıkabilir.

3. Bilgi Modeli

3.1 Anlamsal Web

Günümüzdeki Web[9],  ilk başlarda insanların anlayabileceği resim ve metin dosyalarından oluşmuş bir bilgi kaynağı olarak tasarlandı. Anlamsal Web’in altında yatan düşünce sayfanın içeriğini alıp makinenin anlıyabileceği bir şekilde kodlayan mark-up’ların sayfayla birleştirilmesidir. Bu yüzden yeni bir markup diline ihtiyaç duyulur.Bu dilin belirli  ilgi alanı için paylaşılan veri modelleri ya da ontolojileri desteklemesi, ayrıca da yazarların ontolojileri kullanarak ifade kümelerini(statement) yaratmalarını desteklemesi gerekmektedir.  Günümüzde bu amaca uygun olarak kullanılan markup dilleri RDF/S ve DAML+OIL’dir.

3.2 Ontoloji

Ontoloji  varlıkla ilgili sorunların tartışıldığı metafizik alanıdır. Bilgisayar bilimi açısından ise, varlıkları ve varlıkların birbiriyle olan ilişkilerini belirli bir bilgi bir bilgi alanıyla inceleyen bir modeldir. Bu bildiride kullanılan şekliyle ontoloji , belirli bir ilgi alanındaki  kavramlar tanımları (sınıflar), bu kavramların özellikleri ve kısıtlamalardan oluşur.

4. Ontoloji Odaklı Arama Sistemi Yapısı

Bu bildiride hazırlanan ontoloji kullanarak odaklanmış arama sistemi 5 ana bileşene sahiptir.

  1. Ontoloji ve Metadata Yönetimi: Odaklanmış arama sistemi ontolojinin verdiği bilgiyi kullanır.

  2. Web Tarama(Crawler): Web tarıyıcısı URL listesindeki en yüksek skorlu URL’nin bağlantılı olduğu sayfaları indirir.Bu kısım Internet’le arama sistemi arasındaki katmanı oluşturur.

  3. Önişleme Modülü(Preprocessor): İndirilen sayfalar anahtar kelimeler, bağlantı tanımlama metinler(anchor-text), ve bağlantılar çıkartılacak biçimde işlenir.

  4. İlgililik Ölçme Modülü(Relevance Computation): Bu kısım indirilen sayfanın bilgileriyle(metin,anchortext..) kullanılan ontolojinin elemanlarıyla değişik ilgililik ölçümleri kullanılarak eşleştirildiği kısımdır. Kullanılan ilgililik setine göre sayfanın skoru hesaplanır. Belirli bir eşik skorunun üzerindeki sayfalar veritabanına kaydedilir.

  5. Kullanıcı Modülü: Kullanıcı her türlü başlangıç değerlerini belirler. Sonuçta kullanıcıya anlamlı URL listesi,tüm gezilenlerin bulunduğu URL listesi döndürülür. Bunun yanında kullanıcı sonuçlar arasında kelime bazlı arama yapma imkanına sahiptir.

Şekil 4.1 Sistem yapısı

4.1 Ontoloji ve Metadata Yönetimi

Odaklanmış sistemler kullanıcı tarafından belirlenen ontolojiyi bilgi kaynağı olarak kullanır.Ontolojinin sınıfları arasından seçilen ana varlıklar aramanın odaklanmasında kullanılır.

4.2 Web Tarama

Web tarayıcısı Internet’le sistem arasında aram katman vazifesi görür ve Internet’le doğrudan bir bağlantısı vardır.Web tarayıcısı(crawler) kullanıcı tarafından belirlenen başlangıç URL’leriyle başlar ve bu URL’lerden balayarak Internet’ten sayfaları belirli bir düzende indirir. İndirilen sayfanın dış bağlantıları, metinleri ve bağlantı tanım metinleri(anchor text) Sayfa İşleme(4.3) modülü tarafından çıkartılır ve her bir sayfanın ilgililik skorları İlgililik Ölçümü(4.4) modülüyle hesaplanır. Bu URLler daha sonra skorlarıyla birlikte sıralanır.Daha sonra ise en yüksek skorlu sayfanın bağlantılı olduğu sayfalar indirilir ve Sayfa İşleme modülüne sokulur. Bu işlemler sonlandırma şartı gerçekleşinceye kadar devam eder. Sonlandırma şartı kullanıcı tarafından tanımlanan bulunan ilgili sayfa sayısı ya da gezilen tüm sayfa sayısıdır. Eğer bu koşullar sağlanırsa tarıyıcı sonladırılır.

Bu modülde Internet band genişliğini etkili biçimde kullanabilmek için threadlerin yardımıyla birden çok tarayıcı kullanılır. Sayfaları yükleme ve kaydetme kısımları paralel olarak çalışır. Bunun yanında aynı URL’lerin indirilmesi de önlenmiştir. Ayrıca resim ve ses dosyaları gibi bazı dosya formatları da  arama sırasında dikkate alınmamıştır.

Odaklanmış arama sistemlerinin en büyük sorunu URL listesindeki URL’lerin hangi sırayla indirileceği konusundadır.URL listesindeki sayfalar öyle bir sırada indirilmelidir ki konuyla ilgili maksimum sayıda sayfa gezerken  konuyla ilgisiz minimum sayıda sayfa indirilsin. Bu da gerçekten zor bir iştir çünkü konuyla çok ilgili sayfalar alakasız sayfaların arkasında bulunabilir.Bu yüzden belirli aralıklarla konuyla ilgisiz sayfalar da ziyaret edilebilir. Ancak  bu bildiride gösterilen prototipte sadece konuyla ilgili sayfaların bağlantıları indirilmektedir.

4.3 Sayfa Önişleme

Internet’ten indirilen sayfalar bu modülde işleme sokulur. Bu kısmın temel amacı indirilen sayfanın bir sonraki İlgililik Ölçüm modülü tarafından kulanılabilecek biçimde işlenmesidir. İlk başta indirilen sayfadaki bağlantıları bir sonraki tarama döngüsünde kullanılmak üzere URL listesine ekler, bunun yanında bir sonraki ölçüm işlemleri için sayfadaki kelimeleri bir liste halinde kaydeder.

Internet’ten indirilen dökümana birden fazla metin işleme prosedürleri uygulanır. İlk versiyonunda odaklanmış sistem ontolojide kullanılan terimlerin İngilizce olması nedeniyle sadece İngilizce metinleri inceleyebilmektedir. Herhangibir dili tanıyabilmek için yapılacak olan en basit yol o dile ait özel sözcüklere(stopwords) dikkat etmektir.Bunun yanında Internet’ten indirilen döküman ses,resim ve dinamik dosya içerir. Bir sonraki adımda bu tür dosyalar aramadan çıkarılır. Bunun yanında bazı PDF,PS,MS-WORD uzantılı dökümanların incelenebilmesi için özel ASCII metine dönüştürülmelidir. Bu tür uzantıya sahip dökümanlar ilk versiyonda gözardı edilip sonuçlara eklenmeyecektir.

HTML dosyaları genel olarak metin parçalarından ,bağlantılardan(hyperlink) ve bu bağlantıları tanımlayan metinlerden(anchortexts) oluşmuştur.  Bağlantılar arama motorlarının aramaya devam edebilmesi için çok önemlidir. HTML’de bağlantılar <a href> taglarının içinde tanımlanır. Bunun yanında bağlantıyı tanımlayan metinler ise <a href> ile </a> biçim imleri arasında bulunur. Bu biçim imlerini kullanarak bağlantıları ve bu bağlantıların tanımlama cümlelerini elde etmiş oluruz. Bağlantı tanımlama metinleri de arama sistemleri için önemlidir çünkü bu kelimeler bağlantının içeriğini çok kısa ve öz bir şekilde ifade eder. Ancak genelde bağlantı tanımlama cümleleri genelde bağlantının içeriğini belli edemeyecek kadar kısadır. Sonuç olarak  bağlantılar ve bunlara ait tanımlama metinleri veritabanına eklenir.

Düz HTML dökümanları üzerinde birden fazla metin işleme tekniği uygulanır. İlk olarak işe yaramayan biçim imleri ve script kodları metinden çıkarılır. Sayfadaki tablolar içeriği koruyacak şekilde yeni bir forma dönüştürülür. Bunun yanında metin işlemede en önemli kısım hangi biçim imleçlerinin ne şekilde işlenileceğine karar vermektir. Bir sonrraki adım özel sözcüklerin(stopword) çıkartılmasıdır. Bu sözcükler genelde bağlaç tarzı arama sistemleri için pek bir anlam ifade etmeyen kelimelerdir. Gramatik olarak değişikliğe uğramış kelimeler eski haline dödürülür. Örneğin “gelmiş” kelimesi “gel” haline dönüştürülür. Bunun için Porter-Stemmer algoritması kullanılmıştır. En son adım geri kalan anlamlı metin kısmının kelime listesi halinde bir tabloya URL id’siyle birlikte kaydedilmesidir.

4.4 İlgililik Ölçümü

Bu modül ontoloji kullanarak odaklanmış arama sistemlerinin en önemli kısmıdır. Burda kullanılan stratejiler bu tür sistemlerin başarısını belirler. En basit tanımıyla ilgililik ölçümü, Web sayfasının içeriğini kullanıcı tarafından tanımlanan ontolojideki varlıklarla eşleştirerek ilgililik skoru hesaplayan fonksiyondur.

Web sayfasının işlenmiş haliyle ontolojideki varlıklar arasında eşleştirme yapılırken  3 ana adım izlenir. 

  1. İlk adım ontolojideki varlıklarla web sayfasının işlenmesiyle oluşturulmuş olan tablodaki kelimeler birbiryle eşleştirilir.

  2. İkinci adımda ontolojinin yapısını kulanarak tek bir varlığın ontolojideki diğer varlıklarla olan ilişkisine göre bir ilgililik hesabı yapılır. Bu adım sonunda ontolojideki her bir varlık için bir score hesaplanmış olur.

  3. En son adım kulanıcının araştırma aralığınaki her bir varlığın skorlarının özetlenmesidir. Bu adım sonunda bu skorlar toplanarak Web dökümanın skoru hesaplanmış olur.

4.4.1 Varlık Arama

İlk adım  Web dökümanındaki kelimelerin ontolojideki varlıklarla eşleştirilmesi şeklindedir. Web dökümanıyla ontolojideki varlıklar arasındaki her eşleşmede spesifik varlık  sayısı hesaplanır. Sonuçlar bilgi erişim komitesi [10] tarafından belirlenmiş olan tf/idf (kelime frekansı x ters döküman frekansı) katsayısıyla çarpılarak değerlendirilebilir. Sonuçlar bu katsayıyla çarpılmadığı taktirde yanlış değerlendirmelere yol açabilir.

4.4.2 İlgililik Ölçümü

Bu adım ilgililik hesaplama kısmının çekirdek kısmını oluşturur. Ontolojinin yapısını kullanarak tek varlıklara diğer ilgili varlıkları kapsayacak biçimde ilgililik skoru verir. Ontolojide her varlık için ilgili varlık setleri tanımlanmıştır. Bu setleri kullanarak değişik ilgililik setleri yaratılabilir. İlgililik setleri odaklanmış arama sistemlerinde değişik seviyelerde odak kullanılmasını sağlar. İlgililik setlerindeki varlıkları skorlarının özetlenmesiyle kullanıcı tarafından belirlenen çekirdek varlığın skoru hesaplanmış olur. Bu fonksiyon çekirdek varlığa yakın olan varlıklara yüksek skor, uzakta olan varlıklara da daha düşük skorlar belirler. Dört değişik ilgililik seti [11] vardır:

  • Rs(Tek): Bu set en basit ilgililik setidir. Dökümandaki kelimelerden ontolojideki varlıklarla eşleşen kelimelerin listesinden oluşur. Bu setteki her varlığın ağırlığı 1’dir.

  • Rt(Taksonomik): Ontolojinin gücünü belirli ölçüde kullanır. Varlığın doğrudan ilişkili olduğu alt ve üst sınıflarından oluşur. Bu da uzaklık ölçüsü olarak 1 değerine tekabül eder. Alt ve üst sınıflar kullanıldığı için orjinal varlıklar artık tam olarak temsil edilmemiş olur. Bu setteki her varlığın ağırlık değeri 1’dir.

  • Rr(İlişkisel): Daha derin ontoloji bilgisi kullanır. Taksonomik sette kullanıldığı gibi ilişkili varlıkların listesi tanımlanmıştır ancak ilişkilerin  etki alanları(domain) ve erimleri(range) de bu sete dahil edilmiştir. Bu uzaklık ölçüsü olarak 2 değerine tekabül eder. Bu setteki varlıkların ağırlıkl değerleri de 1’dir.

  • Ro(Toplam): Bütün ontolojiyi ve metadatayı girdi olarak alır. Ontolojideki her bir varlık arama için ilgilidir. Bu setteki varlıkların birbirinden farkı ise ağırlık değerleridir. Çekirdek varlıktan uzakta olan varlıklar düşük yakındaki varlıklar ise yüksek skor alır. Çekirdek varlıktan uzaklaştıkça skor giderek düşer.

Çekirdek varlığın skoru,  belirlenen setteki varlıkların ağırlık değerleriyle bu varlıkların metindeki frekanslarının çarpımının toplamlarına eşittir.

4.4.3 Özetleme

En son adım sadece kullanıcının tanımladığı varlıkların skorlarının özetlenmesidir. Bu skorlar özetlenerek tek bir figür elde edilir. Eğer birden fazla varlık arama alanında tanımlandıysa bu varlıklar skorları toplanır. Birden fazla varlık için özetlemeler yapılırken “ve”, ”veya” türünden birleştirme ve kesitirme yapılabilir. Bir sayfanın skoru hesaplanırken kullanıcıdan alınan çekirdek varlık ve ilgililik ölçümleri kullanılmalıdır.

Pratik olarak iki ilgililik ölçümü önerilmektedir[6]. Sınıflayıcı (classifier) olarak tanımlanan ilgililik ölçümü sayfanın konuyla ilgili olup olmadığını kontrol eder. Damıtıcı(Distiller) olarak tanımlanan ilgililik ölçümü ise tarıyıcının(crawler) takip edebilmesi için bağlantıları belirli bir sıraya sokar.Kullanıcıya göre ilgili sayfaların, tarıyıcı için, her zaman  takip edilmesi önerilen sayfa olduğu söylenemez. Bu ayrım da geliştirilen sistemde göz önüne alınmıştır. Geliştirilen sistemde döküman ve link ilgililiği adları altında iki ölçüm kullanılmıştır.

4.4.4 Döküman İlgililiği

Döküman ilgililiği yukarda anlatılan ölçüm methotları kullanılarak ölçülür. Döküman ilgililiğinin amacı indirilen sayfanın kullanıcı sorgusuyla ilgili olup olmadığını bulmaktır. Bu yüzden sorguyla sadece doğrudan bağlantılı olan varlıklar konuyla ilgilidir. Kullanıcı bağlantının ilgili olup olmamasıyla pek fazla ilgilenmez. Varlık arama ve Rs(Tek) İlgililik seti kullanılarak elde edilen skorlar toplanır ve  dökümanın ilgililik skoru hesaplanmış olur. Sonuç olarak bu skorlar kullanıcı tarafından erişilebilecek şekilde veritabanına kaydedilir. Ayrıca sayfa başlangıç URLsinden daha fazla skora sahip ise bu sayfanın içerdiği kelime listesi veritabanına kaydedilir.

4.4.5 Link İlgililiği

Döküman ilgililiğinin karşıtı Link ilgililiğidir. Burdaki asıl amaç sadece konuyla ilgili sayfalara sahip olmak değil aynı zamnda ilgili sayfaları bulmaktır.Kullanıcı sorgusuyla ilgili geniş çaplı bir arama gerçekleştirilir. Sayfanın skoru varlık arama ve Ro(Toplam) ilgililik seti kullanarak hesaplanır. Bu şekilde her bir link ayrı bir bağlantı skoruna sahip olmuş olur. Rt(Taksonomik) ve Rr(İlişkisel) ilgililik setleri de tabii ki kulanılabilir. Bu şekilde en fazla skora sahip olan sayfaların bağlantıları ilk başta indirilir ve işleme sokulur.

4.5 Kullanıcı Etkileşimi

Kullanıcı sisteme ilk değerleri atıyaray sistemin çalışmasını sağlar. Girdiler şu şekilde sıralanabilir:

  • Kullanıcı başlangıç URL’lerini tanımlamak zorundadır.

  • Kullanıcı ontolojiyi belirledikten sonra ontolojiye ait çekirdek varlıkları belirlemelidir.

  • Kullanıcı ilgililik ölçüm stratejisini belirleyebilir.

Sistemin çalışması sırasında ve sistem durduktan sonra sonuçlar aşağıdaki gibidir:

  • Kullanıcı konuyla ilgili ve ilgili olmayan bağlantıların isimlerini,skorlarını elde eder.

  • İndirilen dökümanlar anahtar kelimeler kullanılarak incelenebilir.

5. Sonuç

5.1 Ontoloji Kullanarak Odaklanmış Arama Sistemi Test Sonuçları

Bu kısımda bildiride tanıtılan sistemin performansı ve sonuçları incelendi. Bir arama sisteminin performansını ölçebilmek için bir çok ölçüt vardır. İlgililik(doğruluk,ilgili sayfaların tüm indirilen sayfalara oranı), kapsam(çağırma, sorgu sonucu döndürülen ilgili sayfaların tüm ilgili sayfalara oranı) gibi ölçütler kullanılabilir. Ancak ideal odaklanmış sistemin tanımına baktığımızda aradığımız ölçüt Harvest Rate ölçütüdür. 

5.1.1 Harvest Rate

Harvest metriği[6] arama sonuçlarını değerlendirmek amacıyla kullanılır. Yüksek bir Harvest değeri yüksek kalite bir aramaya tekabül eder. Burda amaç konuyla ilgili maksimum sayıda sayfa gezerken konuyla ilgisiz minimum sayıda sayfa gezmektir. Harvest değeri ilgili sayfalrın tüm gezilen sayfalara olan oranıdır. Burada konuyla ilgili demekten kastımız kullanıcı tarafından verilen başlangıç URL’lerininin skorlarından en düşük olanının skoruna eş ya da yüksek olan sayfalardır.

5.1.2 Tarama (Crawling) Stratejisi 

Tarama stratejisi ilgililik ölçme konusundaki ana probleme değişik yaklaşımları ifade eder. Bu bildiri için geliştirilen sistemde tüm varlıklar aramaya dahil edilmiştir, ancak ana varlıktan uzak olan varlıklar daha düşük ağırlıklara sahiptir.Bunun yanında birden çok çekirdek varlık için sonuçlar “Veya” fonksiyonuyla toplanabilir.

5.1.3 Veri Seti

Ontoloji geliştirilen sistem için bilgi kaynağı olarak işlev görür. Test çalışmalarında Atlas-cmu.daml ontoloji olarak kullanılmıştır. Atlas-cmu.daml 22 tane sınıf, 33 tane ilişki ve 3 tane de mantıksal adlandırma sisteminden(namespace) oluşmaktadır. Kullanılan ontoloji araştırma grupları, araştırma projeleri ve bireyler arasındaki ilişkileri kapsar. 

5.1.4 Test Sonuçları

Testler bir, iki ve üç çekirdek varlık kulanılarak gerçekleştirilmiştir. Internet bağlantısının hızındaki değişiklikler , sistemin Web üzerinde takip etceği yolların çeşitliliği düşünüldüğünde arama sonuçlarında değişiklik gözlenebilir. Bu yüzden test sonuçları birden fazla olarak tekrarlanmış ve sonuçların ortalamsı alınmıştır. Testlerde başlangıç URL’leri olarak “http://www.daml.org/ontologies/”, “http://www.w3c.org” kullanılmış ve ilgililik için eşik değeri başlangıç URL’lerinin skorlarından  en düşük olanıdır.

Tek Varlık İçin Arama

Çekirdek varlık olarak “Organisation” kelimesi kullanılmıştır.

İlgili URL’ler

Gezilen Tüm URL’ler

Harvest Rate (%)

Zaman (dakika)

87

106

82

8

127

159

79.8

14

155

196

79

23

191

240

79.6

31

241

298

80.8

37

Şekil 6.1 Tek varlık için arama (Eşik değeri=625)

İki Varlık İçin Arama

Çekirdek varlıklar olarak “Organisation” ve “Person” kelimeleri kullanılmıştır.

İlgili URL’ler

Gezilen Tüm URL’ler

Harvest Rate (%)

Zaman (dakika)

98

136

72

8

120

160

75

13

155

208

74.5

20

195

273

71.4

25

219

311

70.4

27

Şekil 6.2 İki varlık için arama (Eşik değeri=1031.25)

Üç Varlık İçin Arama

Çekirdek varlıklar olarak “Organisation” ,“Person” ve “Project” kelimeleri kullanılmıştır.

İlgili URL’ler

Gezilen Tüm URL’ler

Harvest Rate (%)

Zaman (dakika)

75

97

77.3

6

108

133

81.2

12

117

145

80.7

16

212

273

78

25

238

315

75.3

35

Şekil 6.3 Üç varlık için arama (Eşik değeri=2636)

5.1.5 Test Sonuçlarının Değerlendirilmesi

Harvest değerleri gözönüne alındığında ontoloji kullanarak odaklanmış arama sistemi yüksek bir performans göstermiştir. Her üç test için de ilgili sayfaların gezilen tüm  sayfalara oranı  gayet yüksekt olarak gözlemlendi.Ancak daha iyi bir değerlendirme için veri setinin daha geniş olması tercih edilebilir. Ziyaret edilen sayfaların sayısı eğer arttırılırsa sonuçlar daha gerçekçi olabilir.

5.2 Ontoloji Kullanarak Odaklanmış Arama Sistemi Değerlendirilmesi

Bu bildiride ontoloji kullanarak odaklanmış arama sistemlerine bir örnek teşkil eden bir yapı açıklandı. Bu yapı  ontoloji kullanımı,ilgililik hesaplama stratejilerini  ve bu tür sistemlere örnek olarak tasarlanmış bir prototipi kapsamaktadır.  Burda anlatılan yaklaşım ontolojiyi bilgi kaynağı  olarak kullanarak Web’te odaklanmış bir arama gerçekleştirir.

Test sonuçlarında da görüleceği gibi sistem gayet umut verici ve başarılı sonuçlar üretti. Ontolojiyi odaklanmakta kullanarak bsait arama stratejilerine göre hızlı ve doğru sonuçlar  elde edildi. Ancak şu da bir görüldü ki Internet üzerindeki ilişkisel yapı gerçek yaşamdaki ilişkisel yapıları her zaman yansıtmıyor, bu yüzden de bu konu üzerindeki çalışmalar süreceğe benziyor.

5.3 İzleyebilecek Çalışmalar

Bu bildiride tanıtılan sistemde birçok değişiklikler ve eklentiler yapılabilir, ancak tez sonuçlarından da görüldü ki insanlara ait bazı varsayımlar Internet üzerinde pek geçerli olmuyor. Bu yüzden yapılacak değişikliklerde bu konu göz önünde bulundurulmalıdır. Bunun yanında yapılabilecek değişiklerden bazıları şunlardır:

  • Makine öğrenmesinin kullanımıyla sistem daha akıllı bir hale gelebilir.

  • Metinleri işlerken daha yüksek seviyede doğal dil işleme (Natural Language Processing) teknikleri kullanılabilir.

  • Tünelleme(tunnelling) stratejisi daha etkili bir biçimde kullanılabilirse daha iyi sonuçlar elde edilebilir.

  • Dinamik sayfaların da sistem tarafından incelenebilmesi sağlanabilir.

  • Arama yapılırken ontoloji gelişimi için de veri toplanabilir. Ontolojinin gelişmesiyle beraber daha başarılı sonuçlar elde edilebilir.

Kaynakça

[1] Payne T. R.,Singh R. And Sycara K.:2002,Browsing Schedules-An Agent Based Approach to Navigating The Semantic Web.

[2] Chau M., Zeng D., Chen H.:2001, Personalized Spiders for Web Search and Analysis.

[3] Pinkerton B., Finding What People Want: Experiences with the WebCrawler. The Second International WWW Conference Chicago, USA, October 17-20, 1994.School of Information Management and Systems, Univ. Of California at Berkeley.

[4] Barfourosh A. A.,Motahary Nezhad H. R., Anderson M. L., Perlis D.:2002, Information Retrieval on the World Wide Web and Active

[5] The Censorware Project:1999, http://www.censorware.org/web_size, Jan. 26, 1999

[6] Chakrabarti S., Berg M., and Dom B.:1999, “Focused crawling: a new approach to topic-specific web resource discovery,” in Proc. of the 8th InternationalWorld-Wide Web Conference (WWW8), 

[7] Chau M., Zeng D., Chen H.:2001,Personalized Spiders for Web Search and Analysis.  

[8] Davison, B.D.:2000, Topical locality in the Web. In: Proceedings of the 23rd Annual International Conference on Research and Development in Information Retrieval (SIGIR 2000), Athens, Greece, ACM (2000)

[9] Shah U., Finin T., Mayfield J.:2002, Information Retrieval on the Semantic Web, University of Maryland Baltimore County

[10] Salton, G.: 1989, Automatic text processing: the transformation, analysis,and retrieval of information by computer, Addison-Wesley (Reading MA), ACM CR 9104-0247

[11] Ehrig M.:2002, Ontology-Focused Crawling of Documents and Relational Metadata, 2002, an der Universitat Karlsruhe Institut fur Angewandte Informatik und Formale Beschreibungsverfahren UniversitÄat Karlsruhe (TH)

Kıvanç Urgancıoğlu
Belgin Özakar


Bu yazıyla ilgili görüş ve yorumlarınızı yorum@teknoTurk.org, k_urgancioglu@yahoo.com ve ozakar@likya.iyte.edu.tr adreslerine yollayabilirsiniz.