Seguimiento de cuentas Twitter

Para el seguimiento de cuentas se ha utilizado la API pública de Twitter. El objetivo del cambio es que sea más rápido el registro de las cuentas, que los usuarios con cuentas privadas puedan participar y los datos sean seguros.

Con el cambio, se hicieron diversas modificaciones entre ellas el Crawler de la versión 1.0 ha quedado descartado ya que obtenía datos (tweets) de un streaming público general. Con un objetivo más limitado (solo alumnos del campus) se creó un nuevo crawler que obtiene los tweets de las cuentas registradas, haciendo uso de los Tokens de autorización (previamente guardados en el registro).

Posteriormente, una vez obtenidos los tweets de los usuarios, se les asignan un status de capturados para después ser limpiados.

El proceso de limpieza corresponde a:

  • Eliminar los hashtags: ya que pueden contener ambigüedades, son escritas sin espacios y pueden confundir el análisis. Se usó el TAG “HASH” para dejar el mensaje con la misma estructura.
  • Eliminar menciones: no son necesarias las menciones de otros usuarios para el análisis. Se usó el TAG “USERNAME” para dejar el mensaje con la misma estructura.
  • Eliminar urls: al igual que las menciones no representan valor para el análisis. Se usó el TAG “URL” para dejar el mensaje con la misma estructura.
  • Descartar emoticones: Se pueden considerar los emoticones como ruido ya que pueden no representar un sentimiento de manera correcta. Lo emoticones de mantienen en el texto procesado, pero se descartan en tiempo de análisis debido a que la puntuación es importante al mostrar los textos. Por ejemplo
    • “Amo a mi perro” vs “Amo a mi perro :(“sin el emoticon la mayoría pensaría que esta frase es positiva.
    • La importancia de no quitar signos:
      • “No, espere.” vs “No espere”
      • “Eso solo, él lo resuelve” vs “Eso, solo él lo resuelve.”
      • “Vamos a perder, poco se resolvió.” vs “Vamos a perder poco, se resolvió.”
      • “No queremos saber.” vs “No, queremos saber.”
      • “No tengas compasión.” vs “No, tenga compasión.”
    • Transformación a minúsculas.

Al final de la etapa de limpieza se asigna al tweet la etiqueta de limpio.

Por último, el registro se puede realizar desde: http://mgonzalez.me/erithacuspardus/twitter/login/

Para el siguiente paso: Se va a analizar las diferentes opciones de análisis, con el fin de complementar o reemplazar el sistema actual.

Día 0: Detector de Sentimientos (Erithacus pardus)

Día 0: El despertad.

Soy Miguel Angel de último semestre de sistemas computacionales, me encuentro desarrollando una versión alterna de Erithacus pardus, un proyecto de Inteligencia artificial con el profesor Benjamin.

El proyecto originalmente estaba en idioma inglés, y se está trabajando ahora en idioma español. Actualmente ya se tiene un sistema de registro donde se puede invitar a las personas a ser parte del proyecto de manera anónima. (http://mgonzalez.me/erithacuspardus/register/)

Se están analizando varias alternativas que pueden ayudar a mejorar el rendimiento del sistema, algunas de estas son:

  • Naive Bayes
  • PART
  • k-Nearest Neighbors
  • Support Vector Machines
  • kNN

Incluso, reemplazar el sistema actual para que sea robusto y ligero. Para aprovechar el tiempo, me he dedicado a realizar varios tutoriales que realizan análisis de manera más rápida usando WEKA. Por lo cual, WEKA es una alternativa para el mejorar sistema.

El siguiente paso es: realizar el seguimiento de las cuentas de Twitter para tener una base de datos extensa mientras se encuentra alguna alternativa que mejore el rendimiento del sistema.