Ich muss ein Programm implementieren, das Datensätze basierend auf einigen Trainingsdaten in 2 Kategorien (wahr / falsch) klassifiziert, und ich habe mich gefragt, welchen Algorithmus / welche Methodik ich betrachten soll. Es scheint eine Menge von ihnen zur Auswahl zu geben - künstliches neuronales Netzwerk, genetischer Algorithmus, maschinelles Lernen, Bayesianische Optimierung usw. usw., und ich war mir nicht sicher, wo ich anfangen sollte. Meine Fragen lauten also: Wie soll ich einen Lernalgorithmus auswählen, den ich für mein Problem verwenden soll?
Wenn dies hilft, ist hier das Problem, das ich lösen muss.
Die Trainingsdaten:
Die Trainingsdaten bestehen aus vielen Zeilen wie folgt:
Precursor1, Precursor2, Boolean (true/false)
Dem Lauf
werde ich eine Reihe von Vorläufern geben.
Dann,
- Ich wähle einen Algorithmus A aus verschiedenen Algorithmen aus (oder generiere dynamisch einen Algorithmus) und wende ihn auf alle möglichen Kombinationen dieser Vorläufer an und sammle die "Datensätze", die ausgegeben werden. Der "Datensatz" besteht aus mehreren Schlüssel-Wert-Paaren *.
Ich wende einen großartigen Algorithmus an und klassifiziere diese Datensätze in 2 Kategorien (wahr / falsch).
Ich werde eine Tabelle generieren, die dasselbe Format wie die Zugdaten hat:
Precursor1, Precursor2, Boolean
Und das ganze Programm wird danach bewertet, wie viele Richtig / Falsch ich richtig gemacht habe.
*: "Record" s wird so aussehen (hoffe das macht Sinn)
Record [1...*] Score
-Precursor1 -Key
-Precursor2 -Value
Es gibt nur eine begrenzte Anzahl möglicher Schlüssel. Datensätze enthalten eine andere Teilmenge dieser Schlüssel (einige Datensätze haben Schlüssel1, Schlüssel2, Schlüssel3 ... andere Datensätze haben Schlüssel3, Schlüssel4 ... usw.).
Ich brauche eigentlich 2 Lernen. Eine ist für Schritt 1. Ich muss ein Modul haben, das die Precursor-Paare usw. betrachtet und entscheidet, welcher Algorithmus angewendet werden soll, um einen Datensatz für den Vergleich auszugeben. Eine andere ist für Schritt 2. Ich benötige ein Modul, das die Sammlung von Datensätzen analysiert und sie in die 2 Kategorien (wahr / falsch) einordnet.
Danke im Voraus!