2017-07-03 5 views
0

Ich arbeite an einem Projekt, um Kurzantwortfragen für eine Bildungseinrichtung zu bewerten. Hier ist, was ich tun muss:NLP kurze Textmarkierung Ansatz

Lehrer hat eine Beispielantwort (uns im Voraus bekannt). Beispielantwort hat 3-4 Schlüsselwörter. Student gibt die Antwort ein. Die Anwendung sollte die Antwort des Schülers wie folgt auswerten:

  • Die Kontextbedeutung dieser Schlüsselwörter sollte in der Antwort mit gleichen/ähnlichen Beziehungen wie in Beispielantwort vorhanden sein.
  • Von den Studenten wird erwartet, dass sie die Synonyme der Schlüsselwörter verwenden.
  • Richtige Beziehungen der Synonyme werden ebenfalls erwartet.
  • Studenten dürfen nicht die gleichen Schlüsselwörter verwenden (keine Markierungen, wenn sie die Schlüsselwörter in ihrer Antwort verwenden).
  • Antworten sind nicht mehr als 2-3 Sätze.
  • Kann mir jemand sagen, was ist ein guter Ansatz dafür? Suchen Sie nach einem Ausgangspunkt, um dies zu erreichen. Ich bin vertraut mit den Grundlagen des NLP, aber nicht mit vielen Tools, die dort zur Verfügung stehen.

    Antwort

    1

    Es gibt eine Teildisziplin der Angewandten Linguistik, genannt "computer assisted language learning" (often CALL for short), mit der ich nicht so vertraut bin, aber wahrscheinlich einige Einsichten hat, die Sie nutzen möchten. Es geht mehr um die automatische Benotung usw. von beispielsweise Aufsätzen von Nicht-Muttersprachlern, aber ich vermute, dass Sie sich vielleicht mit der CALL-Forschung vertraut machen möchten.

    Dies ist ein wirklich schweres Problem und nicht allgemein gelöst. Am Ende wollen Sie einen Menschen in der Schleife - das heißt, das System vergibt Noten, und der Ausbilder muss abhaken, dass sie zustimmen. Sowohl das NLP ist nicht gut genug und das Verständnis von Sprache und Wissen ist nicht klar genug, dass Sie ein vollständiges und genaues Bild der Bedeutung von Text automatisch erhalten können.

    Mit dieser Einschränkung im Hinterkopf, würde ich damit beginnen, so viele tatsächliche Beispiele von Lehrer Antworten und korrekte und falsche Schüler Antworten, wie Sie nur können. Sie werden aus zwei Gründen eine Art Goldstandard-Daten benötigen: um zu verstehen, wie gut Ihr System funktioniert (Bewertung) und um zu verstehen, was eine richtige oder falsche Antwort (Einsicht) macht. Ohne tatsächliche Beispiele ist es unwahrscheinlich, dass Sie ein funktionierendes System haben werden; mit konkreten Beispielen wird es immer noch schwierig sein, aber jetzt weißt du, wie gut du es machst.

    Als ersten Schritt, anstatt etwas Phantasie, tun Sie a tf.idf weighted bag-of-words model. Verwenden Sie die Kosinus-Distanz, um die Antworten von Lehrern/Schülern zu vergleichen und um zu sehen, wie gut Sie anhand der Kosinus-Distanz richtig oder falsch vorhersagen können. Das wird natürlich nicht perfekt sein, aber es wird Ihnen eine gute Basis geben, um Ihre anderen Ergebnisse zu vergleichen.

    Sie könnten versuchen, die tf.idf Tasche von Wörtern mit einer Art von Word2Vec (W2V) -System als nächstes zu ersetzen. W2V hilft dabei, einige Probleme der Synonymie zu lösen, aber Sie werden eine Menge genre-spezifischen Text benötigen, damit es richtig funktioniert, und ich bezweifle, dass Sie mit dieser Anwendung genug haben werden.

    Von da an begann ich mit der Verwendung eines Parsers zu spielen und versuchte, Beziehungen zwischen den Wörtern zu verwenden, um die beabsichtigte Bedeutung zu erhalten. Das ist aber sehr weit unten. Holen Sie sich diese Daten zuerst.