Sade İngilizce Apriori algoritması?


9

Apriori hakkında wiki makalesini okudum. Kuru erik ve Katıl adımını anlamada sorun yaşıyorum. Herkes bana Apriori algoritmasının basit terimlerle nasıl çalıştığını açıklayabilir mi (benim gibi Acemi'nin kolayca anlayabileceği şekilde)?

Birinin içinde yer alan adım adım süreci açıklaması iyi olacaktır.


Python uygulamamla ilgileniyor olabilirsiniz .
Martin Thoma

Yanıtlar:


11

Wikipedia makalesi özellikle etkileyici değildir. Bu slaytları daha yararlı bulabilirsiniz: 1 , 2 , 3 .

Her seviyede k, var k- sık (yeterli desteği olan) öğeler.

Bir sonraki aşamada, k+1- dikkate almanız gereken öğeler kümesi, alt kümelerinin her birinin sık olması (yeterli desteğe sahip) özelliğine sahip olmalıdır. Bu apriori özelliğidir : sık öğe kümesinin herhangi bir alt kümesi sık olmalıdır.

Yani eğer seviye 2'de {1,2}, {1,3}, {1,5} ve {3,5} yeterli desteği olan tek setlerdir, o zaman seviye 3'te bunları üretmek için birbirinize katılırsınız {1,2,3}, {1,2,5}, {1,3,5} ve {2,3,5} ama sadece düşünmen gerek {1,3,5} ayrıca: diğerlerinin her birinin yetersiz desteği olan alt kümeleri vardır (örneğin, {2,3} veya {2,5} ).


2

Apriori algoritması, veri madenciliğinde kullanılan bir ilişkilendirme kuralı madenciliği algoritmasıdır. Verilen işlem sayısı arasında sık sık öğe kümesini bulmak için kullanılır.

Temelde iki adımdan oluşur

  1. Kendinden Üyelik
  2. Budama

Bu adım k kez tekrarlanır, burada k öğe sayısıdır, son yinelemede k öğeleri içeren sık öğe kümeleri alırsınız.

Ayrıntılı bir örnekle çok basit bir açıklama için buraya bakın http://nikhilvithlani.blogspot.com/2012/03/apriori-algorithm-for-data-mining-made.html .

Herhangi bir karmaşık denklem olmadan basit bir açıklaması vardır.


2
Bu gönderi bildiriminden ayrıldım çünkü daha fazla açıklama yapmadan bir blog'a bağlantı vermek yerine vurgulamak istediğiniz ana noktaların bir özetini sunmak daha iyidir. Ayrıca, bu sitenin amacı, sarkan veya geçici bağlantılara asgari bağımlılığı olan belirli sorulara bilgili yanıtların bir koleksiyonunu oluşturmaktır. Dolayısıyla, yukarıdaki bağlantının 10 yıl içinde hala hayatta kalacağını garanti edemezseniz, diyelim ki, mevcut cevaptaki ana noktalarını özetlemenizi şiddetle tavsiye ederim.
chl

1

Apriori sade İngilizce.

Apriori, (k + 1) öğelerini keşfetmek için k-öğe kümelerinin kullanıldığı seviye-bilge arama olarak bilinen yinelemeli bir yaklaşım kullanır . İlk olarak, her öğe için sayımı biriktirmek üzere veritabanını tarayarak ve minimum desteği sağlayan öğeleri toplayarak sık sık 1 öğe kümesi bulunur . Elde edilen set L1 olarak gösterilir . Daha sonra L1, L3'ü bulmak için kullanılan sık 2 öğe kümesi olan L2'yi bulmak için kullanılır ve daha fazla k-öğe kümesi bulunamayana kadar devam eder. Her bir Lk'nin bulunması, veritabanının bir tam taranmasını gerektirir.

Son yinelemede , temel olarak ilişkilendirme kuralları olarak adlandırılan birçok k-öğe kümesiyle karşılaşacaksınız . Tüm olası kurallar kümesinden ilginç kurallar seçmek için destek ve güven gibi çeşitli kısıtlama önlemleri uygulanır.

Terimler ve Terminolojiler

  • 1 öğe kümesi, {a}, {b}, {c} anlamına gelir
  • 2 öğeli kümeler {a, b}, {d, d}, {a, c} anlamına gelir
  • K-öğeleri kümesi {i1, i2, i3, ... ik}, {j1, j2, j3, .... jk} anlamına gelir

Üyelik adımı: 1 öğeli, 2 öğeli kümeler oluşturmak için kendisiyle birleşmek için yapılır.

Budama adımı: birleşimden elde edilen sonuç kümesi minimum destek eşiği ile filtrelenir.

kardinalite seti: Prune adımından elde edilen set.

Destek = 'a' ve 'b' içeren toplam işlem sayısı / toplam işlem sayısı.

Destek => destek (a, b) => p (a U b)

Kendinden emin = 'a' ve 'b' içeren işlemlerin sayısı / 'a' içeren işlemlerin sayısı.

Kendinden emin => con (a, b) ==> P (b | a) koşullu olasılıktan başka bir şey değil.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.