Münhasır Öneri sisteminin bilgi sistemini anlamak için bir makale (konsept, yapı, algoritma)

(Daha büyük resmi görmek için tıklayın)

Ana makale Detaylandırmak için:

  • Önerilen sistemin 3 W'si

  • Öneri sistemi yapısı

  • Öneri motoru algoritması

Son dört bölüme göz atın Lütfen içerik için sonraki bölüme bakın.

1. Sistemin 3 W'sini önerin

1.1 Nedir?

Önerilen sistem Kullanıcının geçmiş davranışı, sosyal ilişkileri, ilgi alanları ve bağlamı gibi bilgilere dayanarak kullanıcının şu anda ihtiyaç duyduğu veya ilgilendiği öğeleri / hizmetleri yargılayan bir uygulama türüdür.

1.2 Neden (Bu neden?)

Neden bir öneri sistemine ihtiyacımız var? Bilgi teknolojisinin ve internetin gelişmesiyle birlikte insanlık bilgi eksikliği çağından Aşırı Bilgi Yüklemesi (Bilgi Aşırı Yüklemesi) dönemi .

Bilgi tüketicileri, yani kullanıcılar için ilgilendikleri bilgiyi büyük miktardaki bilgiden bulmak gittikçe zorlaşmakta; bilgi üreticileri için de bilgi üreticilerinin kendi bilgilerini kalabalığın arasından sıyrılması gittikçe zorlaşmaktadır. Öneri sistemi sırf bu çelişkiyi çözmek için ortaya çıktı.

Öneri sisteminin ana görevi, kullanıcılarla ve bilgilerle iletişim kurmaktır. Kullanıcılar için öneri sistemleri, kullanıcıların beğendikleri öğeleri / hizmetleri bulmalarına, karar vermede yardımcı olmalarına ve kullanıcıların beğenebilecekleri yeni şeyler keşfetmelerine yardımcı olabilir; işletmeler için öneri sistemleri, kullanıcılara kişiselleştirilmiş hizmetler sağlayabilir ve kullanıcı güvenini ve güvenini artırabilir. Yapışkanlık, geliri artırın. Öneri sisteminin değerini bir dizi veri aracılığıyla anlayabiliriz:

Netflix: 2/3 İzlenen filmler önerilerden alınmıştır

Google Haberleri: % 38 Tıklamaların oranı önerilerden geliyor

Amazon: % 35 Satışların oranı önerilerden gelir

Bu sayıları gördüğünüzde öneri sisteminin değeri apaçık ortada, değil mi?

1.3 Nereye başvurulur?

Bu bilgi patlaması çağında, aşırı bilgi yüklemesi sorunu, öneri sistemlerinin günlük hayatımızın tüm yönlerine nüfuz etmesine neden oldu: e-ticaret, film veya video web siteleri, kişiselleştirilmiş müzik ağı radyo istasyonları, sosyal ağlar, kişiselleştirilmiş okuma, konuma dayalı hizmetler ve kişilik Özelleştirilmiş e-postalar, kişiselleştirilmiş reklamlar ... Taobao'yu ziyaret ettiğinizde, paket sipariş verdiğinizde, İnternet radyosunu dinlediğinizde, Amerikan TV şovlarını izlediğinizde, e-postaları kontrol ettiğinizde ve rehberleri araştırdığınızda, öneri sistemi sizi bilmeden ilginizi çekebilecek içeriği size yönlendirecektir. Arama motorlarının aksine, kişiselleştirilmiş öneri sistemlerinin kullanıcı davranış verilerine güvenmesi gerekir Genellikle farklı web sitelerinde uygulama olarak bulunur. Öneri sisteminin gölgesi, İnternet'teki büyük web sitelerinde görülebilir. Örneğin, Taobao'yu ziyaret ettiklerinde, kadın yurttaşların ve erkek yurttaşların gördüğü web arayüzü farklı olacaktır.

Taobao'yu örnek olarak ele alalım, ben (dişi) gördüğüm Taobao arayüzü:

Erkek bilet tarafından görülen Taobao arayüzü:

Herkesin tercihleri farklıdır ve sayfada görüntülenen içerik farklıdır Yaptığımız her tıklama ve arama web sitesinde bir kayıt bırakacaktır. Taobao'nun öneri sistemi, web sitesi tıklama oranlarını ve dönüşüm oranlarını iyileştirmek için farklı kullanıcılara farklı kişiselleştirilmiş arayüzler sağlamak için çok sayıda günlük tarama ürün davranış günlüğümüzü analiz eder ve tercihlerimize etki eder.

2. Sistemin yapısını tavsiye edin (Yapı)

Farklı web siteleri farklı öneri sistemleri kullansa da, genel olarak hemen hemen tüm öneri sistemleri yapı olarak benzerdir ve çevrimiçi ve çevrimdışı bölümlerden oluşur. Çevrimdışı kısım, arka uç günlük sistemini ve öneri algoritma sistemini içerir ve çevrimiçi kısım, gördüğümüz ön uç sayfa ekranıdır. Çevrimdışı bölüm, kullanıcı verilerini ve davranış günlüklerini öğrenerek bir model oluşturur ve ilgili önerilen içeriği yeni bağlam altında hesaplar ve çevrimiçi sayfada sunar.

3. Öneri motoru algoritması (Algoritma)

3.1 İşbirlikçi filtreleme öneri algoritması

3.1.1 İlişki matrisi ve matris hesaplaması

Bir öneri sisteminde üç tür ilişki vardır: Kullanıcı ve Kullanıcı (U-U Matrisi) , Kalemler ve öğeler (V-V matrisi) ile Kullanıcılar ve öğeler (U-V matrisi) .

  • U-U matrisi

  • Algoritma prensibi

Kullanıcı benzerliğine dayalı işbirliğine dayalı filtrelemede, kullanıcı benzerliğinin hesaplanması temel önermedir. Pearson korelasyon katsayısı esas olarak iki değişken i ve j arasındaki korelasyonu ölçmek için kullanılır. Değer aralığı +1 (güçlü pozitif korelasyon) ile -1 (güçlü negatif korelasyon) arasındadır. Hesaplama formülü şöyledir:

Nerede

İ ve j kullanıcıları tarafından değerlendirilen öğelerden oluşan bir koleksiyondur, c bu koleksiyondaki öğe öğesidir,

J kullanıcısının c maddesindeki değerlendirme değeri,

