Zuhause Persönliche Finanzen Maschinelles Lernen mit Mahout in Hadoop - Dummies

Maschinelles Lernen mit Mahout in Hadoop - Dummies

Inhaltsverzeichnis:

Video: Introduction to the Hadoop Technology Stack 2025

Video: Introduction to the Hadoop Technology Stack 2025
Anonim

Maschinelles Lernen bezieht sich auf einen Zweig der künstlichen Intelligenztechniken, der Werkzeuge bereitstellt, die es Computern ermöglichen, ihre Analyse auf der Grundlage früherer Ereignisse zu verbessern. Diese Computersysteme nutzen historische Daten aus früheren Versuchen, eine Aufgabe zu lösen, um die Leistung zukünftiger Versuche mit ähnlichen Aufgaben zu verbessern.

In Bezug auf die erwarteten Ergebnisse mag maschinelles Lernen sehr ähnlich wie das andere Schlagwort "Data Mining" klingen; Der erstere konzentriert sich jedoch auf die Vorhersage durch Analyse von vorbereiteten Trainingsdaten, wobei letzterer sich mit der Wissensentdeckung von unbearbeiteten Rohdaten beschäftigt. Aus diesem Grund hängt maschinelles Lernen stark von statistischen Modellierungstechniken ab und bezieht sich auf Bereiche der Wahrscheinlichkeitstheorie und der Mustererkennung.

Mahout ist ein Open-Source-Projekt von Apache, das Java-Bibliotheken für verteilte oder anderweitig skalierbare Algorithmen zum maschinellen Lernen anbietet.

Diese Algorithmen decken klassische maschinelle Lernaufgaben wie Klassifizierung, Clustering, Assoziationsregelanalyse und Empfehlungen ab. Obwohl Mahout-Bibliotheken so konzipiert wurden, dass sie innerhalb eines Apache-Hadoop-Kontexts funktionieren, sind sie auch mit jedem System kompatibel, das das MapReduce-Framework unterstützt. Zum Beispiel stellt Mahout Java-Bibliotheken für Java-Sammlungen und allgemeine mathematische Operationen (lineare Algebra und Statistiken) bereit, die ohne Hadoop verwendet werden können.

Wie Sie sehen, sind die Mahout-Bibliotheken in Java MapReduce implementiert und werden auf Ihrem Cluster als Sammlungen von MapReduce-Jobs entweder auf YARN (mit MapReduce v2) oder MapReduce v1 ausgeführt.

Mahout ist ein sich entwickelndes Projekt mit mehreren Mitwirkenden. Bis zu diesem Zeitpunkt ist die Sammlung von Algorithmen, die in den Mahout-Bibliotheken verfügbar sind, keineswegs vollständig; Die Sammlung von Algorithmen, die zur Verwendung implementiert werden, expandiert jedoch mit der Zeit weiter.

Es gibt drei Hauptkategorien von Mahout-Algorithmen zur Unterstützung der statistischen Analyse: kollaboratives Filtern, Clustering und Klassifizierung.

Kollaborative Filterung

Mahout wurde speziell für die Verwendung als Empfehlungsmaschine entwickelt und verwendet einen so genannten kollaborativen Filteralgorithmus . Mahout kombiniert die Fülle an Clustering- und Klassifikationsalgorithmen, um präzisere Empfehlungen auf Basis von Eingabedaten zu erhalten.

Diese Empfehlungen werden häufig gegen Benutzereinstellungen angewendet, wobei das Verhalten des Benutzers berücksichtigt wird. Durch Vergleichen der vorherigen Auswahlen eines Benutzers ist es möglich, die nächsten Nachbarn (Personen mit einer ähnlichen Entscheidungshistorie) für diesen Benutzer zu identifizieren und zukünftige Auswahlen basierend auf dem Verhalten der Nachbarn vorherzusagen.

Betrachten Sie eine "Geschmacksprofil" -Engine wie Netflix - eine Engine, die Bewertungen basierend auf den bisherigen Bewertungs- und Betrachtungsgewohnheiten des Nutzers empfiehlt. In diesem Beispiel werden die Verhaltensmuster für einen Benutzer mit der Geschichte des Benutzers verglichen - und mit den Trends von Benutzern mit ähnlichem Geschmack, die derselben Netflix-Gemeinschaft angehören - um eine Empfehlung für Inhalte zu generieren, die der fragliche Benutzer noch nicht gesehen hat.

Clustering

Im Gegensatz zur überwachten Lernmethode für das Empfehlungsmodul von Mahout ist Clustering eine Form von unbeaufsichtigtem Lernen - wobei die Bezeichnungen für Datenpunkte im Voraus bekannt sind und aus den Daten abgeleitet werden müssen ohne menschliche Eingabe (der überwachte Teil).

