Trainingdata voorbereiden

Natural Language Processing met spaCy

Azadeh Mobasher

Principal data scientist

Trainingsstappen

 

  1. Annoteer en bereid inputdata voor
  2. Initialiseer de modelgewichten
  3. Voorspel enkele voorbeelden met de huidige gewichten
  4. Vergelijk voorspellingen met de juiste antwoorden
  5. Gebruik een optimizer om gewichten te berekenen die de prestaties verbeteren
  6. Werk gewichten licht bij
  7. Ga terug naar stap 3.
Natural Language Processing met spaCy

Data annoteren en voorbereiden

  • Eerst: bereid trainingsdata in het vereiste formaat
  • Na het verzamelen van data, annoteren we die
  • Annotatie is het labelen van intenties, entiteiten, etc.
  • Dit is een voorbeeld van geannoteerde data:
annotated_data = {
"sentence": "An antiviral drugs used against influenza is neuraminidase inhibitors.",
"entities": {
             "label": "Medicine",
             "value": "neuraminidase inhibitors",
    }
}
Natural Language Processing met spaCy

Data annoteren en voorbereiden

  • Nog een voorbeeld van geannoteerde data:

 

annotated_data = {
"sentence": "Bill Gates visited the SFO Airport.",
"entities": [{"label": "PERSON", "value": "Bill Gates"}, 
             {"label": "LOC", "value": "SFO Airport"}]
}
Natural Language Processing met spaCy

spaCy-trainingsdataformaat

  • Data-annotatie maakt trainingsdata klaar voor wat het model moet leren
  • Het trainingsdataset moet als dictionary worden opgeslagen:
training_data = [
("I will visit you in Austin.", {"entities": [(20, 26, "GPE")]}),
("I'm going to Sam's house.", {"entities": [(13,18, "PERSON"), (19, 24, "GPE")]}),
("I will go.", {"entities": []})
]

Drie voorbeeldparen:

  • Elk paar heeft een zin als eerste element
  • Het tweede element is een lijst met geannoteerde entiteiten en begin- en eindposities
Natural Language Processing met spaCy

Example-object voor training

  • We kunnen de ruwe tekst niet direct aan spaCy voeren

  • We moeten voor elk trainingsvoorbeeld een Example-object maken

import spacy
from spacy.training import Example

nlp = spacy.load("en_core_web_sm")

doc = nlp("I will visit you in Austin.")

annotations = {"entities": [(20, 26, "GPE")]} example_sentence = Example.from_dict(doc, annotations)
print(example_sentence.to_dict())
Natural Language Processing met spaCy

Laten we oefenen!

Natural Language Processing met spaCy

Preparing Video For Download...