İ kullanıcısının c maddesindeki değerlendirme değeri,

ile

Sırasıyla öğe üzerindeki i ve j kullanıcılarının ortalama değerlendirme değerini temsil edin.

  • Algoritma akışı

Algoritma girişi: kullanıcı davranış günlüğü.

Algoritma çıktısı: İşbirliğine dayalı kullanıcı benzerlik matrisi.

A. Kullanıcı davranışı günlüğünden, yani kullanıcının öğe üzerindeki derecelendirme verilerinden kullanıcı ile öğe arasındaki ilişki verilerini elde edin.

B. N kullanıcı için, sırasıyla kullanıcı 1 ve diğer n-1 kullanıcıları arasındaki benzerliği hesaplayın; ardından 2. kullanıcı ile diğer n-2 kullanıcıları arasındaki benzerliği hesaplayın. Herhangi iki kullanıcı için i ve j:

a) İki kullanıcı tarafından incelenen öğelerden oluşan bir koleksiyon bulun

b) İ kullanıcısı ve j öğesinin ortalama değerlendirmesini ayrı ayrı hesaplayın

ile

c) Kullanıcılar arasındaki benzerliği hesaplayın ve i ve j kullanıcıları arasındaki benzerliği elde edin.

C. Hesaplanan benzerlik sonuçlarını veritabanında saklayın.

  • V-V matrisi

  • Algoritma prensibi

Öğe benzerliğine dayalı işbirlikçi filtrelemede, öğe benzerliğinin hesaplanması temel önermedir. Öğenin değerlendirme değerini n boyutlu kullanıcı uzayında bir sütun vektörü olarak özetleyin

ile

, Değiştirilmiş kosinüs benzerliği kullanılarak hesaplama formülü şu şekildedir:

Nerede

Öğeler için

ile

Birlikte değerlendiren kullanıcı grubu, u

Değerlendirme değeri

ile

Sırasıyla, kullanıcının

ile

Ortalama değerlendirme değeri.

  • Algoritma akışı

Algoritma girişi: kullanıcı davranış günlüğü.

Algoritma çıktısı: İşbirliğine dayalı öğe benzerlik matrisi.

A. Kullanıcı davranışı günlüğünden, yani kullanıcının öğe üzerindeki derecelendirme verilerinden kullanıcı ile öğe arasındaki ilişki verilerini elde edin.

B. N madde için, sırasıyla 1. madde ile diğer n-1 maddeler arasındaki benzerliği hesaplayın; ardından 2. madde ile diğer n-2 maddeler arasındaki benzerliği hesaplayın. Herhangi iki öğe i ve j için:

a) İ ve j öğelerini birlikte derecelendiren kullanıcı kümesini bulun

b) Sırasıyla i ve j öğeleri için kullanıcının ortalama değerlendirmesini hesaplayın

ile

c) İ ve j öğeleri arasındaki benzerliği elde etmek için öğeler arasındaki benzerliği hesaplayın.

C. Hesaplanan benzerlik sonuçlarını veritabanında saklayın.

  • U-V matrisi

Gerçek bir öneri sisteminde, bir yandan UV matrisinin satır ve sütunlarının sayısı kullanıcı ve öğe sayısı ile artacaktır, öte yandan kullanıcılar gerçekte yalnızca sınırlı sayıda öğeyi değerlendirebildiği için UV matrisinin içi Çok seyrek. Sistem bu devasa seyrek matrisleri doğrudan işlediğinde, çok fazla zaman, bellek ve bilgi işlem kaynakları tüketir. Bu nedenle, hesaplama karmaşıklığını azaltmak için yöntemler benimsemek gerekir. Matris çarpanlara ayırma teknolojisi, matris hesaplamalarının karmaşıklığını azaltmak için etkili bir yöntemdir ve özü, yüksek boyutlu matrislerin boyutlarını etkili bir şekilde azaltmaktır.

  • Tekil Değer Ayrışımı (SVD)

SVD, belirli bir matrisi 3 matrisin çarpımına ayrıştırır:

Nerede, matris

Köşegen bir matristir, köşegen üzerindeki değer

Matris M'nin önemli özelliklerini temsil eden, boyut sırasına göre düzenlenmiş M matrisinin tekil değeridir. SVD, öneri sisteminde kullanılır ve anlamı, katsayıların bir puan matrisini M, kullanıcı özelliklerini temsil eden bir U matrisine, öğe özelliklerini temsil eden bir V matrisine ve kullanıcılar ile öğeler arasındaki bir korelasyona ayırmaktır.

matris.

  • Temel bileşen analizi (PCA)

Öneri sisteminde, daha fazla özelliğe sahip öğeler için (öğenin bilgileri, vektör

Anlamına gelir) PCA işleme boyutsallık azaltma için kullanılabilir ve m × n madde matrisi yeni bir m × k matrisine dönüştürülür.

3.1.2 Belleğe dayalı işbirlikçi filtreleme algoritması

  • Kullanıcı tabanlı işbirliğine dayalı filtreleme algoritması

Kullanıcı tabanlı işbirliğine dayalı filtreleme algoritması Öneri sistemindeki en eski algoritmadır 1992 yılında üretilmiş ve ilk olarak mail filtreleme sisteminde kullanılmıştır.1994 yılında GroupLens tarafından haber filtrelemede kullanılmıştır. Bundan sonra 2000 yılına kadar bu algoritma öneri sistemleri alanındaki en ünlü algoritmaydı.

  • Algoritma prensibi

Kullanıcı tabanlı işbirliğine dayalı filtreleme algoritması nedir? Basit bir örnek vermek gerekirse, üzüm, çilek, karpuz ve portakal gibi kiraz toplarının olduğunu biliyoruz ve küçük toplarla Huaren'in benzer tercihleri olduğunu öğrendik, bu yüzden Xiaowanzi ve Hualun'u seveceğiz. Seçilmemiş meyveler (üzüm ve portakal) Huaren'e tavsiye edilir.

Yukarıdaki örnekle şu özeti yapabiliriz: Kullanıcının

,makale

,

Doğru

Beğenildi

, Kullanıcı tabanlı işbirliğine dayalı filtreleme algoritması temel olarak aşağıdaki iki adımı içerir:

A. Kullanıcıların ve öğelerin geçmiş bilgilerini toplayın ve u kullanıcısı ile diğer kullanıcılar arasındaki benzerliği hesaplayın

