5 unterhaltsame NLP-Projekte für absolute Anfänger5 unterhaltsame NLP-Projekte für absolute Anfänger
Bild vom Autor | Canva

# Einführung

Ich persönlich finde es erstaunlich, dass Pc überhaupt Sprache verarbeiten können. Es ist, als würde man einem Child beim Sprechenlernen zusehen, aber in Code und Algorithmen. Es fühlt sich manchmal seltsam an, aber genau das macht die Verarbeitung natürlicher Sprache (NLP) so interessant. Können Sie einen Pc tatsächlich dazu bringen, Ihre Sprache zu verstehen? Das ist der lustige Teil. Wenn Sie meine unterhaltsame Projektreihe zum ersten Mal lesen, möchte ich nur klarstellen, dass das Ziel hier darin besteht, projektbasiertes Lernen zu fördern, indem einige der besten praktischen Projekte hervorgehoben werden, die Sie ausprobieren können, von einfachen bis hin zu leicht fortgeschrittenen Projekten. In diesem Artikel habe ich ausgewählt Fünf Projekte aus wichtigen NLP-Bereichen, damit Sie einen umfassenden Eindruck davon bekommen, wie die Dinge funktionierenvon den Grundlagen bis hin zu eher angewandten Konzepten. Einige dieser Projekte verwenden bestimmte Architekturen oder Modelle, und es ist hilfreich, wenn Sie deren Struktur verstehen. Wenn Sie additionally das Gefühl haben, dass Sie bestimmte Konzepte zuerst auffrischen müssen, machen Sie sich keine Sorgen, ich habe im Abschlussabschnitt einige zusätzliche Lernressourcen hinzugefügt 🙂

# 1. Tokenizer von Grund auf erstellen

Projekt 1: So erstellen Sie einen Bert WordPiece-Tokenizer in Python und HuggingFace
Projekt 2: Lassen Sie uns den GPT-Tokenizer erstellen

Die Textvorverarbeitung ist der erste und wichtigste Teil jeder NLP-Aufgabe. Dadurch kann Rohtext in etwas umgewandelt werden, das eine Maschine tatsächlich verarbeiten kann, indem er in kleinere Einheiten wie Wörter, Unterwörter oder sogar Bytes zerlegt wird. Um eine gute Vorstellung davon zu bekommen, wie es funktioniert, empfehle ich Ihnen, sich diese beiden großartigen Projekte anzusehen. Der erste führt Sie durch die Erstellung eines BERT WordPiece-Tokenizers in Python mit Umarmendes Gesicht. Es zeigt, wie Wörter in kleinere Unterworteinheiten aufgeteilt werden, beispielsweise durch das Hinzufügen von „##“, um Teile eines Wortes zu kennzeichnen. Dies hilft Modellen wie BERT, mit seltenen oder falsch geschriebenen Wörtern umzugehen, indem es sie in bekannte Teile zerlegt. Das zweite Video, „Lasst uns den GPT-Tokenizer bauen“ von Andrej Karpathyist etwas lang, aber so GOLD Ressource. Er erklärt, wie GPT die Byte-Pair-Encoding (BPE) auf Byte-Ebene verwendet, um gängige Byte-Sequenzen zusammenzuführen und Textual content, einschließlich Leerzeichen, Satzzeichen und sogar Emojis, flexibler zu verarbeiten. Ich empfehle wirklich, sich das anzusehen, wenn Sie sehen möchten, was tatsächlich passiert, wenn Textual content in Token umgewandelt wird. Sobald Sie mit der Tokenisierung vertraut sind, wird alles andere im NLP viel klarer.

# 2. NER in Aktion: Namen, Daten und Organisationen erkennen

Projekt 1: Named Entity Recognition (NER) in Python: Vorab trainierte und benutzerdefinierte Modelle
Projekt 2: Erstellen eines Entitätsextraktionsmodells mit BERT

