Ce référentiel n'est plus maintenu
TextPipe: nettoyer et extraire les métadonnées du texte
textpipe est un package Python pour convertir le texte brut en texte propre et lisible et extraire les métadonnées de ce texte. Ses fonctionnalités incluent la transformation du texte brut en texte lisible en supprimant les balises HTML et en extraction des métadonnées telles que le nombre de mots et des entités nommées du texte.
Vision: le zen de TextPipe
- Conçu pour une utilisation dans les pipelines de production sans supervision adulte.
- Les batteries rechargeables incluses: Fournissez des défaillances saines et des exemples clairs pour s'adapter.
- Une interface uniforme avec des emballages minces autour des packages NLP de pointe.
- Aussi agnostique du langage que possible.
- Apportez vos propres modèles.
Caractéristiques
- Nettoyer le texte brut en supprimant
HTML et d'autres constructions illisibles - Identifier la langue du texte
- Extraire le nombre de mots, nombre de phrases, entités nommées à partir d'un texte
- Calculez la complexité d'un texte
- Obtenez des métadonnées de texte en spécifiant un pipeline contenant tous les éléments souhaités
- Obtenir le sentiment (polarité et score de subjectivité)
- Génère des comptages de mots
- Calcule Minhash pour une estimation de similitude bon marché des documents
Installation
Il est recommandé d'installer TextPipe à l'aide d'un environnement virtuel.
Tout d'abord, créez votre environnement virtuel à l'aide de VirtualEnv ou VirtualEnvWrapper.
Utilisation de Venv si votre interprète par défaut est Python3.6
- Utilisation de VirtualEnv.
virtualenv venv -p python3.6
- Utilisation de virtualvwrapper
mkvirtualenv textpipe -p python3.6
- Installez TextPipe à l'aide de PIP.
- Installez les packages requis à l'aide de exigences.txt .
pip install -r requirements.txt
Une note sur l'exigence du modèle de téléchargement de spacy
Bien que le fichier exigence.txt livré avec le package appelle le modèle EN_CORE_WEB_SM de Spacy, cela peut être modifié en fonction du modèle et de la langue dont vous avez besoin pour votre utilisation prévue. Voir la page de Spacy.io sur leurs différents modèles pour plus d'informations.
Exemple d'utilisation
> >> from textpipe import doc , pipeline
> >> sample_text = 'Sample text! <!DOCTYPE>'
> >> document = doc . Doc ( sample_text )
> >> print ( document . clean )
'Sample text!'
> >> print ( document . language )
'en'
> >> print ( document . nwords )
2
> >> pipe = pipeline . Pipeline ([ 'CleanText' , 'NWords' ])
> >> print ( pipe ( sample_text ))
{ 'CleanText' : 'Sample text!' , 'NWords' : 3 } Afin d'étendre les opérations TextPipe existantes avec vos propres opérations propriétaires;
test_pipe = pipeline . Pipeline ([ 'CleanText' , 'NWords' ])
def custom_op ( doc , context = None , settings = None , ** kwargs ):
return 1
custom_argument = { 'argument' : 1 }
test_pipe . register_operation ( 'CUSTOM_STEP' , custom_op )
test_pipe . steps . append (( 'CUSTOM_STEP' , custom_argument ))Contributif
Voir Contribution pour les directives pour les contributeurs.
Changements
0.12.1
- Bosse redis, tqdm, pyling
0.12.0
- Bosse les versions de nombreuses dépendances, y compris la textique. Les résultats pour l'extraction des termes clés ont changé.
0.11.9
- Expose les propriétés arbitraires de l'
ents de l'espace
0.11.8
- Expose l'attribut
cats de Spacy
0.11.7
- Bosse les versions spacy et redis
0.11.6
- Corre une bug où le modèle Gensim n'est pas mis en cache en pipeline
0.11,5
- Richer TextPipemissingModeLexception au lieu de Keyerror
0.11.4
- Bosse les dépendances de spacy et de datasketch
0.11.1
- Remplace la codacy par pylint sur CI
- Corre des problèmes de pylint
0.11.0
- Ajoute l'emballage autour des vecteurs à clé Gensim pour construire des intégres de documents à partir de redis cache
0.9.0
- Ajoute des fonctionnalités pour calculer les incorporations de documents à l'aide d'un modèle Gensim Word2Vec
0.8.6
- Supprime les caractères UTF non standard avant de détecter la langue
0,8,5
0.8.4
- Correction de la commande d'installation brisée
0.8.3
- Correction de la commande d'installation brisée
0.8.2
- Correction de l'erreur de copie-coller dans l'agrégation de vecteur de mots (# 118)
0.8.1
- Corre des bogues dans plusieurs opérations qui n'ont pas accepté Kwargs
0.8.0
0.7.2
- Pins Spacy et Versions de motifs (avec LXML épinglé)
0.7.0
- Changer le registre de l'opération de la liste au dict
- Les données mondiales de pipeline sont disponibles dans tous les opérations via le
context kwarg - Chargez des opérations personnalisées à l'aide
register_operation dans Pipeline - Étapes personnalisées (opérations) avec des arguments