, Hedef kullanıcı Ui ile benzer ilgi alanlarına sahip N (u) kullanıcı setini bulun

B. Bu koleksiyonda, hedef kullanıcının hoşuna giden ve hedef kullanıcının duymadığı ve hedef kullanıcıya tavsiye etmediği öğeleri bulun.

Kullanıcının ortak çalışmaya dayalı filtreleme alt motoruna bağlı olarak, kullanıcının öğe tercihi aşağıdaki formülle hesaplanır:

Nerede

Kullanıcının j öğesini tercih ettiğini belirtir,

Ni kullanıcısının j maddesine ilişkin değerlendirmesini temsil eder,

Kullanıcı u ve kullanıcı anlamına gelir

Benzerlik. Nihayet göre

Aday öğeleri sıralamak ve kullanıcılar için en yüksek puana sahip İlk N öğeleri önermek.

  • Algoritma akışı

Algoritma girişi: işbirliğine dayalı kullanıcı benzerlik matrisine dayalı kullanıcı davranış günlüğü.

Algoritma çıktısı: ilk öneri sonucu

A. Kısa süre önce değiştirilen U kullanıcı kimliği setini almak için kullanıcı davranış günlüğüne erişin.

B. U kümesindeki her kullanıcı için:

a) N (u) kullanıcısına benzer bir kullanıcı koleksiyonu elde etmek için kullanıcı benzerlik matrisine erişin.

b) N (u) 'daki her kullanıcı ui'si için:

Kullanıcı arayüzüyle ilgili öğelerden oluşan bir koleksiyon alın

.

Öğe koleksiyonu için

İçindeki her öğe için kullanıcı tercih değerini hesaplayın.

c) M (u) kümesindeki tüm öğeler ağırlıklandırılır, tekilleştirilir ve kullanıcı tercihlerine göre sıralanır.

d) İlk N maddeyi alın ve her bir maddeye bir açıklama yapın.

e) İlk N öğeleri ilk öneri listesine kaydedin.

  • Uygulanabilirlik

Kullanıcı benzerlik matrisini hesaplama ihtiyacı nedeniyle , Kullanıcı tabanlı işbirliğine dayalı filtreleme algoritması, daha az kullanıcının bulunduğu durumlar için uygundur; Güçlü zamanlamadan dolayı , Bu yöntem, kullanıcının kişiselleştirilmiş ilgisinin açık olmadığı alanlar için uygundur.

  • Öğe tabanlı işbirliğine dayalı filtreleme algoritması

Öğe tabanlı işbirliğine dayalı filtreleme algoritması Şu anda sektörde en çok kullanılan algoritmadır. Amazon.com, Netflix, Hulu veya Youtube olsun, öneri algoritması bu algoritmaya dayanmaktadır.

  • Algoritma prensibi

Öğe tabanlı işbirliğine dayalı filtreleme algoritması, daha önce beğendikleri öğelere benzer öğeler önerir. Mesela Cherry Xiaowanzi ve Xiaoyu'nun hem üzüm hem de karpuz sevdiğini biliyoruz, bu yüzden üzüm ve karpuzun daha yüksek benzerlik taşıdığını düşünüyoruz.Hualun karpuz seçerse Hualun'a üzüm tavsiye ederiz.

ItemCF algoritması, öğeler arasındaki benzerliği hesaplamak için öğelerin içerik özniteliklerini kullanmaz, temelde kullanıcı davranış kayıtlarını analiz ederek öğeler arasındaki benzerliği hesaplar. Algoritma, A öğesinin ve B öğesinin büyük bir benzerliğe sahip olduğuna inanıyor çünkü A öğesini seven çoğu kullanıcı B öğesini de seviyor.

Diyelim ki kullanıcı

,makale

,

Doğru

Beğenildi

, Öğe tabanlı işbirliğine dayalı filtreleme algoritması temelde iki adıma bölünmüştür:

A. Hedef kullanıcılar için

Ve not verilecek öğeler

Öğeleri, kullanıcının öğeler için geçmiş tercih verilerine göre hesaplayın

Diğer derecelendirilen öğelerle benzerlik Sim (j, i), bul ve öğe

Benzer öğelerin koleksiyonu N (u);

B. Tüm N (u) öğelerinin puanlarına göre, N (u) 'da hedef kullanıcıyı seçin

Sevdiklerinizi ve izlemediklerinizi hedef kullanıcılara önerin ve skoru tahmin edin.

Nerede

Kullanıcı u'nun i maddesine ilişkin değerlendirmesi için,

Kullanıcının satın aldığı öğelerin ortalama derecelendirmesidir.

ItemCF, kullanıcının öğeler için tercihini hesaplamak için aşağıdaki formülü kullanır:

Nerede

Kullanıcı u'nun j öğesini tercih ettiğini belirtir, i öğesi kullanıcının satın aldığı öğedir,

Kullanıcının, i öğesi için tercihini ve ardından

Aday öğeleri sıralamak ve kullanıcılar için en yüksek puana sahip öğeleri önermek.

  • Algoritma akışı

Algoritma girişi: kullanıcı davranış günlüğü, işbirliğine dayalı öğe benzerlik matrisi

Algoritma çıktısı: ilk öneri sonucu

A. Kullanıcının yakın zamanda görüntülediği öğelerin U kullanıcı setini almak için kullanıcı davranış günlüğüne erişin.

B. U kümesindeki her kullanıcı için:

a) N (u) kullanıcısına benzer bir kullanıcı koleksiyonu elde etmek için kullanıcı benzerlik matrisine erişin.

b) M (u) 'ya benzer öğelerin N (u) koleksiyonunu elde etmek için öğe benzerlik matrisini ziyaret edin.

c) Öğe koleksiyonundaki M (ui) her öğe için kullanıcı tercihi değerini hesaplayın.

d) N (u) öğeyi kullanıcı tercih değerine göre sıralayın.

e) İlk N maddeyi alın ve her bir maddeye bir açıklama yapın.

f) İlk N öğeyi ilk öneri listesine kaydedin.

  • Uygulanabilirlik

Öğe sayısının kullanıcı sayısından açıkça daha az olduğu durumlar için uygundur; bol miktarda uzun kuyruklu öğelerin ve kullanıcıların güçlü kişisel ihtiyaçlarının olduğu alanlar.

  • UserCF ve ItemCF'nin Karşılaştırması

