Bolu Beyi tarafından yazıldı Temmuz - 1 - 2016 4 Yorum

Bu yazıda “Preprocessing and Mining Web Log Data for Web Personalization” adlı makale özetlenmiştir.

Özet

Makalede veri ve web madenciliği teknikleri kullanılarak bir web sunucusunun loglarından,  web site kullanıcısının davranış modellerinin çıkarılması amaçlanmıştır. Bunun için iki deney seti oluşturularak; ilk deney setinde ziyaret edilen web sayfalarına göre kullanıcının cinsiyeti tahmin edilmeye çalışılmış; ikinci deney setinde kullanıcının ziyaret ettiği web sitesine ilgi duyup duymadığı incelenmiştir. İlk deney setinde, ilişkilendirme algoritması kullanıldığında %68 doğruluk oranı elde edilmektedir. İkinci deney setinde, C4.5 algoritmasına göre yapılan sınıflandırmada, tiyatro, spor, sağlık ve market kategorilerinde %3’ün altında yanlış sınıflandırma oranı elde edilmiştir.

  1. Giriş

Bu çalışmada kullanıcıların davranış modellerini çıkarmak amacıyla “vivacity.it” adında orta ölçekli ulusal bir web portalının erişim logları, veri seti oluşturmak üzere 5 aylık bir süreyle toplanmıştır. Ayrıca yerel haberler, restoran adresleri gibi bilgiler sunmak amacıyla “roma.vivacity.it” gibi 30 adet subdomain oluşturulmuştur. Veri önişleme yapmak için aşağıda belirtilen üç aşama uygulanmıştır:

  • Veri seçimi
  • Veri temizleme
  • Kullanıcı ve kullanıcı oturumlarının tanımlanması

Temel veri madenciliği teknikleri olarak ilişkilendirme kuralları

, kümeleme, kullanıcılar tarafından sıklıkla istenen nesnelerin gruplandırılması, benzer tarama desenleriyle kullanıcıların gruplandırılması, benzer içerik veya erişim desenleriyle nesnelerin gruplandırılması, verilen bir sınıf veya kategoriye göre sınıflandırma işlemleri ele alınmıştır. Bu işlemler ile her bir kullanıcıya göre web sitelerinin kişiselleştirilmesi amaçlanmıştır. Bu amaçla iki adet deney seti oluşturulmuş olup ilk deney setinde, kullanıcının ziyaret ettiği web sayfalarına göre, kullanıcının cinsiyeti belirlenmeye çalışılmıştır. İkinci deney setinde ise kullanıcının hangi konularla ilgilenip ilgilenmediği belirlenmeye çalışılmıştır.

  1. Yöntem

Web kişiselleştirme analizi için web loglarından bir veri seti oluşturulmuştur. Bununla beraber kullanıcıların web sitesine üye olurken verdiği cinsiyet, şehir, medeni hal ve doğum tarihi bilgilerinden faydalanılmıştır. Burada sağlıklı verileri tutabilmek için yanlış veriler temizlenmiştir. Örnek olarak bir kullanıcı doğum tarihi olarak, ileriki bir tarihi kaydederse, o veri dikkate alınmamaktadır. Ayrıca veri setinde kullanılmayacak gereksiz veriler silinmektedir.

Çalışmada, kullanıcının ilgi duyduğu alanlardan faydalanmak amacı ile URL bilgilerinden faydalanılmaktadır. URL’de yer alan ID değerlerine göre kullanıcının haber, kitap, spor gibi kategorilerde gezinip gezinmediği anlaşılmaktadır. Ayrıca her bir kategorinin alt kategorileri de belirlenebilmektedir.

Text halde bulunan log dosyalarını anlamlı verilere dönüştürmek amacıyla, text dosyasındaki IP, tarih, URL, istek türü (GET, POST) gibi veriler ayrıştırılmaktadır. Arama motorları tarafından kullanılan web robot istekleri ve sistem istekleri silinmektedir. Bununla beraber söz konusu web sitesine yapılan milyonlarca istekten, gereksiz olanları silmek için sadece “.html” uzantılı dosyalara yapılan istekler dikkate alınmıştır. Tek bir kullanıcının hareketlerini takip etmek amacıyla, tekil tanımlayıcı bir değer olan “SessionID” değeri dikkate alınmakta ve bu değer kullanılarak kullanıcının sayfalarda ne kadar süre geçirdiği, hangi tarih ve zamanlarda, hangi sayfaları ziyaret ettiği bilgileri kayıt altına alınmaktadır.

Kullanıcıların cinsiyetini tahmin etmek için veri setinin yaklaşık %15’ini oluşturan kayıt bilgilerinden faydalanılarak, web sitesine kayıt olmayan kullanıcıların cinsiyeti tahmin edilmeye çalışılmıştır. Bu sebeple ziyaretçilerin sayfaları dolaşabilmesi için kayıt zorunluluğu getirilmemiştir.

