Clasificación de Textos

26
ANÁLISIS DE SENTIDO A TEXTOS CORTOS Alumno: Jorge Gálvez Gajardo Profesor Guía: Rodrigo Alfaro Arancibia Profesor Correferente: Guillermo Cabrera Guerrero

description

Presentación de avance para optar al titulo profesional de Ingeniero de Ejecución en Informática. Clasificación de textos, utilizando Support Vector Machine y Naïve Bayes

Transcript of Clasificación de Textos

Page 1: Clasificación de Textos

ANÁLISIS DE SENTIDO A TEXTOS CORTOS

Alumno: Jorge Gálvez Gajardo

Profesor Guía: Rodrigo Alfaro Arancibia

Profesor Correferente: Guillermo Cabrera Guerrero

Page 2: Clasificación de Textos

CONTENIDO

Introducción Objetivos Problemática Representación de Lenguaje Natural Máquinas de Aprendizaje

Naïve Bayes Support Vector Machine

Software Set de Pruebas Conclusiones y Trabajo Futuro

Page 3: Clasificación de Textos

INTRODUCCIÓN

Trabajar en tesis abordando problemática actual y que podría acrecentarse.

Gran cantidad de información que se genera en Internet.

60 Billones de páginas web (según worldwidewebsize.com)

1.100 millones de usuarios de internet y 2.000 para 2016 (según Universidad de Iowa)

143 Millones de blogs, 1 millón de posts en las últimas 24 horas. (según blogpulse.com)

Page 4: Clasificación de Textos

OBJETIVOS Objetivo General:

Utilizar máquinas de aprendizaje para categorizar textos cortos en positivo o negativo, según sea su sentido.

Objetivos Específicos: Utilizar máquinas de aprendizaje, eligiendo Naïve

Bayes y Maquinas de Soporte Vectorial como técnicas para clasificar en positivo o negativo, según su sentido, distintos textos extraídos de comentarios sobre películas.

Desplegar resultados obtenidos y comparar técnicas utilizadas con el fin de analizar qué forma es la más eficiente para determinado tipo de texto.

Habilitar una interfaz web en la cual se pueda almacenar textos para poder ser utilizados en un entrenamiento o prueba de categorización de sentido.

Page 5: Clasificación de Textos

PROBLEMÁTICA

Se están produciendo grandes cambios en la sociedad al comentar lo que nos parece bien o mal.

Analizar datos recolectados de internet para analizar patrones y tendencias.

Automatizar esta tarea para lograr una mayor cantidad de datos a analizar.

Apoyarse en técnicas de Recuperación de Información y en algoritmos de Machine Learning

Page 6: Clasificación de Textos

REPRESENTACIÓN DE LENGUAJE NATURAL

Indexar términos: Boolean retrieval

Frecuencia de términos y peso Term frequency Inverse document frequency TF-IDF

Modelo de espacio vectorial Similitud coseno

=

=

Page 7: Clasificación de Textos

MÁQUINAS DE APRENDIZAJE

¿Cómo podemos usar computadoras para descubrir y describir patrones basados en comportamientos?

Aprendizaje supervisado Entrenamiento etiquetado

Aprendizaje no supervisado Entrenamiento no etiquetado

Aprendizaje semi supervisado Aplica una combinación de las dos técnicas

anteriores

Page 8: Clasificación de Textos

NAÏVE BAYES

Page 9: Clasificación de Textos

NAÏVE BAYES

Es un clasificador probabilístico Cada ejemplo observado va a modificar la

probabilidad de que la hipótesis formulada sea correcta

Las palabras en el documento se tratan de forma independiente del contexto

: Número de ocurrencias de t en los documentos de entrenamiento de la clase c

: Número de ocurrencias de t en el documento de prueba mas número de términos del vocabulario de entrenamiento de la clase c

Page 10: Clasificación de Textos

NAÏVE BAYES

=

Aplicando Laplace smoothing

: Número de términos del vocabulario de entrenamiento de las dos clases

Page 11: Clasificación de Textos

SUPPORT VECTOR MACHINE

Page 12: Clasificación de Textos

SUPPORT VECTOR MACHINE

Page 13: Clasificación de Textos

SUPPORT VECTOR MACHINE