3.1.2 Model tabanlı işbirliğine dayalı filtreleme algoritması

  • Gizli faktör modeline dayalı öneri algoritması

Örtük anlamsal model Tavsiye sistemleri alanında son yıllarda en popüler araştırma konusudur. Temel fikri benimsemektir. Gizli faktör Kullanıcı ilgi alanları ve öğeleriyle iletişim kurun. Yani, belirli bir kullanıcı için önce ilgi alanı kategorisini bulun ve ardından kategoriden beğenebileceği öğeleri seçin.

  • Temel algoritma

Faiz sınıflandırmasına dayalı yöntemin muhtemelen 3 sorunu çözmesi gerekiyor:

A. Öğeler nasıl sınıflandırılır?

B. Kullanıcının ne tür ürünlerle ilgilendiği ve ilgi derecesi nasıl belirlenir?

C. Belirli bir sınıf için, kullanıcılara önermek üzere bu sınıfa ait olan öğeleri seçin ve bu öğelerin bir sınıftaki ağırlığını nasıl belirleyeceksiniz?

Örtük anlamsal analiz teknolojisi, öğe sınıflandırması sorununu otomatik olarak çözebilen kullanıcı davranışı istatistiklerine dayalı otomatik kümelemeyi benimser. LFM, u kullanıcısının i maddesine olan ilgisini hesaplamak için aşağıdaki formülü kullanır:

Bu formülde,

ile

Modelin parametresidir.Bunlar arasında, kullanıcının u'nun ilgi alanı ile k'inci gizli sınıf arasındaki ilişkiyi ölçer ve k'inci gizli sınıf ile öğe i arasındaki ilişkiyi ölçer. Bu iki parametrenin hesaplanması için bir eğitim seti gereklidir.Her kullanıcı için u, eğitim seti kullanıcının beğendiği ve ilgisini çekmeyen maddeleri içerir.Bu veri setini öğrenerek yukarıdaki model parametreleri elde edilebilir.

  • LFM ve mahalle tabanlı yöntemlerin karşılaştırılması

  • Teorik temel

LFM görece iyi bir teorik temele sahiptir ve bir dizi indeksi optimize ederek optimal bir model oluşturan bir öğrenme yöntemidir. Mahalle temelli yöntem daha çok istatistiksel temelli bir yöntemdir ve öğrenme süreci yoktur.

  • Çevrimdışı bilgi işlemin alan karmaşıklığı

Mahalle temelli yöntemin çevrimdışı bir korelasyon tablosu tutması gerekir. Korelasyon tablosunun çevrimdışı hesaplanması sürecinde, kullanıcı / öğe sayısı büyükse, büyük miktarda bellek kaplayacaktır. Modelleme sürecinde, LFM çevrim dışı hesaplama hafızasını kaydedebilir.

  • Çevrimdışı hesaplamanın zaman karmaşıklığı

Genel olarak, LFM'nin zaman karmaşıklığı, UserCF ve ItemCF'ninkinden biraz daha yüksektir, çünkü temel olarak algoritma birden çok yineleme gerektirir. Ancak genel olarak, bu iki algoritma arasında zaman karmaşıklığında niteliksel bir fark yoktur.

  • Çevrimiçi gerçek zamanlı öneri

UserCF ve ItemCF çevrimiçi hizmet algoritmalarının ilgili tabloları bellekte önbelleğe alması ve ardından çevrimiçi gerçek zamanlı tahminler yapması gerekir. LFM, kullanıcılar için bir öneri listesi oluşturduğunda, kullanıcının tüm öğeler için ilgi ağırlıklarını hesaplaması ve ardından sıralaması gerekir.Çok büyük öğelere sahip sistemler için uygun değildir. Kullanılacaksa, kullanıcıların önce hesaplaması için daha hızlı bir algoritmaya da ihtiyacımız var Nispeten küçük bir aday listesi ve ardından LFM ile yeniden sıralama. Öte yandan, LFM bir kullanıcı öneri listesi oluşturmak için çok yavaştır, bu nedenle gerçek zamanlı olarak çevrimiçi olarak hesaplanamaz ve tüm kullanıcıların öneri sonuçlarının önceden çevrimdışı olarak hesaplanması ve veritabanında saklanması gerekir. Bu nedenle, LFM çevrimiçi gerçek zamanlı tavsiyeleri gerçekleştiremez, yani bir kullanıcı yeni bir davranışa sahip olduğunda, öneri listesi değişmez.

  • Önerilen açıklama

ItemCF algoritması çok iyi öneri yorumlamasını destekler, öneri sonuçlarını açıklamak için kullanıcının geçmiş davranışını kullanabilir. Ancak, LFM böyle bir açıklama sağlayamaz.Hesapladığı gizli sınıflar anlambilimdeki bir ilgi türünü ve öğeleri temsil etse de, bunu doğal dilde açıklamak ve kullanıcılara göstermek için bir açıklama üretmek zordur.

  • Naive Bayes ayrımına dayalı öneri algoritması

  • Algoritma prensibi

Öneri problemi bir sınıflandırma problemi olarak değerlendirilebildiği için makine öğrenmesi alanında sınıflandırma algoritmaları kullanılarak çözülebilir. Saf Bayes sınıflandırma algoritması, nispeten basit bir Bayes sınıflandırma algoritması türüdür. Temel fikri şudur: belirli bir öğe ve belirli bir kategori için, her bir kategorideki ve hangi kategorideki öğenin sıklığını hesaplayın Hesaplanan olasılık büyükse, öğe bu kategoride sınıflandırılacaktır. Öneri sisteminde, Naive Bayesian sınıflandırması, belirli puanlar bilindiğinde olasılığı hesaplayarak bilinmeyen puanları tahmin edebilir.

Hesaplamada Bayes teoremi kullanılır:

Formülde, A olayının B olayının meydana geldiği öncülüne göre meydana gelme olasılığını temsil eder; P (A) ve P (B) koşulsuz olasılıklardır.

  • Algoritma akışı

Algoritma girişi: Bilinen hedef kullanıcının öğe çifti

Listenin dışındaki öğelerin derecelendirmesi ve her öğenin diğer kullanıcılar tarafından derecelendirilmesi.

Algoritma çıktısı: hedef kullanıcının öğesini belirleyin

'S derecelendirmesi

.

A. Varsaymak

Sınıflandırılması gereken bir öğedir,

için

Karakteristik özellikler;