Im Allgemeinen sollten Objekte innerhalb eines Clusters ähnlich sein. Objekte aus verschiedenen Clustern sollten unterschiedlich sein. Entscheidungen, die im Voraus über die Anzahl der zu erzeugenden Cluster, die Kriterien für die Messung der "Ähnlichkeit" und die Darstellung von Objekten getroffen werden, wirken sich auf die durch Clustering-Algorithmen erzeugte Kennzeichnung aus.

Beispielsweise sollte eine Clustering-Engine, die eine Liste von Nachrichtenartikeln bereitstellt, in der Lage sein, Gruppen von Artikeln innerhalb dieser Sammlung zu definieren, die ähnliche Themen behandeln.

Angenommen, es würde eine Reihe von Artikeln über Kanada, Frankreich, China, Forstwirtschaft, Öl und Wein gesammelt. Wenn die maximale Anzahl von Clustern auf 2 festgelegt wurde, kann Ihr Algorithmus Kategorien wie "Regionen" und "Branchen" erstellen. "Anpassungen an die Anzahl der Cluster führen zu unterschiedlichen Kategorisierungen. Zum Beispiel kann die Auswahl für 3 Cluster zu paarweisen Gruppierungen von Kategorien der nationalen Industrie führen.

Klassifikationen

Klassifikationsalgorithmen verwenden menschlich markierte Trainingsdatensätze, wobei die Kategorisierung und Klassifizierung aller zukünftigen Eingaben durch diese bekannten Bezeichnungen bestimmt wird. Diese Klassifizierer implementieren das, was als überwachtes Lernen in der Welt des maschinellen Lernens bekannt ist.

Die Klassifizierungsregeln, die von den Trainingsdaten festgelegt werden, die von den Experten der Domäne vorab etikettiert wurden, werden dann auf rohe, unverarbeitete Daten angewendet, um ihre angemessene Kennzeichnung zu ermitteln.

Diese Techniken werden häufig von E-Mail-Diensten verwendet, die versuchen, Spam-E-Mails zu klassifizieren, bevor sie Ihren Posteingang überqueren. Insbesondere bei einer E-Mail, die eine Reihe von Phrasen enthält, von denen bekannt ist, dass sie gemeinsam in einer bestimmten Klasse von Spam-Mails auftreten, die von einer Adresse eines bekannten Botnets stammen, kann Ihr Klassifizierungsalgorithmus die E-Mail zuverlässig als bösartig identifizieren.

Zusätzlich zu der Fülle an statistischen Algorithmen, die Mahout nativ bereitstellt, ist auch ein unterstützendes User Defined Algorithms (UDA) -Modul verfügbar. Benutzer können bestehende Algorithmen außer Kraft setzen oder eigene über das UDA-Modul implementieren. Diese robuste Anpassung ermöglicht eine Leistungsoptimierung von nativen Mahout-Algorithmen und Flexibilität bei der Bewältigung einzigartiger statistischer Analyseherausforderungen.

Wenn Mahout als statistische Analyseerweiterung für Hadoop angesehen werden kann, sollte UDA als Erweiterung der statistischen Fähigkeiten von Mahout gesehen werden.

Traditionelle statistische Analyse-Anwendungen (wie SAS, SPSS und R) verfügen über leistungsfähige Werkzeuge zur Generierung von Workflows. Diese Anwendungen verwenden intuitive grafische Benutzeroberflächen, die eine bessere Datenvisualisierung ermöglichen. Mahout-Skripte folgen einem ähnlichen Muster wie diese anderen Werkzeuge zur Erstellung statistischer Analyse-Workflows.

Während des abschließenden Datenexplorations- und Visualisierungsschritts können Benutzer in lesbare Formate (JSON, CSV) exportieren oder Visualisierungstools wie Tableau Desktop nutzen.

Die Architektur von Mahout befindet sich auf der Hadoop-Plattform. Hadoop entlastet den Programmierer, indem es die Aufgabe der Programmierung von MapReduce-Jobs von der komplexen Buchhaltung trennt, die zur Verwaltung der Parallelität über verteilte Dateisysteme hinweg erforderlich ist. Im gleichen Geist bietet Mahout programmiererfreundliche Abstraktionen komplexer statistischer Algorithmen, die für die Implementierung mit dem Hadoop-Framework bereit sind.

Maschinelles Lernen mit Mahout in Hadoop - Dummies

Die Wahl des Herausgebers

Wie man die Socialcast Mobile App benutzt - dummies

Wie man die Socialcast Mobile App benutzt - dummies

