Dikey arama

Arama motoru teknolojisinde günümüzde genel amaçlı arama motorlarının yanında belli bir alana yoğunlaşmış arama motoru örnekleri türemektedir. Belli bir alana yoğunlaşmış arama teknolojisine Dikey Arama adı verilmektedir. Dikey arama motorları belli bir alanda bilgi almak isteyen kullanıcıları hedefleyip, internet’te bulunan bilgileri bu pencere çerçevesinde tarayıp kullanıcılara sunar.

Dikey Arama Motoru Yapısı

Arama motorları görevlerine göre birden fazla karmaşık teknoloji içermektedir. Bir arama motoru: örümcekler, bilgi ayrıştırıcıları, indeksleyiciler ve arama bileşenlerinden oluşmaktadır. Bu bileşenler arasındaki iletişim yukarıdaki şekilde verilmiştir. Bütün bu bileşenlerin gerekli fonksiyonları yerine getirmeleri için yapay zeka (artificial intelligence), bilgi getirme (information retrieval), bilgi çıkarma (information extraction), doğal dil işleme (natural language processing), eş zamanlı programlama (concurrent programming) gibi teknolojiler kullanılmaktadır.

Ağ Örümcekleri

Ağ Örümcekleri, dikey aramanın hedeflediği alan hakkında bilgi sahibi olan sayfaları bulmaya çalışır. Bu sayfalar içersinde de yine dikey aramanın hedeflediği ana bilgiye sahip sayfaları çıkarmaya özelleşmiş, alandan haberdar bileşenlerdir. Bir örümcek sisteminin karşılaştığı temel zorluklar:

Bahsi geçen sorunların üstesinden gelmek için bir örümceğin sahip olması gereken prensipler vardır:

Bütün bu politikalar bir örümcek tasarlarken hesaba katılması gereken ve örümceği karmaşıklaştıran unsurlardır. Yine veri miktarının çokluğu verinin toplanması için farklı yeni veri saklama yöntemleri gerektirmektedir.

Bilgi Ayrıştırıcıları

Bilgi ayrıştırıcıları, örümceğin hedef sayfa olarak işaretlediği internet sayfalarında bulunan bir kurala bağlı olmadan özgürce hazırlanmış bilgileri (free-text) yapısal bir şekle dönüştürmek istemektedir. Herhangi bir sayfada bulunan ve insanların algılamasına yönelik olarak belli bir yerleşim planında bulunan bilgilerin üzerinde indeksleme ve arama yapılabilecek şekilde yapilandirilmasi Bilgi Çıkarma konusu’na girmektedir. Bu işlem manuel programlama kullanılarak yapılabildiği gibi çeşitli istatistik ve yapay zeka algoritmaları kullanılarak da yapılabilmektedir. Manuel programlama kullanılarak geliştirilen sistemler hedef sayfaların yapılarının sürekli olarak değişmesi sebebiyle problemler yaşarlar. Değişen sayfa yapılarına uyum sağlamak için öğrenen sistemler kullanılmaktadır. Öğrenen sistemler sayesinde ayrıştırıcı önceden görmediği bir sayfadan gerekli bilgiyi eski deneyimlerini baz alarak otomatik bir şekilde çıkarabilmektedir. Bu gibi sistemler ise tutarlı sonuçlar alabilmek için çok büyük miktarda alıştırma bilgisiyle eğitilmek durumundadırlar. Özel anlamlı kelimeleri belirleme (named entity recognition) ve terim çıkarma (term extraction) bu aşamada veriye anlam vermek için yapılan uygulamalardır.

İndeksleyiciler

İndeksleyiciler, veriye hızlı ulaşım için gerekli indeksleri yaratırlar. İndeksleme için Ağaç Yapıları, Ngram’lar gibi yapılar kullanılsa da günümüzde popüler olan indeksleme yöntemlerinden birisi Devrik Matris’lerdir. İndeksleme esnasında, indekslenecek olan yazı dil işleyiciden geçirilip cümlelere ve kelimelere ayrıştırılır. Daha sonrasında her bir kelimenin o dile özel dil işleyici ile kökü bulunur. Sistem dosya sistemi üzerinde yarattığı indekste bu kökleri, köklerin hangi yazılarda ve yazıların nerelerinde olduğunu tutar.

Arama Bileşeni

Son olarak Arama bileşeni kullanıcının sorgusunu alır, sorguyu dil işlemeden geçirerek Devrik İndeks içersinde kelimeleri arar. Sorguda kullanılan kelimeler, kelimelerin cümle içersinde bir birlerine uzaklıkları hesaba katılarak bulunan dokümanlar sonuç olarak gönderilir.

This article is issued from Vikipedi - version of the 10/20/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.