B. Kategori grubu ayarla

C. Hesaplama

:

a) Eğitim örneği olarak bilinen bir sınıflandırma ile sınıflandırılacak bir dizi öğe bulun;

b) İstatistikler, her bir kategori altındaki her özellik özniteliğinin koşullu olasılık tahminini alır.

c) Her bir karakteristik özellik koşullu olarak bağımsız ise, Bayes teoremine göre aşağıdaki ilişkiye sahiptir:

Payda tüm kategoriler için sabit olduğundan, yalnızca payı maksimize etmeniz gerekir ve her karakteristik özellik koşullu olarak bağımsız olduğundan, şunlar vardır:

D.

,sonra

.

  • Uygulanabilirlik

Naive Bayes sınıflandırmasının uygulanması nispeten basittir ve yüksek bir doğruluk oranına sahiptir, ancak sınıflandırma sırasında tüm numunelerin bilgilerini öğrenmesi gerekir. Bu nedenle, Naive Bayes sınıflandırması, az miktarda veri ve daha az kategori içeren sınıflandırma problemleri için uygundur.

3.2 İçerik tabanlı (CB) öneri algoritması

  • Temel CB tavsiye algoritması

  • Algoritma arka planı

Temel CB tavsiye algoritması, öğeyi önermek için öğenin temel bilgilerinin ve kullanıcının tercih içeriğinin benzerliğini kullanır. Kullanıcının göz attığı öğelerin içeriği analiz edilerek, kullanıcının tercih içeriği oluşturulur ve ardından kullanıcının ilgilendiği öğelere oldukça benzeyen diğer öğeler önerilir.

Örneğin, kullanıcı yakın zamanda Feng Xiaogang'ın yönettiği "If You Are the One" filmini izlemiştir ve başrol oyuncusu Ge You'dur, o zaman kullanıcı "Private Order" ı izlememişse, kullanıcıya tavsiye edebilir. Çünkü bu iki filmin yönetmenleri Feng Xiaogang, başrol oyuncuları ise Ge You.

Hesaplama formülü:

Nerede

Kullanıcıyı temsil eder,

Bir öğeyi temsil eder,

Kinci yönden kullanıcının özelliklerini belirtir,

Maddenin kinci yöndeki özelliklerini belirtir,

Anlamına geliyor

ile

Ağırlığı temsil eden k'inci özelliğindeki benzerlik

.

  • Algoritma akışı

Algoritma girişi: öğe bilgileri, kullanıcı davranış günlüğü.

Algoritma çıktısı: ilk öneri sonucu.

A. Öğe gösterimi: her öğe bir özellik vektörü kullanır

Anlamına geliyor,

Öğenin karakteristik özelliklerini temsil eden;

B. Kullanıcı davranış günlüğünden, kullanıcı tarafından göz atılan, favorilere eklenen, değerlendirilen ve paylaşılan öğe koleksiyonunu elde edin M öğe koleksiyonundaki öğelerin özellik verilerine göre, kullanıcının içerik tercihleri öğrenilebilir;

C. İlk K öğeleri ilk öneri sonucuna kaydedin.

  • Uygulanabilir sahne

Özellikle hemen önerilecek yeni çevrimiçi öğeler için temel CB mimarisinin inşası için uygundur ve tavsiye edilme şansı eski öğelerinkiyle aynıdır.

  • TF-IDF'ye dayalı CB öneri algoritması

  • Algoritma arka planı

Öneri sistemlerinde, kullanıcı geri bildirimi genellikle iki kategoriye ayrılır: derecelendirmeler ve metin yorumları. İlki, puanları kullanıcının öğelere yönelik tercihini doğrudan yansıtmak için kullanırken, ikincisinin metinden önemli bilgileri çıkarması gerekir. TF-IDF (Terim Frekansı-Ters Belge Frekansı) . TF-IDF algoritması, bilgi erişiminde en önemli buluş olarak kabul edilir ve arama, belge sınıflandırması ve diğer ilgili alanlarda yaygın olarak kullanılır.

TF-IDF, doğal dil işleme alanındaki belgelerdeki kelime veya ifadelerin ağırlıklarının hesaplanması için bir yöntem olup, terim sıklığı (TF) ve ters belge sıklığının (IDF) ürünüdür. TF, belirli bir kelimenin dosyada kaç kez göründüğünü ifade eder. Bu sayı genellikle uzun dosyalara karşı önyargılı olmasını önlemek için normalleştirilir (uzun bir dosyadaki aynı kelime bir segment dosyasından daha yüksek olabilir Kelime sıklığı, kelimenin önemi ne olursa olsun). IDF, bir kelimenin genel öneminin bir ölçüsüdür.Belirli bir kelimenin IDF'si, toplam doküman sayısını kelimeyi içeren dokümanların sayısına bölerek ve ardından elde edilen bölümün logaritması alınarak elde edilebilir.

  • Algoritma prensibi

TF-IDF algoritması, hedef belgede yüksek sıklıkta ve diğer belgelerde düşük bir sözcük göründüğünde, bu sözcüğün hedef belgeyi ayırt etmek için kullanılabileceği varsayımına dayanır. Bu hipotezin ana mesajı iki noktaya sahiptir:

  • Bu belgede yüksek sıklık;

  • Diğer belgelerde düşük frekans.

Bu nedenle, TF-IDF algoritmasının hesaplanması iki kısma ayrılabilir: terim frekansı (TF) ve ters belge frekansı (IDF) TF ve IDF çarpımı, belge kelimelerinin ağırlığını ayarlamak için kullanılır.

Belge kümesindeki belge sayısının N olduğunu ve belge kümesinin anahtar sözcükler içerdiğini varsayalım.

Belge sayısı

,

Anahtar kelimeleri temsil eder

Belgede

Olayların sayısı,

Belgeyi temsil eder

İçinde görünen toplam kelime sayısı

Belgede

Kelime frekansı

olarak tanımlandı

Bu sayı, uzun dosyalara karşı önyargılı olmasını önlemek için genellikle normalleştirilir.

IDF, kelimelerin evrensel önemini ölçer.

Tüm belgedeki bir kelimenin sıklığını gösterir ve anahtar kelime, hesaplamasının sonucunun logaritması alınarak elde edilir.

Ters belge frekansı

.

TF ve IDF tarafından hesaplanan kelimelerin ağırlığı

