Ich arbeite an einer gemeinnützigen Organisation, bei der wir versuchen, potenziellen Universitätsbewerbern zu helfen, indem wir sie mit Alumni zusammenbringen, die ihre Erfahrungen / Weisheiten teilen möchten. Im Moment geschieht dies manuell. Ich werde also zwei Tische haben, einen mit Studenten und einen mit Alumni (sie haben möglicherweise einige Gemeinsamkeiten, aber nicht unbedingt alle).
Derzeit werden die Mitglieder von Tabelle 1 manuell mit denen in Tabelle 2 abgeglichen. Wir werden auch nach dem Spiel Informationen sammeln ("War es ein gutes Spiel? Bitte bewerten Sie es auf einer Skala von 1 bis 10"). Es wird also ungefähr so aussehen:
Ich möchte für diesen Prozess einen Lernalgorithmus verwenden. Ich kenne mich mit maschinellem Lernen aus, bin aber immer noch ein Anfänger (daher ist es auch eine Gelegenheit für mich, mehr darüber zu lernen), aber ich kann mich nicht darum kümmern, wie Sie diese Art des überwachten Lernens durchführen würden Wenn Sie zwei Sets haben, die beide mehrere Funktionen haben. Welche Art von Matching-Algorithmen stehen dafür zur Verfügung? (Außerdem arbeite ich lieber in R)
(Übrigens wäre ich dankbar, wenn Sie mich einfach in die richtige Richtung weisen könnten, und ich werde versuchen, darüber zu lesen und es selbst zu lösen. Außerdem weiß ich, wie frustrierend es ist, bereits beantwortete Fragen zu sehen - Wenn dies der Fall ist, zögern Sie bitte nicht, mich zu informieren, ohne die Frage zu beantworten. Ich habe bereits versucht, bei Google und StackExchange nach verschiedenen Zeichenfolgen zu suchen, finde aber meistens Vorlesungsfolien zur Graphentheorie, die nicht zu sein scheinen was ich suche (obwohl es nur sein kann, weil es ein bisschen über meinem Kopf ist). Vielen Dank!)
quelle
Antworten:
Sie können versuchen, dieses Problem als Empfehlungssystemsituation einzustufen. Wo Sie Ihre Benutzer (potenzielle Studenten) und Artikel (Alumni) haben und den Benutzern einen Artikel empfehlen möchten.
Es ist keine perfekte Anpassung, da Sie nur einen Artikel für jeden Benutzer möchten und nicht für jeden Benutzer vorherige Übereinstimmungsdaten haben. Sie könnten diese Idee jedoch etwas weiter untersuchen. Ich wende diese Techniken auf das Rekrutierungsproblem an, vergleiche Benutzer mit Stellenangeboten und habe einige Erfolge.
Versuchen Sie, ein wenig über Empfehlungssysteme zu lesen. Zunächst empfehle ich Kapitel 9 des Mining massiver Datensätze. Es ist wirklich einführend, bietet aber einen guten Überblick über die gängigsten Techniken.
quelle
Ich hätte das Problem in zwei Teile geteilt:
Lassen Sie uns zunächst das Vorhersageproblem diskutieren. Ich denke, Sie sollten das Matching der Paare als überwachtes Lernproblem und nicht als Empfehlungsproblem behandeln. Wie João Almeida schrieb, hat ein neuer Student keine früheren Beziehungen zu Alumni.
Sogar der Alumnus wird nur sehr wenige frühere Beziehungen haben. Ich hätte jedem Alumni einige Funktionen hinzugefügt, die auf Aggregationen basieren (z. B. die Anzahl der vergangenen Beziehungen, das Verhältnis der vergangenen guten Übereinstimmungen).
Danach sollten Sie mit 'Match?' Einen Datensatz der letzten Paare erstellen. als das Konzept. Es ist nicht klar, ob Sie eine gute Übereinstimmungsregel lernen können, selbst wenn sie existiert. Ich denke, dass Ihr Datensatz ziemlich klein ist. Wenn die Wahrscheinlichkeit einer Übereinstimmung gering ist, liegt möglicherweise ein Ungleichgewicht vor. Wie AN6U5 kommentierte, sind Größe und Gewicht ziemlich seltsame Merkmale, um Schüler an Alumnus anzupassen. Berechnen Sie die Beziehungen zwischen den Merkmalen und dem Konzept (z. B. gegenseitige Informationen , Pearson-Korrelation ), um festzustellen, ob Sie nützliche Merkmale haben.
Was die zweite Frage betrifft, so haben Sie, selbst wenn Sie gut vorhersagen können, ob ein Paar gut zusammenpasst, immer noch ein algorithmisches Problem, welches Paar verwendet werden soll. Stellen Sie sich einen "Super-Alumni" vor, der zu jedem Studenten passt. Sie möchten es nicht einem "Super-Studenten" zuordnen, sondern einem Studenten, dass es schwierig sein wird, es anderen Alumni zuzuordnen. Zum Glück gibt es passende Algorithmen, die Sie verwenden können. Erstellen Sie ein Diagramm mit den Schülern und dem Alumnus als Knoten. Erstellen Sie eine Kante, wenn Sie eine gute Übereinstimmung vorhersagen, und führen Sie darauf einen Übereinstimmungsalgorithmus aus.
quelle