Definition

Was ist Apache Mahout?

| Autor / Redakteur: Stefan Luber / Nico Litzel

(Bild: © aga7ta - stock.adobe.com)

Apache Mahout ist ein frei verfügbares Framework für verteilt arbeitende Algorithmen der linearen Algebra. Es ist für Anwendungen im Big-Data-Umfeld einsetzbar und unter anderem für statistische Berechnungen nutzbar. Das Framework arbeitet mit Apache Hadoop und anderen Plattformen für verteiltes Computing und Data Processing wie Apache Spark, H2O oder Apache Flink zusammen.

Die Bezeichnung Apache Mahout leitet sich vom Begriff „Mahout“ ab, der den Besitzer und Pfleger eines Arbeitselefanten bezeichnet. Damit soll die enge Verzahnung von Apache Mahout mit Apache Hadoop zum Ausdruck gebracht werden. Apache Hadoop ist ein Framework für verteiltes Computing auf Computerclustern, mit dem sich rechenintensive Prozesse bei großen Datenmengen ausführen lassen. Es verwendet einen Elefanten als Logo.

Apache Mahout ist ein frei verfügbares Framework unter Apache License 2.0 für verteilt arbeitende Algorithmen der linearen Algebra. Einsetzbar ist das Framework für Big-Data-Anwendungen und statistische Berechnungen. Die ersten Veröffentlichungen von Apache Mahout enthielten skalierbare Algorithmen, die sehr eng mit Apache Hadoop und MapReduce in Bezug standen. Mittlerweile ist diese enge Verzahnung aufgehoben und Apache Mahout arbeitet auch auf Nicht-Hadoop-Clustern oder Einzelknoten. Auch andere Plattformen für verteiltes Computing und Data Processing wie Apache Spark, H2O oder Apache Flink werden unterstützt.

Seit dem Release 0.10.0 liegt der Fokus des Frameworks auf der Bereitstellung einer Backend-unabhängigen Umgebung. Der Support für MapReduce wurde seit 2014 nach und nach zurückgefahren. Apache Mahout stellt skalierbare Algorithmen für typische Verfahren des maschinellen Lernens bereit wie Clustering, Klassifizierung und Empfehlungen. Mahout nutzt als Domain Specific Language (DSL) eine Scala-basierte Bibliothek. Gestartet ist das Projekt bereits im Jahr 2008. 2009 erschien das erste Release des Frameworks. Seit dem Jahr 2010 ist Apache Mahout ein Top-Level-Projekt der Apache Software Foundation. Die aktuelle Version des Frameworks (Stand 2019) ist die Version 0.14.0.

Funktionen und Algorithmen von Apache Mahout

Apache Mahout vereint zahlreiche Funktionen und Algorithmen der linearen Algebra, die auf verteilten Computing-Umgebungen arbeiten. Das Framework gestattet es, Data-Mining-Aufgaben performant auszuführen und große Datenmengen schnell und effizient zu analysieren. Zur Verfügung stehen Matrix- und Vektor-Funktionen, Klassifizierungsalgorithmen wie Naive Bayes oder Random Forest, Clustering-Funktionen wie Canopy, k-Means, Fuzzy k-Means oder Streaming k-Means und zahlreiche weitere Algorithmen und Funktionen wie:

  • Lanczos-Algorithmus
  • stochastischer Gradientenabstieg (Stochastic Gradient Descent – SGD)
  • Matrixfaktorisierungsmodell SVD++
  • Frequent Pattern Matching
  • Hidden Markov Models (HMM)
  • Dirichlet Clustering
  • Spectral Clustering

Anwendungen von Apache Mahout

Apache Mahout liefert für zahlreiche Anwendungen im Big-Data- und Machine-Learning-Umfeld hoch skalierbare mathematische und statistische Algorithmen und Funktionen. Ein typischer Anwendungsbereich sind beispielsweise Empfehlungsmaschinen (Recommendation Engines) von Onlineshops oder Webservices. Sie liefern Empfehlungen auf Basis des zuvor analysierten Verhaltens der User. Eine weitere Anwendung ist das automatische Erkennen und Filtern von Spam-E-Mails. Die Filter-Maschinen verwenden Machine-Learning-Algorithmen zum Clustering und zur Klassifizierung der E-Mails.

