İçindekiler:
Video: AI vs Machine Learning vs Deep Learning | Machine Learning Training with Python | Edureka 2024
Makine öğrenme , bilgisayarların önceki olaylara dayalı olarak analizlerini geliştirmesini sağlayan araçlar sağlayan yapay zeka tekniklerinin bir koluna atıfta bulunmaktadır. Bu bilgisayar sistemleri, benzer görevlerdeki gelecekteki girişimlerin performansını artırmak için bir görevi çözme konusundaki önceki girişimlerdeki geçmiş verileri kullanmaktadır.
Beklenen sonuçlar açısından makine öğrenimi, diğer "Veri Madenciliği" terimlerini andıran çok ses çıkarabilir; Bununla birlikte, eski veriler hazırlanmış eğitim verilerini analiz ederek tahmine odaklanırken, ikinci veri, işlenmemiş ham verilerden gelen bilgi keşfi ile ilgilidir. Bu nedenle, makine öğrenimi, istatistiksel modelleme tekniklerine büyük oranda bağımlıdır ve olasılık teorisi ve örüntü tanıma alanlarından çıkar.
Mahout, dağıtılmış veya başka şekilde ölçeklenebilir makine öğrenme algoritmaları için Java kütüphaneleri sunan, Apache'nin açık kaynaklı bir projesidir.
Bu algoritmalar, sınıflandırma, kümeleme, ilişki kuralı analizi ve öneriler gibi klasik makine öğrenme görevlerini kapsar. Mahout kütüphaneleri bir Apache Hadoop bağlamında çalışmak üzere tasarlanmış olsa da, MapReduce çerçevesini destekleyen herhangi bir sistemle de uyumludurlar. Örneğin Mahout, Java koleksiyonları ve ortak matematik işlemleri (doğrusal cebir ve istatistikler) için Hadoop'sız kullanılabilir Java kütüphaneleri sağlar.
Gördüğünüz gibi, Mahout kütüphaneleri Java MapReduce'da uygulanmakta ve kümenizde MapReduce işlerinin ya YARN (MapReduce v2 ile) ya da MapReduce v1'in koleksiyonları olarak çalıştırılmaktadır.
Mahout, çok sayıda katkıda bulunan gelişen bir projedir. Bu yazının yazıldığı tarihte, Mahout kütüphanelerinde mevcut olan algoritmalar hiçbir şekilde tamamlanmadı; Bununla birlikte, kullanım için uygulanan algoritmaların koleksiyonu zamanla genişlemeye devam etmektedir.
İstatistiksel analizi desteklemek için Mahout algoritmalarının üç ana kategorisi vardır: ortak filtreleme, kümeleme ve sınıflandırma.
İşbirlikçi filtreleme
Mahout, özellikle ortak filtreleme algoritması olarak bilinen yöntemi kullanarak bir öneri motoru olarak kullanılmak üzere tasarlandı. Mahout, girdi verilerine dayalı daha kesin öneriler üretmek için kümeleme ve sınıflandırma algoritmalarının zenginliğini bir araya getirir.
Bu öneriler genellikle kullanıcının davranışlarına göre kullanıcı tercihlerine karşı uygulanmaktadır. Bir kullanıcının önceki seçimlerini karşılaştırarak, o kullanıcıya en yakın komşuları (benzer bir karar geçmişi olan kişileri) belirlemek ve gelecek seçimleri komşuların davranışlarına dayanarak tahmin etmek mümkündür.
Bu kullanıcının önceki puanlama ve görüntüleme alışkanlıklarına dayalı derecelendirmeler önermeyi öneren bir motor olan Netflix gibi "tat profili" altyapısı düşünün. Bu örnekte, bir kullanıcının davranış kalıpları, kullanıcının geçmişi ile karşılaştırılır - ve aynı Netflix topluluğuna ait benzer beğenilere sahip olan kullanıcıların eğilimleri - söz konusu kullanıcı tarafından henüz görüntülenmeyen bir içerik için bir öneri oluşturmak için.
Kümeleme
Mahout'un öneri motoru özelliği için denetlenen öğrenme yönteminin aksine, kümeleme, veri noktalarının etiketlerinin önceden bilinmediği ve veriden çıkarılması gereken denetimsiz öğrenme biçimidir ( denetlenen kısmı).
Genellikle, kümedeki nesneler benzer olmalıdır; Farklı kümelerdeki nesneler birbirine benzemez olmalıdır. Üretilecek kümelerin sayısı, "benzerlik" ölçme ölçütleri ve nesnelerin temsili hakkında önceden kararlar alınmışsa, kümeleme algoritmaları tarafından üretilen etiketleme etkilenir.
Örneğin, haber makalelerinin bir listesi sağlanan bir kümeleme motoru, benzer konuları tartışan bu koleksiyon içindeki makalelerin kümelerini tanımlayabilmelidir.
Kanada, Fransa, Çin, ormancılık, yağ ve şarap hakkında bir dizi kümelenme olduğunu varsayalım. Maksimum küme sayısı 2'ye ayarlanırsa, algoritmanız "bölgeler" ve "sanayi" gibi kategoriler üretebilir. "Kümelerin sayısının ayarlanması farklı kategorizasyonlar üretir; Örneğin, 3 küme seçmek, ulus-sanayi kategorilerinin çift olarak gruplanmasına neden olabilir.
Sınıflamalar
Sınıflandırma algoritmaları, gelecekteki tüm girdilerin sınıflandırılması ve sınıflandırılmasının bu bilinen etiketler tarafından yönetildiği insan etiketli eğitim veri setlerini kullanır. Bu sınıflandırıcılar, makine öğrenme dünyasında denetlenen öğrenme olarak bilinen şeyi uygularlar.
Sınıflandırma kuralları - daha sonra alan uzmanları tarafından önceden etiketlendirilen eğitim verileri tarafından belirlenir - daha sonra, uygun etiketlemelerini en iyi şekilde belirlemek için işlenmemiş, çiğ verilere karşı uygulanır.
Bu teknikler, spam e-postaları gelen kutunuzdan geçirmeden önce sınıflandırmaya çalışan e-posta hizmetleri tarafından sıklıkla kullanılır. Spesifik olarak, bilinen bir botnet'e ait bir adresten gönderilen belirli bir spam posta sınıfında birlikte bilinen bir dizi cümle içeren bir e-posta gönderildiğinde, sınıflandırma algoritması e-postayı kötü amaçlı olarak güvenilir şekilde tanımlayabilir.
Mahout'un doğal olarak sağladığı istatistiksel algoritmalara ek olarak, Kullanıcı Tanımlı Algoritmalar (UDA) modülü de mevcuttur. Kullanıcılar mevcut algoritmaları geçersiz kılabilir veya UDA modülü aracılığıyla kendi algoritmalarını uygulayabilir. Bu güçlü özelleştirme yerel Mahout algoritmalarının performans ayarlamasına ve benzersiz istatistiksel analiz zorluklarıyla mücadelede esnekliğe olanak tanır.
Mahout, Hadoop için istatistiksel analitik bir uzantı olarak görülebiliyorsa, UDA Mahout'un istatistiksel yeteneklerinin bir uzantısı olarak görülmelidir.
Geleneksel istatistiksel analiz uygulamaları (SAS, SPSS ve R gibi), iş akışları üretmek için güçlü araçlar ile birlikte gelir. Bu uygulamalar, daha iyi veri görselleştirmesine olanak tanıyan sezgisel grafik kullanıcı arayüzlerini kullanmaktadır. Mahout betikleri, istatistiksel analiz iş akışları üretmek için kullanılan diğer araçlar gibi benzer bir model izler.
Son veri araştırması ve görselleştirme aşamasında kullanıcılar, insan tarafından okunabilen formatlara (JSON, CSV) ihracat yapabilir veya Tableau Desktop gibi görselleştirme araçlarından yararlanabilir.
Mahout'un mimarisi Hadoop platformunun üzerinde oturuyor. Hadoop, MapReduce işlerini programlama görevini, dağıtılan dosya sistemlerinde paralellik yönetmek için gereken karmaşık defter tutma işleminden ayırarak programcıyı serbest bırakır. Aynı düşünceyle Mahout, Hadoop çerçevesi ile uygulanmaya hazır, karmaşık istatistiksel algoritmaların programcı dostu soyutlamalarını sunar.