Minería de Datos en Twitter
aplicando técnicas de Lenguaje
Natural
Propuesta Memoria Título
Alumno: Franco Figueroa C.
Profesor Guía: Daniel Campos D.
Temario
Introducción
Fundamentos y Relevancia
Revisión Bibliográfica
Objetivos
Material y Métodos






Recursos Requeridos
Grupos Involucrados
Riesgos
Metodología de Trabajo
Hitos y Entregables
Plan de Trabajo
Avance del Proyecto
Bibliografía
Introducción
• El propósito de este proyecto es aportar en el desarrollo de
una tecnología que nos permita analizar la información
disponible en Twitter con el fin de encontrar información en
común entre los usuarios para identificar oportunidades y/o
amenazas que nos permitan aprovechar las primeras y
prevenir las segundas. Este proyecto se inserta dentro de una
de las líneas de investigación de la Escuela de Informática de
la Universidad Andrés Bello en el ámbito de Minería de Redes
Sociales.
Introducción
• Estudios Realizados:
▫ En Twitter existen varios estudios realizados por diferentes
entidades para conocer a los usuarios, o también en apoyo a
situaciones de catástrofe. En esta ultima existe una
investigación realizada por la Universidad de Colorado la
cual se adopto en Chile para mejorar la comunicación entre
las personas afectadas por el terremoto en Febrero de 2010,
la cual consiste en proponer una forma de escribir mensajes
en Twitter utilizando HashTags(2). Existe también otro
estudio el cual mide el estado de ánimo de las personas en
un determinado país o cuidad, lo cual nos puede indicar
que día de la semana es donde las personas sienten mayor
stress o que ciudad es la más feliz.(3)
Fundamentación y Relevancia
• Este proyecto se inserta dentro de una línea de
investigación de la Escuela de Informática de la
Universidad Andrés Bello.
• Enfrenta el problema del procesamiento y
análisis de textos en lenguaje Castellano escritos
en la red social Twitter.
• Nos abre una gama de oportunidades de
negocio, ya que podemos conocer a los usuarios.
Ej: Saber que lugar de vacaciones prefieren.
Revisión Bibliográfica
Procesamiento del Lenguaje Natural
•
•
•
•
El lenguaje natural se utiliza como medio de comunicación entre los humanos, el cual puede ser en forma escrita o hablada.
Uno de los grandes retos dentro de la informática es la creación de computadores que puedan comprender el lenguaje natural. Es así como nace un área de la informática
conocida con el nombre de Procesamiento del Lenguaje Natural (PLN), que estudia la interacción de los computadores con el lenguaje humano.(4)
El Procesamiento del Lenguaje Natural, a través de los sistemas informáticos, reconoce y utiliza la información expresada en lenguaje natural con el objetivo de desarrollar
sistemas que permitan una comunicación eficiente entre los computadores y las personas. Para este efecto, se identifican los siguientes niveles de análisis:
Análisis morfológico
Su función consiste en detectar la relación que se establece entre las unidades mínimas que forman una palabra, como puede ser el reconocimiento de sufijos o prefijos.
Este nivel de análisis mantiene una estrecha relación con el léxico.
•
Análisis sintáctico
Tiene como objetivo verificar que un conjunto de palabras expresadas en una frase u oración estén bien coordinadas y unidas, y correspondan a las formas gramaticales
correctas.
•
Análisis semántico
Su función es tratar de establecer el significado de las oraciones de un texto, y también resolver problemas de ambigüedades léxicas y estructurales.
•
Análisis Pragmático
Tiene como función agregar información al análisis del significado de una oración de acuerdo al contexto en que se encuentre.
•
Dificultades
Lograr que el computador analice y entienda el lenguaje natural tiene varias dificultades, algunos de los problemas principales se debe a la ambigüedad en los distintos
planos:
Plano Léxico: Existencia de significados diferentes para una misma palabra.
Plano Sintáctico-semántico: Una frase puede significar lo mismo que otra y estar escritas de diferente manera.
Plano Pragmático: El significado de una frase no siempre es su significado literal. Un ejemplo de ésto es la ironía.
•
Otras dificultades son la separación de las palabras, ya que no todas las palabras son separadas por espacios en blanco, sino que también están separadas por guiones. En
lenguajes distintos al castellano, tales como el chino mandarín, japonés y tailandés, las palabras no están separadas entre sí.
También otra dificultad dentro del procesamiento del lenguaje natural es el uso de tildes, ya que esto podría cambiar el significado de una frase, y el uso de caracteres
especiales, mayúsculas y minúsculas.
Investigaciones
Existen Investigaciones previas por miembros del Equipo de Investigación que pueden aportar al desarrollo de este proyecto, se posee una gramática del lenguaje español la cual
tiene varios años de trabajo, la cual nos puede apoyar en la definición de una propia gramática para los tweets.
Revisión Bibliográfica
Representación del Conocimiento
• La representación del conocimiento es una forma de resolver problemas de manera eficaz y
potente. La elección de una adecuada representación de conocimiento nos puede
simplificar la tarea de resolver un problema.(5)
• Existen distintas formas de representación del conocimiento, una de ellas son las redes
semánticas propuestas por Quillan y Collins (1968).
• En las redes semánticas, la información se representa mediante nodos interconectados
unos con otros a través de un conjunto de arcos etiquetados que representan las relaciones
entre los nodos.
• Investigaciones
Existe una investigación realizada por Stuart C. Shapiro sobre como representar las
situaciones mediante una estructura base. Esta forma de representación del conocimiento a
través de redes semánticas se encuentra incluida en el sistema SNePs, Syntax and
Semantics of Cassie.(6)
Revisión Bibliográfica
Twitter(7)
Twitter es una aplicación Web gratuita de microblogging que reúne las ventajas de los blogs, las redes sociales y la mensajería
instantánea. Permitiendo a sus usuarios estar en contacto en tiempo real con personas de su interés a través de mensajes breves de texto
los que se denominan “tweets”, que responden a una sencilla pregunta: ¿Qué estás haciendo?
Existen diferentes tipos de tweets, como se muestran a continuación:
Tweet Básico: Es un mensaje abierto a todo el mundo.
Tweet Reply: Es una respuesta a un mensaje escrito por otro usuario y parte con @ seguido por el
nombre de usuario.
ReTweet: Es la retransmisión de un mensaje, se utiliza básicamente para difundir un mensaje interesante a sus seguidores.
Twitter nos proporciona 3 APIs: Streaming API, REST API y Search API, las cuales nos proporcionan diferentes servicios dependiendo
de las necesidades decada uno. A continuación se explican cada una de las APIs. (8)
•
Streaming API
Nos proporciona un flujo constante de tweets en tiempo real. Se pueden extraer tweets de manera aleatoria o también se pueden obtener
por palabras
clave o por usuarios. La limitante de esta API es que la cantidad de datos y la velocidad de la recepción dependerán del tráfico con el que
cuenten los
servidores de Twitter.
•
REST API
Nos permite tener acceso al core de los datos de Twitter. Se puede realizar todas las operaciones que se pueden hacer vía
web, dependiendo si se está autentificado o no.
•
Search API
Proporciona tweets escritos hasta de 7 días, permite buscar por cliente utilizado, lenguaje y localización. No requiere
autenticación de usuario.
Revisión Bibliográfica
SNePs
• SNePs es un sistema desarrollado por Stuart Shapiro y sus colaboradores
del Grupo de Investigación de SNePs (SNeRG), del Departamento de
Ciencias de la Computación de la Universidad de Estatal de New York en
Buffalo.(9)
• SNePs es un sistema que fue diseñado para representar las creencias,
utilizando el lenguaje natural. En el manual de SNePs se muestra el uso de
las funciones para el procesamiento de lenguaje natural, el cual consiste en
un analizador morfológico, y un intérprete de gramáticas representadas por
una red de transiciones aumentada o GATN.(10)
• SNePs además cuenta con una API(11) la cual nos provee de algunas
funciones como:
▫
▫
▫
▫
▫
Ask
Tell
Askifnot
Askwh
Askwhnot
Objetivos
• Objetivos Generales:
Este proyecto tiene como objetivo contribuir al
desarrollo de una tecnología que permita analizar la
información disponible en las distintas redes sociales
con el fin de identificar posibles amenazas y/o
oportunidades relevantes y facilitar la toma de
decisiones que permitan evitar las primeras y aprovechar
las segundas
Objetivos
• Objetivos Específicos:
▫ Aplicar de técnicas de procesamiento lingüístico para
el análisis de los textos escritos en la red social de
Twitter.
▫ Representar el resultado del procesamiento lingüístico
como redes semánticas proposicionales.
▫ Identificar patrones comunes en un conjunto de textos
escritos en la red social Twitter.
Resultados
Resultado
Métrica
Criterio
Una propuesta de Lexicón y
Gramática que permita el
parsing de los tweets en español.
Capacidad de procesar los textos
de los tweet bajo análisis
60% debe ser procesado por el
lexicón y por la gramática
Una propuesta de
representación de los tweets
bajo análisis.
Capacidad de Representar los
Tweets bajo análisis
30% debe ser representado por
la estructura
Un conjunto de patrones
representados como redes
semánticas que reflejan
similitudes entre los tweets bajo
análisis
Grado de Similitud del resultado
de los patrones encontrados por
el sistema en comparación a los
encontrados por una persona
70% de Similitud
Un sistema de software que
permita extraer y analizar
lingüísticamente la información
de Twitter, de modo tal de
identificar patrones que reflejen
similitud entre los tweets bajo
análisis.
Capacidad de Proceso del
sistema
50% debe procesar la muestra.
Recursos Requeridos
• Recursos Humanos
▫ Profesor de la Universidad Andrés Bello Daniel
Campos D. que actuará de Profesor Guía del Alumno
Memorista
▫ Alumno Memorista encargado de realizar el proyecto
completo
Recursos Requeridos
• Recursos Materiales
▫ Hardware
Hardware
Procesador
Notebook
Dell
Inspiron 1420
Sistema Operativo
Windows 7 Home Basic
Memoria RAM
2 GB
Disco Duro
320 GB (5400 rpm)
▫ Software







