Karar ağacına dayalı "Öneri Algoritması" Öneri algoritması

1. Algoritmaya giriş

Karar ağacı, klasik bir makine öğrenimi sınıflandırma algoritmasıdır. Ana temsili algoritmalar ID3, C4.5 ve CARD'dır. Prensip, verileri özetleyerek ve özetleyerek elde edilen bir dizi sınıflandırma kuralı olarak anlaşılabilir. Basit bir örnek:

Bir karar ağacında, bir yaprak düğüm bir karar kuralını temsil eder (genellikle yaprak düğümün kategorisi, düğümün en çok örneğini içeren kategoriye eşittir) Karar ağacı algoritmasının amacı, yüksek doğrulukta bir kural elde etmektir ve karar kuralının doğruluğu kullanılabilir. Yaprak düğümünün karmaşıklığı ölçülür.

2. Karmaşıklık hesaplaması

Karmaşıklık için yaygın olarak kullanılan iki hesaplama yöntemi şunlardır: Örnek bir X kümesi olduğu varsayılırsa, toplam n kategori vardır ve pi, i-inci kategorisinin oranını temsil eder.

(1) Bilgi entropisi:

Yukarıdaki formülde, bilgi entropisinin değeri ne kadar yüksekse, örneklemin karmaşıklığı o kadar yüksek ve belirsizliği o kadar büyüktür.

(2) Gini endeksi:

Yukarıdaki formülde, Gini indeksi ne kadar büyükse, örneğin karmaşıklığı o kadar yüksek ve belirsizliği o kadar büyüktür.

3. Bölünmüş indeks

Karar ağacını oluşturma sürecinde, her bir düğümün bölünmesi, sistemin karmaşıklığını daha fazla azaltmak için hangi öznitelik bölünmesinin seçileceğini dikkate almalıdır. Farklı algoritmalar farklı bölme yöntemlerini seçer.

(1) ID3: Bilgi kazancı

H (x), bölünmeden önce sistemin karmaşıklığını temsil ettiğinde,

Ayrıldıktan sonra sistemin karmaşıklığını gösterir. Değer ne kadar büyükse, bölme modu sistemi daha düzenli hale getirir.

(2) C4.5: Bilgi kazanma oranı

A özelliğinin i-inci değerinin oranını gösterir; burada

Bunun anlamı, A özniteliğinin karmaşıklığıdır. Sistem saflığındaki artışı dikkate almanın yanı sıra, bu formül ayrıca A özniteliğinin karmaşıklığını da dikkate alır. Değer ne kadar büyükse, bölme modu sistemi daha düzenli hale getirir. (ID3 algoritmasında, bilgi kazancı sistemin saflık artışını hesaplamak için seçildiğinden, bölme için genellikle yüksek karmaşıklığa sahip öznitelikler seçilir. Bölme işleminden sonra bazı düğümlerle sonuçlanan, yüksek karmaşıklığa sahip özniteliklerin birçok bölümlenmesi olacaktır. Sadece az sayıda örnek tahmin için istatistiksel anlamlılığa sahip değildir, C4.5 iyileştirmek için bu probleme göre).

(3) KART: Gini katsayısı

CARD algoritması tarafından oluşturulan karar ağacı bir ikili ağaçtır. Her bölüm yalnızca iki düğümü böler. Gini (X | A), bölünmeden sonraki karmaşıklığı temsil eder. Değer ne kadar yüksekse, örneklemin bozukluğu o kadar büyük olur. X1, X2 X'in bölünmesinden sonra iki örnek seti (bölme yöntemi, tüm bölme olasılıklarını geçmek ve en küçük Gini (X | A) noktasını bulmaktır). Değer ne kadar küçükse, bölme yöntemi sistemi daha düzenli hale getirir.

4. Karar ağacı oluşturma

giriş:

Bölünmüş dizin: Bölünmüş bir dizin seçin (bilgi kazancı, bilgi kazanım oranı, Gini katsayısı).

