General

Çevrimdışı Öğrenme ve Çevrimiçi Öğrenme

Makine öğrenme sistemlerini sınıflandırmak için kullanılan diğer bir ölçüt ise sistemin gelen veri akışından aşamalı olarak öğrenip öğrenemeyeceği dir. Veriler toplu bir şekilde öğrenebileceği gibi akan veriler üzerinden de öğrenebilme yeteneğine sahiptir. Bu öğrenme, çevrimdışı ve çevrimiçi olmak üzere iki şekilde yapılmaktadır.

1.Çevrimdışı Öğrenme (Batch learning)

Çevrimdışı öğrenmede, sistem aşamalı olarak öğrenme yeteneğine sahip değildir. Eğitim aşamasında, eğitim amacıyla oluşturulan eğitim kümesinin tamamı, modelin eğitimi için kullanılır, sonra modelin kullanımına geçilebilir ve artık sistem öğrenmeden çalışır hale gelir, bir önceki aşamada eğitim sonucunda ortaya çıkan modele istenen sorular sorulabilir. Eğitim ve test aşamalarında oluşan, iki aşamalı, bu sisteme çevrimdışı öğrenme denir .

Ekran Resmi 2021 02 13 21.31.28

Bir çevrimdışı öğrenme sisteminin gelen yeni bir veri (yeni bir spam türü gibi) hakkında bilgi sahibi olmasını istiyorsanız, sistemin yeni bir sürümünü tam veri kümesinde sıfırdan (yalnızca yeni veriler değil, aynı zamanda eski verilerde) eğitmeniz gerekir. Daha sonra eski sistemi durdurup, yenisiyle değiştirmek gerekmektedir. Bu çözüm basittir ve genellikle iyi çalışır, ancak tam veri kümesini kullanarak eğitim yapmak uzun sürebilir, bu sırada veri kümesinde değişimler olma ihtimali de olduğu için, belirli periyotlar halinde modelin güncellenmesi, örneğin 24 saatte bir veya haftalık olarak yeni bir sistem eğitmek gerekir. Sisteminizin gerçek zamana yakın hızla değişen verilere uyum sağlaması gerekiyorsa, daha reaktif bir çözüme ihtiyaç vardır.

Ayrıca, tüm veri kümesinde eğitim, birçok bilgi işlem kaynağının kullanımını gerektirmektedir (CPU, bellek alanı, disk alanı, ağ bağlantı kaynakları vb.). Çok fazla veriye sahipseniz ve sisteminizi her gün baştan eğitmek için otomatik hale getirdiyseniz, bu size çok fazla maliyet gerektirebilir. Eğer veri miktarı çok büyükse, bir toplu öğrenme algoritmasını kullanmak bile imkansız olabilir. Bir alternatif olarak, eldeki kaynağın istenen işlem kapasitesine göre daha verimli hale getirilmesi için, aşamalı öğrenme yöntemleri kullanılabilir. 

2. Çevrimiçi Öğrenme (Stream Learning)

Klasik öğrenme yaklaşımlarında veri statiktir, yani depolanarak işlenmektedir. Bazı problem tiplerinde ise, veri hızla akmakta ve değişiklikler anlık olarak gerçekleşmektedir, bu problem tipleri için statik verinin nispeten uzun sürelerde baştan eğitildiği ve bütün verinin tekrar bir eğitim modeli oluşturmak için kullanıldığı çözüm yöntemleri, ihtiyaçtaki hız ve donanım kısıtları gibi sebeplerle kullanışsız hale gelmektedir.

Bu yüzden artık veriyi akarken kümeleyecek, kullanıcıya istediği zaman anlık sonuç verebilecek yöntemlere talep artmaktadır. Sisteme gelen her veri bireysel olarak ya da küçük partiler olarak adlandırılan mini-batch şeklinde modeli besleyerek kademeli olarak eğitilmektedir. Her öğrenme adımı görece olarak hızlı ve ucuzdur, bu nedenle sistem, gelen her yeni veri hakkında bilgi edinebilir gerçek-zamanlı sistemlerde öğrenme aşamasının çalışma anında da sürdürülmesi isteniyor ise kullanılır. Aşağıda Şekil 4’te verildiği gibi veri bir anda değil aşamalı olarak modele iletilmektedir.

Ekran Resmi 2021 02 13 21.33.52

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.

Başa dön tuşu