SPACY ( / s p eɪ s i / spay- VER ) es un código abierto biblioteca de software de avanzada de procesamiento de lenguaje natural , escrito en los lenguajes de programación Python y Cython . [3] [4] La biblioteca se publica bajo la licencia del MIT y sus principales desarrolladores son Matthew Honnibal e Ines Montani , los fundadores de la empresa de software Explosion.
Autor (es) original (es) | Matthew Honnibal |
---|---|
Desarrollador (es) | AI de explosión, varios |
Versión inicial | Febrero de 2015 [1] |
Lanzamiento estable | 3.0.0 / 1 de febrero de 2021 [2] |
Repositorio | |
Escrito en | Python , Cython |
Sistema operativo | Linux , Windows , macOS , OS X |
Plataforma | Multiplataforma |
Tipo | Procesamiento natural del lenguaje |
Licencia | Licencia MIT |
Sitio web | spacy |
A diferencia de NLTK , que se usa ampliamente para la enseñanza y la investigación, spaCy se enfoca en proporcionar software para uso en producción. [5] [6] spaCy también admite flujos de trabajo de aprendizaje profundo que permiten conectar modelos estadísticos entrenados por bibliotecas de aprendizaje automático populares como TensorFlow , PyTorch o MXNet a través de su propia biblioteca de aprendizaje automático Thinc. [7] [8] Usando Thinc como su backend, spaCy presenta modelos de redes neuronales convolucionales para etiquetado de parte de la voz , análisis de dependencia , categorización de texto y reconocimiento de entidad con nombre (NER). Los modelos de redes neuronales estadísticos prediseñados para realizar estas tareas están disponibles para 17 idiomas, incluidos inglés, portugués, español, ruso y chino, y también hay un modelo NER en varios idiomas. El soporte adicional para la tokenización en más de 65 idiomas también permite a los usuarios entrenar modelos personalizados en sus propios conjuntos de datos. [9]
Historia
- La versión 1.0 se lanzó el 19 de octubre de 2016 e incluyó soporte preliminar para flujos de trabajo de aprendizaje profundo al admitir canalizaciones de procesamiento personalizadas. [10] Además, incluía un comparador de reglas que admitía anotaciones de entidades y una API de entrenamiento oficialmente documentada.
- La versión 2.0 se lanzó el 7 de noviembre de 2017 e introdujo modelos de redes neuronales convolucionales para 7 idiomas diferentes. [11] También admitía componentes de canalización de procesamiento personalizados y atributos de extensión, y presentaba un componente de clasificación de texto entrenable incorporado .
- La versión 3.0 se lanzó el 1 de febrero de 2021 e introdujo tuberías de última generación basadas en transformadores . [12] También introdujo un nuevo sistema de configuración y flujo de trabajo de capacitación, así como sugerencias de tipos y plantillas de proyectos. Esta versión dejó de ser compatible con Python 2 .
Principales características
- Tokenización no destructiva
- Compatibilidad con "tokenización alfa" para más de 65 idiomas [13]
- Soporte integrado para componentes de canalización entrenables, como reconocimiento de entidades nombradas , etiquetado de parte de la voz , análisis de dependencias , clasificación de texto , vinculación de entidades y más
- Modelos estadísticos para 17 idiomas [14]
- Aprendizaje multitarea con transformadores previamente entrenados como BERT
- Compatibilidad con modelos personalizados en PyTorch, TensorFlow y otros marcos
- Velocidad y precisión de última generación [15]
- Sistema de formación listo para la producción
- Visualizadores integrados para sintaxis y entidades con nombre
- Fácil gestión del flujo de trabajo, implementación y empaquetado de modelos
Extensiones y visualizadores
spaCy viene con varias extensiones y visualizaciones que están disponibles como bibliotecas gratuitas de código abierto :
- Thinc: una biblioteca de aprendizaje automático optimizada para el uso de la CPU y el aprendizaje profundo con entrada de texto.
- sense2vec: una biblioteca para calcular similitudes de palabras, basada en Word2vec . [dieciséis]
- DISPLAY: Un visualizador de árbol de análisis de dependencias de código abierto construido con JavaScript , CSS y SVG .
- DISPLAY ENT : un visualizador de entidad con nombre de código abierto construido con JavaScript y CSS .
Referencias
- ^ "Presentación de spaCy" . explosion.ai . Consultado el 18 de diciembre de 2016 .
- ^ "Versión v3.0.0: Pipelines basados en Transformer, nuevo sistema de capacitación, plantillas de proyectos, modelos personalizados, API de componentes mejorada, sugerencias de tipo y mucho más · explosion / spaCy" . GitHub . Consultado el 2 de febrero de 2021 .
- ^ Choi y col. (2015). Depende: Comparación del analizador de dependencias mediante una herramienta de evaluación basada en la web .
- ^ "La nueva inteligencia artificial de Google no puede entender estas frases. ¿Tú?" . Washington Post . Consultado el 18 de diciembre de 2016 .
- ^ "Hechos y cifras - espacio" . spacy.io . Consultado el 4 de abril de 2020 .
- ^ Bird, Steven; Klein, Ewan; Loper, Edward; Baldridge, Jason (2008). "Instrucción multidisciplinaria con Natural Language Toolkit" (PDF) . Actas del Tercer Taller sobre Problemas en la Enseñanza de la Lingüística Computacional, ACL : 62. doi : 10.3115 / 1627306.1627317 . ISBN 9781932432145. S2CID 16932735 .
- ^ "PyTorch, TensorFlow y MXNet" . thinc.ai . Consultado el 4 de abril de 2020 .
- ^ "explosión / thinc" . GitHub . Consultado el 30 de diciembre de 2016 .
- ^ "Modelos e idiomas | Documentación de uso de spaCy" . spacy.io . Consultado el 10 de marzo de 2020 .
- ^ "EXPLOSIÓN / ESPACIO" . GitHub . Consultado el 8 de febrero de 2021 .
- ^ "EXPLOSIÓN / ESPACIO" . GitHub . Consultado el 8 de febrero de 2021 .
- ^ "EXPLOSIÓN / ESPACIO" . GitHub . Consultado el 8 de febrero de 2021 .
- ^ "Modelos e idiomas - spaCy" . spacy.io . Consultado el 8 de febrero de 2021 .
- ^ "Modelos e idiomas | Documentación de uso de spaCy" . spacy.io . Consultado el 8 de febrero de 2021 .
- ^ "Benchmarks | Documentación de uso de spaCy" . spacy.io . Consultado el 8 de febrero de 2021 .
- ^ Trask y col. (2015). sense2vec: un método rápido y preciso para la desambiguación del sentido de palabras en incrustaciones de palabras neuronales .
enlaces externos
- Página web oficial
- Implementación de Spacy Library