Düğüm bölünmüş sonlandırma koşulları: minimum örnek sayısını ve düğümün maksimum derinliğini seçin.

  • Adım 1: Bölünebilir bir düğüm Di seçin, döngüsel olarak tüm özniteliklerin bölme dizinini hesaplayın ve Di + 1, Di + 2, ... veri kümesini elde etmek için bölme noktası olarak sistemi en düzenli öznitelik yapmak için en uygun dizini seçin.
  • Adım 2: Tüm yaprak düğümlerin bölmenin sonlandırma koşuluna ulaşıp ulaşmadığını, varsa, Adım 3'ü yürütün, aksi takdirde Adım1'i yürütün.
  • 3. Adım: Dalları azaltın
  • Adım 4: Karar ağacına dönün T

5. İş uygulamaları

İş senaryosu: Örnek olarak bir uygulama mağazasındaki kişiselleştirilmiş öneri uygulamasını ele alalım.

Adım 1: Kullanıcı portreleri oluşturun, kullanıcı geçmişini indiren uygulama kayıtlarını, yüklü uygulama kayıtlarını ve kullanıcı sosyal özelliklerini (yaş, cinsiyet, eğitim ve şehir) toplayın.

Adım 2: Uygulama kimliği, uygulama türü, uygulama etiketi, uygulama yükleme hacmi sıralaması, uygulama TO'su vb. İçeren bir uygulama portresi oluşturun.

Adım 3: Örnek toplama, kullanıcı geçmişi teşhiri toplama ve uygulama kayıtlarını indirme (alanlar: kullanıcı kimliği, uygulama kimliği, indirilip indirilmeyeceği) ve gümrükten çekme kullanıcı kimliğini, uygulama kimliğini ve kullanıcı portresini, örnek verileri elde etmek için uygulama portre ilişkisini, örnek verileri (kullanıcı kimliği , Uygulama kimliği, kullanıcı portresi, uygulama portresi, indirilip indirilmeyeceği).

Adım 4: Model eğitim örnekleri oluşturun, model özellikleri oluşturmak için kullanıcı portrelerinin farklı tür özellikleri için çapraz kurallar ve uygulama portreleri tanımlayın, tüm örnekler için model özellikleri oluşturmak için tanımlanmış çapraz kuralları kullanın ve model eğitim örnekleri (model özellikleri, indirilip indirilmeyeceği) elde edin.

Adım 5: Model eğitimi, CARD algoritması, tahmin modelini elde etmek için model eğitim örnekleri üzerinde eğitilir.

Adım 6: Bir kullanıcı ve uygulama verilen model kullanımı, yukarıdaki yönteme göre kullanıcının kullanıcı portresini ve uygulamanın uygulama portresini oluşturur ve daha sonra model özelliklerini oluşturmak için tanımlanan çapraz özellik kurallarını kullanır ve tahmin edilen değeri elde etmek için model özelliklerini modele ikame eder.

Tencent'in en vicdanlı yazılımlarından biri olan QQ video 10. yıl dönümü güncellemesi
önceki
Plus, Mix, Note, Mate ve cep telefonu isimleri ne anlama geliyor?
Sonraki
M.2 SSD popülerleşmeden ne kadar uzakta? Gerçek burada!
Mi 8 ekran parmak izi versiyonu 200'den fazla düşüyor, şimdi en düşük fiyat 2299'a geldi
Çöpü temizlemek için hala bilgisayar görevlisini mi kullanıyorsunuz? Sadece 5M ile bir çöp temizleme yazılımını sizinle paylaşın
Samsung One UI kararlı bir sürüm başlattı. Sizin tarafınızdan desteklenen desteklenen 30 modelden herhangi biri var mı?
Loew ve Deschamps, "Devlerin Oturma Odası" nın konukları NetEase News Exclusive Secret
Apple sonunda figürünü bıraktı mı? Android için takas desteği
iPad mini 5 koruyucu kapağı ortaya çıktı! Apple'ın harika hamleler yaptığı ortaya çıktı
Bu yılki "Çilek" en rüzgarlı ve güneşli
Prius Racing Edition burada! Toyota'nın yakıt açısından en verimli hibrit modeli de dövüş tarzında oynuyor
"Aptal" olayı için Google araması şaşırtıcı değil, Google hakkında bilmediğiniz şeyleri sayın
Tek boynuzlu atlardan mevduat peşinde koşan on milyonlarca kullanıcıya kadar, ofo tamamen yenildi mi?
Pinduoduo böceği, siyah yün üreten partiyi "20 milyar tuzağa düşürdü" mü? Resmi cevaptan sonra yün
To Top