Ultimativer Leitfaden zur Textbereinigung für NLP vor dem maschinellen Lernen

0

Gehen Sie einen ultimativen Leitfaden durch, um Materialien für maschinelles Lernen mit String-Datentypen vorzubereiten. Oder wir rufen Textreinigung für NLP auf, bevor wir maschinelles Lernen implementieren.

In diesem Artikel würde ich einen ultimativen Leitfaden zur Vorbereitung von Materialien für maschinelles Lernen mit String-Datentypen durchgehen. Oder wir rufen Textreinigung für NLP auf, bevor wir maschinelles Lernen implementieren. Am Ende dieses Artikels können Sie mit Python beginnen, String-Daten in Ihrem Projekt zu bereinigen.

Inhaltsverzeichnis: Ultimativer Leitfaden zur Textbereinigung für NLP in der Vorbereitung auf maschinelles Lernen

Was ist Textreinigung für NLP im maschinellen Lernen?

Bei der Textbereinigung handelt es sich um den Prozess der Aufbereitung von Rohtext für NLP (Natural Language Processing), damit Maschinen menschliche Sprache direkt und klar verstehen können. Im Wesentlichen umfasst es drei Hauptteile zu allen Projekten, die Sie möglicherweise durchführen werden.

  • Textreinigung und Entfernung von Verunreinigungen
  • Tokenisierung und Gruppierung nach Semantik
  • Merkmals- und Zieldatenstruktur

Fallnormalisierung

Unterschiedliche Groß-/Kleinschreibung verschiedener Wörter oder gleiche Wörter können dazu führen, dass der Computer Ihren Inhalt und Ihre Semantik nicht versteht. Als Erstes finden Sie hier das Codebeispiel zum Festlegen einer Standard-Großschreibung aller Wörter

abc = content.lower()

Eliminieren Sie Unicode-Zeichen

Der Inhalt enthält eine ganze Reihe von Unicode-Zeichen wie Emojis, URLs, E-Mail-Adressen usw. Tatsächlich müssen diese Zeichen gut gehandhabt werden, sonst kann es auch Computer verwirren. Nachfolgend finden Sie zwei Codebeispiele für reguläre Ausdrücke zur Verarbeitung aller URLs und E-Mail-Adressen.

URLs:

content = re.sub(r"(@\[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)|^rt|http.+?", "", content)

E-Mails:

content = re.sub(r"([A-z0-9._%+-]+@[A-z0-9.-]+\.[Az]{2,4}

", "", content)

Tokenisieren Sie alle Inhalte als einzelnen Wert in einer Liste

Nachdem wir alle unnötigen Unicode-Zeichen entfernt haben, müssen wir aus dem Inhalt eine Liste erstellen, indem wir ihn tokenisieren.

Hier ist ein Beispiel mit Python

word_tokens = word_tokenize ( content )

Behandeln Sie Stoppwörter

In der Sprache gibt es ziemlich viele Wörter, die der Bedeutung keinen Mehrwert verleihen können, und die meisten davon sind eine Art Sprachgrammatik. Der Umgang mit Stoppwörtern besteht also darin, die Verwirrung von Computern weiter zu verringern, indem diese Art von Wörtern reduziert wird.

Hier ist das Beispiel mit NLTK, einem der beliebtesten Pakete in Python

   nltk . download ( 'stopwords' )

   nltk . download ( 'punkt' )

   nltk . download ( 'wordnet' )

   nltk . data . path . append ( 'nltk_data/corpora/stopwords' )

   nltk . data . path . append ( 'nltk_data/tokenizers/punkt' )

   nltk . data . path . append ( 'nltk_data/corpora/wordnet' )

   stopwords123 = set ( stopwords . words ( 'english' ))

Wenn Sie daran interessiert sind, NLTK-Erstellungsfunktionen und in der Cloud bereitgestellte Apps zu nutzen, aber möglicherweise nicht sicher sind, wie Sie die NLTK-Datenquelle bereitstellen, abonnieren Sie uns bitte im folgenden Format am Ende dieses Artikels.

Zu guter Letzt können wir einen Code schreiben, um alle Stoppwörter aus der Liste zu entfernen, die wir gerade oben tokenisiert haben. Und in der Liste bleiben nur die Kernwerte, Botschaften und Inhalte.

Lemmatisierung

In der menschlichen Sprache gibt es Vergangenheit, Gegenwart und Zukunft. Außerdem gibt es einen Blickwinkel der ersten, zweiten und dritten Person, um die Bedeutung auszudrücken. Die Lemmatisierung ist also eine Methode, um dieses Problem zu lösen und unnötige Wörter oder Tippfehler zu eliminieren.

   lemmatizer = WordNetLemmatizer ()

   for lemmatizedContent in content :

       lemmatizer . lemmatize ( lemmatizedContent )

POS-Tagging für die semantische Verarbeitung

Um die POS-Gesamtsummen großer Inhaltsmengen tabellarisch zu erfassen, müssen wir die Wörter markieren und gruppieren, die auf einem semantischen Zweck basieren. In der menschlichen Sprache gibt es verschiedene Arten von Wörtern wie Substantive, Verben, Adjektive, Adverbien usw. Darüber hinaus kann es sich bei einer Rede um dasselbe Wort mit Variationen handeln.

Daher benötigen wir POS-Tagging, um die Sprachsemantik und den Zweck zu unterscheiden. Es liegt an den Maschinen, diesen Zweck zu verstehen, um ihn nicht zu verwechseln.

Datenvorverarbeitung mit Pandas, Numpy und Scikit Learn

Weitere Einzelheiten zu diesem Thema finden Sie in dem Artikel, den ich zuvor veröffentlicht habe

Tipps zur Datenvorverarbeitung mit Python und Scikit Learn

Vollständige Python-Skripte zur Textbereinigung für NLP im maschinellen Lernen (einschließlich der Handhabung von NLTK-Datendateien in Web-Apps oder DApps oder in der Cloud bereitgestellten Funktionen)

Wenn Sie an vollständigen Python-Skripten zur Textbereinigung für NLP in der Vorbereitung auf maschinelles Lernen interessiert sind, Bitte abonnieren Sie unseren Newsletter , indem Sie die Nachricht „NLP Text Clean + NLTK Data Deployment + Full Scripts and Scraping API Free Token“ hinzufügen . Wir senden Ihnen das Skript zu, sobald das aktuelle App-Skript live ist.

Ich wünsche Ihnen viel Spaß beim Lesen des ultimativen Leitfadens zur Textbereinigung für NLP in der Vorbereitung auf maschinelles Lernen. Wenn ja, unterstützen Sie uns bitte, indem Sie eine der unten aufgeführten Maßnahmen ergreifen, da dies unserem Kanal immer weiterhilft.

  • Unterstützen Sie unseren Kanal und spenden Sie über PayPal ( paypal.me/Easy2digital )
  • Abonnieren Sie meinen Kanal und aktivieren Sie die Benachrichtigungsglocke des Easy2Digital-Youtube-Kanals .
  • Folgen und liken Sie meine Easy2Digital-Facebook-Seite
  • Teilen Sie den Artikel in Ihrem sozialen Netzwerk mit dem Hashtag #easy2digital
  • Sie melden sich für unseren wöchentlichen Newsletter an, um die neuesten Artikel, Videos und Rabattcodes von Easy2Digital zu erhalten
  • Abonnieren Sie unsere monatliche Mitgliedschaft über Patreon, um exklusive Vorteile zu genießen ( www.patreon.com/louisludigital )

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert