Mahout - Makine Öğrenimi

Apache Mahout, geliştiricilerin optimize edilmiş algoritmalar kullanmasına olanak tanıyan, oldukça ölçeklenebilir bir makine öğrenimi kitaplığıdır. Mahout, öneri, sınıflandırma ve kümeleme gibi popüler makine öğrenimi tekniklerini uygular. Bu nedenle, daha ileri gitmeden önce makine öğrenimi hakkında kısa bir bölüme sahip olmak akıllıca olacaktır.

Makine Öğrenimi nedir?

Makine öğrenimi, sistemleri otomatik olarak öğrenecek ve deneyimle geliştirecek şekilde programlamakla ilgilenen bir bilim dalıdır. Burada öğrenme, giriş verilerini tanımak ve anlamak ve sağlanan verilere dayanarak akıllıca kararlar vermek anlamına gelir.

Olası tüm girdilere dayalı olarak tüm kararları karşılamak çok zordur. Bu sorunu çözmek için algoritmalar geliştirilir. Bu algoritmalar, istatistik, olasılık teorisi, mantık, kombinatoryal optimizasyon, arama, pekiştirmeli öğrenme ve kontrol teorisi ilkeleri ile belirli verilerden ve geçmiş deneyimlerden bilgi oluşturur.

Geliştirilen algoritmalar, aşağıdakiler gibi çeşitli uygulamaların temelini oluşturur:

  • Vizyon işleme
  • Dil işleme
  • Tahmin (örneğin, borsa eğilimleri)
  • Desen tanıma
  • Games
  • Veri madenciliği
  • Uzman sistemler
  • Robotics

Makine öğrenimi çok geniş bir alandır ve tüm özelliklerini kapsamak bu eğitimin kapsamının oldukça ötesindedir. Makine öğrenimi tekniklerini uygulamanın birkaç yolu vardır, ancak en yaygın kullanılanlarısupervised ve unsupervised learning.

Denetimli Öğrenme

Denetimli öğrenme, mevcut eğitim verilerinden bir işlev öğrenmeyle ilgilidir. Denetimli bir öğrenme algoritması, eğitim verilerini analiz eder ve yeni örnekleri haritalamak için kullanılabilecek bir çıkarım işlevi üretir. Denetimli öğrenmenin yaygın örnekleri şunları içerir:

  • e-postaları spam olarak sınıflandırmak,
  • web sayfalarını içeriklerine göre etiketleme ve
  • ses tanıma.

Sinir ağları, Destek Vektör Makineleri (SVM'ler) ve Naive Bayes sınıflandırıcılar gibi birçok denetimli öğrenme algoritması vardır. Mahout, Naive Bayes sınıflandırıcısını uygular.

Denetimsiz Öğrenme

Denetimsiz öğrenme, eğitimi için önceden tanımlanmış herhangi bir veri kümesine sahip olmadan etiketlenmemiş verileri anlamlandırır. Denetimsiz öğrenme, mevcut verileri analiz etmek ve kalıpları ve eğilimleri aramak için son derece güçlü bir araçtır. En yaygın olarak benzer girdileri mantıksal gruplar halinde kümelemek için kullanılır. Denetimsiz öğrenmeye yönelik yaygın yaklaşımlar şunları içerir:

  • k-means
  • kendi kendini düzenleyen haritalar ve
  • hiyerarşik kümeleme

Öneri

Öneri, önceki satın almalar, tıklamalar ve derecelendirmeler gibi kullanıcı bilgilerine dayalı yakın öneriler sunan popüler bir tekniktir.

  • Amazon, geçmiş eylemlerinizden bilgi alarak, ilgilenebileceğiniz önerilen öğelerin bir listesini görüntülemek için bu tekniği kullanır. Kullanıcı davranışını yakalamak ve önceki eylemlerinize göre seçili öğeleri önermek için Amazon'un arkasında çalışan tavsiye motorları vardır.

  • Facebook, "tanıyor olabileceğiniz kişilerin listesini" belirlemek ve tavsiye etmek için tavsiye tekniğini kullanır.

Sınıflandırma

Sınıflandırma, aynı zamanda categorization, yeni verilerin bir dizi mevcut kategoride nasıl sınıflandırılması gerektiğini belirlemek için bilinen verileri kullanan bir makine öğrenimi tekniğidir. Sınıflandırma, denetimli öğrenmenin bir şeklidir.

  • Yahoo! gibi posta hizmeti sağlayıcıları ve Gmail, yeni bir postanın spam olarak sınıflandırılıp sınıflandırılmayacağına karar vermek için bu tekniği kullanır. Sınıflandırma algoritması, belirli postaları spam olarak işaretleme alışkanlıklarını analiz ederek kendini eğitir. Buna dayanarak sınıflandırıcı, gelecekteki bir postanın gelen kutunuza mı yoksa spam klasörüne mi yatırılacağına karar verir.

  • iTunes uygulaması çalma listelerini hazırlamak için sınıflandırma kullanır.

Kümeleme

Kümeleme, ortak özelliklere dayalı olarak benzer veri grupları veya kümeleri oluşturmak için kullanılır. Kümeleme, denetimsiz öğrenmenin bir şeklidir.

  • Google ve Yahoo! gibi arama motorları benzer özelliklere sahip verileri gruplamak için kümeleme tekniklerini kullanın.

  • Haber grupları, çeşitli makaleleri ilgili konulara göre gruplamak için kümeleme tekniklerini kullanır.

Kümeleme motoru, girdi verilerini tamamen gözden geçirir ve verilerin özelliklerine göre hangi küme altında gruplandırılacağına karar verir. Aşağıdaki örneğe bir göz atın.

Eğitim kitaplığımız çeşitli konularda konular içerir. TutorialsPoint'te yeni bir eğitim aldığımızda, içeriğine göre nerede gruplanması gerektiğine karar veren bir kümeleme motoru tarafından işlenir.