mirror of
https://github.com/explosion/spaCy.git
synced 2024-11-14 13:47:13 +03:00
81 lines
3.0 KiB
Plaintext
81 lines
3.0 KiB
Plaintext
|
//- 💫 DOCS > USAGE > VISUALIZERS > ENTITIES
|
|||
|
|
|||
|
p
|
|||
|
| The entity visualizer, #[code ent], highlights named entities and
|
|||
|
| their labels in a text.
|
|||
|
|
|||
|
+code("Named Entity example").
|
|||
|
import spacy
|
|||
|
from spacy import displacy
|
|||
|
|
|||
|
text = """But Google is starting from behind. The company made a late push
|
|||
|
into hardware, and Apple’s Siri, available on iPhones, and Amazon’s Alexa
|
|||
|
software, which runs on its Echo and Dot devices, have clear leads in
|
|||
|
consumer adoption."""
|
|||
|
|
|||
|
nlp = spacy.load('custom_ner_model')
|
|||
|
doc = nlp(text)
|
|||
|
displacy.serve(doc, style='ent')
|
|||
|
|
|||
|
+codepen("a73f8b68f9af3157855962b283b364e4", 345)
|
|||
|
|
|||
|
p The entity visualizer lets you customise the following #[code options]:
|
|||
|
|
|||
|
+table(["Name", "Type", "Description", "Default"])
|
|||
|
+row
|
|||
|
+cell #[code ents]
|
|||
|
+cell list
|
|||
|
+cell
|
|||
|
| Entity types to highlight (#[code None] for all types).
|
|||
|
+cell #[code None]
|
|||
|
|
|||
|
+row
|
|||
|
+cell #[code colors]
|
|||
|
+cell dict
|
|||
|
+cell
|
|||
|
| Color overrides. Entity types in lowercase should be mapped to
|
|||
|
| color names or values.
|
|||
|
+cell #[code {}]
|
|||
|
|
|||
|
p
|
|||
|
| If you specify a list of #[code ents], only those entity types will be
|
|||
|
| rendered – for example, you can choose to display #[code PERSON] entities.
|
|||
|
| Internally, the visualizer knows nothing about available entity types and
|
|||
|
| will render whichever spans and labels it receives. This makes it
|
|||
|
| especially easy to work with custom entity types. By default, displaCy
|
|||
|
| comes with colours for all
|
|||
|
| #[+a("/api/annotation#named-entities") entity types supported by spaCy].
|
|||
|
| If you're using custom entity types, you can use the #[code colors]
|
|||
|
| setting to add your own colours for them.
|
|||
|
|
|||
|
+aside-code("Options example").
|
|||
|
colors = {'ORG': 'linear-gradient(90deg, #aa9cfc, #fc9ce7)'}
|
|||
|
options = {'ents': ['ORG'], 'colors': colors}
|
|||
|
displacy.serve(doc, style='ent', options=options)
|
|||
|
|
|||
|
+codepen("f42ec690762b6f007022a7acd6d0c7d4", 300)
|
|||
|
|
|||
|
p
|
|||
|
| The above example uses a little trick: Since the background colour values
|
|||
|
| are added as the #[code background] style attribute, you can use any
|
|||
|
| #[+a("https://tympanus.net/codrops/css_reference/background/") valid background value]
|
|||
|
| or shorthand — including gradients and even images!
|
|||
|
|
|||
|
+h(3, "ent-titles") Adding titles to documents
|
|||
|
|
|||
|
p
|
|||
|
| Rendering several large documents on one page can easily become confusing.
|
|||
|
| To add a headline to each visualization, you can add a #[code title] to
|
|||
|
| its #[code user_data]. User data is never touched or modified by spaCy.
|
|||
|
|
|||
|
+code.
|
|||
|
doc = nlp(u'This is a sentence about Google.')
|
|||
|
doc.user_data['title'] = 'This is a title'
|
|||
|
displacy.serve(doc, style='ent')
|
|||
|
|
|||
|
p
|
|||
|
| This feature is espeically handy if you're using displaCy to compare
|
|||
|
| performance at different stages of a process, e.g. during training. Here
|
|||
|
| you could use the title for a brief description of the text example and
|
|||
|
| the number of iterations.
|