explosion / explosion/spacy-course

Building a training loop - update example from spacy101 v2.x tutorial

Open
#123 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
2.4k
Forks
377
PR merge metrics
No merged PRs in 30d

Description

Hello, can you please indicate how to change the code below to align with Spacy's current v3.2.x?

Thanks for your support,

Achilleas

```
import spacy
import random
import json

with open("exercises/en/gadgets.json") as f:
TRAINING_DATA = json.loads(f.read())

nlp = spacy.blank("en")
ner = nlp.add_pipe('ner')
ner.add_label("GADGET")

nlp.vocab.vectors.name = 'example'

# Start the training
nlp.begin_training()

# Loop for 10 iterations
for itn in range(10):
# Shuffle the training data
random.shuffle(TRAINING_DATA)
losses = {}

for batch in spacy.util.minibatch(TRAINING_DATA, size=2):
# Batch the examples and iterate over them
texts = [text for text, annotation in batch]
annotations = [annotation for text, annotation in batch]
# Update the model
nlp.update(texts, annotations)
print("{0:.10f}".format(losses['ner']) )
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.