Zamana bağlı işbirlikçi filtreleme
Collaborative filtering with temporal dynamics
Yazar: ÇİĞDEM BAKIR
Danışman: DOÇ. DR. SONGÜL ALBAYRAK
Yıldız Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı
Derece: Yüksek Lisans, 2014
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Dünyada sanayi ve teknolojinin gelişmesiyle birlikte web üzerinden alışveriş yapan kullanıcı sayısı da her geçen gün artmaktadır. Bu hızlı artıştan dolayı firmalar gelişmelere ayak uydurarak kârını arttırabilecek, rekabet ortamından kazançlı çıkmayı sağlayabilecek yeni fikirlere ihtiyaç duyar. Firmaların sosyal ve ekonomik yönden başarıya ulaşmasını sağlayan yapılar tavsiye sistemleridir.
Tavsiye sistemleri (recommendation systems) ürün ve hizmetlerin etkileşimi sırasında kişiselleştirilmiş öneriler yapmak için bilgiyi keşfeden teknikleri uygulayan sistemlerdir. Günümüzde müşteriye özgü tavsiyelerde bulunmak, müşterilerin ilgisini  canlı tutmak, müşterilerin beğenisini tahmin edip onlara bu beğenileri doğrultusunda önerilerde bulunmak önemlidir. İşbirlikçi Filtreleme-İF (Collaborative filtering-CF)  tavsiye sistemleri tarafından kullanılan etkili ve kolay bir yöntemdir. Genel anlamda İF veri kaynakları arasında çeşitli teknikler kullanarak bilgiyi filtreleme sürecidir. Ayrıca İF günümüzde çok farklı alanlarda örneğin; çoklu sensörlerde veriyi algılama, izleme, finansal verilerde, e-ticaret ve web uygulamalarında kullanılmaktadır.
İF müşterilere ilgileri doğrultusunda çeşitli tavsiyeler sunmakla beraber müşteri tercihlerinin ve ürünlerin sürekli değişmesi sonucunda birtakım zorluklarla karşı karşıya kalmaktadır. Müşterilerin algısını, ürünlerin popülerliğini zamanla değiştiren yeni ürünler ve hizmetler ortaya çıkabilir. Mevsimsel değişiklikler ya da bölgesel faktörler kişinin algısını değiştirebilir [1]. Örneğin; kullanıcılar film tavsiye sistemlerinde bir aktör ya da bir film türüne göre yeni bakış açısı kazanabilir ya da zaman içinde tercih ettiği film türünü değiştirebilir. Geleneksel İF teknikleri çok sayıda kullanıcı ve nesnelerden oluşan veri kümeleri için kullanıcıların geçmişte verdikleri puanlara bakarak gelecekteki eğilimini, kullanıcıların birbirine olan benzerliklerinden (user similarity) ya da ürünlerin birbirine olan benzerliklerinden (item similarity) yola çıkarak tahmin etmeye çalışır. Ancak bu İF teknikleri müşterilerin zamanla değişen isteklerine cevap vermekte yetersiz kalır. Ayrıca her ürün ve her müşteri farklı değişimler geçirir. Kullanıcıların davranışlarını  belirleyebilecek, zaman değişimlerini gösterecek, her ürün ve her müşteri için ortak bir modele ihtiyaç duyulur. Bu çalışmayla birlikte kullanıcıların zevkine, beğenisine uygun kişiselleştirilmiş tavsiyeler sağlamak için zamana bağlı olarak kullanıcıların ilgisi analiz edilerek kullanıcıya verilen tavsiyelerin doğruluğu ve niteliği arttırılır.
Bu çalışmada özgün olarak kullanıcıların sadece puanlarına göre değil de puan verdiği tarihlere de bakılarak müşterinin o ürüne vereceği puan tahmin edilmeye çalışılmıştır. Bir ürün ne kadar eskiyse o kadar fazla kişi tarafında puan verilmiştir. Ancak kişinin alışkanlıkları zamanla değişeceği için geçmişte verdiği puan yerine günümüze yakın zamanda verdiği puan daha önemlidir. Diğer bir deyişle kullanıcılar tarafından her ürüne verilen puanın bir yaşı vardır. Bu nedenle geleneksel İF tekniğindeki eksikleri gidermek adına bu çalışmada mevcut puanlar, bu puanların yaşına göre zayıflatılması (puanlar yaşlı ise) veya kuvvetlendirilmesi (puanlar genç ise) planlanmıştır. Bu çalışmada geliştirilen yöntemlerin başarısını ölçmek amacıyla netflix verisi üzerinde son iki yılda toplanan puanlar üzerinden işlem yapılmıştır [1]. Netflix Amerika'da film ve video kiralama üzerine kurulmuş bir şirkettten alınan veri kümesidir ve tavsiye sistemlerinde sıklıkla kullanılır. Bu çalışmada düşünülen yöntem yaklaşık yarım milyon Netflix müşterisinin 1999'dan 2005'e kadarlık geçen sürelerde 17770 film için verdikleri puanların tarihleri belli olan  gerçek veri kümesi üzerinde yapılmıştır. Bu veri kümesinde 100 milyon üzerinde  puan verilmiş kayıt vardır. Sistem başarısını ölçmek için geleneksel İF ve zaman katılarak oluşturulacak yöntemle elde edilecek sonuçlar karşılaştırılmıştır. Ayrıca boyut indirgeme metotlarından Singular Value Decomposition (SVD) hem movielens hem de netflix veri kümesine uygulanarak sistemin başarısı ölçülmüştür. MovieLens veri kümesi Minnesota Üniversitesinde GropLens tarafından toplanan verilerden oluşur. 943 kullanıcının 1682 filme verdiği puanlardan oluşur. Kullanıcılara ait yaş, cinsiyet, meslek gibi basit demografik bilgilerin yanı sıra film türlerine ait kategorik bilgiler mevcuttur. Ancak bu veri kümesinde tarihsel bilgi mevcut olmadığı için hem zamana bağlı İF tekniğini hem de SVD tekniğini birleştirmek için netflix veri kümesi kullanılmıştır.
Geliştirilen sistem sayesinde kullanıcıların zamanla değişen ilgi ve zevklerine bağlı olarak sonuç üretebilen bir ürün öneri sistemi tasarlanmıştır. Böylece kullanıcının bu sisteme olan güvenini arttırmak hedeflenmiştir. Bu bir e-ticaret sitesi ile entegre edilerek müşterinin ilgisi canlı tutulabilir ve böylelikle firma kârlılığı arttırılabilir.

