Evet Efendim. Biliyorsunuz ki berkantaydin.com.tr adresinde sizler için webmaster araçları yazıyorum. SEO ile ilgili olarak da bir süredir araştırdığım bir kaç konu için ilk yazılarımı yayınlamaya başladım.

Soruyorlardı Google nasıl anlıyor ne demek istediğimizi??
Ne yazdığımızı ne anlattığımızı nasıl anlayabiliyor?
Google makalemizin neyi çağrıştırdığını nasıl ayırt edebiliyor da özgünlükten söz edebiliyor?

Bu soruların cevaplarını yavaş yavaş sizlerle paylaşmaya karar verdim.
Konuyu buraya açıyorum, yeri değilse lütfen taşınsın.

-------------------------------------------------------------------

Evet Efendim. Bir süredir SEO işiyle ilgilenen arkadaşlarım soruyorlardı; “Berkant, bu Google’ı kandırmanın bir yolu yok mu? Makaleleri diğer dillere çevirince bile tanıyor yahu.. Nasıl özgün olacağız?”. Cevaptan önce ironiye dikkat çekmek istiyorum. “Başkalarının makaleleriyle özgün olmak mümkün mü?” Google’ın gelişmiş algoritması elbette buna engel oluyor. Peki bu algoritma nasıl çalışıyor? Pek çoklarımız merak eder; “Google içeriğimizin kopya olduğunu nasıl anlıyor?”. Bu yazımızda mümkün mertebe özgünlükte Levenshtein ve Soundex etkisine değineceğiz.


Google şu sıralarda Python diliyle yazılmış ve Python’un babasına kendi bünyesinde iş vermiş olmasa da hatırlıyorsanız bir zamanlar PHP’ydi. Bu büyük sır aslında o zamanlara kadar dayanmakta… Buraya dönmeden önce işin özünü biraz daha kavramamızı sağlayacak bir arama yapalım.

Şimdi Google’a girip “seni sevyorum” yazarsanız Google size getireceği binlerce hatta milyonlarca sonucun yanı sıra şu soruyu soracaktır; “Bunu mu demek istediniz: seni seviyorum” ya da bir başka deyişle – Did you mean: seni seviyorum – Peki nasıl oluyor da Google, bizim ne demek istediğimizi anlayabiliyor? Google nasıl oluyor da çağrışım yapabiliyor? Bu tarz bir sistemi kendi sitelerimizde kullanabiliyor olsak ne de güzel olurdu. İnsanlar her aradığını bulsa ya da aradıklarına en yakın sonuçları bulabilse… Düşüncelere, hayallere dalmanıza gerek yok azizim. Cevap oldukça basit. PHP’nin Levenshtein fonksiyonu bunun için var.

Levenshtein Nedir?

Uzun uzadıya yazmadan önce Türkçe kısacık bir açıklama yapacak olursak; “en çok işlem gören kelimeyi en yüksek çağrışımla getiren polilogaritmik fonksiyon”. Aslına bakarsanız Levenshtein’a Levenshtein Distance (Levenshtein aralığı) da deniyor. Levenshtein bizlere Vladimir Levenshtein tarafından 1965 yılında kazandırılmıştır.

İngilizce bir örnek verecek olursak kitten ve sitting kelimeleri de birbirine yakındır.

Soundex Nedir?

Bu konuda bir de SOUNDEX ayağı var ki; kelimelerin telaffuzundan yola çıkarak ayrıştırma yapar ve her kelimeye sayısal ve değişmez bir değer verir. Bir makina bizim neyi nasıl okuyabileceğimi nereden bilebilir demeyin, yapabiliyor. Hatta “dilinizin ucunda bir şarkı” olduğunda onu da bulmanızı sağlıyor. Mırıldanın yeter!

Levenshtein ile Soundex’i birleştirdik diyelim. Düz bir mantıkla yaklaşacak olursak her kelimenin sayısal bir karşılığı vardır ve bu sayıların birbirine yakınlığı, kelimelerin de birbirine yakın olduğunu gösterir. Bu yakınlığın miktarı da Levensthein ile ayrıştırılır. Kısaca Havoç kelimesiyle Havuç kelimesinin değerleri birbirine o kadar yakındır ki; siz Google’a Havoç yazarsanız o size Havuç sonuçlarını getirebilir. Bu iki fonksiyonun güçlüce harmanlanması size Google’ın konforunu sağlayacaktır.

Bu komutların nasıl çalıştığına dair bir makale yazabilirim belki.. Tabi talebe göre olacaktır bu. Zira başım çatlamak üzere ve daha çalışmam gerekiyor. Bir yerlerde bir hata yaptıysam lütfen uyarınız efendim. Bitirmeden önce bir kaç bağlantı vereyim, sorularınızı yine buradan sorabilirsiniz.

Soundex MySql içerisinde doğrudan kullanılabilir. İngilizcede kesin sonuç verebiliyor ancak Türkçe için daha yolu var sanırım.

-------------------------------------------------------------------

Kaynak