jueves, 30 de enero de 2014

Análisis de Sentimientos: un algoritmo para empezar

Lo más sencillo es detectar la polaridad de una actitud, es decir, detectar si una critica, por ejemplo, es positiva o negativa.
Voy a explicar una versión adaptada del algoritmo de Pang y Lee para detectar la polaridad de una critica cinematográfica. Pueden encontrar más información sobre su trabajo en esta página: http://www.cs.cornell.edu/people/pabo/movie-review-data/

Dadas las siguientes criticas literarias (prestadas de cinesargentinos.com.ar):

Critica 1:

Hace mucho tiempo no veía una peli tan buena como esta. Original y hermosa desde todo punto de vista, las canciones, los chistes y los efectos visuales. Increible como mejoraron en los últimos años con las expresiones de los personajes animados! Una obra maestra desde donde se la mire! No entendia como Monster University no había sido nominada al oscar, pero luego de ver Frozen, entiendo que Monster's no tenía nada que hacer. Es de las pelis que, para aquellos que crecimos con los clasicos de disney como el rey leon, tarzan o el jorobado de Notre dame, nos reavivan el niño que tenemos adentro. Si o si verla en 3D.

Critica 2:

La película es malísima. Está entre las peores que he visto en mi vida, sino es la peor. Es lineal, predecible, aburrida. Solo apta para menores de 13 años. Deberían dedicarse a otra cosa todos los que intervinieron para que exista. Realmente es muy recomendable que NO LA VEAN. Después no digan que no les advertí.

Para una persona es muy sencillo determinar que la critica 1 es positiva y que la critica 2 es negativa, pero ¿cómo podría resolverse esto por software?

sábado, 25 de enero de 2014

Análisis de Sentimientos: Introducción

¿Qué es el análisis de sentimientos?

    El análisis de sentimientos es una tarea de clasificación de textos y tiene múltiples usos. Supongamos que se tienen las siguientes criticas sobre una película:
  • Decepcionante.
  • Aburrida.
  • Personajes memorables y bien desarrollados.
  • Una gran puesta en escena que no defraudará.
  • Increíblemente predecible.
    Todas estas criticas tienen un juicio de valor, que en principio podríamos decir que es: positivo o negativo.
 
    Podemos intentar aplicar este tipo de análisis a productos, tomemos, por ejemplo, una impresora y algunos aspectos de esta como:
  • velocidad de impresión
  • precio
  • facilidad de uso
  • soporte al cliente
  • etc.
    Estos aspectos, también llamados atributos, tienen cada uno una clasificación asociada, la cual puede ser positiva o negativa. Google y Bing (en EEUU) tienen buscadores de productos donde, en base a la opinión de los usuarios, clasifican estos aspectos. Otro ejemplo es el clasificador de hoteles y lugares de hospedaje de hostelsclub.com:


Clasificación de Texto: cuestiones practicas

Cómo utilizar el clasificador de texto Naïve Bayes en una situación del mundo real:

     Lo primero que hay que ver es si contamos o no con textos de entrenamiento.

Si no tenemos datos de entrenamiento:
 
No queda otra alternativa que escribir las reglas de clasificación de forma manual, por ejemplo:

  • Si aparece la palabra: "Montevideo" el documento pertenece a la clase: "Uruguay". (documentos que hablan sobre el Uruguay)
  • Si aparece la palabra "Santiago de Chile" entonces el documento pertenece a la clase: "Chile".