ABSTRACT
Foursquare, kullanıcıların çevrelerindeki dünyayı keşfetmelerine yardımcı olan ve deneyimlerini arkadaşlarıyla paylaşmalarını sağlayan lokasyon bazlı bir sosyal uygulamadır. Foursquare kullanıcıları bir yere gittiğinde, mobil cihazları vasıtasıyla orada oldukları anlamına gelen “check-in” yaparlar. İnsanlar genelde çok çeşitli şeyler için check-in yapıyor: Arkadaşlıklıklarını sürdürmek, ödül kazanmak, ve kişisel geçmişlerinin kaydını tutmak[2]. Sonuç olarak, bu check-inlerin milyarlarcası bir araya gelip, bir mekan popüler olduğunda [5] ortaya çeşitli patternlar çıkarıyor ve bize geçmişteki gündemlerin istatistiksel sapmalarından yola çıkarak gerçek zamanlı olayları tespit edebilen ve önerebilen benzersiz bir mekan tavsiye motoru yapmamıza olanak sağlıyor.
Anahtar Kelimeler
real-time event identification, foursquare, spatiotemporal data, machine learning
1. GİRİŞ
Foursquare’in en eski bileşenlerinden birisi olan “gündem” adını verdiğimiz sistem, etraftaki mekanları o anda check-in yapanların sayısına [1] göre sıralar. Bu sistemi birçok kullanıcı aynı anda check-in yaptığında çeşitli “olayları” tespit etmek için kullanıyoruz. Bu kullanışlı olmakla birlikte, büyük mekanlarda zaten beklenen olayları çıkarmaya da meyilli oluyor, örneğin toplu taşıma merkezleri ve ofis binaları. Gerçekten ilginç olayları ayırt edebilmek için, makine öğrenmesi ve tarihi bilginin avantajını kullanarak hem büyük hem olağan dışı olayları tespit eden bir sistem oluşturduk. Bu sistemin ürettiği ölçeğe “gündem-dışı” diyoruz.
Şekil 1’i ele alalım, burada 2 mekanın 2011’de 20 hafta boyunca saat başı yapılan check-in sayısı görüntüleniyor. Penn İstasyonu (Şekil 1-a), New York şehrindeki en popüler mekanlardan birisi ve çoğunlukla şehirdeki diğer mekanların çoğundan fazla insan check-in yapmış oluyor. Saat başı check-in sayısı 0 ile 200 arasında gayet tahmin edilebilir bir pattern ile dalgalanır. Haftalık olarak özellikle hafta içleri kamusal alanlarda yüksek bir periyodiklik var. Bu periyodik olaylar boyut olarak gayet büyük olmasına rağmen, düzenli olarak ortaya çıktığı için kullanıcılar için ilgi çekici olmuyor.
Şekil 1-b’de New York’un popüler barlarından olan The Scratcher’ı görüyoruz. Bu mekan haftalık olarak daha az check-in alıyor ve Penn İstasyonu ile karşılaştırılamaz. Ancak arada sırada bazı olaylar meydana geliyor, örneğin 5. hafta’nın Cumasına bakalım. Burada tarihi davranışına kıyasla büyük bir sapma oluşmuş. Havaalanları ve tren istasyonları gibi zaten popüler mekanları ortaya çıkarmak yerine işte bu tip olayları aslında tespit etmeye ve kullanıcılarımıza sunmaya çalışıyoruz. Hedefimiz sokak sergileri, partiler, galeri açılışları gibi olağan dışı olayları yakalayabilmek. Burada bu olayları gerçek zamanlı olarak yakalayabilmek için anahtar nokta, her mekan için o mekanın alacağı olası check-in sayısını modelleyebilmek.
2. MEKANLARIN GEÇİCİ MODELLERİ
Mekan Ωv‘nin “gündem-dışı” puanını, tahmini olarak mekan olağandışı bir şekilde kalabalık olup olmamasına göre (Yani tarihi gündemlerine bakarak mekanın yoğunluğu) tanımlıyoruz. Gündem-dışı puanı hesaplayabilmek için öncelikle her mekan için anlık olarak o mekanda kaç insanın olduğunu tahmin etmemizi sağlayan negatif binomial dağılımı [4] temel alan olasılıksal modeli öğrenmemiz lazım:
Burada k check-in yapan insan sayısı, t geçen süre, w ise tüm hafta içindeki saat. Olasılıksal modeldeki parametrelerden αw tüm hafta içindeki saat tarafından parametrize ediliyor (1 ile 168 arasında bir sayı, 24×7 = 168) ve değişken parametre olan β ‘da dağılımın varyansını kontrol ediyor:
C(10−day) ise 10günlük yarı ömrü olan üstel değişken ortalama ile hesaplanmış haftalık tahmini check-in sayısı ve P(w) ise o mekanda w hafta saatinde (1-168) check-in görülme olasılığı. C(10−day)P(w) ise haftanın belirli bir saatinde o mekandaki check-in sayısı olarak düşünülebilir.
Şekil 1: New York şehrindeki haftalık check-in patternları: Penn İstasyonu(üstte) ve The Scratcher (altta). Her renkli hücre verilen hafta için bir saati temsil ediyor. Kırmızıya kaçanlar çok fazla check-in olan saatleri gösteriyor ve mavie olanlar da az check-inli saatleri temsil ediyor. Dikkatli bakarsanız Penn İstasyonu için az check-inli mekanlardaki daha anormal olayların üstüne çıkmaması gereken çok yoğun periyodik olaylar var (Örneğin 5. Hafta Cumasındaki The Scratcher’daki etkinlik).
2.1. Parametreleri Öğrenmek
Foursquare’deki her popüler mekan için 168tane P(w) parametreyi, o mekan için yapılan tüm check-inler arasından maksimum benzerlik ile tahminliyoruz. Tahminlerimizi yumuşatmak ve over-fitting’i (bkz : https://en.wikipedia.org/wiki/Overfitting , Özetle: Bir yapay zeka veya zeki sistemin verilen eğitim setini ezberlemesi sonucu yeni gelen farklı veriler üzerinde hata yapmaya meyilli olması. Yani sisteme sürekli kırmızı kalem satışlarını verirseniz, mavi kalem geldiğinde ne yapacağını bilemez gibi açıklayabiliriz.) önlemek için Dirichlet dağılımını [3] kullanıyoruz. :
2.2. Mekanları Kademelendirme
Verilen, her mekan için Pv(k|t,αw,β) , v aday küme içindeki check-in yapan insan sayısının değeri. Negatif binomial dağılımın kümülatif yoğunluktan yola çıkarak ‘ı hesaplayabiliriz. Bunu bir mekanın gündem-dışı skoru olarak değerlendiriyoruz yani o mekanda o zaman dilimi içerisinde en az k adet insanı görme olasılığımız.
2.3. Özet
Gündem-dışı puanı foursquare’in tavsiye motorunun en kritik parçalarından birisidir çünkü bize yakınlardaki ilginç olayları gerçek zamanlı tespit etme ve ortaya çıkarmamıza olanak tanır. Bir kullanıcı foursquare’in keşfet öneri sistemini mobilinde açtığı zaman, gündem-dışı puanı kullanıcının geçmişi ile birleştirilir, kullanıcının ve arkadaşlarının tercihleri, ve kullanıcının yakınlarında keşfetmek isteyebileceği yerleri içeren sıralı mekan listesini ileten diğer global işaretler. Diğer tavsiye sistemlerinin aksine, mesela kitaplar veya filmler için olanlar, zaman akışlarını anlamak kullanıcıya gerçek zamanlı olarak düzgün aktivite önerisinde bulunacak öneri motoru için en kritik konudur.
3. REFERANSLAR
[1] foursquare for developers. https://developer.foursquare.com/, 2012.
[2] Lindqvist, J. Cranshaw, J. Wiese, J. Hong, and J. Zimmerman. I’m the mayor of my house: examining why people use foursquare – a social-driven location sharing application. In Proceedings of the 2011 annual conference on Human factors in computing systems, CHI ’11, pages 2409–2418, New York, NY, USA, 2011. ACM.
[3] P. Minka. Estimating a dirichlet distribution. 2000.
[4] T. P. Minka. Estimating a gamma distribution. 2002.
[5] A. Noulas, S. Scellato, C. Mascolo, and M. Pontil. An empirical study of geographic user activity patterns in foursquare. In Proceedings of the 5th Int’l AAAI Conference on Weblogs and Social Media (ICWSM), pages 570–573, July 2011.