Sobald Sie verstanden haben, wie Textual content dargestellt wird, besteht der nächste Schritt darin, zu lernen, wie Sie ihm tatsächlich eine Bedeutung entlocken können. Ein guter Ausgangspunkt ist die Named Entity Recognition (NER), die einem Modell beibringt, Entitäten in einem Satz zu erkennen. Beispielsweise sollte ein gutes NER-System bei „Apple hat diesen Januar einen Allzeithoch-Aktienkurs von 143 Greenback erreicht“ „Apple“ als Organisation, „143 Greenback“ als Geld und „diesen Januar“ als Datum auswählen. Das erste Video zeigt, wie man vorab trainierte NER-Modelle mit Bibliotheken wie verwendet spacig Und Umarmende Gesichtstransformatoren. Sie erfahren, wie Sie Textual content eingeben, Vorhersagen für Entitäten erhalten und diese sogar visualisieren. Das zweite Video geht noch einen Schritt weiter und führt Sie durch den Aufbau eines Entitätsextraktionssystems, indem Sie BERT selbst optimieren. Anstatt sich auf eine vorgefertigte Bibliothek zu verlassen, programmieren Sie die Pipeline: tokenisieren Sie Textual content, richten Sie Token an Entitätsbezeichnungen aus und optimieren Sie das Modell PyTorch oder TensorFlowund verwenden Sie es dann, um neuen Textual content mit Tags zu versehen. Ich würde dies als Ihr zweites Projekt empfehlen, da NER eine dieser Aufgaben ist, die NLP wirklich praktischer erscheinen lässt. Sie beginnen zu verstehen, wie Maschinen verstehen können, „wer was, wann und wo getan hat“.

# 3. Textklassifizierung: Stimmungsvorhersage mit BERT

Projekt: Textklassifizierung | Stimmungsanalyse mit BERT mit Huggingface, PyTorch und Python-Tutorial

Nachdem Sie gelernt haben, wie man Textual content darstellt und Entitäten extrahiert, besteht der nächste Schritt darin, Modellen das Zuweisen von Beschriftungen zu Textual content beizubringen, wobei die Stimmungsanalyse ein klassisches Beispiel ist. Dies ist ein ziemlich altes Projekt, und es gibt eine Änderung, die Sie möglicherweise vornehmen müssen, um es zum Laufen zu bringen (sehen Sie sich die Kommentare zum Video an), aber ich empfehle es trotzdem, weil es auch erklärt, wie BERT funktioniert. Wenn Sie mit Transformatoren noch nicht vertraut sind, ist dies ein guter Anfang. Das Projekt führt Sie durch die Verwendung eines vorab trainierten BERT-Modells über Hugging Face, um Textual content wie Filmrezensionen, Tweets oder Produktfeedback zu klassifizieren. Im Video sehen Sie, wie Sie einen beschrifteten Datensatz laden, den Textual content vorverarbeiten und BERT optimieren, um vorherzusagen, ob jedes Beispiel positiv, negativ oder impartial ist. Es ist eine klare Möglichkeit, zu sehen, wie Tokenisierung, Modelltraining und Bewertung in einem Arbeitsablauf zusammenkommen.

# 4. Erstellen von Textgenerierungsmodellen mit RNNs und LSTMs

Projekt 1: KI zur Textgenerierung – Vorhersage des nächsten Wortes in Python
Projekt 2: Textgenerierung mit LSTM und Rechtschreibung mit Nabil Hassein

