Öğrenme sınıflandırıcı sistemi - Learning classifier system

LCS kurallarının 3B işlevine yaklaşmayı öğrenen 2B görselleştirmesi. Her mavi elips, çözüm uzayının bir bölümünü kapsayan ayrı bir kuralı temsil eder. (Martin Butz'un izniyle XCSF'den alınan görüntülerden uyarlanmıştır)

Öğrenme sınıflandırıcı sistemleri veya LCS , bir keşif bileşenini (ör. Tipik olarak bir genetik algoritma ) bir öğrenme bileşeniyle ( denetimli öğrenme , pekiştirmeli öğrenme veya denetimsiz öğrenme gerçekleştiren ) birleştiren kural tabanlı makine öğrenimi yöntemlerinin bir paradigmasıdır . Öğrenme sınıflandırıcı sistemleri , tahminler yapmak için (örn. Davranış modelleme , sınıflandırma , veri madenciliği , regresyon , fonksiyon yaklaşımı veya oyun stratejisi ) bilgiyi topluca parçalı bir şekilde depolayan ve uygulayan bir dizi bağlama bağlı kuralı belirlemeye çalışır . Bu yaklaşım, karmaşık çözüm alanlarının daha küçük, daha basit parçalara bölünmesine izin verir .

Öğrenme sınıflandırıcı sistemlerinin arkasındaki temel kavramlar , yapay bir bilişsel sistem (yani yapay zeka ) oluşturmak için kural tabanlı aracılar kullanarak karmaşık uyarlanabilir sistemleri modelleme girişimlerinden geldi .

Metodoloji

Belirli bir öğrenme sınıflandırıcı sisteminin mimarisi ve bileşenleri oldukça değişken olabilir. LCS'yi birbiriyle etkileşim halindeki birkaç bileşenden oluşan bir makine olarak düşünmek yararlıdır. Belirli bir problem alanının taleplerine (algoritmik yapı blokları gibi) uymak veya algoritmayı birçok farklı problem alanında işlev görecek kadar esnek hale getirmek için bileşenler eklenebilir veya çıkarılabilir veya mevcut bileşenler değiştirilebilir / değiştirilebilir. Sonuç olarak, LCS paradigması, makine öğrenimi gerektiren birçok sorun alanına esnek bir şekilde uygulanabilir . LCS uygulamaları arasındaki ana bölümler şu şekildedir: (1) Michigan tarzı mimari ile Pittsburgh tarzı mimari, (2) pekiştirmeli öğrenmeye karşı denetimli öğrenim , (3) artımlı öğrenmeye karşı toplu öğrenmeye, (4) çevrimiçi öğrenmeye karşı . çevrimdışı öğrenme iyi aksiyon haritalama vs, (5) mukavemet tabanlı spor vs doğruluğu tabanlı spor, ve (6) komple eylem haritalama. Bu bölümler mutlaka birbirini dışlamaz. Örneğin, en iyi bilinen ve en iyi çalışılmış LCS algoritması olan XCS, Michigan tarzıdır, pekiştirmeli öğrenme için tasarlanmıştır, ancak aynı zamanda denetimli öğrenmeyi de gerçekleştirebilir, çevrimiçi veya çevrimdışı olabilen, doğruluk temelli uygunluk uygulayan ve arar. tam bir eylem eşlemesi oluşturmak için.

Genel bir LCS algoritmasının unsurları

Denetimli öğrenmeyi gerçekleştiren genel Michigan tarzı bir öğrenme sınıflandırıcı sistemi öğrenme döngüsünü gösteren adım adım bir şematik.

LCS'nin belirli bir yöntemden ziyade genetik tabanlı makine öğrenimi için bir paradigma olduğu akılda tutularak, aşağıda genel, modern (yani XCS sonrası) LCS algoritmasının temel unsurları özetlenmektedir. Basit olması için, denetimli öğrenimle Michigan tarzı mimariye odaklanalım. Bu tür genel LCS'de yer alan ardışık adımları düzenleyen sağdaki resimlere bakın.

Çevre

Çevre, bir LCS'nin öğrendiği verilerin kaynağıdır. Çevrimdışı, sonlu bir eğitim veri kümesi (bir veri madenciliği , sınıflandırma veya regresyon probleminin özelliği) veya canlı eğitim örneklerinin çevrimiçi bir sıralı akışı olabilir. Her eğitim örneğinin bir dizi özelliği ( öznitelikler veya bağımsız değişkenler olarak da adlandırılır ) ve tek bir ilgi noktası (aynı zamanda sınıf , eylem , fenotip , tahmin veya bağımlı değişken olarak da adlandırılır ) içerdiği varsayılır . LCS öğreniminin bir kısmı özellik seçimini içerebilir , bu nedenle eğitim verilerindeki tüm özelliklerin bilgilendirici olması gerekmez. Bir örneğin özellik değerleri grubu yaygın olarak ifade edilir durum . Basit olması için Boolean / binary özellikleri ve Boolean / binary sınıfıyla örnek bir problem alanı varsayalım . Michigan tarzı sistemler için, ortamdan bir örnek her bir öğrenme döngüsü için eğitilir (yani artımlı öğrenme). Pittsburgh tarzı sistemler, kural kümelerinin her bir yinelemenin eğitim verilerinin çoğunda veya tamamında değerlendirildiği toplu öğrenme gerçekleştirir.