TF-IDF'nin belgedeki kelimenin geçtiği sayılarla doğru orantılı olduğu ve tüm belge setindeki sözcüğün geçme sayısı ile ters orantılı olduğu görülebilir. Hedef belgede, anahtar sözcükleri ayıklama yöntemi, belgedeki tüm sözcüklerin TF-IDF'sini hesaplamak ve karşılaştırmak ve belgeyi temsil edecek hedef belgenin özellik vektörünü oluşturmak için en büyük TF-IDF değerine sahip sayıyı almaktır.

  • KNN'ye dayalı CB öneri algoritması

  • Algoritma arka planı

KNN (k-En Yakın Komşu) algoritması Bu varsayıma dayanarak: Bir numunenin en yakın k örneğinin çoğu, özellik uzayında belirli bir kategoriye aitse, numune de bu kategoriye aittir.

  • Algoritma prensibi

CB öneri algoritmasındaki KNN uygulaması, KF öneri algoritmasındaki uygulamaya çok benzerdir.Hepsi hedef maddeye benzer ve kullanıcı u tarafından değerlendirilmiş k maddeyi bulmalıdır ve sonra k madde u kullanıcısı tarafından değerlendirilir. Hedef öğesinin değerlendirmesini tahmin etmek için öğe değerlendirmesi. Aralarındaki fark, CF öneri algoritmasındaki KNN'nin, kullanıcının öğenin derecelendirmesine göre öğeler arasındaki benzerliği hesaplarken, CB öneri algoritmasındaki KNN'nin öğe portresine göre benzerliği hesaplamasıdır. Öyleyse, ikincisi için nasıl Öğe portreleri aracılığıyla öğeler arasındaki benzerliği hesaplamak, algoritmada önemli bir adımdır. Benzerliğin hesaplanması, kosinüs benzerliği veya Pearson korelasyon katsayısı hesaplama yöntemini kullanabilir.

  • Algoritma akışı

Algoritma girişi: kullanıcı, öğeleri derecelendirdi, hedef öğe i.

Algoritma çıktısı: kullanıcının hedef öğedeki puanı i.

A. Benzerliği hesaplamak için kosinüs benzerlik formülünü kullanın.

B. En yakın komşuyu seçin. Kullanıcı u tarafından derecelendirilen tüm öğeler arasında, hedef öğe i'ye en yüksek benzerliğe sahip k öğeyi bulun ve k öğe kümesini temsil etmek için N (u, i) kullanın.

C. Tahmin edilen değeri hesaplayın. İkinci adım temelinde, kullanıcının hedef öğedeki puanını hesaplamak için aşağıdaki formül kullanılabilir:

Nerede

İ öğesi için u kullanıcısının tahmini puanını temsil eder,

Benzerliktir.

  • Rocchio'ya dayalı CB öneri algoritması

  • Algoritma arka planı

Rocchio, kullanıcı portreleri oluşturmak için kullanıcının göz atma geçmişinden kullanıcı tercihlerini çıkaran yaygın bir algoritmadır. Bilgi alma alanında bir işlemdir. Alaka Düzeyi Geri Bildirimi İyi bilinen bir algoritma. Kullanıcı tarafından göz atılan öğelerin geri bildirimi yoluyla kullanıcının özellik vektöründeki öznitelik değerinin nasıl hesaplanacağına ilişkin bir yöntem sağlar.

