Vés al contingut

SpaCy

De la Viquipèdia, l'enciclopèdia lliure
spaCy
Modifica el valor a Wikidata

Tipusprogramari lliure i de codi obert, natural language processing software (en) Tradueix i research tool (en) Tradueix Modifica el valor a Wikidata
Versió inicialfebrer 2015 Modifica el valor a Wikidata
Versió estable
3.8.4 (14 gener 2025) Modifica el valor a Wikidata
Llicènciallicència MIT Modifica el valor a Wikidata
Característiques tècniques
Escrit enPython Modifica el valor a Wikidata
Equip
Desenvolupador(s)Matt Honnibal Modifica el valor a Wikidata
Més informació
Lloc webspacy.io (anglès) Modifica el valor a Wikidata
Stack ExchangeEtiqueta Modifica el valor a Wikidata


X: spacy_io Modifica el valor a Wikidata

spaCy (/spˈs/ spay-SEE) és una biblioteca de programari de codi obert per al processament avançat del llenguatge natural, escrita en els llenguatges de programació Python i Cython. La biblioteca es publica sota la llicència MIT i els seus principals desenvolupadors són Matthew Honnibal i Ines Montani, els fundadors de l'empresa de programari Explosion.

A diferència de NLTK, que s'utilitza àmpliament per a la docència i la recerca, spaCy se centra en proporcionar programari per a ús en producció.[1][2] spaCy també admet fluxos de treball d'aprenentatge profund que permeten connectar models estadístics entrenats per biblioteques d'aprenentatge automàtic populars com TensorFlow, PyTorch o MXNet a través de la seva pròpia biblioteca d'aprenentatge automàtic Thinc.[3][4] Utilitzant Thinc com a backend, spaCy presenta models de xarxes neuronals convolucionals per a l'etiquetatge de categories gramaticals, l'anàlisi de dependències, la categorització de text i el reconeixement d'entitats amb nom (NER). Hi ha models de xarxes neuronals estadístiques preconstruïts per realitzar aquestes tasques disponibles per a 23 idiomes, inclosos l'anglès, el portuguès, el castellà, el rus i el xinès, i també hi ha un model NER multilingüe. La compatibilitat addicional amb la tokenització per a més de 65 idiomes permet als usuaris entrenar models personalitzats en els seus propis conjunts de dades.[5]

Història

[modifica]
  • La versió 1.0 es va publicar el 19 d'octubre de 2016 i incloïa suport preliminar per a fluxos de treball d'aprenentatge profund mitjançant la compatibilitat amb pipelines de processament personalitzades.[6] A més, incloïa un comparador de regles que admetia anotacions d'entitats i una API d'entrenament documentada oficialment.
  • La versió 2.0 es va publicar el 7 de novembre de 2017 i va introduir models de xarxes neuronals convolucionals per a 7 idiomes diferents.[7] També admetia components de canalització de processament personalitzats i atributs d'extensió, i incloïa un component de classificació de text entrenable integrat.
  • La versió 3.0 es va publicar l'1 de febrer de 2021 i va introduir pipelines basats en transformadors d'última generació.[8] També va introduir un nou sistema de configuració i flux de treball d'entrenament, així com pistes de tipus i plantilles de projecte. Aquesta versió va deixar de ser compatible amb Python 2.

Característiques principals

[modifica]

Extensions i visualitzadors

[modifica]
Dependency parse tree visualization generated with the displaCy visualizer
Visualització d'arbre d'anàlisi sintàctica de dependències generada amb el visualitzador displaCy

spaCy inclou diverses extensions i visualitzacions disponibles com a biblioteques gratuïtes i de codi obert:

  • Thinc: Una biblioteca d'aprenentatge automàtic optimitzada per a l'ús de la CPU i l'aprenentatge profund amb entrada de text.
  • sense2vec: Una biblioteca per calcular similituds de paraules, basada en Word2vec.
  • displaCy: Un visualitzador d'arbre d'anàlisi sintàctica de dependències de codi obert construït amb JavaScript, CSS i SVG.
  • displaCyENT: Un visualitzador d'entitats amb nom de codi obert construït amb JavaScript i CSS.

Referències

[modifica]
  1. «Facts & Figures - spaCy» (en anglès). spacy.io. [Consulta: 4 abril 2020].
  2. Bird, Steven; Klein, Ewan; Loper, Edward; Baldridge, Jason Proceedings of the Third Workshop on Issues in Teaching Computational Linguistics, ACL, 2008, pàg. 62. DOI: 10.3115/1627306.1627317 [Consulta: free].
  3. «PyTorch, TensorFlow & MXNet» (en anglès). thinc.ai. [Consulta: 4 abril 2020].
  4. «explosion/thinc» (en anglès). GitHub. [Consulta: 30 desembre 2016].
  5. «Models & Languages | spaCy Usage Documentation» (en anglès). spacy.io. [Consulta: 10 març 2020].
  6. «explosion/spaCy» (en anglès). GitHub. [Consulta: 8 febrer 2021].
  7. «explosion/spaCy» (en anglès). GitHub. [Consulta: 8 febrer 2021].
  8. «explosion/spaCy» (en anglès). GitHub. [Consulta: 8 febrer 2021].
  9. «Models & Languages - spaCy» (en anglès). spacy.io. [Consulta: 8 febrer 2021].
  10. «Models & Languages | spaCy Usage Documentation» (en anglès). spacy.io. [Consulta: 8 febrer 2021].
  11. «Benchmarks | spaCy Usage Documentation» (en anglès). spacy.io. [Consulta: 8 febrer 2021].