Kural / sınıflandırıcı / nüfus

Kural, durum değerleri ile bazı tahminler arasındaki bağlama bağlı bir ilişkidir. Kurallar tipik olarak bir {IF: THEN} ifadesi biçimini alır (ör. { IF 'koşul' THEN 'eylem'} veya daha spesifik bir örnek olarak, {IF 'red' AND 'sekizgen' THEN 'dur işareti'} ). Hem LCS'de hem de kurala dayalı makine öğreniminde kritik bir kavram, tek bir kuralın kendi başına bir model olmamasıdır, çünkü kural yalnızca koşulları karşılandığında uygulanabilir. Bir kuralı, çözüm uzayının "yerel modeli" olarak düşünün.

Kurallar, farklı veri türlerini (örneğin ikili, ayrık değerli, sıralı, sürekli değerli) işlemek için birçok farklı şekilde temsil edilebilir. Verilen ikili veri LCS, geleneksel olarak üçlü bir kural gösterimi uygular (yani kurallar, verilerdeki her özellik için bir 0, 1 veya '#' içerebilir). 'Umursama' sembolü (yani '#'), kuralların koşullarında kurallara izin veren bir joker karakter görevi görür ve bir bütün olarak sistem, özellikler ile tahmin edilecek hedef uç nokta arasındaki ilişkileri genelleştirir. Şu kuralı düşünün (# 1 ### 0 ~ 1) (yani koşul ~ eylem). Bu kural şu ​​şekilde yorumlanabilir: Eğer ikinci özellik = 1 VE altıncı özellik = 0 İSE sınıf tahmini = 1. İkinci ve altıncı özelliklerin bu kuralda belirtildiğini, diğerlerinin genelleştirildiğini söyleyebiliriz. Bu kural ve ilgili tahmin, yalnızca kuralın durumu örnek tarafından karşılandığında bir durum için geçerlidir. Bu daha yaygın olarak eşleştirme olarak adlandırılır. Michigan tarzı LCS'de, her kuralın kendi uygunluğunun yanı sıra, var olan bu kuralın kopya sayısını (yani sayısallığı ), kuralın yaşını tanımlayabilen bir dizi başka kural-parametresi vardır. doğruluğu veya ödül tahminlerinin doğruluğu ve diğer açıklayıcı veya deneysel istatistikler. Bir kural, parametreleriyle birlikte genellikle sınıflandırıcı olarak adlandırılır . Michigan tarzı sistemlerde sınıflandırıcılar, kullanıcı tanımlı maksimum sayıda sınıflandırıcıya sahip bir popülasyon [P] içinde yer alır. Çoğu stokastik arama algoritmasının aksine (örneğin evrimsel algoritmalar ), LCS popülasyonları boş olarak başlar (yani bir kural popülasyonunu rastgele başlatmaya gerek yoktur). Bunun yerine sınıflandırıcılar, başlangıçta bir kapsama mekanizmasıyla popülasyona tanıtılacaktır.

Herhangi bir LCS'de, eğitilmiş model, herhangi bir tek kural / sınıflandırıcıdan ziyade bir dizi kural / sınıflandırıcıdır. Michigan tarzı LCS'de, tüm eğitimli (ve isteğe bağlı olarak sıkıştırılmış) sınıflandırıcı popülasyonu tahmin modelini oluşturur.

Eşleştirme

Bir LCS'nin en kritik ve çoğu zaman zaman alan unsurlarından biri eşleştirme sürecidir. Bir LCS öğrenme döngüsünün ilk adımı, ortamdan tek bir eğitim örneğini alır ve onu eşleştirmenin gerçekleştiği [P] 'ye geçirir. İkinci adımda, [P] 'deki her kural artık hangi kuralların eşleştiğini görmek için eğitim örneğiyle karşılaştırılır (yani mevcut örnekle bağlamsal olarak ilgilidir). Üçüncü adımda, tüm eşleşen kurallar bir eşleşme kümesine [M] taşınır . Kural koşulunda belirtilen tüm özellik değerleri, eğitim örneğindeki karşılık gelen özellik değerine eşitse, bir kural bir eğitim örneğiyle eşleşir. Örneğin, eğitim örneğinin (001001 ~ 0) olduğunu varsayarsak, bu kurallar eşleşir: (### 0 ## ~ 0), (00 ### 1 ~ 0), (# 01001 ~ 1), ancak bu kurallar (1 ##### ~ 0), (000 ## 1 ~ 0), (# 0 # 1 # 0 ~ 1) olmaz. Eşleşmede, kural tarafından belirtilen bitiş noktası / eylemin dikkate alınmadığına dikkat edin. Sonuç olarak, eşleşme kümesi, çakışan eylemler öneren sınıflandırıcılar içerebilir. Dördüncü adımda, denetimli öğrenme gerçekleştirdiğimiz için, [M] doğru bir set [C] ve yanlış bir set [I] olmak üzere ikiye ayrılır. Bir eşleştirme kuralı, doğru eylemi öneriyorsa (eğitim vakasının bilinen eylemine dayalı olarak) doğru kümeye gider, aksi takdirde [I] 'e gider. Pekiştirmeli öğrenme LCS'de, bunun yerine burada bir eylem seti [A] oluşturulacaktır, çünkü doğru eylem bilinmemektedir.

Kaplama

Öğrenme döngüsünün bu noktasında, hiçbir sınıflandırıcı [M] veya [C] olarak sınıflandırmadıysa (popülasyon boş başladığında olduğu gibi), örtme mekanizması uygulanır (beşinci adım). Kaplama, bir çevrimiçi akıllı nüfus başlatma biçimidir . Rastgele örtmek, mevcut eğitim örneğiyle eşleşen bir kural oluşturur (ve denetimli öğrenme durumunda, bu kural da doğru eylemle oluşturulur. Eğitim örneğinin (001001 ~ 0) olduğunu varsayarsak, aşağıdaki kurallardan herhangi birini oluşturabilir: (# 0 # 0 ## ~ 0), (001001 ~ 0), (# 010 ## ~ 0). Kapsama, yalnızca her bir öğrenme döngüsünün [C] 'de en az bir doğru, eşleşen kural olmasını sağlamaz, aynı zamanda popülasyonda başlatılan herhangi bir kural en az bir eğitim örneğiyle eşleşecektir. Bu, LCS'nin herhangi bir eğitim örneğiyle eşleşmeyen kuralların arama alanını keşfetmesini engeller.

Parametre güncellemeleri / kredi tahsisi / öğrenme

Altıncı adımda, [M] 'deki herhangi bir kuralın kural parametreleri, mevcut eğitim örneğinden kazanılan yeni deneyimi yansıtacak şekilde güncellenir. LCS algoritmasına bağlı olarak, bu adımda bir dizi güncelleme gerçekleştirilebilir. Denetimli öğrenme için, bir kuralın doğruluğunu / hatasını basitçe güncelleyebiliriz. Kural doğruluğu / hatası, model doğruluğundan / hatasından farklıdır, çünkü tüm eğitim verileri üzerinden değil, yalnızca eşleştiği tüm örnekler üzerinden hesaplanır. Kural doğruluğu, kuralın doğru kümede [C] bulunma sayısının bir eşleşme kümesindeki [M] sayısına bölünmesiyle hesaplanır. Kural doğruluğu 'yerel doğruluk' olarak düşünülebilir. Kural uygunluğu da burada güncellenir ve genellikle kural doğruluğunun bir işlevi olarak hesaplanır. Fitness kavramı doğrudan klasik genetik algoritmalardan alınmıştır . Kredi tahsisi ve öğrenmeyi gerçekleştirmek için LCS'nin parametreleri nasıl güncellediğine dair birçok varyasyon olduğunu unutmayın.

Eksiltme

Yedinci aşamada, bir kapsama mekanizma, genellikle bir uygulanır. Subsumption, problem alanının gereksiz kısımlarını kapsayan sınıflandırıcıları birleştiren açık bir genelleme mekanizmasıdır. İçerme sınıflandırıcı, dahil edilen sınıflandırıcıyı etkin bir şekilde soğurur (ve sayısallığı arttırılır). Bu, yalnızca, sınıflandırıcı daha genel, aynı doğrulukta ve kapsadığı sınıflandırıcının tüm sorun alanını kapsadığında gerçekleşebilir.

Kural keşfi / genetik algoritma

Sekizinci adımda, LCS , uygunluğa (en uygun olanın hayatta kalması) dayalı olarak iki ana sınıflandırıcı seçecek oldukça elitist bir genetik algoritma (GA) kullanır . Ebeveynler, tipik olarak turnuva seçimi kullanılarak [C] 'den seçilir . Bazı sistemler rulet çarkı seçimini veya deterministik seçimi uygulamıştır ve [P] - panmiktik seçimden veya [M] 'den farklı şekilde seçilmiş ana kurallara sahiptir. Crossover ve mutasyon operatörleri artık iki yeni yavru kuralı oluşturmak için uygulanıyor. Bu noktada, hem ebeveyn hem de yavru kuralları [P] 'ye döndürülür. LCS genetik algoritması , her öğrenme yinelemesinden bu yana, popülasyonun büyük çoğunluğu korunduğu için son derece seçkin. Kural keşfi, alternatif olarak , dağıtım algoritmasının tahmini gibi başka bir yöntemle gerçekleştirilebilir , ancak bir GA, en yaygın yaklaşımdır. GA gibi evrimsel algoritmalar, LCS'yi stokastik bir algoritma yapan stokastik bir arama kullanır. LCS, arama alanını akıllıca keşfetmeye çalışır, ancak kapsamlı bir kural kombinasyonları araması yapmaz ve optimum bir çözüme yaklaşması garanti edilmez.

Silme

Genel bir LCS öğrenme döngüsünün son adımı, maksimum popülasyon boyutunu korumaktır. Silme mekanizması, silmek için sınıflandırıcıları seçecektir (genellikle rulet çarkı seçimini kullanır). Bir sınıflandırıcının silinmek üzere seçilme olasılığı, uygunluğuyla ters orantılıdır. Silinmek üzere bir sınıflandırıcı seçildiğinde, sayısallık parametresi bir azaltılır. Bir sınıflandırıcının sayısallığı sıfıra indirildiğinde, popülasyondan tamamen çıkarılır.

Eğitim

LCS, bazı kullanıcı tanımlı eğitim yinelemeleri için veya bazı kullanıcı tanımlı sonlandırma kriterleri karşılanana kadar bu adımlar arasında tekrar tekrar döngü yapacaktır. Çevrimiçi öğrenme için LCS, ortamdan her yinelemede tamamen yeni bir eğitim örneği alacaktır. Çevrimdışı öğrenme için, LCS, sınırlı bir eğitim veri kümesi aracılığıyla yineleme yapacaktır. Veri kümesindeki son örneğe ulaştığında, ilk örneğe geri dönecek ve veri kümesinde tekrar dönecektir.

Kural sıkıştırma

Eğitim tamamlandığında, kural popülasyonu kaçınılmaz olarak bazı zayıf, gereksiz ve deneyimsiz kuralları içerecektir. İşlem sonrası adım olarak bir kural sıkıştırma veya yoğunlaştırma buluşsal yöntemi uygulamak yaygındır . Ortaya çıkan bu sıkıştırılmış kural popülasyonu, bir tahmin modeli olarak uygulanmaya (örneğin, test örneklerinde tahminlerde bulunma) ve / veya bilgi keşfi için yorumlanmaya hazırdır .

Tahmin

Kural sıkıştırması uygulanmış olsun ya da olmasın, bir LCS algoritmasının çıktısı, daha önce görülmemiş örnekler üzerinde tahminler yapmak için uygulanabilen bir sınıflandırıcılar popülasyonudur. Tahmin mekanizması, denetimli LCS öğrenme döngüsünün bir parçası değildir, ancak pekiştirmeli öğrenme LCS öğrenme döngüsünde önemli bir rol oynayacaktır. Şimdilik, tahmin mekanizmasının test verilerini test etmek için nasıl uygulanabileceğini düşünüyoruz. Tahmin yaparken, LCS öğrenme bileşenleri devre dışı bırakılır, böylece popülasyon gelen test verilerinden öğrenmeye devam etmez. Her zamanki gibi bir eşleşme kümesinin [M] oluşturulduğu [P] 'ye bir test örneği geçirilir. Bu noktada eşleşme seti farklı bir şekilde bir tahmin dizisine aktarılır. Maç setindeki kurallar farklı eylemleri tahmin edebilir, bu nedenle bir oylama planı uygulanır. Basit bir oylama şemasında, eşleşen kurallardan en güçlü destekleyici 'oyları' alan eylem kazanır ve seçilen tahmin haline gelir. Tüm kurallar eşit oy hakkına sahip değildir. Daha ziyade, tek bir kural için verilen oyların gücü, genellikle onun sayılığı ve uygunluğuyla orantılıdır. Bu oylama şeması ve LCS'nin mağaza bilgilerinin doğası, LCS algoritmalarının dolaylı olarak toplu öğreniciler olduğunu göstermektedir .

Yorumlama

Bireysel LCS kuralları tipik olarak insan tarafından okunabilir IF: THEN ifadesidir. LCS tahmin modelini oluşturan kurallar, farklı kural parametrelerine göre sıralanabilir ve manuel olarak incelenebilir. İstatistiksel ve grafiksel kullanarak bilgi keşfine rehberlik edecek küresel stratejiler de önerilmiştir. Yapay sinir ağları , rastgele ormanlar veya genetik programlama gibi diğer gelişmiş makine öğrenimi yaklaşımlarıyla ilgili olarak , öğrenme sınıflandırıcı sistemleri özellikle yorumlanabilir çözümler gerektiren problemler için çok uygundur.

Tarih

İlk yıllar

John Henry Holland , 1975'te çığır açan "Doğal ve Yapay Sistemlerde Adaptasyon" adlı kitabı ve Holland'ın şema teoremini resmileştirmesiyle genetik algoritmaları (GA) popülerleştiren çalışmasıyla tanınıyordu . 1976'da Holland, GA kavramının bir uzantısını "bilişsel sistem" olarak adlandırdığı şeye kavramsallaştırdı ve "Uyarlanabilir Algoritmalara Dayalı Bilişsel Sistemler" adlı makalede ilk öğrenen sınıflandırma sistemi olarak bilinen şeyin ilk ayrıntılı açıklamasını sağladı. Bilişsel Sistem Bir (CS-1) olarak adlandırılan bu ilk sistem, insan tarafından okunabilir kuralların bir popülasyonunu kullanarak bilinmeyen temel dinamiklere sahip gerçek bir sistemi (yani ortamı ) modellemek için tasarlanmış bir modelleme aracı olarak tasarlandı . Amaç, bir dizi kuralın çevrim içi makine öğrenimini gerçekleştirerek , sık olmayan kazanç / ödüle (örn. Pekiştirmeli öğrenme) dayalı ortama uyum sağlaması ve gerçek sistemle eşleşen bir davranış oluşturmak için bu kuralları uygulayabilmesiydi. Bu erken, iddialı uygulama daha sonra aşırı derecede karmaşık olarak kabul edildi ve tutarsız sonuçlar doğurdu.

1980'den itibaren Kenneth de Jong ve öğrencisi Stephen Smith , öğrenmenin çevrimiçi bir uyarlama sürecinden ziyade çevrimdışı bir optimizasyon süreci olarak görüldüğü (LS-1) ile kural tabanlı makine öğrenimine farklı bir yaklaşım benimsedi . Bu yeni yaklaşım, standart bir genetik algoritmaya daha çok benziyordu, ancak bağımsız kurallar dizisi geliştirdi. O zamandan beri, Michigan Üniversitesi'nde Holland tarafından sunulan çevrimiçi öğrenme çerçevesinden esinlenen LCS yöntemlerine Michigan tarzı LCS , Pittsburgh Üniversitesi'nde Smith ve De Jong'dan esinlenenler ise Pittsburgh tarzı olarak anılıyor. LCS . 1986'da Hollanda, önümüzdeki on yıl için standart Michigan tarzı LCS olarak kabul edilecek şeyi geliştirdi.

LCS ilk günlerinde ortaya çıkan diğer önemli kavramlar dahil araştırmalara (1) resmileştirilmesi kova tugay algoritması kredi atama / öğrenme (BBA), (2) 'çevresel niş' bir ortak gelen ana kurallarının seçimi (yani maç grubu yerine her gelen daha [M]) nüfus [P], (3) örten bir şekilde, ilk olarak ortaya oluşturmak , (4), bir kayıt altına operatör eylem grubu , [A], (5) basitleştirilmiş bir algoritma mimarisi 6 ( ) güce dayalı uygunluk , (7) tek adımlı veya denetimli öğrenme problemlerinin değerlendirilmesi ve doğru setin tanıtılması [C], (8) doğruluk temelli uygunluk (9) bulanık mantığın LCS ile kombinasyonu (daha sonra bir soy olurken bulanık LCS algoritmaları (teşvik 10)), uzun eylem zincirleri ve varsayılan hiyerarşileri inceleyerek çok adımlı problemleri üzerinde performansını artırmak için, (11) latent öğrenmeyi daha sonra yeni bir şube ilham ( beklenti sınıflandırıcı sistemleri ,) (ACS) ve (12) Q-öğrenme benzeri ilk kredi atamasının tanıtımı ent tekniği. Bu kavramların tümü modern LCS algoritmalarında uygulanmasa da, her biri LCS paradigmasının gelişiminde dönüm noktasıydı.

Devrim

Sınıflandırma sistemlerini öğrenmeye olan ilgi, 1990'ların ortasında büyük ölçüde iki olay nedeniyle yeniden canlandı; pekiştirmeli öğrenme için Q-Learning algoritmasının geliştirilmesi ve Stewart Wilson tarafından önemli ölçüde basitleştirilmiş Michigan tarzı LCS mimarilerinin tanıtımı. Wilson'un Sıfır Seviye Sınıflandırma Sistemi (ZCS) , Hollands standart LCS uygulamasına dayalı olarak algoritmik anlaşılabilirliği artırmaya odaklandı. Bu, kısmen, orijinal BBA kredi tahsisi için gerekli olan kural-teklif verme ve dahili mesaj listesinin kaldırılması ve bunun bir hibrit BBA / Q-Öğrenme stratejisi ile değiştirilmesiyle yapılmıştır. ZCS, çok daha basit bir LCS mimarisinin, orijinal, daha karmaşık uygulamalar kadar iyi performans gösterebileceğini gösterdi. Bununla birlikte, ZCS, aşırı genel sınıflandırıcıların çoğalması dahil olmak üzere hala performans dezavantajlarından muzdaripti.

1995 yılında Wilson, XCS sınıflandırıcı sistemini tanıttığı "Doğruluğa dayalı sınıflandırıcı uygunluğu" başlıklı dönüm noktası niteliğindeki makalesini yayınladı . XCS, ZCS'nin basitleştirilmiş mimarisini aldı ve doğruluk temelli bir uygunluk, bir niş GA (eylem setinde [A] hareket eden), kapsam adı verilen açık bir genelleme mekanizması ve Q-Learning kredi atamasının bir uyarlamasını ekledi . XCS iyi etkileyici sorun esnekliği olarak (her ikisi de gerçekleştirmek mümkün olduğunca doğru ve maksimum genel sınıflandırıcılar gelişen süre optimum performansa ulaşmak kabiliyeti ile yaygınlaşmıştır takviye öğrenme ve denetimli öğrenme ). XCS daha sonra en çok bilinen ve en çok çalışılan LCS algoritması oldu ve yeni bir doğruluk tabanlı LCS ailesi tanımladı . ZCS alternatif olarak güç temelli LCS ile eşanlamlı hale geldi . XCS de önemlidir, çünkü LCS ile pekiştirmeli öğrenme alanı arasındaki boşluğu başarıyla kapatmıştır . XCS'nin başarısının ardından, LCS daha sonra bir genelleme yeteneği ile donatılmış takviye öğrenme sistemleri olarak tanımlandı. Pekiştirmeli öğrenme, tipik olarak, durum / eylem alanının tam bir temsilini ortaya koyan bir değer işlevini öğrenmeye çalışır. Benzer şekilde, XCS'nin tasarımı, ortamdaki yüksek kazançlı nişlere odaklanmak yerine (güç temelli LCS'de olduğu gibi), onu sorun alanının her şeyi kapsayan ve doğru bir temsilini (yani tam bir harita ) oluşturmaya yönlendirir. Kavramsal olarak, eksiksiz haritalar yalnızca ne yapmanız gerektiğini veya neyin doğru olduğunu değil, aynı zamanda ne yapmamanız gerektiğini veya neyin yanlış olduğunu da gösterir. Farklı olarak, güce dayalı LCS'lerin çoğu veya özel olarak denetlenen öğrenim LCS'leri, bir en iyi eylem haritası (veya kısmi bir harita ) biçiminde bir dizi verimli genelleme arar . Güç ve doğruluğa dayalı uygunluk ve tam ve en iyi eylem haritaları arasındaki karşılaştırmalar o zamandan beri daha ayrıntılı olarak incelenmiştir.

XCS'nin ardından

XCS, tamamen yeni nesil LCS algoritmaları ve uygulamalarının geliştirilmesine ilham verdi. 1995'te Congdon , LCS'yi gerçek dünyadaki epidemiyolojik araştırmalara uygulayan ilk kişi oldu, ardından Holmes , epidemiyolojik sınıflandırma için BOOLE ++ , EpiCS ve daha sonra EpiXCS'yi geliştirdi . Bu erken çalışmalar, daha sonra biyoinformatik uygulamalarla özetlenen karmaşık ve büyük ölçekli veri madenciliği görevlerine LCS algoritmalarını uygulamaya yönelik ilgi uyandırdı . 1998'de Stolzmann , klasik 'koşul-eylem' temsilinden ziyade 'koşul-eylem-etki şeklindeki kuralları içeren ileriye yönelik sınıflandırıcı sistemleri (ACS) tanıttı . ACS, bir ortamdaki tüm olası durumlarda bir eylemin algısal sonuçlarını tahmin etmek için tasarlanmıştır. Başka bir deyişle, sistem, yalnızca belirli bir durumda ne yapılacağını belirleyen bir model geliştirmez, aynı zamanda belirli bir eylem gerçekleştirildikten sonra ne olacağına dair bilgi sağlar. Bu LCS algoritmaları ailesi, çok adımlı problemlere, planlamaya, öğrenmeyi hızlandırmaya veya algısal örtüşmeyi netleştirmeye (yani aynı gözlemin farklı durumlarda elde edildiği ancak farklı eylemler gerektirdiği durumlarda) en uygunudur. Butz daha sonra, orijinal yöntemde bir dizi iyileştirme geliştiren bu öngörülü LCS ailesini takip etti. 2002'de Wilson , fonksiyon yaklaşımı gerçekleştirmek için hesaplanmış bir eylem ekleyerek XCSF'yi tanıttı . 2003 yılında, Bernado-Mansilla , XCS algoritmasını denetimli öğrenme , tek adımlı problemler ve en iyi eylem setini oluşturma görevi için özelleştiren bir Denetimli Sınıflandırma Sistemi (UCS) geliştirdi . UCS , pek çok takviye öğrencisinin özelliği olan basit, doğruluk temelli kural uygunluğunun yanı sıra keşfetme / yararlanma öğrenme aşamaları lehine pekiştirmeli öğrenme stratejisini kaldırdı . Bull , LCS çerçevesinin daha iyi bir teorik anlayışını geliştirmek için basit bir doğruluk tabanlı LCS (YCS) ve basit bir güç tabanlı LCS Minimal Sınıflandırıcı Sistemi (MCS) tanıttı . Bacardit tanıtıldı GAssist ve BioHEL için tasarlanmış Pittsburgh tarzı LCSs veri madenciliği ve ölçeklenebilirlik büyük veri setleri için biyoinformatik uygulamaları. 2008 yılında Drugowitsch, LCS algoritmalarının bazı teorik incelemelerini içeren "Design and Analysis of Learning Classifier Systems" adlı kitabı yayınladı. Butz , XCSF için bir GUI içindeki ilk kuralı çevrimiçi öğrenme görselleştirmesini tanıttı (bu sayfanın üst kısmındaki resme bakın). Urbanowicz, UCS çerçevesini genişletti ve gürültülü problem alanlarında (örn. Epidemiyoloji ve biyoinformatik) denetimli öğrenme için açıkça tasarlanmış ExSTraCS'yi tanıttı . ExSTraCS entegre (1) verilerdeki önemli özelliklere yönelik kapsama ve genetik algoritmayı yönlendirmek için uzman bilgisi, (2) daha verimli öğrenmeye ve heterojen veri modellerinin karakterizasyonuna olanak tanıyan nitelik izleme olarak adlandırılan bir uzun vadeli bellek biçimi ve (3) Bacardit'in karışık kesikli-sürekli öznitelik listesi gösterimine benzer esnek bir kural gösterimi. Hem Bacardit hem de Urbanowicz, LCS kurallarını yorumlamak ve veri madenciliği için bilgi keşfi gerçekleştirmek için istatistiksel ve görselleştirme stratejilerini araştırdı. Browne ve Iqbal, yapı bloklarını kod parçaları şeklinde yeniden kullanma kavramını araştırdılar ve 135 bit çoklayıcı kıyaslama problemini ilk önce daha basit çoklayıcı problemlerinden yararlı yapı bloklarını öğrenerek çözen ilk kişiler oldular. ExSTraCS 2.0 daha sonra Michigan tarzı LCS ölçeklenebilirliğini geliştirmek için tanıtıldı ve 135 bit çoklayıcı kıyaslama problemini ilk kez doğrudan başarıyla çözdü. N-bit çoklayıcı problemi oldukça epistatik ve heterojendir , bu da onu çok zorlu bir makine öğrenimi görevi haline getirir.

Varyantlar

Michigan Tarzı Öğrenme Sınıflandırıcı Sistem

Michigan Tarzı LCS'ler, genetik algoritmanın bireysel kurallar düzeyinde çalıştığı ve çözümün tüm kural popülasyonu tarafından temsil edildiği bir kurallar topluluğu ile karakterize edilir. Michigan tarzı sistemler ayrıca, hem pekiştirmeli öğrenme hem de denetimli öğrenmenin yanı sıra hem çevrimiçi hem de çevrimdışı öğrenmeyi gerçekleştirmelerine olanak tanıyan aşamalı olarak öğrenirler. Michigan tarzı sistemler, daha fazla sayıda sorun alanına uygulanabilir olma avantajına ve artımlı öğrenmenin benzersiz faydalarına sahiptir.

Pittsburgh Tarzı Öğrenme Sınıflandırıcı Sistemi

Pittsburgh Tarzı LCS'ler, her bir kural kümesinin potansiyel bir çözüm olduğu değişken uzunluklu kural kümelerinden oluşan bir popülasyonla karakterize edilir. Genetik algoritma tipik olarak tüm bir kural kümesi düzeyinde çalışır. Pittsburgh tarzı sistemler, sıralı kural listelerini benzersiz bir şekilde geliştirebilir ve varsayılan bir kuralı kullanabilir. Bu sistemler, daha küçük kural kümelerini tanımlama doğal avantajına sahiptir, bu da bu sistemleri manuel kural incelemesine göre daha yorumlanabilir hale getirir.

Hibrit sistemler

Her iki sistemin temel güçlerini birleştirmeyi amaçlayan sistemler de önerilmiştir.

Avantajlar

  • Uyarlanabilir: Çevrimiçi öğrenme durumunda değişen bir ortama alışabilirler.
  • Modelden bağımsız: Çevre veya veri içindeki ilişki örüntüleri hakkında sınırlı varsayımlarda bulunurlar.
    • Karmaşık, epistatik, heterojen veya dağıtılmış temel kalıpları, önceki bilgilere dayanmadan modelleyebilirler.
    • Verilerdeki tahmine dayalı ve tahmine dayalı olmayan özelliklerin sayısı hakkında hiçbir varsayımda bulunmazlar.
  • Topluluk Öğrenci: Evrensel olarak bir tahmin sağlayan belirli bir örneğe tek bir model uygulanmaz. Bunun yerine, alakalı ve çoğu zaman birbiriyle çelişen kurallar dizisi, belirsiz bir tahmin olarak yorumlanabilecek bir 'oylamaya' katkıda bulunur.
  • Stokastik Öğrenci: Belirleyici olmayan öğrenme, deterministik veya kapsamlı öğrenmenin zorlu hale geldiği büyük ölçekli veya yüksek karmaşıklık problemlerinde avantajlıdır.
  • Örtük Olarak Çok Amaçlı: Kurallar, maksimum genelliği / basitliği teşvik eden örtük ve açık baskılarla doğruluğa doğru gelişir. Bu örtük genelleme baskısı LCS'ye özgüdür. Etkili bir şekilde, daha genel kurallar, maç setlerinde daha sık görünecek. Buna karşılık, ebeveyn olarak seçilmek için daha sık bir fırsata sahip olurlar ve daha genellerini (genomlarını) yavru kurallarına aktarırlar.
  • Yorumlanabilir: Veri madenciliği ve bilgi keşfi açısından bireysel LCS kuralları mantıklıdır ve insan tarafından yorumlanabilir IF: THEN ifadeleri haline getirilebilir. Önemli özellikleri ve bir bütün olarak kural popülasyonundan ilişki kalıplarını tanımlayan küresel bilgi keşfine izin vermek için etkili stratejiler de tanıtıldı.
  • Esnek uygulama
    • Tek veya çok adımlı sorunlar
    • Denetimli, Takviye Edilmiş veya Denetimsiz Öğrenme
    • İkili Sınıf ve Çok Sınıflı Sınıflandırma
    • Regresyon
    • Ayrık veya sürekli özellikler (veya her iki türün bazı karışımları)
    • Temiz veya gürültülü sorunlu alanlar
    • Dengeli veya dengesiz veri kümeleri.
    • Eksik verileri barındırır (ör. Eğitim örneklerinde eksik özellik değerleri)

Dezavantajları

  • Sınırlı Yazılım Kullanılabilirliği: Sınırlı sayıda açık kaynak, erişilebilir LCS uygulaması vardır ve bunlardan daha da azı kullanıcı dostu veya makine öğrenimi uygulayıcıları için erişilebilir olacak şekilde tasarlanmıştır.
  • Yorum: LCS algoritmaları, bazı ileri düzey makine öğrenicilerinden kesinlikle daha yorumlanabilir olsa da, kullanıcılar bir dizi kuralı (bazen LCS modelini anlamak için büyük kurallar kümesini) yorumlamalıdır. Kural sıkıştırma yöntemleri ve yorumlama stratejileri, aktif bir araştırma alanı olmaya devam etmektedir.
  • Teori / Yakınsama Kanıtları: LCS algoritmalarının arkasında nispeten küçük bir teorik çalışma vardır. Bu, muhtemelen göreceli algoritmik karmaşıklıklarından (birkaç etkileşimli bileşen uygulayarak) ve stokastik yapılarından kaynaklanmaktadır.
  • Aşırı uyum: Herhangi bir makine öğrenicisi gibi, LCS de örtük ve açık genelleme baskılarına rağmen aşırı uyum sorunu yaşayabilir .
  • Çalıştırma Parametreleri: LCS'lerin genellikle dikkate alınması / optimize edilmesi gereken birçok çalıştırma parametresi vardır. Tipik olarak, iki kritik parametre dışında çoğu parametre, topluluk tarafından belirlenen varsayılan değerlere bırakılabilir: Maksimum kural doldurma boyutu ve maksimum öğrenme yineleme sayısı. Bu parametrelerin optimize edilmesi muhtemelen çok soruna bağlı olacaktır.
  • Ünlü: LCS algoritmaları, yaşlarına rağmen, makine öğrenimi topluluklarında bile yaygın olarak bilinmemektedir. Sonuç olarak, LCS algoritmaları diğer yerleşik makine öğrenimi yaklaşımlarına kıyasla nadiren dikkate alınır. Bu muhtemelen aşağıdaki faktörlerden kaynaklanmaktadır: (1) LCS nispeten karmaşık bir algoritmik yaklaşımdır, (2) LCS, kurala dayalı modelleme, hemen hemen tüm diğer makine öğrenimi yaklaşımlarından farklı bir modelleme paradigmasıdır. (3) LCS yazılım uygulamaları o kadar yaygın değildir.
  • Hesaplamalı Olarak Pahalı: Bazı kapsamlı yaklaşımlardan kesinlikle daha uygun olsa da, LCS algoritmaları hesaplama açısından pahalı olabilir. Basit, doğrusal öğrenme problemleri için bir LCS uygulamaya gerek yoktur. LCS algoritmaları, en çok karmaşık problem alanlarına veya çok az ön bilginin bulunduğu problem alanlarına uygundur.

Sorunlu alanlar

  • Uyarlanabilir kontrol
  • Veri madenciliği
  • Mühendislik tasarımı
  • Öznitelik Seçimi
  • İşlev Yaklaşımı
  • Oynanış
  • Görüntü Sınıflandırma
  • Bilgi İşleme
  • Tıbbi teşhis
  • Modelleme
  • Navigasyon
  • Optimizasyon
  • Tahmin
  • Sorgulama
  • Robotik
  • Yönlendirme
  • Kural İndüksiyon
  • Planlama
  • Strateji

Terminoloji

"Öğrenim Sınıflandırıcı Sistem (LCS)" adı, biraz yanıltıcıdır, çünkü "sınıflandırmayı öğrenen" (örneğin karar ağaçları , yapay sinir ağları ), ancak LCS olmayan birçok makine öğrenimi algoritması vardır . 'Kural tabanlı makine öğrenimi ( RBML )' terimi, bu sistemlerin temel 'kurala dayalı' bileşenini daha net bir şekilde yakaladığı için yararlıdır, ancak aynı zamanda LCS olarak kabul edilmeyen yöntemlere de genelleştirir (örn. İlişki kuralı öğrenme veya yapay bağışıklık sistemleri ). 'Genetiğe dayalı makine öğrenimi' ve hatta 'genetik algoritma' gibi daha genel terimler de, daha karakteristik olarak bir öğrenme sınıflandırıcı sistem olarak tanımlanabilecek olana atıfta bulunmak için uygulanmıştır. Pittsburgh tarzı öğrenme sınıflandırıcı sistemleri, genetik algoritmalara benzerliklerinden dolayı bazen genel olarak 'genetik algoritmalar' olarak adlandırılır. Bunun ötesinde, bazı LCS algoritmaları veya yakından ilişkili yöntemler, 'bilişsel sistemler', 'uyarlanabilir aracılar', ' üretim sistemleri ' veya genel olarak bir 'sınıflandırıcı sistem' olarak anılmıştır . Terminolojideki bu çeşitlilik, alanda bazı karışıklıklara katkıda bulunur.

2000'li yıllara kadar neredeyse tüm öğrenme sınıflandırıcı sistem yöntemleri, pekiştirmeli öğrenme problemleri göz önünde bulundurularak geliştirildi. Sonuç olarak, 'öğrenme sınıflandırıcı sistemi' terimi yaygın olarak 'deneme yanılma' pekiştirmeli öğrenmenin bir genetik algoritmanın küresel araştırması ile birleşimi olarak tanımlandı. Denetimli öğrenme uygulamalarına ve hatta denetimsiz öğrenmeye olan ilgi, o zamandan beri bu terimin kullanımını ve tanımını genişletmiştir.

Ayrıca bakınız

Referanslar

Dış bağlantılar

Video öğretici

İnternet sayfaları