sigmoidal ))(tanh(),(

Gaussiana radial Base ))2(exp(),(

homogéneo no Polinomial 1),(

Polinomial),(

22

jiji

jiji

d

jiji

d

jiji

xxxxk

xxxxk

xxxxk

xxxxk

Page 14: Clasificación de Textos

SET DE PRUEBAS

Set de datos: Obtenida de Internet Movie DataBase (IMDb),

archivada por rec.arts.movies.reviews. 1000 comentarios positivos y 1000 comentarios

negativos Introducido en Pang/Lee ACL 2004

Page 15: Clasificación de Textos

SET DE PRUEBAS NAÏVE BAYES

660 Textos de Entrenamiento y 100 de Prueba.

Pre Procesado Accuracy

Ninguno 71,7%

Stop Words + Stemming 72.2%

Page 16: Clasificación de Textos

SET DE PRUEBAS SVM

00.

01 1 20 40 60 80 100

0102030405060708090 Linear

Polynomial - Gamma 0.5

Radial Ba-sis Function - Gamma 0

Sigmoid - Gamma 0.1

660 Textos de Entrenamiento y 100 de Prueba.

Costo

Accuracy

Kernel: Sigmoid, Gamma: 0.1, Costo: 0.001, Accuracy: 84%

29.054 Palabras

Kernel: Sigmoid, Gamma: 0.1, Costo: 0.01, Accuracy: 84%

Page 17: Clasificación de Textos

SET DE PRUEBAS SVM

00.

01 1 20 40 60 80 100

0102030405060708090 Linear

Polynomial - Gamma 0.7

Radial Ba-sis Function - Gamma 0

Sigmoid - Gamma 0.5

660 Textos de Entrenamiento y 100 de Prueba. Stop Words

Costo

Accuracy

Kernel: Sigmoid, Gamma: 0.5, Costo: 0.1, Accuracy: 85%

28.489 Palabras

Page 18: Clasificación de Textos

SET DE PRUEBAS SVM

00.

01 1 20 40 60 80 100

0102030405060708090 Linear

Polynomial - Gamma 0.7

Radial Ba-sis Function - Gamma 0

Sigmoid - Gamma 0.1

660 Textos de Entrenamiento y 100 de Prueba. Stemming

Costo

Accuracy

Kernel: Sigmoid, Gamma: 0.1, Costo: 0.001, Accuracy: 85%

21.341 Palabras

Kernel: Sigmoid, Gamma: 0.1, Costo: 0.01, Accuracy: 85%

Kernel: Sigmoid, Gamma: 0.1, Costo: 0.1, Accuracy: 85%

Page 19: Clasificación de Textos

SET DE PRUEBAS SVM

00.

01 1 20 40 60 80 100

0102030405060708090 Linear

Polynomial - Gamma 0.3

Radial Ba-sis Function - Gamma 0

Sigmoid - Gamma 0.3

660 Textos de Entrenamiento y 100 de Prueba. Stop Words y Stemming

Costo

Accuracy

Kernel: Sigmoid, Gamma: 0.3, Costo: 0.1, Accuracy: 84%

20.999 Palabras

Page 20: Clasificación de Textos

SET DE PRUEBAS – OTRAS TÉCNICASClasificador Técnica Accuracy Autor

NB, SVM Feature Selection 87,2% Pang & Lee

SVM Análisis de Subjetividad

86,35% Boly, Hens, Deschacht,

Moens

SVM Delta TFIDF 88,1% Martineau and Finin

SVM Ordenar y filtrar subjetividad

89.85% Raychev and Nakov

Page 21: Clasificación de Textos

SOFTWARE – CASO DE USO DE ALTO NIVEL

Page 22: Clasificación de Textos

SOFTWARE – CASO DE USO GENERAR MODELO MANUAL

Page 23: Clasificación de Textos

SOFTWARE – INTERFAZ MODELO AUTOMÁTICO

Page 24: Clasificación de Textos

SOFTWARE – DIAGRAMA DE ACTIVIDAD

Page 25: Clasificación de Textos

CONCLUSIONES Y TRABAJO FUTURO

Se ha utilizado Naïve Bayes y Maquinas de Soporte Vectorial para clasificar en positivo o negativo, según su sentido, distintos textos extraídos de comentarios sobre películas.

Los resultados obtenidos se han comparado con las distintas técnicas.

Habilito una interfaz web en la cual se pueda almacenar textos para poder ser utilizados en un entrenamiento o prueba de categorización de sentido.

Aplicar técnicas que aumenten el porcentaje de accuracy.

Page 26: Clasificación de Textos

¿PREGUNTAS?