Big Data Analytics - Problemdefinition
In diesem Tutorial werden wir ein Projekt entwickeln. Jedes nachfolgende Kapitel in diesem Tutorial behandelt einen Teil des größeren Projekts im Abschnitt Miniprojekt. Es wird angenommen, dass dies ein angewandter Tutorial-Abschnitt ist, der Aufschluss über ein reales Problem gibt. In diesem Fall würden wir mit der Problemdefinition des Projekts beginnen.
Projektbeschreibung
Ziel dieses Projekts wäre es, ein Modell für maschinelles Lernen zu entwickeln, mit dem das Stundengehalt von Personen anhand ihres Lebenslauftextes als Eingabe vorhergesagt werden kann.
Mit dem oben definierten Framework ist es einfach, das Problem zu definieren. Wir können X = {x 1 , x 2 ,…, x n } als Lebensläufe von Benutzern definieren, wobei jedes Merkmal auf einfachste Weise die Häufigkeit sein kann, mit der dieses Wort vorkommt. Dann ist die Antwort wirklich bewertet, wir versuchen, das Stundengehalt von Einzelpersonen in Dollar vorherzusagen.
Diese beiden Überlegungen reichen aus, um den Schluss zu ziehen, dass das vorgestellte Problem mit einem überwachten Regressionsalgorithmus gelöst werden kann.
Problem Definition
Problem Definitionist wahrscheinlich eine der komplexesten und am meisten vernachlässigten Phasen in der Big-Data-Analyse-Pipeline. Um das Problem zu definieren, das ein Datenprodukt lösen würde, ist Erfahrung erforderlich. Die meisten Aspiranten von Datenwissenschaftlern haben in dieser Phase wenig oder keine Erfahrung.
Die meisten Big-Data-Probleme können folgendermaßen kategorisiert werden:
- Überwachte Klassifizierung
- Überwachte Regression
- Unbeaufsichtigtes Lernen
- Rang lernen lernen
Lassen Sie uns nun mehr über diese vier Konzepte erfahren.
Überwachte Klassifizierung
Ausgehend von einer Matrix von Merkmalen X = {x 1 , x 2 , ..., x n } entwickeln wir ein Modell M, um verschiedene Klassen vorherzusagen, die als y = {c 1 , c 2 , ..., c n } definiert sind . Beispiel: Angesichts der Transaktionsdaten von Kunden in einem Versicherungsunternehmen ist es möglich, ein Modell zu entwickeln, das vorhersagt, ob ein Kunde abwandern würde oder nicht. Letzteres ist ein binäres Klassifizierungsproblem, bei dem es zwei Klassen oder Zielvariablen gibt: Abwanderung und nicht Abwanderung.
Andere Probleme beinhalten die Vorhersage von mehr als einer Klasse. Wir könnten an einer Ziffernerkennung interessiert sein, daher würde der Antwortvektor wie folgt definiert: y = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} Ein Modell nach dem Stand der Technik wäre ein Faltungs-Neuronales Netzwerk, und die Matrix von Merkmalen würde als die Pixel des Bildes definiert.
Überwachte Regression
In diesem Fall ist die Problemdefinition dem vorherigen Beispiel ziemlich ähnlich. Der Unterschied hängt von der Antwort ab. In einem Regressionsproblem, der Antwort y ∈ ∈, bedeutet dies, dass die Antwort einen reellen Wert hat. Zum Beispiel können wir ein Modell entwickeln, um das Stundengehalt von Personen anhand des Korpus ihres Lebenslaufs vorherzusagen.
Unbeaufsichtigtes Lernen
Das Management dürstet oft nach neuen Erkenntnissen. Segmentierungsmodelle können diese Erkenntnisse liefern, damit die Marketingabteilung Produkte für verschiedene Segmente entwickeln kann. Ein guter Ansatz für die Entwicklung eines Segmentierungsmodells besteht darin, Merkmale auszuwählen, die für die gewünschte Segmentierung relevant sind, anstatt an Algorithmen zu denken.
In einem Telekommunikationsunternehmen ist es beispielsweise interessant, Kunden nach ihrer Handynutzung zu segmentieren. Dies würde bedeuten, Features zu ignorieren, die nichts mit dem Segmentierungsziel zu tun haben, und nur diejenigen einzubeziehen, die dies tun. In diesem Fall werden Funktionen wie die Anzahl der in einem Monat verwendeten SMS, die Anzahl der eingehenden und ausgehenden Minuten usw. ausgewählt.
Ranking lernen
Dieses Problem kann als Regressionsproblem angesehen werden, weist jedoch besondere Merkmale auf und verdient eine gesonderte Behandlung. Das Problem besteht darin, dass eine Sammlung von Dokumenten angegeben wird, um bei einer Abfrage die relevanteste Reihenfolge zu finden. Um einen überwachten Lernalgorithmus zu entwickeln, muss angegeben werden, wie relevant eine Bestellung bei einer Abfrage ist.
Es ist wichtig zu beachten, dass zur Entwicklung eines überwachten Lernalgorithmus die Trainingsdaten gekennzeichnet werden müssen. Dies bedeutet, dass wir zum Trainieren eines Modells, das beispielsweise Ziffern aus einem Bild erkennt, eine erhebliche Anzahl von Beispielen von Hand beschriften müssen. Es gibt Webdienste, die diesen Prozess beschleunigen können und häufig für diese Aufgabe verwendet werden, z. B. Amazon Mechanical Turk. Es ist erwiesen, dass Lernalgorithmen ihre Leistung verbessern, wenn sie mit mehr Daten versorgt werden. Daher ist die Kennzeichnung einer angemessenen Anzahl von Beispielen beim überwachten Lernen praktisch obligatorisch.