Video: Azure Friday | Apache Kafka on HDInsight 2024
Tahmin edici analitikte benzersiz bir şekilde kullanılan açık kaynaklı bir araç Apache Mahout'tur. Bu makine öğrenme kütüphanesi, büyük ölçekli tahmini analitik modeli destekleyen kümeleme, sınıflandırma, ortak filtreleme ve diğer veri madenciliği algoritmalarının geniş ölçekli sürümlerini içerir.
Böyle bir model için gerekli verileri işlemek için şiddetle tavsiye edilen bir yol, Mahout'u zaten Hadoop çalıştıran bir sistemde çalıştırmaktır. Hadoop, dağıtılmış işleminde kullanılan diğer makineleri (Map makineleri ve Reduce makineleri gibi) düzenleyen bir ana makineyi belirtir. Mahout, ana makineye kurulmalıdır.
Akışlı verilerin büyük miktarda olduğunu düşünün - Google haber makaleleri - ve kümeleme algoritmalarından birini kullanarak konuyla kümelemek istersiniz. Hadoop ve Mahout'u kurduktan sonra verilerinizden K-means gibi algoritmalarından birini çalıştırabilirsiniz.
Mahout altındaki K-araçlarının uygulanması, K-araçlarının normal uygulanmasından farklı hale getiren bir MapReduce yaklaşımı kullanıyor. Mahout, K-aracı algoritmasını bu alt prosedürlere ayırır:
-
KmeansMapper girdi veri setini okur ve her girdi noktasını başlangıçta seçilen en yakın araçlara (küme temsilcileri) atayacaktır.
-
KmeansCombiner prosedürü, KmeansMapper tarafından üretilen tüm kayıtları - çiftleri alır ve sonraki küme temsilcilerinin hesaplanmasını kolaylaştırmak için kısmi toplamlar üretir.
-
KmeansReducer , K-araçlarının nihai çıktısı olan kümelerin gerçek merkezlerini hesaplamak için tüm alt görevler (birleştiriciler) tarafından üretilen değerleri alır.
-
KmeansDriver , tüm kümeler birleşinceye kadar sürecin yinelemelerini halleder. Belirli bir yinelemenin çıktısı, kısmi bir kümeleme çıktısı, bir sonraki iterasyon için girdi olarak kullanılır. Veri setini haritalama ve azaltma süreci kayıtlar ve kümeler atanana kadar başka bir değişiklik göstermez.
Apache Mahout yeni geliştirilen bir projedir; işlevselliği hala uzantıları yerleştirmek için oldukça fazla alana sahiptir. Bu arada Mahout, sınıflandırma, kümeleme ve diğer makine öğrenme tekniklerini uygulamak için zaten MapReduce kullanıyor ve bunu büyük ölçekte yapabiliyor.