Anahtar Kelimeler: Veri Madenciliği, Tavsiye Sistemleri, İşbirlikçi Filtreleme

Abstract:
Recommendation systems are the systems implementing techniques discovering information in order to make personalized recommendations during product and service interaction. Today, it is important to make custom tailored recommendations, keep customer interest, predict customer preferences and make recommendations accordingly. Collaborative filtering-CF is an effective and easy method used by recommendation systems. Generally CF is the process of filtering information using various techniques among the information sources. In addition, CF is used in a differential area for example; such as identification of data in multiple sensors, data detection, financial data, e-commerce and web applications.
Together with offering various recommendations to its customers in accordance with their interests CF meets several difficulties upon the continuous change of the preferences of the customers and the products. New product and services may emerge that change the perception of the customers and the popularity of the products. Seasonal changes or the regional factors may change the perception of the person [1]. For example; user may gain a new point of view in movie recommendation systems according to the type of actor or movie and they can also change the type of movie they prefer in time. Traditional CF techniques tries to estimate the tendency of the users by considering the points they gave in the past for the data sets consisting of numerous user and elements starting from the similarity of the users to each others (user similarity) or the similarity of the products to each others (item similarity).  However, these CF techniques remain incapable to respond to the demands of the customers that change in time. In addition every product and customer undergoes different changes. A common model is required that will determine the behaviors of the users, show their time changes for every product and customer. Together with this study the accuracy and the attribute of the recommendations given to the user by analyzing the interest of the users depending on time in order to provide suitable personalized recommendations to the pleasure and appreciation of the users are increased.
In this study, the point that customer given the point to that product had tried to be estimated not only according to the points of the users originally, but considering the dates they gave the points. The older a product the more it was given points by that many persons. However, since the habits of the person would change in time, the point they give close to today is more important than the point they gave in the past. In other words, there is the age of the point given for each product by the users. Therefore, on behalf of correcting the deficiencies in traditional CF technique the existing points in this study had planned to decreased according to the age of the points (if the points are old) or strengthened (if the points are fresh). In this study, action had taken over the data of Netflix through the points collected in the last two years in order to measure the success of the methods developed. Netflix is a data set taken from a company established based on movie and video rental in America and used frequently in recommendation systems. The method considered in this study will be performed over the natural data set whose point dates are certain that were given by half a million Netflix customers from 1999 to 2005 for 17770 movies. In addition, in this data set there are records over 100 million that were given points. Moreover, SVD of size reduction methods was measured system performance by applying both netflix and movielens to the data sets. MovieLens data set consists of data collected by GroupLens at the Minnesota University. It is composed 1682 film's of scores given 943 users. It is available user's age, gender, occupation as well as demografic information such simple categorical information on the film types. In order to measure the system success, the results that obtained by the method to be formed by traditional CF and adding time had compared.
Due to the system to be developed, a product recommendation system had designed that could produce result depending on the interest and the pleasures of the users that could change in time. Thus, the confidence of the user to the system will increase. If this is an e-commerce site, the company profitability will be increased by keeping the interest of the customer live because of recommending the proper product.

Keywords: Data Mining, Recommendation Systems, Collaborative Filtering