Bei der Sequenzmodellierung geht es um Aufgaben, bei denen die Ausgabe eine Textsequenz ist, und sie ist ein großer Teil der Funktionsweise moderner Sprachmodelle. Diese Projekte konzentrieren sich auf die Textgenerierung und die Vorhersage des nächsten Wortes und zeigen, wie eine Maschine lernen kann, einen Satz Wort für Wort fortzusetzen. Das erste Video führt Sie durch den Aufbau eines einfachen, auf einem wiederkehrenden neuronalen Netzwerk (RNN) basierenden Sprachmodells, das das nächste Wort in einer Sequenz vorhersagt. Es handelt sich um eine klassische Übung, die wirklich zeigt, wie ein Modell Muster, Grammatik und Struktur in Texten aufnimmt, was Modelle wie GPT in viel größerem Maßstab tun. Das zweite Video nutzt ein Lengthy Brief-Time period Reminiscence (LSTM), um kohärenten Textual content aus Prosa oder Code zu generieren. Sie werden sehen, wie das Modell jeweils ein Wort oder Zeichen einspeist, wie Sie Vorhersagen abtasten und sogar wie Tips wie Temperatur und Strahlsuche die Kreativität des generierten Textes steuern. Diese Projekte machen wirklich deutlich, dass die Textgenerierung keine Zauberei ist, sondern dass es darum geht, Vorhersagen auf intelligente Weise zu verketten.

# 5. Aufbau eines Seq2Seq-Maschinenübersetzungsmodells

Projekt: PyTorch Seq2Seq-Tutorial für maschinelle Übersetzung

Das Abschlussprojekt führt NLP über die englische Sprache hinaus und in reale Aufgaben mit Schwerpunkt auf maschineller Übersetzung. In diesem Fall bauen Sie ein Encoder-Decoder-Netzwerk auf, wobei ein Netzwerk den Quellsatz liest und codiert und ein anderes ihn in die Zielsprache decodiert. Dies ist im Grunde das, was Google Translate und andere Übersetzungsdienste tun. Das Tutorial zeigt auch Aufmerksamkeitsmechanismen, damit sich der Decoder auf die richtigen Teile der Eingabe konzentrieren kann, und erklärt, wie man an parallelem Textual content trainiert und Übersetzungen mit Metriken wie dem BLEU-Rating (Bilingual Analysis Understudy) bewertet. Dieses Projekt vereint alles, was Sie bisher gelernt haben, in einer praktischen NLP-Aufgabe. Selbst wenn Sie schon einmal Übersetzungs-Apps verwendet haben, erhalten Sie durch die Erstellung eines Spielzeugübersetzers einen praktischen Eindruck davon, wie diese Systeme tatsächlich hinter den Kulissen funktionieren.

# Abschluss

Damit sind wir am Ende der Liste angelangt. Jedes Projekt deckt einen der fünf Hauptbereiche des NLP ab: Tokenisierung, Informationsextraktion, Textklassifizierung, Sequenzmodellierung und angewandtes mehrsprachiges NLP. Wenn Sie sie ausprobieren, bekommen Sie einen guten Eindruck davon, wie NLP-Pipelines von Anfang bis Ende funktionieren. Wenn Sie diese Projekte hilfreich fanden, geben Sie den Erstellern des Tutorials einen Daumen nach oben und teilen Sie uns mit, was Sie gemacht haben.

Um mehr zu erfahren, die Stanford-Kurs CS224N: Verarbeitung natürlicher Sprache mit Deep Studying ist eine ausgezeichnete Ressource. Und wenn Sie gerne durch Projekte lernen, können Sie sich auch unsere anderen ansehen „5 lustige Projekte“ Serie:

Kanwal Mehreen ist ein Ingenieur für maschinelles Lernen und ein technischer Redakteur mit einer großen Leidenschaft für Datenwissenschaft und die Schnittstelle zwischen KI und Medizin. Sie ist Mitautorin des E-Books „Maximizing Productiveness with ChatGPT“. Als Google Technology Scholar 2022 für APAC setzt sie sich für Vielfalt und akademische Exzellenz ein. Sie ist außerdem als Teradata Variety in Tech Scholar, Mitacs Globalink Analysis Scholar und Harvard WeCode Scholar anerkannt. Kanwal ist ein leidenschaftlicher Verfechter von Veränderungen und hat FEMCodes gegründet, um Frauen in MINT-Bereichen zu stärken.

Von admin

Schreibe einen Kommentar

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