Especificaciones
Intel Core 2 Duo T5450 1.66GHz
Microsoft Office 2007 Profesional
Microsoft Project 2007
Microsoft Visio 2007
SNePS 2.7
Tortoise SVN 1.6.8
Foxit PDF Reader 3.2.0
NetBeans IDE 6.8
Grupos Involucrados
• La Escuela de Informática de la Universidad
Andrés Bello.
• Contacto con grupo de investigación en IA
(SNeRG)
• Contacto con centro de investigación en
Data/Information Fusion en USA (CMIF)
Metodología
• Se utilizará Scrum
• Se realizarán 9 Sprint de 8 días cada uno
• Roles:
▫ Propietario del Producto: Franco Figueroa Canales y
Daniel Campos Domínguez
▫ Equipo de desarrollo: Franco Figueroa Canales.
▫ Scrum Manager: Franco Figueroa Canales.
Metodología
8.Incremento
en el
Prototipo del
Software
1.Analisis de
los Tweets
7.Definir e
implementar
método de
identificación
de patrones
2.Generar un
incremento
en el Lexicón
Duración de 8 días
3.Generar un
incremento
en la
Gramática
6.Identificar
Elementos
Lingüísticos
5.Proponer
una
Estructura
para
representar el
conocimiento
4.Definir una
metaestructura
Metodología
• Después de cada Sprint se evaluarán los
riesgos y se planificará el siguiente Sprint,
para luego tomar las medidas necesarias.
• Se tendrá una reunión con el propietario
del producto donde se analizará el avance
del proyecto.
Hitos y Entregables
Hitos y Entregables
Plan de Trabajo
Plan de Trabajo
Plan de Trabajo
Riesgos
Nombre
Impacto
Falta de Conocimiento Medio
en
el
uso
de
Probabilidad
Mitigación
35%
Solicitar el apoyo del Contactarse con el Grupo
la
Contingencia
Profesor Daniel Campos de Investigación SNeRG
Herramienta SNePs
D.
el
cual
posee para mayor información
conocimientos en el uso en
de la herramienta
Perdida
de
la Alto
15%
Información del proyecto
el
uso
de
la
herramienta
Mantener un respaldo de Creación
de
un
la información en un repositorio con todos los
dispositivo
de archivos del proyecto.
almacenamiento portable
Extender los plazos del Alto
20%
Realizar un seguimiento Solicitar
formalmente
proyecto mas allá del
a las actividades de la una extensión el plazo de
plazo limite
carta Gantt y apoyar esta entrega
del
proyecto
con una herramienta de justificando la razón de
control de proyectos
esta solicitud
Plan de Trabajo
Conclusiones
•
Bibliografía
• (1) “ Twitter’s Developer Conference”, http://es.justin.tv/twitterchirp#r=eXDPqdM~, Abril
2010
• (2) “Tweak the Tweet: New Twitter HashTag Syntax for Sharing Information During
Catastrophes”, http://epic.cs.colorado.edu/tweak-thetweet/helping_haiti_tweak_the_twe.html, Junio 2010
• (3) “Pulse of the Nation: U.S. Mood Throughout the Day inferred from Twitter”,
http://www.ccs.neu.edu/home/amislove/twittermood/, Julio 2010
• (4) Nils J. Nilsson, Inteligencia Artificial – Una nueva síntesis, Mc-Graw Hill, 2001
• (5) Rich Elaine, Knight Kevin , Inteligencia Artificial – Segunda Edición, Mc-Graw Hill,
1994
• (6) Stuart Shapiro, The Knowledge Frontier – Essays in the Representation of Knowledge
• (7) “Twitter ", http://twitter.com, Mayo 2010
• (8) “APIs de Twitter”, http://apiwiki.twitter.com, Julio 2010
• (9) SNePs, http://www.cse.buffalo.edu/sneps, Julio 2010
• (10) Stuart Shapiro and The SNePs Implementation Group , SNePs 2.7 User’s Manual,
2008
• (11) Java-SNePs API, http://www.cse.buffalo.edu/sneps/Docs/javadocs, Julio 2010
Minería de Datos en Twitter
aplicando técnicas de Lenguaje
Natural
Propuesta Memoria Título
Alumno: Franco Figueroa C.
Profesor Guía: Daniel Campos D.
Descargar

Propuesta Memoria