Sogar die stoischste Anwendung wie Microsoft Excel hat ein begleitendes Smartphone-App, natürlich hat Socialcast auch eine. Wenn es so wäre, wäre es nicht wirklich eine Ausrede zu sagen, dass Socialcast nicht sehr sozial wäre, wenn du es nicht mit in die große Welt außerhalb deiner Zelle mitnehmen könntest. Die mobile App ...

Wie man das App Verzeichnis von Yammer benutzt - dummies

Wie man das App Verzeichnis von Yammer benutzt - dummies

Sie haben vielleicht gehört: "Es gibt eine App dafür. "Nun, das ist der Fall bei Yammer, der als einzige Ressource für die Vernetzung am Arbeitsplatz funktioniert. Aber Yammer bietet Ihnen auch eine Menge Apps, mit denen Sie Ihr Arbeitsleben noch einfacher gestalten können. Es gibt zwei Möglichkeiten, auf das App-Verzeichnis zuzugreifen: Option ...

So ​​verwenden Sie die Yammer-Analysetools - Dummies

So ​​verwenden Sie die Yammer-Analysetools - Dummies

Yammer rühmt sich damit als "führendes soziales Unternehmensnetzwerk für Unternehmen" um die Arbeit intelligenter und schneller zu erledigen. "Woher weißt du, ob das wahr ist? Ein guter Weg, um zu sehen, wie es für Sie funktioniert, ist die Analyse von Yammer. Wie greifen Sie auf diese großartigen Tools zu? Es ist einfach. Log ...

Die Wahl des Herausgebers

Die Evolution von Distributed Computing für Big Data - Dummies

Die Evolution von Distributed Computing für Big Data - Dummies

Hinter allen wichtigen Trends des letzten Jahrzehnts, einschließlich Serviceorientierung, Cloud Computing, Virtualisierung und Big Data, ist eine grundlegende Technologie namens Distributed Computing. Einfach gesagt, ohne die Verteilung von Datenverarbeitung wäre keiner dieser Fortschritte möglich. Distributed Computing ist eine Technik, mit der einzelne Computer über geografische Gebiete hinweg miteinander vernetzt werden können, so als ob ...

Drei Anbieter mit Data Mining-Produkten - Dummies

Drei Anbieter mit Data Mining-Produkten - Dummies

Es gibt mehrere Anbieter, die Data-Mining-Produkte verkaufen, die Sie vielleicht in Betracht ziehen möchten. Verwenden Sie mit Ihrem Data Warehouse. Hier sind drei, die eine Überlegung wert sind. Microsoft Microsoft hat das serverseitige Data Mining mit Microsoft SQL Server 2005 eingeführt. Obwohl es nicht so ausgereift und ausgeklügelt wie SAS und SPSS ist, hat Microsoft im Laufe der Zeit seine Fähigkeit bewiesen ...

Grundlagen der Big-Data-Integration - Dummies

Grundlagen der Big-Data-Integration - Dummies

Die fundamentalen Elemente der Big-Data-Plattform verwalten Daten auf neue Weise verglichen mit der traditionellen relationalen Datenbank. Dies liegt daran, dass Skalierbarkeit und hohe Leistung erforderlich sind, um sowohl strukturierte als auch unstrukturierte Daten zu verwalten. Komponenten des Big-Data-Ökosystems von Hadoop bis NoSQL DB, MongoDB, Cassandra, ...

Die Wahl des Herausgebers

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

Die meisten modernen Smartphones sind Wi-Fi-fähig. In ein lokales Netzwerk können Sie Spotify-Tracks mithilfe von Wi-Fi auf Ihr Telefon streamen. Sie können Spotify Mobile zu Hause und über Wi-Fi-Netzwerke in Hotels und Cafés problemlos nutzen - Sie müssen nur sicherstellen, dass Sie angemeldet und verbunden sind. ...

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert, kann Auswirkungen auf den Festplattenspeicher Ihres Computers haben. Internetverbindung. Spotify funktioniert anders als viele andere Online-Musikdienste, weil es auf mehrere Arten angewiesen ist, um Ihnen reibungslos Musik ohne Verzögerungen zu liefern. In Computing-Sprechen, das Maß der Verzögerung zwischen Anfordern eines Songs und Hören es ...

So ​​erreichen Sie Spotify Support - Dummies

So ​​erreichen Sie Spotify Support - Dummies

Es kann vorkommen, dass Sie eine kleine Hilfe beim Navigieren und Verwenden von Spotify benötigen von deinen Spotify Freunden. Sie können jederzeit Support @ spotify per E-Mail senden. com mit Ihrer Frage oder melden Sie sich bei Twitter an und senden Sie einen Tweet an @spotify. Stellen Sie sicher, dass Sie alle Informationen einschließen, die dem Support-Team helfen könnten, einschließlich Ihres Benutzernamens, damit sie ...