Sınıflandırma algoritmalarını kullanabilmek amacıyla veri seti, %67-%33 oranında eğitim seti ve test seti olarak ikiye ayrılmıştır. Veri seti 24 adet nitelik ve 1 adet sınıftan oluşmaktadır. Nitelikler binary, nümerik veya ayrık veri şeklindedir. Deney sonuçlarına göre eğitim seti ve test setini bölmek yerine çapraz geçerleme kullanılmış veya niteliklerde değişiklikler yapılmıştır.

Veri seti oluşturulduktan sonra karar ağaçları, örnek tabanlı modeller, ilişkilendirme, bagging ve hızlandırma (boosting) algoritmaları kullanılarak sınıflandırma işlemleri yapılmıştır.

  1. Bulgu-Sonuç-Katkı

Kullanıcıların cinsiyetini tahmin edebilmek amacıyla C4.5 karar ağacı algoritmasına göre yapılan sınıflandırmada %40.7, IBk örnek tabanlı sınıflandırıcı algoritmasına göre %44.1 oranında hatalı sınıflandırma oranı elde edilmiştir. Doğruluk oranını artırmak amacıyla veri setinde kullanılan niteliklerde değişiklik yapılarak C4.5 algoritmasındaki hata oranı %39.8’e, IBk algoritmasındaki hata oranı %41.4’e düşürülmüştür. İlişkilendirme algoritmasında minimum güven (confidence) değeri %10 olarak belirlendiğinde %65’lik doğruluk oranı, %20 olarak belirlendiğinde ise %68 doğruluk oranı elde edilmektedir.

Kullanıcıların ilgi duyduğu alanları/kategorileri tahmin etmek amacıyla yapılan deneyde en iyi sonucun C4.5 algoritmasını verdiği belirtilmektedir. Finans, sağlık, haber, spor gibi her bir kategori için ayrı bir veri seti oluşturulmuş ve deney yapılmıştır. Deney sonucu aşağıdaki tabloda yer almaktadır.

 Tablo: C4.5 karar ağacı performansı
Untitled

 

 

 

 

 

Yukarıdaki tabloda yer alan sonuçlara göre her bir kategori için farklı yanlış sınıflandırma oranı çıkmış ve başarılı sonuç verdiği gözlemlenmiştir. Özellikle tiyatro, spor, sağlık ve market kategorilerinde %3’ün altında yanlış sınıflandırma oranının olması, bu çalışmanın başarılı bir sonuç verdiğini göstermektedir.

Sonuç olarak bu araştırmada yapılan iki farklı deneyde, cinsiyet tahmin etme oranının çok başarılı olmadığı, kullanıcıların ilgi alanlarını tahmin etme oranının başarılı sonuç verdiği görülmüştür. Özellikle cinsiyet tahmin etme deneyinde, veri önişleme aşamalarının büyük bir öneme sahip olduğu, doğruluk oranını artırmada belirleyici bir etken olduğu gözlemlenmiştir.

  1. Öneriler

Bu çalışmada kullanılan algoritmalar haricinde Naive Bayes, Yapay Sinir Ağları, C4.5 haricindeki diğer karar ağacı algoritmaları, en yakın komşu gibi diğer farklı algoritmalar da kullanılarak daha başarılı sonuçlar gözlemlenebilir. Özellikle istatistiksel öğrenim sunan Naive Bayes algoritmasının, bu çalışmada düşük doğruluk oranı veren cinsiyet tahmini deneyinde kullanılması durumunda, daha başarılı sonuç verebileceği düşünülmektedir.

Ayrıca denenmiş olan algoritmaların doğruluk oranlarını ve çalışma sürelerini karşılaştıran bir tabloya yer verilmesinin, hangi algoritmaların ne tür problemlerde nasıl sonuç verdiği konusunda daha iyi bir fikir sağlayacağı düşünülmektedir.

Bugüne kadar 4 yorum yapıldı

  1. Evrak dedi ki:

    Veri yoğunluğu her geçen gün artarak devam ediyor. Bu kadar verinin içinde aradığımız bulmak, doğru bilgilere ulaşmak gerçekten ayrı bir meslek dalı haline gelecek.

  2. klima dedi ki:

    Alagoritma doğru oluşturulduğunda gerisi zaten gelir fakat yazınız çok başarılı teşekkür edeirm.

  3. HD dedi ki:

    Veri madenciliğinin önemi ilerde git gide artacak bir sektör.

  4. ilginç dedi ki:

    veritabanı yöneticileri bu işin madencisi sayılırlar ama tam anlamıyla olaya hakim olmak için biraz istatistikte bilmek gerekiyor.

You must be logged in to post a comment.