La cantidad predominante de documentación y ejemplos NLTK se dedica a la lematización y derivados, pero es muy escasa en estos asuntos de normalización como:¿Hay alguna clase en NLTK para normalizar y canonizar texto?
- convertir todas las cartas para bajar o mayúsculas
- eliminación de puntuacion
- convertir números en palabras
- eliminación de acentos y otros diacríticos
- siglas en expansión
- eliminación de palabras vacías o las palabras "demasiado comunes"
- texto canónicos (tumor = tumorales, es = es)
Favor punto que en NLTK a cavar. Se aceptan todos los equivalentes NLTK (JAVA o cualquier otro) para los fines mencionados anteriormente. Gracias.
UPD. He escrito una biblioteca de python de normalización de texto para fines de texto a voz https://github.com/soshial/text-normalization. También podría serle útil.
Como considero una herramienta NLP, debería poder realizar todas las operaciones de procesamiento que pudieran implicar algunos datos lingüísticos. Significa que pensé y todavía pienso que nltk ya tiene los diccionarios de palabras equivalentes, abreviatura del diccionario, dict canonicalización, conversión en números de texto, ** fechas **, temperatura, ** monedas ** y así sucesivamente ... Tal vez simplemente no lo sabemos bien? – soshial
Estoy seguro de que no se puede resolver el mapeo de cajas en el caso general con solo '.lower()' y '.upper()'. Considere el turco 'I' =' ı', 'İ' =' i'; Alemán 'ß' =' SS'; Griego 'Σ' = ambos' ς' y 'σ'. – hippietrail
La resolución de abreviaturas es arriesgada. ¿Cómo sabes que 'US' significa 'Estados Unidos'? 'Tú y yo: ¡nosotros!' -> 'Tu y yo: ¡Estados Unidos!' –