Análisis de sentido en textos
-
Upload
jorge-galvez-gajardo -
Category
Education
-
view
539 -
download
2
Transcript of Análisis de sentido en textos
Análisis de sentido en textos
Alumno: Jorge Gálvez GajardoProfesor Guía: Rodrigo Alfaro Arancibia
Profesor Correferente: Guillermo Cabrera Guerrero
2/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Descripción del proyecto Introducción Objetivos Estado del arte
Máquinas de aprendizaje Bayes ingenuo Máquinas de soporte vectorial
Representación de lenguaje natural Clasificación de texto Software Caso de estudio Conclusiones y trabajo futuro
Contenido
15 Diciembre de 2010
Descripción del proyecto
4/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Las opiniones tienen un impacto muy relevante en nuestra vida diaria. Gran cantidad de organizaciones e industrias están interesadas en
estas opiniones Cada vez hay más fuentes desde donde se pude obtener todas estas
opiniones Toda esta información no puede ser procesada por una persona o un
grupo de personas Opinion Mining es una disciplina que mezcla la recuperación de
información y la lingüística computacional.
Descripción del proyecto: Introducción
“La opinión pública es el termómetro de un monarca al cual debe constantemente consultar”
Napoleón Bonaparte15 Diciembre de 2010
5/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Objetivo General: Utilizar Máquinas de Aprendizaje para categorizar textos en positivo o
negativo, según sea su sentido. Objetivos Específicos:
Utilizar Máquinas de Aprendizaje, eligiendo Bayes Ingenuo y Máquinas de Soporte Vectorial como técnicas para clasificar en positivo o negativo, según sea su sentido, distintos textos extraídos de comentarios sobre películas.
Desplegar resultados obtenidos y comparar técnicas utilizadas con el fin de analizar cual forma es la más eficiente para determinado tipo de texto.
Habilitar una interfaz web en la cual se puedan almacenar textos para poder ser utilizados en un entrenamiento o prueba de categorización de sentido.
Descripción del proyecto:Objetivos
15 Diciembre de 2010
6/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Se han hecho investigaciones usando heurísticas lingüísticas o un set de palabras ya clasificadas [Hatzivassiloglou and McKeown, 1997; Turney and Littman, 2002].
[Turney's, 2002] trabajó en clasificación de reviews utilizando aprendizaje no supervisado basado en la información que era encontrada dentro de los documentos, por ejemplo palabras como "bueno" o "malo“.
[Pang y Lee, 2002] utilizan conocimiento previo de cada uno de los textos, pudiendo aplicar aprendizaje supervisado.
Descripción del proyecto: Estado del arte
15 Diciembre de 2010
Máquinas de aprendizaje
8/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Aprendizaje supervisado
Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Datos de entrenamiento
Algoritmo de aprendizaje
Modelo Datos de prueba
Precisión
15 Diciembre de 2010
9/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Bayes Ingenuo Modelo simple de clasificación [Duda & Hart 1973; Langley et al.
1992] Cada ejemplo observado va a modificar la probabilidad que la
hipótesis formulada sea correcta Las palabras en el documento se tratan de forma independiente
del contexto
Clase
Atrib. 1 Atrib. 2 Atrib. n…….
15 Diciembre de 2010
10/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Bayes Ingenuo
Problema de frecuencia cero: un término que no se encuentre en el documento nos genera una probabilidad de cero.
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
15 Diciembre de 2010
11/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Bayes Ingenuo
=
Aplicando Laplace smoothing
Número de términos del vocabulario de entrenamiento de las dos clases
15 Diciembre de 2010
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
+
12/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Bayes Ingenuo Pros:
Muy fácil y rápido de implementar Bien entendido formal y experimentalmente
Contras: Pocas veces es el mejor rendimiento Las Probabilidades Pr(y|x) no son exactas
15 Diciembre de 2010
13/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Máquinas de Soporte Vectorial
Clase 1
Clase 2w
x + b = 1
x + b = 0
x + b = -1
m
- Pertenece a la familia de clasificadores lineales ya que inducen separadores lineales o hiperplanos en espacios de características de muy alta dimensionalidad [Vapnik 1990s]
- Una SVM construye un hiperplano en un conjunto de espacio de dimensionalidad muy alta. Una buena separación entre las clases permitirá una clasificación correcta
15 Diciembre de 2010
14/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Máquinas de aprendizaje: Máquinas de Soporte Vectorial
• El Problema:• La maximización del margen es un importante concepto en
clasificación, pero no puede ser usado en problemas del mundo real.
• Muchos conjuntos de datos no son linealmente separables• La Solución:
• Mapear los datos a un espacio de características de dimensionalidad mayor.
15 Diciembre de 2010
¿?
15/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Mapear los datos de espacio X en espacio F
15 Diciembre de 2010
Máquinas de aprendizaje: Máquinas de Soporte Vectorial
Existe una forma muy efectiva de calcular el producto escalar entre los vectores, utilizando el truco del kernel
Algunas funciones kernel son: Polinómica, Gaussiana, Sigmoidal
Representación de lenguaje natural
17/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Representación de lenguaje natural
15 Diciembre de 2010
Booleano: determina si se encuentra o no la palabra en el documento.
Frecuencia de términos (TF): asigna un peso a cada término del documento dependiendo del número de veces que se encuentre en dicho documento.
IDF:Total de documentos
Número de documentos que contiene el término
TF-IDF:
18/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Representación de lenguaje natural
15 Diciembre de 2010
La representación de un conjunto de documentos como vectores se conoce como modelo de espacio vectorial [Salton, Wong and and Yang, 1975].
N° Palabra
1 Auto
2 Película
3 Mejor
…
n Intentar
Vector de palabras
Vector de documentos
1:3 3:1 4:1 11:9 18:4
3:1 6:2 8:7 14:3
…
5:7 9:5 12:3 17:4 21:3 25:1
19/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Es habitual filtrar las palabras que no tienen sentido semántico (artículos, preposiciones, pronombres, etc.) llamadas stop words.
Reducir palabras a su raíz es llamado Stemming el cual agrupa palabras escritas en distinta forma verbal y que tienen un mismo significado
15 Diciembre de 2010
Representación de lenguaje natural
bibliotecas bibliotecario
bibliotec
Clasificación de texto
21/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Clasificación de texto: Definición
Documentos etiquetados
Algoritmo de aprendizaje
Modelo Documentos sin etiqueta
Precisión
15 Diciembre de 2010
22/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Clasificación de texto: Usos
Clasificar: noticias email en Spam o no spam. review de películas como positivas, negativas o neutras. papers como interesantes o no interesantes. chistes como divertidos o fomes.
15 Diciembre de 2010
23/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Clasificación de texto: Ejemplo
ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONSBUENOS AIRES, Feb 26Argentine grain board figures show crop registrations of grains, oilseeds
and their products to February 11, in thousands of tonnes, showing those for future shipments month, 1986/87 total and 1985/86 total to February 12, 1986, in brackets:
• Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
• Maize Mar 48.0, total 48.0 (nil).• Sorghum nil (nil)• Oilseed export registrations were:• Sunflowerseed total 15.0 (7.9)• Soybean May 20.0, total 20.0 (nil)The board also detailed export registrations for subproducts, as follows....
15 Diciembre de 2010
24/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Clasificación de texto: Representación
ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONSBUENOS AIRES, Feb 26Argentine grain board figures show crop registrations of grains, oilseeds and their
products to February 11, in thousands of tonnes, showing those for future shipments month, 1986/87 total and 1985/86 total to February 12, 1986, in brackets:
• Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).• Maize Mar 48.0, total 48.0 (nil).• Sorghum nil (nil)• Oilseed export registrations were:• Sunflowerseed total 15.0 (7.9)• Soybean May 20.0, total 20.0 (nil)The board also detailed export registrations for subproducts, as follows....
f( )=y
? ¿Cual es la mejor representación del documento X para poder ser clasificado?
15 Diciembre de 2010
25/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Clasificación de texto: Lista de palabrasARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONSBUENOS AIRES, Feb 26Argentine grain board figures show crop registrations of grains, oilseeds and their
products to February 11, in thousands of tonnes, showing those for future shipments month, 1986/87 total and 1985/86 total to February 12, 1986, in brackets:
• Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).• Maize Mar 48.0, total 48.0 (nil).• Sorghum nil (nil)• Oilseed export registrations were:• Sunflowerseed total 15.0 (7.9)• Soybean May 20.0, total 20.0 (nil)The board also detailed export registrations for subproducts, as follows....
f( )=y
f( )=y(argentine, 1986, 1987, grain, oilseed, registrations, buenos, aires, feb, 26, argentine, grain, board, figures, show, crop, registrations, of, grains, oilseeds, and, their, products, to, february, 11, in, …
Refinamiento: remover stop words, stemming.
15 Diciembre de 2010
26/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Representación de texto: Frecuencia
grain(s) 3
oilseed(s) 2
total 3
wheat 1
maize 1
soybean 1
tonnes 1
... ...
palabra frecuenciaARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONSBUENOS AIRES, Feb 26Argentine grain board figures show crop registrations of
grains, oilseeds and their products to February 11, in thousands of tonnes, showing those for future shipments month, 1986/87 total and 1985/86 total to February 12, 1986, in brackets:
• Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
• Maize Mar 48.0, total 48.0 (nil).• Sorghum nil (nil)• Oilseed export registrations were:• Sunflowerseed total 15.0 (7.9)• Soybean May 20.0, total 20.0 (nil)The board also detailed export registrations for subproducts,
as follows....
Si el orden de las palabras no importa, x puede ser un vector de frecuencias de palabras
“Bag of words”: un vector x=(,…,fi,….) donde fi es la frecuencia de la i-esima palabra en el vocabulario
15 Diciembre de 2010
Software
28/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Se desarrolla una interfaz utilizando HTML y PHP para pre procesar los textos, obtener la precisión de Bayes Ingenuo y elegir los parámetros de los distintos kernels en la máquina de soporte vectorial utilizada.
Los textos analizados se almacenan en una base de datos MySQL Se utiliza LibSVM [Chih-Chung Chang and Chih-Jen Lin, 2001-2010]
para el procesamiento de textos mediante máquinas de soporte vectorial.
Software
15 Diciembre de 2010
InicioBD
Elección NB/SVM
Elección parámetros LibSVM
NB
Obtengo resultados
BD
Entrego resultados
29/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Software:Caso de uso de alto nivel
15 Diciembre de 2010
30/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Software:Modelo base de datos
15 Diciembre de 2010
Caso de estudio
32/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Se examinará la eficiencia de aplicar técnicas de máquinas de aprendizaje a problemas de clasificación de sentido.
Set de datos: Utilizado por [Pang y Lee, 2002] consiste en 1000 reviews positivos
y 1000 reviews negativos el cual son comentarios de películas obtenidos de imdb.com
Aplicando técnicas de máquinas de aprendizaje se clasificará su sentido (positivo o negativo)
Caso de estudio
15 Diciembre de 2010
33/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Caso de estudio:Set de datos
15 Diciembre de 2010
34/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Caso de estudio:Resultado obtenido
Limpieza # Palabras vocabulario
Representación NB SVM
Ninguno 29.054 Frecuencia 71,7% 84%
Stop Words 28.489 Frecuencia N/A 85%
Stemming 21.341 Frecuencia N/A 85%
Stop Words + Stemming 20.999 Frecuencia 72,2% 84%
15 Diciembre de 2010
Limpieza # Palabras vocabulario Representación NB SVM
Ninguno 16.165 Frecuencia 78.7% 72.8%
Ninguno 16.165 Binaria 81.0% 82.9%
[Pang y Lee, 2002]
[Gálvez, 2010]
35/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Bayes ingenuo tiende a tener relativamente menor precisión que máquinas de soporte vectorial
Bayes ingenuo es de más fácil implementación Máquinas de soporte vectorial es de mayor complejidad Temas que quedan por verificar:
¿Cómo enfrentar las preguntas dentro de un texto? ¿Cómo enfrentar las comparaciones dentro de un texto? ¿Cómo enfrentar las negaciones dentro de un texto?
Caso de estudio:Discusión
15 Diciembre de 2010
Conclusiones y trabajo futuro
37/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Se han obtenido resultados satisfactorios de acuerdo a la utilización de las dos técnicas de aprendizaje supervisado.
En clasificación de opiniones la representación del texto juega un papel importante en el análisis.
Se ha desarrollado satisfactoriamente el software, el cual ajusta automáticamente los parámetros para obtener el mejor resultado y almacenar el modelo generado.
En el futuro es posible utilizar aprendizaje no supervisado o semi supervisado al no contar con la gran mayoría de textos etiquetados desde Internet.
En el futuro lograr descomponer y analizar las frases encontradas dentro de un texto ayudaría un análisis más detallado.
Conclusiones y trabajo futuro
15 Diciembre de 2010
¿Preguntas?
Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Referencias
15 Diciembre de 2010
40/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Vasileios Hatzivassiloglou and Kathleen R. McKeown. "Predicting the Semantic Orientation of Adjectives". In Proceedings of the 35th Annual Meeting of the ACL and the 8th Conference of the European Chapter of the ACL, pages 174–181, Madrid, Spain, July 1997. Association for Computational Linguistics
Turney, P.D., and Littman, M.L. (2002), Unsupervised Learning of Semantic Orientation from a Hundred-Billion-Word Corpus, National Research Council, Institute for Information Technology, Technical Report ERB-1094
Turney, P.D. (2002), Thumbs up or thumbs down? Semantic orientation applied to unsupervised classification of reviews, Proceedings of the 40th Annual Meeting of the Association for Computational Linguistics (ACL'02), Philadelphia, Pennsylvania, 417-424
15 Diciembre de 2010
Referencias
41/37Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso
Thumbs up? Sentiment Classification using Machine Learning Techniques Bo Pang, Lillian Lee, and Shivakumar Vaithyanathan. Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 79--86, 2002
Duda, R. O. and Hart, P. E. (1973). Pattern Classification and Scene Analysis. Wiley.
Pat Langley, Wayne Iba, Kevin Thompson. An Analysis of Bayesian Classifiers. In Proceedings of AAAI'1992. pp.223~228
VAPNIK…, V., The Nature of Statistical Learning Theory. 1995. NY Springer. Gerard M. Salton, A. Wong, and C. S. Yang. (1975). "A Vector Space Model for
Automatic Indexing." In: Communications of the ACM Chih-Chung Chang and Chih-Jen Lin, LIBSVM : a library for support vector
machines, 2001. Software available at http://www.csie.ntu.edu.tw/~cjlin/libsvm
15 Diciembre de 2010
Referencias