4924 entry daha
  • haftalık keşif listesini spotify'ın nasıl oluşturduğunu merak eden çok sayıda insan görmeye başladım. o nedenle bu merakı biraz olsun gidermek üzere elimden geldiğince anlatayım. bu sadece haftalık keşif için değil, çalma listesi oluşturduğunuzda o listeye eklemeniz için gelen öneriler ile de ilgili. enrtry biraz uzun oldu, olayı merak eden ama "kim okuyacak lan" diyen varsa direkt son paragrafa atlasın özetin özeti var orada.

    recommendation system* denilen ve yıllardır üzerinde türlü algoritmalar geliştirilerek çalışılan, sürekli iyileştirilmeye çabalanan bir alan var. öneri sistemlerindeki temel amaç, eldeki verileri kullanarak işe yarar çıkarımlar yapmak ve elde edilen bu çıkarımlar üzerinden tahminde bulunarak bu tahminleri "bunu da beğenebilirsiniz" diye kullanıcılara önermek.

    spotify'ın haftalık keşif listesi de bir öneri sisteminin ürünü. sizin spotify'da ne tarz müzik dinlediğiniz gibi verileriniz bu öneri sisteminin sizi tanımasını sağlıyor. sizi tanıdıktan sonra aşağıda bahsettiğim bir takım algoritmalar sayesinde sizin beğenebileceğiniz şarkılar tahmin ediliyor. spotify'da 2008 - 2015 yılları arasında çalışmış olan erik bernhardsson, başarılı öneriler sağlamanın en iyi yolunun collaborative filtering metodu olduğunu düşünüyor [1]. bunun üzerine koyarak önerileri mükemmelleştirmenin yolunun da deep learning'ten geçtiğini söylüyor. deep learning oldukça kapsamlı, ucu bucağı olmayan ve benim de kendimi uzman olarak görmem için kırk fırın ekmek yemem gereken bir konu ama collaborative filtering metodunu özetleyeyim.

    collaborative filtering'de temel olarak 2 ana yöntem vardır. ilkinde (user based cf) yapılan şudur; sizinle benzer zevklere sahip kişiler bulunur (kaydettiğiniz, dinlediğiniz veya çalma listenize eklediğiniz şarkıların aynılarını kayıt etmiş, dinlemiş veya çalma listesine eklemiş başka kişiler), o kişilerin dinleyip de beğendikleri fakat sizin spotify üzerinden daha önce dinlemediğiniz parçalar bulunur, bu kişilerle benzer zevklere sahip olduğunuz için bu parçaları sizin de beğenebileceğiniz çıkarımı yapılır, bir sonraki adımda da bu parçalar size haftalık keşif listesinde önerilir. aynı şekilde bir başkasının keşif listesi oluşturulurken de eğer siz o kişiyle benzer zevke sahipseniz spotify sizin dinlediğiniz ama o kişinin dinlemediği parçayı o kişiye önerir. bu tabi ki tek kişi üzerinden yapılmaz. binlerce kişilik benzerlik havuzları oluşturulur. bu havuza dahil olan kişilerin, elde edilecek sonuca olan etkilerini belirleyen ağırlıklandırmaları vardır.

    sizinle benzer zevke sahip kişiler üzerinden öneri yapılması dışında bir de birbirine benzer şarkılar üzerinden öneriler yapılır. yani collaborative filtering'deki ikinci yöntem (item based cf). şarkıların birbirine benzeyip benzemediğini bilgisayar yine kullanıcıların aksiyonları sayesinde öğrenir. örneğin a grubunun x isimli şarkısı yine a grubunun y isimli şarkısına benziyordur, bilgisayar bunu daha önceden öğrenmiştir. eğer siz a grubunu yeni öğrenen biriyseniz ve sadece x isimli şarkısını dinliyorsaniz bir sonraki hafta keşif listenizde muhtemelen a grubunun y isimli şarkısını da göreceksiniz. eminim bir çok kişinin karşılaştığı bir durumdur. veya çok sevdiğiniz ve sürekli dinlediğiniz bir şarkı vardır, size o şarkının başka bir grup tarafından yapılmış cover'ı da önerilir. bu da eminim sıkça karşılaştığınız bir durumdur.

    çok detaylı olmadı ama genel olarak fikir vermesi için yazdım zaten. özetle benzer zevke sahip kişiler ve birbirine benzer şarkılar üzerinden dönüyor iş. o yüzden "ama ben hep tame impala dinlediğim halde bana sürekli alişan öneriliyor" şeklindeki şikayetlerin müsebbibi spotify değil, sizin gibi tame impala dinleyen ama aynı zamanda iflah olmaz bir alişan fanı olan kişi yüzünden geliyor o öneri :/

    [1] https://www.forbes.com/…hine-learning/#d8cb5e1665c7
7469 entry daha
hesabın var mı? giriş yap