Lenguaje natural
En el caso del lenguaje, el procesamiento del lenguaje natural es específico de cada idioma, con lo que si bien hay ciertas partes como el extracción y limpieza de textos, detección del idioma, tokenizado, la generación de n-gramas, etc., que son genéricas, la mayor parte de las técnicas son específicas de cada idioma, con lo que hace falta de personal que domine dichas lenguas, así como de herramientas y librerías para su procesamiento.
Entre las técnicas y funciones del NLP que se emplean está el stemming, la lematización, el part of speech tagging, la extracción de entidades nombradas, generación de n-gramas, medidas de similitud y distancias, etc.
Este pre-procesamiento de los textos dará lugar a otros patrones de representación, mayormente matrices, que se emplearán en posteriores análisis con el objetivo de:
Filtrar contenidos
Clasificarlos
Agruparlos por temáticas
Identificar semejantes
Etiquetarlos automáticamente
Identificar contenido relacionado
Detectar la polaridad
Y todo ello con el objetivo de:
Identificar contenido viral
Identificar contenido relevante a los gustos o intereses de un usuario
Identificar contenidos relacionados
Eliminar contenidos duplicados
Saber en qué tono (positivo o negativo) se habla sobre algo
clasificar los contenidos por temáticas (incluso en entornos multilingües)
Sin embargo estos problemas no son tan sencillos de resolver, ya que trabajamos con cantidades ingentes de datos. Hispavista diariamente rastrea decenas de miles de fuentes de información, que generan cientos de miles de noticias, las cuales deben ser procesadas, clasificadas, etc., lo cual hace necesario de técnicas avanzadas de cálculo y procesamiento, como son las técnicas de reducción de dimensionalidad, detección de componentes principales, etc., combinadas con herramientas de procesamiento de grandes volúmenes que hacen viable estos procesos masivos de análisis a costes asequibles.
Para ello, en Hispavista Labs, utilizamos una serie de herramientas
Procesamiento de lenguaje natural
Freeling
Gate
NLTK
Stanford Core NLP
Para procesamiento y análisis
R
Weka
Knime
PredictionIO
Mahout
Para su procesamiento masivo y en paralelo (dependiendo de las necesidades y de la naturaleza de los datos)
Apache Hadoop
Apache Spark
Apache Kafka
A través de las cuales aplicamos técnicas de la inteligencia artificial como SVM, SVD, redes neuronales, sistemas bayesianos, LDA para topic modelling, etc.
Para todas estas tareas de NLP Hispavista Labs colabora con la UPV-EHU, y a nivel interno trabaja un equipo multidisciplinar con capacidades de análisis por una parte, con conocimiento del negocio y del dominio de aplicación por otra, y conocimiento de optimización y gestión de sistemas por otra.