Basit bir örnek olarak, kullanıcı "Yıldız Savaşları" ve "Karayip Korsanları" nı izlediyse ve yüksek puanlar verdiyse, kullanıcının davranış geçmişi verilerine dayalı bir portre oluştururken, kullanıcının özellik vektörü {"eylem": 1 "olarak ifade edilebilir. "Avrupa ve Amerika": 1, "Bilim Kurgu": 1, "Macera": 0.5}.

  • Algoritma prensibi

Rocchio algoritması, en doğru kullanıcı özelliği vektörünü hesaplamamız gerekirse, varsayımına dayanmaktadır.

, O halde bu kullanıcı özelliği vektörü, kullanıcının sevdiği öğenin özelliğine en çok benzeyen ve kullanıcının nefret ettiği öğenin özelliğinden en farklı olmalıdır. Eğer

Kullanıcıların beğendiği öğeleri temsil eder,

Kullanıcıların nefret ettiği öğeleri temsil eder, ardından Rocchio algoritması fikrine göre optimum kullanıcı özelliği vektörü şu şekilde tanımlanır:

Nerede

Kullanıcının özellik vektörü ile kosinüs benzerliği kullanılarak hesaplanan kullanıcının favori öğesi arasındaki benzerliği belirtir, formül şu şekildedir:

Kullanıcının özellik vektörünü güncelleyin ve formülü şu şekilde değiştirin:

Nerede

Orijinal kullanıcı özelliği vektörü,

Ağırlık mı? Kullanıcının daha fazla yeni geçmiş verisi varsa,

ile

Aksine, kullanıcı daha az veriyi güncellerse, uygun şekilde azaltılabilir

ile

Değer. İçeriğe dayalı öğe önerilerinde, kullanıcı portreleri oluşturmak için kullanıcının özellik vektörünü kullanıcının geçmiş davranış verilerine dayanarak sürekli olarak ayarlamak için Rocchio algoritmasını kullanabiliriz.

.

  • Karar ağacına dayalı CB öneri algoritması

  • Algoritma arka planı

Karar ağacına dayalı öneri algoritması, eğitim aşamasında görüntülenen bir karar modeli oluşturur. Karar ağaçları eğitim verileri aracılığıyla oluşturulabilir ve yeni bir öğenin memnuniyetle karşılanıp karşılanmayacağına etkin bir şekilde karar verebilir. Maddelerin daha az özellik özniteliği olduğunda, karar ağacı algoritması iyi sonuçlar elde edebilir.Ayrıca, karar ağacı öğrenme fikrinin anlaşılması daha kolaydır ve madde tavsiyesinin yorumlanabilirliği daha iyidir.

  • Algoritma prensibi

Öğe öneri sisteminde, karar ağacının dahili düğümleri genellikle öğelerin özellik özniteliklerini temsil eder.Bu düğümler, örneğin öğeleri bu özelliği içerip içermediklerine göre sınıflandırmak için öğe koleksiyonunu ayırt etmek için kullanılır. Yalnızca iki sınıflandırmaya sahip basit bir veri kümesinde, kullanıcıların öğelerle ilgilenip ilgilenmediği genellikle karar ağacının yaprak düğümlerinde görünür.

  • Doğrusal sınıflandırmaya dayalı CB öneri algoritması

  • Algoritma arka planı

İçerik temelli öğe öneri problemini bir sınıflandırma problemi olarak ele alırken, çeşitli makine öğrenimi yöntemleri kullanılabilir. Daha soyut bir perspektiften, çoğu öğrenme yöntemi, kullanıcıların sevdiği ve beğenmediği öğeleri doğru bir şekilde ayırt edebilen doğrusal bir sınıflandırma modeli katsayısı bulmaya odaklanır.

Öğe verileri, n boyutlu bir özellik vektörü ile temsil edilir. Doğrusal sınıflandırıcı, belirli bir öğe özellik uzayındaki öğeleri doğru şekilde sınıflandırabilen bir düzlem bulmaya çalışır. Bir nokta türü, düzlemin bir tarafında olabildiğince uzundur (benzer), diğer tür Uçağın diğer tarafında (sevme).

  • Algoritma prensibi

Doğrusal sınıflandırıcıya dayalı CB öneri algoritması, öğeyi öğe özelliklerinin doğrusal kombinasyonu aracılığıyla sınıflandırır. Giriş öğesi özellik vektörü ise

, Çıktı sonucu y, kullanıcının öğeyi beğenip beğenmediğini gösterir, doğrusal sınıflandırıcı şu şekilde ifade edilebilir:

Nerede

Öğe özelliği vektörüne karşılık gelen ağırlığı temsil eder ve girdi öğesi özellik niteliklerine göre çıktı sonucuna karar verir.

  • Naive Bayes'e dayalı CB öneri algoritması

  • Algoritma arka planı

Naive Bayes'e dayalı öneri sistemi, kullanıcının ve öğenin özellik vektöründeki bileşenlerin koşullu olarak bağımsız olduğunu varsayar Kullanıcının bir öğeyle ilgilenip ilgilenmediğini belirlemenin yolu, bu sorunu bir sınıflandırma problemine dönüştürmektir: beğenme ve beğenmeme.

Maddelerin sınıflandırmasının hesaplanmasının son olasılığı:

Nerede

Kalemin ilgili özelliklerini gösterir; C kalemin sınıflandırmasıdır,

C kategorisindeki bir öğenin karakteristik özelliklerini temsil eder

Ortaya çıkma olasılığı. Bu şekilde, eğitim verilerinin gözlemlenmesi ve analiz edilmesi ile madde sınıflandırmasının son olasılığı elde edilebilir.

  • Algoritma prensibi

Öneri sisteminde, c kategorisi altında bir öğe karakteristik özelliği

Koşullu olasılığı

C kategorisindeki tüm maddelerde yaklaşık olarak görülme sıklığı, yani

Nerede

Olarak işaretlenmiş c öğesindeki oluşumların sayısını gösterir,

Bu öğelerde görünen tüm karakteristik özelliklerin sayısını gösterir. Hesaplama olasılığının 0 olmasını engellemek için formül yumuşatılır.Yeni formül aşağıdaki gibidir:

Formülde | V |, tüm öğelerdeki farklı karakteristik özelliklerin sayısını temsil eder.

3.3 Bilgiye dayalı öneri algoritması

3.3.1 Genel Bakış

Bilgiye dayalı (Bilgiye dayalı, KB) Önerilen algoritma, CB ve CF'ye dayalı yaygın öneri yöntemlerinden farklıdır. CB ve CF genel arama motorları gibiyse, KB belirli bir alanda dikey bir arama motoru gibidir.Bu alanda profesyonel ve yüksek kaliteli özellikler dahil özel ihtiyaçları sağlayabilir ve belirli alanlarda arama motorlarının hizmetlerini iyileştirmeye yardımcı olabilir.

Örnek olarak video önerisini alırsak, yönetmenlerin gişe rekorları kıran filmleri yönetmesi gereken bir filmin yayınlanma süresi ve zamanlama popülerliği, Transformers ve The Lord of the Rings serisinin itibarı kesinlikle çok kötü olmayacak ve hepsi çok değerli öneriler. Ek olarak, bilgiye dayalı tavsiyelerin öznel bireysel ihtiyaçları karşılaması da daha kolaydır. Örneğin VIP kullanıcılar için tercihleri yapılandırılırsa daha doğru öneri hizmetleri verilebilir.

  • Kısıtlama bilgisi ve kısıtlama önerisi algoritması

Günümüzde online alışverişin kapsayabileceği ürünler gittikçe daha fazla hale gelmektedir.İnsanlar, öneri sisteminin CF ve CB öneri algoritmalarının bazı özel öğelerin öneri ihtiyaçlarına iyi adapte edilmediğini yavaş yavaş fark etmektedir. Örneğin, çok hızlı güncellenen ve insanların genellikle sık sık değiştirmediği elektronik ürünler. Bu ürünler için, performans parametrelerinin tüm yönleri birkaç yıl içinde büyük ölçüde değişecektir. Geçmiş tercihleri temsil eden kullanıcı portreleri, kullanıcıların mevcut satın alma ihtiyaçlarını yansıtmamaktadır. Bu nedenle, kullanıcıların mevcut ihtiyaçlarını entegre etmek için bir öneri sistemi gereklidir. Önemli bilgi kaynağı olarak. Maddenin parametre özelliklerinin ve diğer özniteliklerinin kısıt bilgisini oluşturmak için kullanılabileceği, daha sonra kullanıcının maddeye özgü karakterizasyonunun kısıt koşulu olduğu ve daha sonra madde setinin kısıt tatmin problemi çözüldükten sonra kullanıcının istediği maddenin elde edilebileceği bulunmuştur.

  • Önerilen görevleri oluşturun

Tavsiye görevi, bir grup (R, I) şeklinde ifade edilir; burada R kümesi, hedef kullanıcının öğeye yönelik özel ihtiyaçlarını, yani öğe üzerindeki kısıtlamayı ve I kümesi bir dizi öğeyi temsil eder. Önerilen görev, set I'den set R'nin gereksinimlerini karşılayabilecek öğeleri belirlemektir.

  • Önerilen görev çözünürlüğü

Öneri görevinin çözümü, hedef olarak olası bir S kümesini bulmaktır.S kümesinin karşılaması gereken koşul,

,ve

,onların arasında,

Küme I üzerindeki bağlantılı sorgu operatörünü temsil eder, R öğeler için kısıtlama veya seçim kriterlerini temsil eder.

  • Çakışma seti

CS'nin uyması gereken çatışma kümesi koşullar şunlardır:

,ve

. Özellikle koleksiyon olmadığında

Şu anda, CS kümesine minimum çakışma kümesi denir.

  • Teşhis seti

Teşhis seti

Karşılanması gereken koşullar şunlardır:

,ve

. Özellikle koleksiyon olmadığında

Zaman, koleksiyon

Minimum teşhis seti denir.

  • İlgili bilgi ve ilgili öneri algoritması

  • Algoritma prensibi

İlişkili bilgi, veritabanındaki veriler arasındaki ilişki bilgisini açıklamak için ilişkilendirme kuralları biçimini alır. Öneri sistemleri alanında, kullanıcı portrelerindeki ilişkilendirme kuralları madencilik yapılarak ve analiz edilerek kullanıcının alışkanlıkları analiz edilebilir, öğeler arasındaki ilişkiler keşfedilebilir ve bu ilişkilendirme sisteme tavsiyelerde bulunmaya rehberlik etmek için kullanılabilir.

  • Algoritma akışı

Algoritma girişi: n kullanıcı portresi.

Algoritma çıktısı: Hedef kullanıcı u için ilk N öneri listesi.

A. Sistemdeki n kullanıcı portresinden tüm güçlü ilişkilendirme kurallarını çıkardı ve bir set oluşturdu

Hedef kullanıcının henüz görüntülemediği, ancak ilgisini çekmesi muhtemel olan öğeleri belirtmek için.

B. Güven çifti kümesini yeniden kullanın

Öğeleri yüksek ve düşük olarak sıralayın.

C. Bir Top-N öneri listesi oluşturmak için sıralanan listedeki ilk N öğeyi çıkarın. Kural ilişkilendirme madenciliğinin sistemdeki tüm kullanıcıların portreleri üzerindeki önemi açık olmadığından ve hesaplama miktarı büyük olduğundan, ilişkilendirme kurallarına dayalı öneri algoritması genellikle CF öneri algoritması ile karıştırılır. Bu tür karma şemada, CF öneri algoritmasındaki en yakın komşu algoritması, n kullanıcı portrelerinin sayısını hedef kullanıcının en yakın komşusuyla sınırlamak için kullanılır, böylece ilişkilendirme kuralı madenciliği algoritması tarafından işlenen veri boyutu özellikle belirli bir aralıkla sınırlandırılır. İçeride.

3.4 Hibrit öneri algoritması

Çeşitli önerilen yöntemlerin avantajları ve dezavantajları vardır, güçlü yönlerini telafi etmek için genellikle pratikte kullanılırlar. Hibrit Öneri (Hibrit Öneri) . En çok araştırılan ve uygulanan, içerik önerisi ve işbirliğine dayalı filtreleme önerisinin kombinasyonudur. En basit yol, bir öneri tahmini sonucu oluşturmak için içerik tabanlı yöntemi ve işbirliğine dayalı filtreleme önerisi yöntemini kullanmak ve ardından sonuçları birleştirmek için belirli bir yöntemi kullanmaktır. Teorik olarak tavsiye edilen birçok kombinasyon metodu olmasına rağmen, belirli bir problemde mutlaka etkili olmaları gerekmez Kombinasyon tavsiyesinin en önemli prensiplerinden biri, kombinasyon yoluyla ilgili tavsiye tekniklerinin zayıflıklarını ortadan kaldırmak veya telafi etmektir.

  • Ağırlıklı formül: Birden çok önerilen tekniğin sonuçlarını ağırlıklandırın.

  • Anahtarlama: Sorunun geçmişine ve fiili duruma veya gereksinimlere göre, farklı önerilen teknikleri değiştirmeye ve benimsemeye karar verin.

  • Hibrit: Aynı zamanda, kullanıcılara referans sağlamak için birden çok öneri sonucu vermek için birden çok öneri tekniği kullanılır.

  • Özellik kombinasyonu: Farklı önerilen veri kaynaklarından özellikleri birleştirmek başka bir öneri algoritması tarafından kullanılır.

  • Basamaklı: İlk olarak, kabaca bir öneri sonucu elde etmek için bir öneri tekniği kullanılır ve ikinci öneri tekniği ayrıca bu öneri sonucuna dayanarak daha doğru bir öneri yapar.

  • Eklenen özellikler: Bir teknik, ek özellik bilgisi üretir ve bunu başka bir öneri tekniğinin özellik girişine yerleştirir.

  • Cascade türü: Bir öneri yöntemi tarafından oluşturulan modeli başka bir öneri yönteminin girdisi olarak kullanın.

GIF-Daegu AFC, Evergrande'nin savunma hattını 2-0 mağlup etti, Güney Koreli hayranlar çılgınlığı kutladı!
önceki
Bahar Şenliği için olmazsa olmaz bir atıştırmalık, öğrenmek için 2 dakika, tatlı ve yumuşak, satın alınandan daha iyi
Sonraki
İngiliz hükümeti: Dünya AI gücü oluşturmak için 18 öneri (rapor indirilerek)
Anneler Günü Özel | Bir kadının kalbinin kalbindeki akupunktur iğneleri, bu teknoloji ürünleri "anneler" göndermeye haklıdır
Diğer programcıların nasıl itiraf ettiğini görün! (Öğretici ile ~)
Özel Tek bir makalede entegre öğrenme (öğrenme kaynakları ile)
Özel Size kendi veri kümenizi oluşturmak için Scrapy'yi kullanmayı öğretin
The New York Times: 2016'nın en unutulmaz bilim haberleri
Bugün, Bai Yansong, Mulan Dağı Maratonuna katıldı.
Manyetik Rezonans Plak Görüntülemenin Özel Teknik Ar-Ge, Durumları ve Veri Zorlukları
Sıcak kış güneşini hissedin 2018 Panzhihua Mutlu Güneş Festivali 28 Kasım'da başlıyor
Google'ın anne-baba mağazasının tek boynuzlu at yolu, 23andMe'nin genetik testi nasıl geçtiğini görün
Parktaki kadına saldıran adam, şüphelinin izini takip ederek kıyafetlerini değiştirdi ve kaçtı.
Özel TensorFlow'u uygulamalı öğretin (kodla)
To Top