• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
An efficient implementation of pattern growth approach
 

An efficient implementation of pattern growth approach

on

  • 320 views

 

Statistics

Views

Total Views
320
Views on SlideShare
320
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    An efficient implementation of pattern growth approach An efficient implementation of pattern growth approach Presentation Transcript

    • ESRANUR ÖĞRETMEN 080401040
    • Bu sunumda Pattern growth yaklaşımınn çeşitliyönleri incelenip, bu algoritma içinverimli stratejilere değinilecektir.FIM algoritmaları iki kategoride sınıflandırılabilir: Candidate generate-and-test approach Pattern growth approachİlk yaklaşımın eksiklikleri; Veritabanını çok kez tarama gerekliliği Çok fazla candidate itemset üretilmesi ihtiyacı İtemsetler çok büyük olduğunda subset kontrolünün maliyet gerektirmesi
    •  D: verilmiş bir transactional database, I:itemların kümesi olsun.I daki itemların herhangi bir kombinasyonuD de frequent olabilir ve FIM problemininarama uzayındandır.Arama uzayı sözlüksel sıralamada olabileceğigibi bir ağaç tarafından gösteriliyor olabilir. Bir itemset in candidate extensionları p iletanımlansın.
    • MMesela;I={a,b,c,d,e} için Figure 1 de ki aramauzayı ağacında "ac" nin candidate extensionları "d" ve "e" dir, "b"olamaz çünkü "b", "c" den önce gelmiştir.
    • Patterng growth yaklaşımı böl-yönet yönteminibenimser. Örneğin Figure 1 deki arama uzayı 5ayrık arama uzayına bölünebilir. a yı içeren itemsetler b yi içeren a yı içermeyen itemsetler c yi içeren a ve b yi içermeyen itemsetler d yi içeren a, b ve c yi içermeyen itemsetler yalnız e yi içeren itemsetlerBöylelikle database 5 kısıma bölünür ve her kısım“conditional database” olarak adlandırılır.
    • i iteminin conditional databaseine Dİ dersek, i yi içerentüm itemsetler başka bir bilgiye ihityaç olmaksızın Dİtarafından mining edilebilir. Her conditional databaseaynı prosedürü takip ederek recursive olarak bölünür.Pattern growth algoritmasının iki temel işlemi vardır. Frequent itemları saymak Yeni conditional databaseler oluşturmakYeni conditional databaselerin toplam sayısı ve her birconditional database in mining maliyeti bir Pattern growthalgoritmasının performansını etkileyen anahtarfaktörlerdir.
    • Arama uzayını böldüğümüzde, tüm itemlar aynısıralama ile sıralanırlar. Bu sıralamaya Item search sırasıdenilmektedir. Bir item ın yarı arama uzayı ondansonraki item ları içerir, sonrakileriyse içeremez.Literatürde iki item search sırası önemlidir. Statik sözdizimsel sıralama Dinamik artan frequency sıralamaİhtiyacımız olan daha küçük bir conditional databaseolduğundan, artan frequency sıralama yaparken enyüksek frequency li olanı öne yerleştiririz. Böyleliklefrequent extension çok büyük olmamış olur.
    • Conditional databaselerin saklanması için farklıveri yapıları önerilebilir. FP-tree ve AFOPT-tree gibialgoritmalar ağaç tabanlı yapıları, Hyperstructure gibialgoritmalar ise dizi tabanlı yapıları kullanır. Ağaç tabanlı yapılar maliyeti azaltabilirler, çünkü kopyalanmış işlemler bir araya getirilebilir ve farklı işlemler öne eklenerek paylaşabilir. Ancak dataset büyükse, maliyet yükselir. Dizi tabanlı yapılar az maliyet gerektirir. Ancak bu yapılarda farklı işlemler paylaşamazlar.Genel olarak, ağaç tabanlı yapıların dense(yoğun)databaselerde, dizi tabanlı yapılarınsa sparse(seyrek)databaselerde kullanımı uygundur.
    • Database çok küçük olmadığı müddetçe conditionaldatabase oluşturma oldukça maliyetlidir.Buna bir alternatif olarak sahte construction gösteriliryani, yüksek frequently li construction databaselerdeişlemleri gösteren pointerlar kullanmak.Buna rağmen sahte construction fiziksel constructionkadar etkili değildir. Artan frequent sıralı itemsetlerhızlıca alt construction databaseler yapabilir, bu sıraile birlikte kullanılığı zaman bu stratejinin kullanışlıolduğu görülmüştür.
    • Ağacın dolaşma maliyeti yukarıdan-aşağıya dolaşma stratejisi ileminimuma çekilebilir. FP-Tree de azalan frequent sıraya göre yapılır. Dolayısıyla FP-Tree aşağıdan yukarı dolaşma stratejisini kullanır. Ve FP-Tree her node da parent bağlantı ve node bağlantılarına sahiptir. AFOPT algoritma ise artan frequency kullanır, bu yüzden yukarıdan aşağıya dolaşma stratejisini benimsemiştir. Ve pointerlar eklemeye gerek yoktur.FP-Treenin burada avantajı azalan frequency sıra kullanarak öneekleme paylaşım ihtimalini artırması yönüyle AFOPT dan dahakompakt oluşudur. AFOPT tarafından benimsenen artan frequencysıra, ağaçtaki tek dallanmaları etkilemektedir. Bu problem AFOPT datek dallanmaları saklamak için dizi kullanımı ile hafifletilmiştir.
    •  Conditional database için 3 farklı yapı kullanılır; array, AFOPT-tree ve buckets Dinamik artan frequenti benimser. Conditional databaseler her levelda fiziksel olarak yapılanır.
    •  Buckets tekniği uygun ve farklı frequenty itemların sayısı 10 civarındayken etkilidir. Ağaç yapısı dense database de, dizi yapısı ise sparse database de verimli olur. Hangi yapıyı seçmemiz gerektiğini aşağıdaki parametreler, kullanarak belirleyebiliriz; Sadece top-bucket_size frequent itemları içeren itemsetler kullanılan bucketları sayar. Eğer minimum eşikdeğeri >tree_min_sup veya bütün frequent itemların ortalaması > tree_avg_sup ise geriye kalan tüm conditional databaseler AFOPT-Tree kullanarak gösterilir. Aksi halde sonraki tree_alphabet_size ın frequenti yüksek itemlarının conditional databaseleri AFOPT-Tree kullanarak gösterilir ve geriye kalan conditional databaselerse dizi kullanarak gösterilir.
    • Transactional database D nin ve minimum eşikdeğerininverildiği durumda, AFOPT algoritması tüm frequentitemsetleri mining etmek için, orijinal database i iki keretarar. İlk taramada, D deki tüm frequent itemlar, artan frequent sıralama içinde gruplandırılır ve F={i1,i2,…,im} şeklinde gösterilir. Diğer taramayı ise Dİj için her bir ij de conditional database yapılandırmak için yaparız. İkinci tarama esnasında, her bir t işlemindeki frequent i düşük olan itemlar kaldırılır ve geriye kalan itemlar Fdeki sıraya göre gruplandırılır. t işlemi, gruplandırmanın ardından t nin ilk item ı ij ise, Dİj nin içine alınır. Geriye kalan mining işlemleri sadece conditional databaselere uygulanır. Böylelikle orijinal database e ulaşmaya gerek kalmaz.
    • Dİj içinde bir t işlemi varsayalım, t nin içinde i1den sonraki item ij olsun, bu durumda t Dİj niniçine yerleştirilir. Bu adıma “push-right” denir.Itemları artan frequent sıralamaya göregruplandırmak her defasında küçük birconditional database in push-right edilmesinisağlar.