Zum Einsatz kommt Apache Mahout auch im Natural Language Processing (NLP). NLP ermöglicht die Kommunikation zwischen Computer und Mensch per Sprache. Apache Mahout stellt hierfür Algorithmen zur Verfügung, um beispielsweise Spracheingaben zu analysieren und zu verstehen. Mittlerweile nutzen viele große Unternehmen die Möglichkeiten des maschinellen Lernens und der Big-Data-Analyse mit Apache Mahout. Zu diesen Unternehmen zählen unter anderem Facebook, Twitter, Adobe oder Yahoo.

Vorteile des Apache Mahout Framework

Der Einsatz des Apache Mahout Framework für skalierbare Algorithmen der linearen Algebra im Big-Data- und Machine-Learning-Umfeld bietet zahlreiche Vorteile. Zu diesen Vorteilen zählen:

  • Bereitstellung skalierbarer Algorithmen für verteilte Computing-Systeme
  • nutzbar für große Datenmengen
  • Unterstützung zahlreicher unterschiedlicher Anwendungsfälle
  • Unterstützung von Apache Hadoop und anderen Plattformen für verteiltes Computing und Data Processing wie Apache Spark, H2O oder Apache Flink
  • frei verfügbar unter der Apache License 2.0
  • große Entwickler- und Anwender-Community verfügbar
  • ein Top-Level-Projekt der Apache Software Foundation

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Künstliche Intelligenz im Eigenbau

Übersicht KI- und ML-Stacks, Teil 2

Künstliche Intelligenz im Eigenbau

Eine kaum noch überschaubare Vielzahl an KI/ML-Frameworks, -Bibliotheken und -Diensten buhlt um die Gunst innovativer Unternehmen. So wird Big Data zur Goldgrube. lesen

Mit Apache Zeppelin Daten analysieren

Interaktives Notizbuch für Big Data

Mit Apache Zeppelin Daten analysieren

Das Apache-Toplevel-Projekt Zeppelin bietet ein Notizbuch für Daten aus anderen Systemen, mit denen Anwender diese effektiv analysieren können. Zeppelin arbeitet dazu eng mit Spark, Flink und Hadoop zusammen. lesen

IoT-Basics – mit Big Data zur smarten Produktion

Data Science

IoT-Basics – mit Big Data zur smarten Produktion

Industrielle Internet-Systeme auf der Basis von Cloud-basierten IoT-Plattformen werden den Einsatz von Big Data in der Industrie deutlich voranbringen. Sie erschließen die bereits vorhandenen Datenquellen und führen sie einer effizienten zentralen Auswertung zu, was kompetentere Entscheidungen ermöglicht. lesen

IoT-Basics – die technische Basis von Big Data

Data Science

IoT-Basics – die technische Basis von Big Data

Big Data beinhaltet eine Reihe von IT-Techniken wie Cluster Computing und MapReduce sowie mathematisch-statistischer Verfahren (Data Mining, Machine Learning). Der Beitrag gibt einen Überblick über die relevanten Datenbankenkonzepte (Hadoop- und NoSQL-Datenbanken) und Programmiersprachen. lesen

Das Hadoop-Wer-Gewinnt: Hortonworks versus Cloudera

Big Data 2014 und die Elefantenrunde für das Enterprise

Das Hadoop-Wer-Gewinnt: Hortonworks versus Cloudera

Der Erkenntnis-Gewinn aus Big-Data-Projekten übersteigt oft die Erwartungen. Allerdings besteht das bezeichnende Charakteristikum darin, dass die Daten Teil des Problems sind. Mit der sich momentan abzeichnen Konsolidierung im Bereich der Hadoop-Distributionen, ist es für viele Unternehmen entscheidend, die Big-Data-Anwendungen planen, auf den richtigen Elefanten zu setzen. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46220061 / Definitionen)