Análisis de sentido en textos

721 views
619 views

Published on

Presentación final para optar al titulo profesional de Ingeniero de Ejecución en Informática

Published in: Education, Lifestyle
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
721
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Análisis de sentido en textos

  1. 1. Análisis de sentido en textos<br />Alumno: Jorge Gálvez Gajardo<br />Profesor Guía: Rodrigo Alfaro Arancibia<br />Profesor Correferente: Guillermo Cabrera Guerrero<br />
  2. 2. Descripción del proyecto<br />Introducción<br />Objetivos<br />Estado del arte<br />Máquinas de aprendizaje<br />Bayes ingenuo<br />Máquinas de soporte vectorial<br />Representación de lenguaje natural<br />Clasificación de texto<br />Software<br />Caso de estudio<br />Conclusiones y trabajo futuro<br />Contenido<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  3. 3. Descripción del proyecto<br />
  4. 4. Las opiniones tienen un impacto muy relevante en nuestra vida diaria. <br />Gran cantidad de organizaciones e industrias están interesadas en estas opiniones<br />Cada vez hay más fuentes desde donde se pude obtener todas estas opiniones<br />Toda esta información no puede ser procesada por una persona o un grupo de personas<br />Opinion Mining es una disciplina que mezcla la recuperación de información y la lingüística computacional.<br />Descripción del proyecto: Introducción<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />“La opinión pública es el termómetro de un monarca al cual debe constantemente consultar” Napoleón Bonaparte<br />15 Diciembre de 2010<br />
  5. 5. Objetivo General:<br />Utilizar Máquinas de Aprendizaje para categorizar textos en positivo o negativo, según sea su sentido.<br />Objetivos Específicos:<br />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.<br />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.<br />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.<br />Descripción del proyecto:Objetivos<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  6. 6. Se han hecho investigaciones usando heurísticas lingüísticas o un set de palabras ya clasificadas [Hatzivassiloglou and McKeown, 1997; Turney and Littman, 2002].<br />[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“.<br />[Pang y Lee, 2002] utilizan conocimiento previo de cada uno de los textos, pudiendo aplicar aprendizaje supervisado.<br />Descripción del proyecto: Estado del arte<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  7. 7. Máquinas de aprendizaje<br />
  8. 8. Máquinas de aprendizaje: Aprendizaje supervisado<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Datos de prueba<br />Modelo<br />Precisión<br />Algoritmo de aprendizaje<br />Datos de entrenamiento<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  9. 9. Máquinas de aprendizaje: Bayes Ingenuo<br />Modelo simple de clasificación [Duda & Hart 1973; Langley et al. 1992]<br />Cada ejemplo observado va a modificar la probabilidad que la hipótesis formulada sea correcta<br />Las palabras en el documento se tratan de forma independiente del contexto<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Clase<br />Atrib. 1<br />Atrib. 2<br />Atrib. n<br />…….<br />15 Diciembre de 2010<br />
  10. 10. Máquinas de aprendizaje: Bayes Ingenuo<br />Problema de frecuencia cero: un término que no se encuentre en el documento nos genera una probabilidad de cero.<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Número de ocurrencias de t en los documentos de entrenamiento de la clase c<br />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<br />15 Diciembre de 2010<br />
  11. 11. Máquinas de aprendizaje: Bayes Ingenuo<br />Aplicando Laplacesmoothing<br />=<br />Número de términos del vocabulario de entrenamiento de las dos clases<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />Número de ocurrencias de t en los documentos de entrenamiento de la clase c<br />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<br />+<br />
  12. 12. Máquinas de aprendizaje: Bayes Ingenuo<br /><ul><li>Pros:
  13. 13. Muy fácil y rápido de implementar
  14. 14. Bien entendido formal y experimentalmente
  15. 15. Contras:
  16. 16. Pocas veces es el mejor rendimiento
  17. 17. Las ProbabilidadesPr(y|x) no son exactas</li></ul>Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  18. 18. Máquinas de aprendizaje: Máquinas de Soporte Vectorial<br /><ul><li>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]
  19. 19. 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</li></ul>Clase 2<br />w<br />x + b = 1<br />m<br />Clase 1<br />x + b = 0<br />x + b = -1<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  20. 20. Máquinas de aprendizaje: Máquinas de Soporte Vectorial<br /><ul><li>El Problema:
  21. 21. La maximización del margen es un importante concepto en clasificación, pero no puede ser usado en problemas del mundo real.
  22. 22. Muchos conjuntos de datos no son linealmente separables
  23. 23. La Solución:
  24. 24. Mapear los datos a un espacio de características de dimensionalidad mayor.</li></ul>Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />¿?<br />
  25. 25. Mapear los datos de espacio X en espacio F<br />15 Diciembre de 2010<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Máquinas de aprendizaje: Máquinas de Soporte Vectorial<br /><ul><li>Existe una forma muy efectiva de calcular el producto escalar entre los vectores, utilizando el truco del kernel
  26. 26. Algunas funciones kernel son: Polinómica, Gaussiana, Sigmoidal</li></li></ul><li>Representación de lenguaje natural<br />
  27. 27. Representación de lenguaje natural<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />Booleano: determina si se encuentra o no la palabra en el documento.<br />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.<br /><ul><li>IDF:</li></ul>Total de documentos<br />Número de documentos que contiene el término<br /><ul><li>TF-IDF:</li></li></ul><li>Representación de lenguaje natural<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />La representación de un conjunto de documentos como vectores se conoce como modelo de espacio vectorial [Salton, Wong and and Yang, 1975].<br />
  28. 28. Es habitual filtrar las palabras que no tienen sentido semántico (artículos, preposiciones, pronombres, etc.) llamadas stop words.<br />Reducir palabras a su raíz es llamado Stemming el cual agrupa palabras escritas en distinta forma verbal y que tienen un mismo significado<br />15 Diciembre de 2010<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Representación de lenguaje natural<br />bibliotecas<br />bibliotecario<br />bibliotec<br />
  29. 29. Clasificación de texto<br />
  30. 30. Clasificación de texto: Definición<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Documentos sin etiqueta<br />Modelo<br />Precisión<br />Algoritmo de aprendizaje<br />Documentos etiquetados<br />15 Diciembre de 2010<br />
  31. 31. Clasificación de texto: Usos<br /><ul><li>Clasificar:
  32. 32. noticias
  33. 33. email en Spam o no spam.
  34. 34. reviewde películas como positivas, negativas o neutras.
  35. 35. paperscomo interesantes o no interesantes.
  36. 36. chistes como divertidos o fomes.</li></ul>Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  37. 37. Clasificación de texto: Ejemplo<br />ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONS<br />BUENOS AIRES, Feb 26<br />Argentine 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:<br /><ul><li> Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
  38. 38. Maize Mar 48.0, total 48.0 (nil).
  39. 39. Sorghum nil (nil)
  40. 40. Oilseed export registrations were:
  41. 41. Sunflowerseed total 15.0 (7.9)
  42. 42. Soybean May 20.0, total 20.0 (nil)</li></ul>The board also detailed export registrations for subproducts, as follows....<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  43. 43. Clasificación de texto: Representación<br />f(<br />)=y<br />ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONS<br />BUENOS AIRES, Feb 26<br />Argentine 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:<br /><ul><li> Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
  44. 44. Maize Mar 48.0, total 48.0 (nil).
  45. 45. Sorghum nil (nil)
  46. 46. Oilseed export registrations were:
  47. 47. Sunflowerseed total 15.0 (7.9)
  48. 48. Soybean May 20.0, total 20.0 (nil)</li></ul>The board also detailed export registrations for subproducts, as follows....<br />?<br />¿Cual es la mejor representación del documento X para poder ser clasificado?<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  49. 49. f(<br />)=y<br />ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONS<br />BUENOS AIRES, Feb 26<br />Argentine 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:<br /><ul><li> Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
  50. 50. Maize Mar 48.0, total 48.0 (nil).
  51. 51. Sorghum nil (nil)
  52. 52. Oilseed export registrations were:
  53. 53. Sunflowerseed total 15.0 (7.9)
  54. 54. Soybean May 20.0, total 20.0 (nil)</li></ul>The board also detailed export registrations for subproducts, as follows....<br />Clasificación de texto: Lista de palabras<br />f(<br />)=y<br />(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, …<br />Refinamiento: remover stop words, stemming.<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  55. 55. Representación de texto: Frecuencia<br />palabra<br />frecuencia<br />ARGENTINE 1986/87 GRAIN/OILSEEDREGISTRATIONS<br />BUENOS AIRES, Feb 26<br />Argentinegrain 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:<br /><ul><li> Bread wheatprev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
  56. 56. Maize Mar 48.0, total 48.0 (nil).
  57. 57. Sorghum nil (nil)
  58. 58. Oilseed export registrations were:
  59. 59. Sunflowerseed total 15.0 (7.9)
  60. 60. Soybean May 20.0, total 20.0 (nil)</li></ul>The board also detailed export registrations for subproducts, as follows....<br />Si el orden de las palabras no importa, x puede ser un vector de frecuencias de palabras<br />“Bag of words”: un vector x=(,…,fi,….) donde fi es la frecuencia de la i-esima palabra en el vocabulario<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  61. 61. Software<br />
  62. 62. 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.<br />Los textos analizados se almacenan en una base de datos MySQL<br />Se utiliza LibSVM [Chih-Chung Chang and Chih-Jen Lin, 2001-2010] para el procesamiento de textos mediante máquinas de soporte vectorial.<br />Software<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />NB<br />Elección NB/SVM<br />Entrego resultados<br />Inicio<br />BD<br />BD<br />Obtengo resultados<br />Elección parámetros<br />LibSVM<br />
  63. 63. Software:Caso de uso de alto nivel <br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  64. 64. Software:Modelo base de datos<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  65. 65. Caso de estudio<br />
  66. 66. Se examinará la eficiencia de aplicar técnicas de máquinas de aprendizaje a problemas de clasificación de sentido.<br />Set de datos:<br />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<br />Aplicando técnicas de máquinas de aprendizaje se clasificará su sentido (positivo o negativo)<br />Caso de estudio<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  67. 67. Caso de estudio:Set de datos<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  68. 68. Caso de estudio:Resultado obtenido<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  69. 69. Bayes ingenuo tiende a tener relativamente menor precisión que máquinas de soporte vectorial<br />Bayes ingenuo es de más fácil implementación<br />Máquinas de soporte vectorial es de mayor complejidad<br />Temas que quedan por verificar:<br />¿Cómo enfrentar las preguntas dentro de un texto?<br />¿Cómo enfrentar las comparaciones dentro de un texto?<br />¿Cómo enfrentar las negaciones dentro de un texto?<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Caso de estudio:Discusión<br />15 Diciembre de 2010<br />
  70. 70. Conclusiones y trabajo futuro<br />
  71. 71. Se han obtenido resultados satisfactorios de acuerdo a la utilización de las dos técnicas de aprendizaje supervisado.<br />En clasificación de opiniones la representación del texto juega un papel importante en el análisis.<br />Se ha desarrollado satisfactoriamente el software, el cual ajusta automáticamente los parámetros para obtener el mejor resultado y almacenar el modelo generado.<br />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.<br />En el futuro lograr descomponer y analizar las frases encontradas dentro de un texto ayudaría un análisis más detallado.<br />Conclusiones y trabajo futuro<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />15 Diciembre de 2010<br />
  72. 72. ¿Preguntas?<br />
  73. 73. Referencias<br />15 Diciembre de 2010<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />
  74. 74. VasileiosHatzivassiloglou 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<br />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<br />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<br />15 Diciembre de 2010<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Referencias<br />
  75. 75. Thumbs up? SentimentClassificationusing Machine LearningTechniques  BoPang, Lillian Lee, and ShivakumarVaithyanathan.  Proceedings of theConferenceonEmpiricalMethods in Natural LanguageProcessing (EMNLP), pp. 79--86, 2002<br />Duda, R. O. and Hart, P. E. (1973).  Pattern Classification and Scene Analysis.  Wiley.<br />Pat Langley, Wayne Iba, Kevin Thompson. An Analysis of Bayesian Classifiers. In Proceedings of AAAI'1992. pp.223~228   <br />VAPNIK…, V., The Nature of Statistical Learning Theory. 1995. NY Springer.<br />Gerard M. Salton, A. Wong, and C. S. Yang. (1975). "A Vector Space Model for Automatic Indexing." In: Communications of the ACM <br />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<br />15 Diciembre de 2010<br />Jorge Gálvez Gajardo Pontificia Universidad Católica de Valparaíso<br />Referencias<br />

×