Ich muss mich mit einem Textklassifizierungsproblem befassen. Ein Webcrawler durchsucht Webseiten einer bestimmten Domain und ich möchte für jede Webseite herausfinden, ob sie nur zu einer bestimmten Klasse gehört oder nicht. Das heißt, wenn ich diese Klasse Positiv nenne , gehört jede gecrawlte Webseite entweder zur Klasse Positiv oder zur Klasse Nicht-Positiv .
Ich habe bereits eine große Anzahl von Schulungswebseiten für die Klasse Positiv . Aber wie erstelle ich ein Trainingsset für die Klasse Non-Positive, das so repräsentativ wie möglich ist? Ich meine, ich könnte im Grunde alles für diese Klasse verwenden. Kann ich nur einige beliebige Seiten sammeln, die definitiv nicht zur Klasse Positiv gehören ? Ich bin mir sicher, dass die Leistung eines Textklassifizierungsalgorithmus (ich bevorzuge die Verwendung eines Naive Bayes-Algorithmus) stark davon abhängt, welche Webseiten ich für die Klasse Nicht positiv auswähle .
Also, was soll ich tun? Kann mir bitte jemand einen Rat geben? Vielen Dank!
quelle
Antworten:
Der Spy EM-Algorithmus löst genau dieses Problem.
Die Grundidee ist, Ihr Positiv-Set mit einer ganzen Reihe zufällig gecrawlter Dokumente zu kombinieren. Sie behandeln zunächst alle gecrawlten Dokumente als negative Klasse und lernen einen naiven Bayes-Klassifikator für diese Gruppe. Jetzt sind einige dieser gecrawlten Dokumente tatsächlich positiv, und Sie können alle Dokumente, die eine höhere Bewertung als das richtig positive Dokument mit der niedrigsten Bewertung haben, konservativ neu kennzeichnen. Dann iterieren Sie diesen Prozess, bis er sich stabilisiert.
quelle
Hier ist eine gute These zur Einklassifizierung:
In dieser Arbeit wird die Methode der Support Vector Data Description (SVDD) vorgestellt, einer einklassigen Support Vector Machine, die eine minimale Hypersphäre um die Daten herum findet und keine Hyperebene, die die Daten trennt.
In der Arbeit werden auch andere Einklassenklassifikatoren untersucht.
quelle
Für ein gutes Training sind Daten erforderlich, die gute Schätzungen der einzelnen Klassenwahrscheinlichkeiten liefern. Jedes Klassifizierungsproblem umfasst mindestens zwei Klassen. In Ihrem Fall ist die zweite Klasse jemand, der nicht in der positiven Klasse ist. Um mit Bayes oder einer anderen guten Methode eine gute Entscheidungsgrenze zu bilden, sollten möglichst viele Trainingsdaten zufällig aus der Klasse ausgewählt werden. Wenn Sie keine zufällige Auswahl treffen, erhalten Sie möglicherweise eine Stichprobe, die die Form der klassenbedingten Dichten / Verteilungen nicht wirklich wiedergibt und zu einer schlechten Auswahl der Entscheidungsgrenze führen kann.
quelle
Ich stimme Michael zu.
In Bezug auf Ihre Frage zur zufälligen Auswahl; ja: Sie müssen zufällig aus dem komplementären Satz Ihrer "Positiven" auswählen. Wenn Sie sich nicht sicher sind, ob Ihre "Positiven" vollständig als "reine Positiven" definiert sind, können Sie, wenn ich diesen Ausdruck verwende, auch zumindest eine passende Definition für Positive ausprobieren, damit Sie es tun Kontrolle der Variablen, die möglicherweise eine Kontamination der Definition von „positiv“ verursachen. In diesem Fall müssen Sie auch auf der "nicht positiven" Seite die gleichen Variablen entsprechend abgleichen.
quelle
Ein Artikel, der von Interesse sein kann, ist:
Wodurch eine Methode zum Zuweisen eines Texts zu einer Gruppe von Autoren verwendet und erweitert wird, um die Möglichkeit zu nutzen, dass sich der wahre Autor nicht in der Kandidatengruppe befindet. Auch wenn Sie die NSC-Methode nicht verwenden, können die in diesem Artikel enthaltenen Ideen hilfreich sein, um über das weitere Vorgehen nachzudenken.
quelle