ES2911173T3 - Sistemas y métodos para la detección de eventos y clústering - Google Patents
Sistemas y métodos para la detección de eventos y clústering Download PDFInfo
- Publication number
- ES2911173T3 ES2911173T3 ES17866577T ES17866577T ES2911173T3 ES 2911173 T3 ES2911173 T3 ES 2911173T3 ES 17866577 T ES17866577 T ES 17866577T ES 17866577 T ES17866577 T ES 17866577T ES 2911173 T3 ES2911173 T3 ES 2911173T3
- Authority
- ES
- Spain
- Prior art keywords
- post
- determining
- cluster
- posts
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 144
- 238000001514 detection method Methods 0.000 title description 42
- 238000013459 approach Methods 0.000 claims abstract description 45
- 238000004891 communication Methods 0.000 claims abstract description 43
- 230000001052 transient effect Effects 0.000 claims abstract description 11
- 230000002123 temporal effect Effects 0.000 claims description 36
- 239000013598 vector Substances 0.000 claims description 30
- 230000014509 gene expression Effects 0.000 claims description 26
- 230000006855 networking Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 4
- 238000012549 training Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000007427 paired t-test Methods 0.000 description 2
- 238000013442 quality metrics Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
- G06F16/287—Visualization; Browsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/216—Handling conversation history, e.g. grouping of messages in sessions or threads
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Human Resources & Organizations (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Strategic Management (AREA)
- Software Systems (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Tourism & Hospitality (AREA)
- Entrepreneurship & Innovation (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Health & Medical Sciences (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Un método para detectar eventos y hacer clústering de publicaciones en redes sociales para mostrarlas en un sistema de usuario, el método comprende: recuperar (204), a través de una interfaz (44) de programación de aplicaciones API de un sistema (24) de redes sociales sobre al menos una primera red (26) de comunicación, al menos una publicación del sistema (24) de redes sociales; determinar (206) si la al menos una publicación tiene contenido que se refiere a un período de tiempo predeterminado; al determinar que la al menos una publicación tiene contenido que se refiere al período de tiempo predeterminado, determinar (210) si la al menos una publicación corresponde a un clúster existente de publicaciones relacionadas con un evento, en el que la determinación (210) si la al menos una la publicación corresponde al clúster existente de publicaciones relacionadas con el evento utiliza un enfoque basado en clases semánticas que incluye: asignar (1304) palabras del al menos una publicación a una pluralidad de clases semánticas diferentes; para cada clase semántica, determinar (1308) una puntuación de similitud entre las palabras asignadas a esa clase semántica para al menos una publicación y las palabras asignadas a una clase semántica correspondiente para al menos un clúster de publicaciones existente; combinar (1310) las puntuaciones de similitud para la pluralidad de clases semánticas para generar una puntuación de similitud combinada; y determinar si la puntuación de similitud combinada supera un umbral predeterminado; al determinar (210) que al menos una publicación corresponde al clúster existente de publicaciones relacionadas con el evento, almacenar, en al menos una base de datos (136) en un medio de almacenamiento no transitorio legible por máquina, el clúster existente de publicaciones modificado para incluir al menos una publicación; y proporcionar (216), a través de al menos una segunda red de comunicación (30, 34), una representación del clúster existente modificado de publicaciones para su visualización en un sistema (36) de usuario.
Description
DESCRIPCIÓN
Sistemas y métodos para la detección de eventos y clústering
REFERENCIA CRUZADA A SOLICITUDES RELACIONADAS
Esta solicitud reivindica la prioridad de la solicitud de patente provisional de EE. UU. No. 62/416,783, presentada el 3 de noviembre de 2016, y la solicitud de patente de EE. UU. No. 15/800,876, presentada el 1 de noviembre de 2017. Esta solicitud también está relacionada con la solicitud de patente no provisional de EE. UU. No. 15/143.730, presentada el 2 de mayo de 2016.
INFORMACIÓN DE CONTEXTO
Los sistemas de redes sociales, como Twitter, contienen publicaciones que incluyen una gran y diversa cantidad de información, que va desde historias de la vida diaria hasta los últimos eventos y noticias mundiales y locales. Las publicaciones de estos sistemas, como los tuits, son una fuente dinámica de información que permite a las personas y organizaciones mantenerse informados de lo que está sucediendo ahora, se han convertido en un canal de comunicación rápido para recopilar y difundir noticias de última hora y también son una herramienta importante para algunas tareas específicas, como el seguimiento de actividades terroristas, la predicción de delitos y la predicción de resultados electorales.
Sin embargo, han surgido dificultades con la extracción de información útil de flujos de redes sociales. Los eventos se pueden definir en general como sucesos del mundo real que se desarrollan en el espacio y el tiempo. Los usuarios de las redes sociales pueden hablar sobre cualquier evento en las redes sociales; algunos eventos pueden tener una antigüedad de días, meses o incluso años. Por lo tanto, pueden existir dificultades para distinguir entre publicaciones en redes sociales relacionadas con eventos nuevos o recientes, como eventos que están ocurriendo actualmente o que sucedieron hace poco tiempo, y publicaciones en redes sociales que están relacionadas con eventos antiguos.
Varias publicaciones en redes sociales también pueden relacionarse con el mismo evento, y agrupar dichas publicaciones puede ayudar mejor a los usuarios a comprender el evento y su desarrollo. Sin embargo, dado que las publicaciones en las redes sociales incluyen una gran cantidad de palabras irregulares y abreviadas, errores ortográficos y gramaticales, la detección de eventos de las transmisiones de las redes sociales plantea nuevos desafíos que son diferentes a los que enfrenta la detección de eventos en los medios tradicionales.
El documento US 2014/129625 A1 se refiere al ajuste de la entrega de contenido en función de los envíos de los usuarios. Un método incluye analizar envíos de usuarios que comprenden fotografías, el análisis comprende: para cada uno de los envíos de usuarios: identificar una hora en que se produjo el envío del usuario; identificar objetos representados en la fotografía; determinar un tema del envío del usuario basado al menos en parte en los objetos; determinar una ubicación geográfica asociada con el tema del envío del usuario; determinar clústeres de envíos de usuarios, cada envío de usuario en un clúster en particular es similar a cualquier otro envío de usuario en el clúster en particular en función de las horas en que ocurrieron los envíos de usuarios, los temas de los envíos de usuarios y las ubicaciones geográficas asociadas con los envíos de los usuarios; y ajustar la entrega de contenido a los miembros de una red en base a la determinación de uno o más de los clústeres.
El documento US 2016/026919 A1 divulga un método implementado por ordenador, un producto de programa informático y sistemas para la detección de eventos. El sistema informático para la detección de eventos incluye un componente de interfaz configurado para recibir entradas de datos desde un almacenamiento de datos de redes sociales en el que las entradas de datos tienen valores de tiempo y valores de ubicación asociados. Las entradas de datos recibidas se almacenan en un componente de almacenamiento de datos. Un creador de clústeres de un componente de clústering puede crear un clúster con entradas de datos de clúster donde las entradas de datos de clúster son entradas de datos recibidas que tienen valores de tiempo dentro de un rango de un intervalo de tiempo y que tienen valores de ubicación dentro de un rango de un intervalo de ubicación. Luego, un evaluador de clúster puede determinar un valor de clúster para el clúster calculando un vector de características de clúster específico del evento como entrada a un algoritmo de aprendizaje automático en el que el algoritmo de aprendizaje automático calcula el valor del clúster. Si el valor del clúster supera un valor de umbral de detección de eventos, se detecta un evento.
En el documento US 2015/081713 A1 se proporcionan una o más técnicas y/o sistemas para llenar una interfaz de información basada en datos de redes sociales. Por ejemplo, los usuarios pueden publicar, compartir y/o discutir información diversa a través de fuentes de redes sociales. De acuerdo con lo anterior, los datos de las redes sociales pueden obtenerse de dichas fuentes de redes sociales. Los datos de redes sociales pueden agruparse en conjuntos de datos de redes sociales basados en información temporal. Dentro de los conjuntos de datos de las redes sociales, las entradas de las redes sociales pueden formarse clústeres en clústeres de temas (por ejemplo, un grupo de temas de boda real, un grupo de temas de un accidente aéreo, etc.). Se pueden generar resúmenes de eventos para los respectivos grupos de temas. Los resúmenes de eventos se pueden usar para llenar los intervalos de tiempo de una interfaz de información, como un calendario o una línea de tiempo, para crear intervalos de tiempo anotados. De esta
forma, la interfaz de información puede proporcionar a los usuarios una vista interactiva de los eventos durante un período de tiempo, como una revisión anual, en función de los datos de las redes sociales.
Por lo tanto, existe la necesidad de sistemas y métodos para detectar publicaciones en redes sociales relacionadas con eventos que ocurren en períodos de tiempo específicos, como eventos nuevos o recientes. También existe la necesidad de sistemas y métodos para agrupar publicaciones que se relacionan con el mismo evento.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
Para facilitar la comprensión de las características de la presente invención, a continuación, se describen una serie de dibujos. Sin embargo, los dibujos adjuntos ilustran solo realizaciones particulares como implementaciones ejemplares de la invención y, por lo tanto, no deben considerarse limitativos de su alcance, para la invención que se define únicamente por las reivindicaciones adjuntas.
La Fig. 1 es un diagrama esquemático que representa una realización de un sistema para proporcionar identificación, clústering y presentación mejoradas de publicaciones en redes sociales relacionadas con eventos de un período de tiempo predeterminado.
La Fig. 2 es un diagrama de flujo que representa una realización de un método para proporcionar identificación, clústering y presentación de publicaciones en redes sociales relacionadas con eventos de un período de tiempo predeterminado.
La Fig. 3 es un diagrama esquemático que representa una realización de un módulo de entrada de redes sociales de un sistema de detección de eventos.
La Fig. 4 representa una realización de una vista de una cuenta de un sistema de redes sociales proporcionada a un sistema de usuario.
La Fig. 5 representa una realización de una vista de una publicación de una cuenta de un sistema de redes sociales proporcionada a un sistema de usuario.
La Fig. 6 es un diagrama esquemático que representa una realización de un módulo de identificación temporal del sistema de detección de eventos.
La Fig. 7 es un diagrama de flujo que representa una realización de un método para determinar si una publicación en redes sociales se refiere a un evento en un período de tiempo predeterminado.
La Fig. 8 es un diagrama de flujo que representa una realización de un método que realiza una identificación temporal para una publicación en redes sociales usando un enfoque basado en reglas.
La Fig. 9 es un diagrama de flujo que representa una realización de un método que realiza una identificación temporal de una publicación en redes sociales utilizando un enfoque basado en la incorporación de palabras específicas temporales (TSWE).
La Fig. 10 es un diagrama esquemático que representa una realización de un módulo de clústering de eventos del sistema de detección de eventos.
La Fig. 11 es un diagrama de flujo que representa una realización de un método para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones.
La Fig. 12 es un diagrama de flujo que representa una realización de un método para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones utilizando un enfoque basado en enlaces.
La Fig. 13 es un diagrama de flujo que representa una realización de un método para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones usando un enfoque basado en clases semánticas.
La Fig. 14 un diagrama de flujo que representa una realización de un método para expandir un conjunto de términos asignados a una clase semántica para incluir sinónimos.
La Fig. 15 representa una realización de una vista de un grupo de publicaciones proporcionadas a un sistema de usuario.
La Fig. 16 es un diagrama esquemático que representa una realización de un sistema informático que puede usarse para implementar componentes del sistema de detección de eventos.
DESCRIPCIÓN DETALLADA DE REALIZACIONES DE EJEMPLO
Un método para detectar eventos y hacer clústering de publicaciones en redes sociales para mostrarlas en un sistema de usuario de acuerdo con la reivindicación 1, que incluye recuperar, a través de una interfaz de programación de aplicaciones (API) de un sistema de redes sociales en al menos una primera red de comunicaciones, al menos una publicación del sistema de redes sociales; determinar si la al menos una publicación tiene contenido que se refiere a un período de tiempo predeterminado; al determinar que la publicación tiene contenido que se refiere al período de tiempo predeterminado, determinar si la publicación corresponde a un clúster existente de publicaciones relacionadas con un evento; al determinar que la publicación corresponde al clúster existente de publicaciones relacionadas con el evento, almacenar, en al menos una base de datos en un medio de almacenamiento no transitorio legible por máquina, el clúster existente de publicaciones modificado para incluir al menos una publicación; y proporcionar, a través de al menos una segunda red de comunicación, una representación del clúster existente modificado de publicaciones para su visualización en al menos un sistema de usuario.
La Fig. 1 representa una realización de un sistema 20 para proporcionar identificación, clústering y presentación mejoradas de publicaciones en redes sociales relacionadas con eventos de un período de tiempo predeterminado. El sistema incluye un sistema 24 de redes sociales, un sistema 28 de detección de eventos, un sistema 32 de aplicación y un sistema 36 de usuario.
El sistema 24 de redes sociales proporciona una plataforma para que sus usuarios publiquen mensajes y/o contenido en una red de otros usuarios usando cuentas del sistema 24. El sistema 24 de redes sociales incluye un servidor 40 de redes sociales que tiene una interfaz 44 de comunicación como una interfaz de programa de aplicación (API). El servidor 40 de redes sociales proporciona la funcionalidad del sistema 24 de redes sociales para los usuarios como se describe aquí, con la interfaz 44 de comunicación que proporciona comunicaciones sobre una o más redes 26 de comunicación entre el sistema 24 de redes sociales y otros sistemas. El sistema 24 de redes sociales puede tomar varias formas diferentes. El sistema 24 de redes sociales puede ser Twitter, en el que los usuarios utilizan sus cuentas para, entre otras cosas, publicar mensajes cortos y/o contenido, denominados Tweets, en el sistema. En otras realizaciones, el sistema 24 de redes sociales puede ser otro sistema, como uno o más de Facebook, Instagram, Snapchat, Tumblr, Pinterest, Flickr o Reddit, etc.
El sistema 28 de detección de eventos proporciona identificación, clústering y presentación de publicaciones en redes sociales relacionadas con un período de tiempo predeterminado. El sistema 28 de detección de eventos incluye un módulo 48 de entrada de redes sociales, un módulo 56 de identificación temporal y un módulo 64 de clústering de eventos. El módulo 48 de entrada de redes sociales recupera publicaciones de redes sociales y, opcionalmente, información de cuentas del sistema 24 de redes sociales para su procesamiento, por el módulo 56 de identificación temporal y el módulo 64 de clústering de eventos, e incluye una interfaz 52 de comunicación para recuperar las publicaciones de la interfaz 44 de comunicación del sistema 24 de redes sociales a través de una o más redes 26 de comunicación. El módulo 56 de identificación temporal identifica la información temporal en publicaciones de redes sociales recuperadas para determinar si las publicaciones de redes sociales se refieren a un evento de un período de tiempo predeterminado, como un evento actual o reciente o un evento antiguo. El módulo 64 de clústering de eventos hace clústeres de publicaciones en redes sociales que se refieren al mismo evento del período de tiempo predeterminado en clústeres de publicaciones existentes o nuevos. Cada uno de los módulos 56, 64 de identificación temporal y clústering de eventos incluye una interfaz 60, 68 de comunicación, como una API, para generar identificaciones temporales y clústeres de eventos, respectivamente, a una aplicación 32 descendente o un sistema 36 de usuario a través de una o más redes 30, 34 de comunicación.
El sistema 32 de aplicación puede ser cualquier sistema que proporcione una aplicación, como, por ejemplo, sirva una interfaz de usuario de una aplicación, al sistema 36 de usuario, la aplicación utiliza las identificaciones temporales y/o clústeres de eventos generados por el módulo 56 de identificación temporal y módulo 64 de clústering de eventos del sistema 28 de detección de eventos. Por ejemplo, la aplicación puede ser una aplicación de presentación de eventos, noticias, opiniones, etc. que utiliza las identificaciones temporales y/o clústeres de eventos para presentar eventos, noticias, opiniones, etc. de las publicaciones en las redes sociales a los usuarios. Alternativamente, el sistema 28 de detección de eventos puede salir directamente al sistema 36 de usuario.
El sistema 36 de usuario puede ser cualquier plataforma informática, como uno o más ordenadores, un ordenador de escritorio, un ordenador portátil, un ordenador tipo tableta, un teléfono inteligente u otros dispositivos estacionarios o móviles, etc., que un usuario utiliza para comunicarse con el sistema 32 de aplicación o el sistema 28 de detección de eventos a través de una o más redes 30, 34 de comunicación.
En realizaciones, un sistema para proporcionar identificación, clústering y presentación mejoradas de publicaciones en redes sociales relacionadas con eventos de un período de tiempo predeterminado puede incluir solo cualquier subconjunto o una conexión alternativa de las características representadas o discutidas en este documento con respecto a la Fig. 1.
La Fig. 2 representa una realización de un método 200 para proporcionar identificación, clústering y presentación mejoradas de publicaciones en redes sociales relacionadas con eventos de un período de tiempo predeterminado. El método puede ser realizado por componentes del sistema 20 de la Fig. 1, como por el sistema de detección de eventos. El método comienza en la etapa 202.
En la etapa 204, una o más publicaciones de redes sociales son recuperadas del sistema 28 de redes sociales por el módulo 48 de admisión de redes sociales. En la etapa 206, se determina si una publicación recuperada hace referencia a un período de tiempo predeterminado, como un período de tiempo predeterminado reciente, por el módulo 56 de identificación temporal. Si se determina en la etapa 206 que la publicación no se refiere al período de tiempo predeterminado, la publicación no es relevante para la consulta del sistema 28 de detección de eventos, y el método procede a la etapa 218, donde finaliza el método. Sin embargo, si se determina en la etapa 206 que la publicación se refiere al período de tiempo predeterminado, el método avanza a la etapa 208, donde el módulo 56 de identificación temporal clasifica la publicación como relacionada con el período de tiempo predeterminado, como, por ejemplo: registrar la clasificación en una base de datos de identificación temporal.
En la etapa 210, para las publicaciones que se refieren al período de tiempo predeterminado, se determina si la publicación se refiere al mismo evento al que hace referencia un clúster existente de publicaciones por el módulo 64 de clústering de eventos. Si en la etapa 210, se determina que la publicación se refiere al mismo evento al que hace referencia un clúster de publicaciones existente, el clúster de publicaciones existente se modifica para incluir la publicación, por ejemplo, agregando la publicación al clúster en una base de datos de clústeres. Sin embargo, si en la etapa 210 se determina que la publicación no se refiere al mismo evento al que hace referencia cualquier clúster de publicaciones existente, se crea un nuevo clúster y la publicación se agrega al nuevo clúster, por ejemplo, creando el clúster y agregar la publicación al clúster en la base de datos del clúster.
En la etapa 216, clústeres de publicaciones que se refieren a eventos en el período de tiempo predeterminado (y/o datos de identificación de clústeres para los clústeres de publicaciones) y/o publicaciones que se refieren a un evento en el período de tiempo reciente predeterminado (y/o los datos de identificación para publicaciones que se refieren a un evento en el período de tiempo reciente predeterminado) se emiten para su visualización en el sistema 36 de usuario, como a través del sistema 32 de aplicación. Por ejemplo, una API del sistema de detección de eventos, como una API 60 del módulo 56 de identificación temporal y/o una API 68 del módulo 64 de clústering de eventos, puede proporcionar la salida a un módulo 70 de comunicación de la aplicación a través de una o más redes 30 de comunicación, que luego puede proporcionar la salida al sistema 36 de usuario a través de una o más redes 34 de comunicación. Proporcionar la salida a la aplicación puede habilitar la funcionalidad posterior de la aplicación relacionada con el clústering y la identificación temporal de publicaciones.
En realizaciones, un método para proporcionar identificación, clústering y presentación mejoradas de publicaciones en redes sociales relacionadas con eventos de un período de tiempo predeterminado puede incluir solo cualquier subconjunto o un orden alternativo de las características representadas o discutidas anteriormente con respecto a la Fig. 2.
La Fig. 3 representa una realización del módulo 48 de entrada de redes sociales, que incluye un módulo 72 de recuperación de redes sociales y una base 76 de datos de redes sociales. El módulo 72 de recuperación de redes sociales recupera publicaciones de redes sociales del sistema 24 de redes sociales, utilizando la interfaz 52 de comunicación que se comunica con la interfaz 44 de comunicación del sistema 24 de redes sociales a través de una o más redes 26 de comunicación. La interfaz 52 de comunicación del módulo 48 de recuperación de redes sociales, que se muestra en la Fig. 1, se omite de la Fig. 3 con fines ilustrativos, pero puede incluirse en el módulo 72 de recuperación de redes sociales o como un componente separado. En una realización, el módulo 72 de recuperación de redes sociales también puede recuperar información de cuentas de redes sociales del sistema 24 de redes sociales. La base 76 de datos de redes sociales almacena, en un medio de almacenamiento no transitorio legible por máquina, las publicaciones de redes sociales recuperadas e información de cuenta.
En realizaciones, un módulo de entrada de redes sociales puede incluir solo cualquier subconjunto, o una conexión alternativa de, las características representadas o discutidas en este documento con respecto a la Fig. 3.
La Fig. 4 representa una realización de una vista 80 de una cuenta de un sistema de redes sociales proporcionada a un sistema de usuario. La vista 80 incluye información de cuenta, que incluye un nombre 84 de cuenta, una dirección 88 de cuenta, una biografía 92 de cuenta, etc., y publicaciones 96 recientes de la cuenta, etc.
La Fig. 5 representa una realización de la vista de la publicación 96 reciente de la cuenta representada en la Fig. 4 con mayor detalle. La vista incluye información de publicación, incluido un nombre 84 de cuenta de la cuenta que origina la publicación 96, una dirección 88 de cuenta de la cuenta que origina la publicación 96, un tiempo 100 de la publicación 96 (por ejemplo, expresada como una diferencia de tiempo entre el tiempo de la publicación y el tiempo actual de la vista), un texto 104 de la publicación 96, otro contenido como una imagen 108 de la publicación 96, un número de republicaciones 112 de la publicación 96, etc.
La Fig. 6 representa una realización del módulo 56 de identificación temporal, que incluye un módulo 116 de identificación temporal basado en reglas, un módulo 120 de identificación temporal basado en incorporación de
palabras específicas temporales (TSWE) y una base 124 de datos de identificación temporal. El módulo 116 de identificación temporal basado en reglas procesa el texto de una publicación en redes sociales de acuerdo con un conjunto de reglas para intentar determinar si la publicación se refiere a un evento en el período de tiempo predeterminado. El módulo 120 de identificación temporal basado en TSWE procesa una publicación en redes sociales generando incorporaciones de palabras específicas temporales para la publicación y clasifica la publicación en función de las incorporaciones generadas para determinar si la publicación se refiere a un evento en el período de tiempo predeterminado. La API 60 del módulo 56 de identificación temporal, mostrada en la Fig. 1, se omite de la Fig. 6 con fines ilustrativos, pero puede incluirse en uno o ambos del módulo 116 de identificación temporal basado en reglas y el módulo de identificación temporal basado en TSWE 120, o como un componente separado. La base 124 de datos de identificación temporal almacena las determinaciones de los módulos 116, 120 de identificación temporal en cuanto a si la publicación se refiere a un evento en el período de tiempo predeterminado en asociación con la publicación.
En realizaciones, un módulo de identificación temporal puede incluir solo cualquier subconjunto de, o una conexión alternativa de, las características representadas o discutidas en este documento con respecto a la Fig. 6
La Fig. 7 representa una realización de un método 700 para determinar si una publicación en redes sociales se refiere a un evento en un período de tiempo predeterminado. Pueden usarse realizaciones del método 700 para realizar la identificación y clasificación temporal de las etapas 206 y 208 del método 200. El método puede ser realizado por componentes del módulo 56 de identificación temporal de la Fig. 6 El método comienza en la etapa 702.
En la etapa 704, la publicación en redes sociales se procesa para determinar si se refiere o no a un evento en el período de tiempo predeterminado, como un período de tiempo reciente predeterminado, usando el enfoque basado en reglas por el módulo 116 de identificación temporal basado en reglas. En la etapa 706, si el enfoque basado en reglas da como resultado una identificación temporal, es decir, un resultado de que la publicación se refiere a un evento en el período de tiempo predeterminado o que la publicación no se refiere a un evento en el período de tiempo predeterminado, luego el método avanza a la etapa 712. En la etapa 712, se registra en la base 124 de datos de identificación temporal una clasificación de la publicación como referente a un evento en el período de tiempo predeterminado o no referente a un evento en el período de tiempo predeterminado se registra en la base 124 de datos de identificación temporal. Luego el método procede a la etapa 714, donde finaliza el método.
Si en la etapa 706 el enfoque basado en reglas no da como resultado una identificación temporal, el método procede a la etapa 708, donde se procesa la publicación para determinar si se refiere o no a un evento en el período de tiempo predeterminado, como un período de tiempo reciente predeterminado, utilizando el enfoque basado en TSWE por el módulo 120 de identificación temporal basado en TSWe . En la etapa 710, si el enfoque basado en TSWE da como resultado una identificación temporal, entonces el método avanza a la etapa 712, donde, como se discutió anteriormente, una clasificación de la publicación como referente a un evento en el período de tiempo predeterminado o no referente a un evento en el período de tiempo predeterminado se registra en la base 124 de datos de identificación temporal. Si en la etapa 710, el enfoque basado en TSWE tampoco da como resultado una identificación temporal, el método procede a la etapa 708, donde finaliza el método, sin identificación temporal hecha.
En la realización representada del método 700, el módulo 116 de identificación temporal basado en reglas y el módulo 120 de identificación temporal basado en TSWE realizan determinaciones secuenciales. Esto puede proporcionar el beneficio de utilizar el enfoque basado en reglas, que puede implicar una carga computacional relativamente menor, para intentar realizar una primera identificación temporal, seguido del enfoque basado en TSWE, que puede implicar una carga computacional relativamente mayor, para intentar hacer una identificación temporal solo en aquellas publicaciones para las cuales el enfoque basado en reglas no dio como resultado una determinación, conservando así el poder computacional en general. En otras realizaciones, el módulo 116 de identificación temporal basado en reglas y el módulo 120 de identificación temporal basado en TSWE se pueden usar para realizar otras determinaciones secuenciales o determinaciones paralelas, o solo se puede usar uno u otro para hacer una única determinación.
El registro de la identificación temporal en la base 124 de datos de identificación temporal de la etapa 712 puede incluir almacenar en la base 124 de datos de identificación temporal una indicación de que la publicación se refiere a un evento en el período de tiempo predeterminado y, en asociación con la indicación, una representación de la publicación o un subconjunto de los elementos de la publicación (como uno o más del nombre de la cuenta que origina la publicación, la dirección de la cuenta que origina la publicación, el encabezado de la publicación, la hora de la publicación, etc.). El registro de la identificación temporal de las publicaciones puede permitir la detección de eventos basada en tiempo, clústering y otras funciones en el sistema 28 de detección de eventos y/o la aplicación.
En realizaciones, un método para determinar si una publicación en las redes sociales se refiere a un evento en un período de tiempo predeterminado puede incluir solo cualquier subconjunto de o un orden alternativo de las características representadas o discutidas anteriormente con respecto a la Fig. 7.
Para las identificaciones temporales discutidas en este documento, como las realizadas por el enfoque basado en reglas o el enfoque basado en TSWE, el período de tiempo predeterminado puede configurarse selectivamente. En una realización, el período de tiempo reciente predeterminado puede ser un período de tiempo reciente predeterminado que cubre un lapso de tiempo desde una cantidad de tiempo predeterminada antes del tiempo
presente hasta el tiempo presente, es decir, un lapso de tiempo que tiene una duración de cantidad predeterminada de tiempo y posicionado inmediatamente antes del tiempo presente. Los eventos más antiguos que el período de tiempo reciente predeterminado pueden llamarse antiguos y los eventos durante el período de tiempo reciente predeterminado pueden llamarse nuevos o recientes. La cantidad de tiempo predeterminada puede seleccionarse de acuerdo con, por ejemplo, una aplicación particular. Un evento antiguo puede tener una configuración diferente en diferentes casos de uso o aplicaciones. Por ejemplo, un evento con más de 12 horas de antigüedad puede considerarse como un evento antiguo en una aplicación, pero puede considerarse como un evento relativamente nuevo en otra aplicación. Puede depender de los propósitos de la aplicación y los requisitos del usuario. El umbral de tiempo, es decir, la cantidad predeterminada de tiempo antes del tiempo actual, se puede cambiar, por ejemplo, ajustando las reglas en el módulo basado en reglas y los datos de entrenamiento utilizados para construir TSWe y el clasificador temporal basado en TSWE. Por ejemplo, en una realización, se utilizan 12 horas como umbral de tiempo: los eventos anteriores a aproximadamente 12 horas se consideran eventos antiguos y los eventos posteriores a aproximadamente 12 horas se consideran eventos nuevos o recientes.
Alternativamente, las identificaciones temporales discutidas en este documento pueden hacer determinaciones con respecto a un período de tiempo predeterminado distinto de un período de tiempo reciente predeterminado. Por ejemplo, el período de tiempo predeterminado puede definirse como una extensión entre un primer tiempo predeterminado como un primer tiempo anterior predeterminado, y un segundo tiempo predeterminado, como un segundo tiempo anterior predeterminado.
El enfoque basado en reglas procesa el texto de la publicación en las redes sociales utilizando un conjunto de reglas para intentar realizar una identificación temporal de la publicación. La Fig. 8 representa una realización de un método que realiza una identificación temporal para una publicación en redes sociales usando un enfoque basado en reglas. Se pueden usar realizaciones del método 800 para realizar la identificación temporal basada en reglas de la etapa 704 del método 700. El método se puede realizar mediante componentes del módulo 56 de identificación temporal de la Fig. 6, como el módulo 116 de identificación temporal basado en reglas. El método comienza en la etapa 802.
En la etapa 804, se realiza una detección de una expresión temporal en la publicación de las redes sociales. Una expresión temporal puede ser un segmento de texto que exprese información temporal, como “ayer”, “la semana pasada”, “en 1945”, “en la Segunda Guerra Mundial”, “ahora mismo”, “hace 10 minutos”, etc. Para realizar la detección, un conjunto de expresiones regulares, donde una expresión regular puede ser una secuencia de caracteres que definen un patrón de búsqueda de texto, puede usarse para detectar diferentes tipos de expresiones temporales. Por ejemplo, los siguientes son algunos ejemplos de tipos de expresiones temporales comunes que se pueden detectar mediante expresiones regulares:
“A las 8 am”, “alrededor de las 6:30 pm”;
“Esta mañana”, “ayer”, “mañana”, “el año pasado”;
“Hace dos días”, “Hace 10 minutos”;
“El 10 de enero”, “en febrero”;
“Este próximo lunes”, “el viernes pasado”;
“En 1996”, “en los años 60”, “antes de la Segunda Guerra Mundial”; y
“Recientemente”, “acaba de suceder”, “ahora mismo”.
En la etapa 806, si no se identifica ninguna expresión temporal en la etapa 804, el método avanza a la etapa 816, donde finaliza el método, sin lograr ninguna identificación temporal. Sin embargo, si en la etapa 806 se identifica una expresión temporal, el método continúa con la etapa 808, donde se determina la diferencia de tiempo entre el tiempo de creación de la publicación, que es muy cercano al tiempo actual en un sistema en tiempo real, y el tiempo al que se hace referencia por la expresión temporal. La diferencia de tiempo se puede determinar de varias maneras diferentes. En un ejemplo, la diferencia de tiempo puede determinarse identificando un tiempo específico al que hace referencia la expresión temporal y calculando una diferencia entre ese tiempo y el tiempo de creación de la publicación. En otro ejemplo, se puede mantener una correspondencia entre expresiones temporales específicas y diferencias temporales específicas, y determinar la diferencia temporal correspondiente cuando se usa una de las expresiones temporales específicas. La diferencia de tiempo se puede expresar con precisión variable, como 1 hora, 4 horas, 2 días, 3 semanas, 5 años, 2 décadas, etc.
En la etapa 810, se determina si la diferencia de tiempo es mayor que el umbral de tiempo predeterminado, por ejemplo, 12 horas, es decir, si se considera que la publicación hace referencia a un evento antes del período de tiempo predeterminado o dentro del período de tiempo predeterminado. Si en la etapa 810 se determina que la diferencia de tiempo es mayor que el umbral, entonces el método pasa a la etapa 814, donde la publicación se clasifica como no referencia a un evento en el período de tiempo predeterminado. Sin embargo, si en la etapa 810 la diferencia de tiempo
es menor que el umbral, el método pasa a la etapa 812, donde la publicación se clasifica como referencia a un evento en el período de tiempo predeterminado.
En realizaciones, un método para realizar una identificación temporal de una publicación en redes sociales utilizando un enfoque basado en reglas puede incluir solo cualquier subconjunto de, o un orden alternativo de, las características representadas o discutidas anteriormente con respecto a la Fig. 8.
El enfoque basado en TSWE genera incorporaciones de palabras específicas temporales a partir de la publicación en las redes sociales y clasifica la publicación, como referencia a un evento en el período de tiempo predeterminado o no, en función de las incorporaciones generadas. La Fig. 9 representa una realización de un método que realiza una identificación temporal de una publicación en redes sociales usando un enfoque basado en TSWE. Se pueden usar realizaciones del método 900 para realizar la identificación temporal basada en TSWE de la etapa 708 del método 700. El método se puede realizar mediante componentes del módulo 56 de identificación temporal de la Fig. 6, como el módulo 120 de identificación temporal basado en TSWE. El método comienza en la etapa 902.
En la etapa 904, se determinan las incorporaciones de palabras específicas temporales para las palabras de la publicación en las redes sociales. En general, una palabra incorporada es un vector numérico que representa el significado de una palabra de un léxico en un espacio vectorial, donde el espacio vectorial normalmente tiene una dimensión mucho más pequeña que una dimensión por palabra del léxico. Las incorporaciones de palabras pueden generarse usando varias técnicas diferentes, como el uso de una red neuronal para generar incorporaciones de palabras, donde la red neuronal se entrena con usos de palabras en contextos, tales como, por ejemplo, frases y oraciones. Una técnica para generar incorporaciones generales de palabras es la técnica C&W, descrita en “Natural Language Processing (Almost) from Scratch”, Ronan Collobert et al., Journal of Machine Learning Research, 2011, que se incorpora aquí como referencia en su totalidad. Las incorporaciones generales de palabras generalmente representan todo el significado posible de una palabra sin ningún énfasis en ningún aspecto en particular. Por el contrario, en la etapa 904, en lugar de una incorporación de palabras general, se determinan incorporaciones de palabras específicas temporales para las palabras de la publicación, donde las incorporaciones de palabras específicas temporales modelan específicamente el significado temporal de las palabras. El uso de incorporaciones de palabras generales directamente en la identificación temporal no suele ser efectivo, ya que principalmente modelan el contexto semántico de una palabra, ignorando las pistas temporales en el texto. Esto generalmente lleva a que las palabras con polaridad opuesta, como mañana y ayer, se asignen a vectores incorporados que están cerca entre sí en algunas dimensiones. Por el contrario, la incorporación de palabras específicas temporales modifica la incorporación de palabras generales, como la técnica C&W, para codificar adicionalmente información temporal en las incorporaciones de palabras.
Por ejemplo, la técnica C&W aprende incorporaciones de palabras basándose en los contextos sintácticos de las palabras. Reemplaza la palabra central con una palabra aleatoria y deriva un n-grama corrupto. El objetivo de entrenamiento es que se espera que el n-grama original obtenga una puntuación de modelo de lenguaje más alta que el n-grama corrupto. Los n-gramas originales y dañados se tratan como entradas de una red neuronal de avance, respectivamente. La generación de incorporaciones de palabras específicas temporales de la etapa 904 modifica la técnica de C&W incorporando la información temporal en la red neuronal para aprender las incorporaciones; captura la información temporal del texto, así como los contextos sintácticos de las palabras. Dado un n-grama original (o corrupto) y la polaridad temporal de un texto como entrada, predice un vector bidimensional (f0 , fi), para cada n-grama de entrada, donde (f0 , f1) son el modelo de lenguaje puntuación y puntuación temporal del n-grama de entrada, respectivamente. Los objetivos de la formación son dos; el n-grama original debería obtener una puntuación de modelo de idioma más alta que el n-grama corrupto, y la puntuación de polaridad del n-grama original debería estar más alineada con la etiqueta de polaridad del texto que la del n-grama corrupto. La función de pérdida es la combinación lineal de dos pérdidas - pérdida0 (t, t') es la pérdida sintáctica y pérdida1 (t, t') es la pérdida temporal:
pérdida (t, t') = a* pérdida0 (t, t') (1 - a) * pérdida1 (t, t').
En la etapa 906, se determina una representación de la publicación en las redes sociales a partir de las incorporaciones de palabras específicas temporales determinadas para las palabras de la publicación. Dado que las diferentes publicaciones en las redes sociales pueden incluir texto de tamaño variable, mientras que los clasificadores, como los que se usan en la etapa 908 como se analiza a continuación, en general prefieren entradas de tamaño fijo, una representación de la publicación en las redes sociales que tiene un tamaño fijo puede determinarse a partir de incorporaciones de palabras determinadas, de las cuales puede haber un número variable debido a la cantidad potencialmente variable de palabras en la publicación. La representación puede incluir al menos uno de: un vector mínimo calculado a partir de las incorporaciones de palabras (es decir, un vector que contiene para cada dimensión un mínimo de los valores de todas las incorporaciones de palabras determinadas para esa dimensión), un vector máximo calculado a partir de la palabra incorporaciones (es decir, un vector que contiene para cada dimensión un máximo de los valores de todas las incorporaciones de palabras determinadas para esa dimensión), un vector promedio calculado a partir de las incorporaciones de palabras (es decir, un vector que contiene para cada dimensión un promedio de los valores de todas las incorporaciones de palabras determinadas para esa dimensión), o una concatenación de uno o más de los vectores mínimo, máximo o promedio. En una realización específica, la representación es una concatenación de los vectores mínimo, máximo y promedio. En tal realización, una publicación en las redes sociales puede representarse como:
Z(t) = [Zmáx(t), Zmín(t), Zpromedio(t)],
donde Z(t) es la representación de la publicación en redes sociales t, Zmáx(t) es el vector máximo para las incorporaciones de palabras de la publicación, Zmín(t) es el vector mínimo para las incorporaciones de palabras de la publicación y Zpromedio(t) es el vector promedio para las incorporaciones de palabras de la publicación.
En la etapa 908, se realiza una clasificación de la publicación como referencia a un evento en el período de tiempo predeterminado o no referencia a un evento en el período de tiempo predeterminado. La clasificación se puede realizar usando un algoritmo de clasificación como un algoritmo de aprendizaje automático supervisado entrenado usando un conjunto de publicaciones en redes sociales. Se puede utilizar una variedad de diferentes algoritmos de aprendizaje automático supervisado, como máquinas de vectores de soporte, regresión logística, máquinas de vectores de Frank-Wolfe, refuerzo adaptativo, árboles de decisión, bosques aleatorios, redes bayesianas, redes neuronales o extensiones de las mismas.
El enfoque basado en TSWE permite una identificación temporal mejorada de publicaciones en relación con otras formas de identificación temporal, como se analiza a continuación en comparación con otros sistemas, y por lo tanto permite un clústering mejorado de publicaciones en función de las características relacionadas con el tiempo de las publicaciones, y presentación de publicaciones y clústeres de publicaciones basados en características relacionadas con el tiempo, con una eficiencia mejorada correspondiente de consumo de redes sociales por parte de un usuario a través de la presentación y clústering de la información deseada separada del gran tamaño inmanejable de la producción total de redes sociales del sistema de redes sociales, que no es posible de otra manera.
En realizaciones, un método para realizar una identificación temporal de una publicación en redes sociales utilizando un enfoque basado en TSWE puede incluir solo cualquier subconjunto o un orden alternativo de las características representadas o discutidas anteriormente con respecto a la Fig. 9.
La Fig. 10 representa una realización del módulo 64 de clústering de eventos, que incluye un módulo 128 de clústering en clústeres basado en enlaces, un módulo de clústering basado en clases semánticas 132 y una base 136 de datos de clústeres. El módulo de clústering basado en enlaces 128 procesa la publicación en las redes sociales para determinar si la publicación en las redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones basado en enlaces contenidos en la publicación en las redes sociales y el clúster existente de publicaciones. El módulo de identificación temporal basado en clases semánticas 132 procesa la publicación en las redes sociales para determinar si la publicación en las redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones en función de una comparación de clases semánticas de palabras en las publicaciones en las redes sociales y el clúster existente de publicaciones. La API 68 del módulo 64 de clústering, que se muestra en la Fig. 1, se omite de la Fig. 10 con fines ilustrativos, pero puede incluirse en uno o ambos del módulo 128 de clústering basado en enlaces o en el módulo 132 de clústering basado en clases semánticas, o como un componente separado. La base 136 de datos de clúster almacena asociaciones entre publicaciones y clústeres de publicaciones determinadas por el módulo de clústering basado en enlaces 128 y el módulo 132 de clústering basado en clases semánticas.
En realizaciones, un módulo de clústering de eventos puede incluir solo cualquier subconjunto o una conexión alternativa de las características representadas o discutidas en este documento con respecto a la Fig. 10.
La Fig. 11 representa una realización de un método 1100 para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones. Las realizaciones del método 1100 pueden usarse para realizar la identificación de correspondencia de clúster y la agrupación con clústeres existentes o nuevos, de las etapas 210, 212 y 214 del método 200. El método 1100 puede ser realizado por componentes del módulo 64 de clústering de eventos o involucrarlos de la Fig. 10. El método comienza en la etapa 1102.
En la etapa 1104, la publicación en las redes sociales se procesa para determinar si se refiere o no a un mismo evento al que hace referencia un clúster existente de publicaciones utilizando un enfoque basado en enlaces por el módulo 128 de n clústeres basado en enlaces. En la etapa 1106, si el enfoque basado en enlaces da como resultado una determinación de correspondencia de clúster, es decir, que la publicación se refiere a un mismo evento al que hace referencia un clúster de publicaciones existente, entonces el método avanza a la etapa 1112. En la etapa 1112, el clúster de publicaciones existente se modifica para incluir la publicación en las redes sociales en la base 136 de datos de clúster. El método pasa luego a la etapa 1118, donde finaliza el método.
Si en la etapa 1106, el enfoque basado en enlaces no da como resultado una determinación de correspondencia de clúster, el método avanza a la etapa 1108, donde se procesa la publicación para determinar si se refiere o no a un mismo evento al que hace referencia un clúster existente de publicaciones utilizando un enfoque basado en clases semánticas por el módulo 132 de clústering basado en clases semánticas. En la etapa 1110, si el enfoque basado en clases semánticas da como resultado una determinación de correspondencia de grupos, entonces el método continúa con la etapa 1112, donde, como se discutió anteriormente, el clúster existente de publicaciones se modifica para incluir la publicación en las redes sociales en la base 136 de datos del clúster. Si en la etapa 1110, el enfoque basado en la clase semántica tampoco da como resultado una determinación de correspondencia del clúster, el método procede a
la etapa 1114, donde un se crea un nuevo clúster de publicaciones para incluir la publicación en las redes sociales en la base 136 de datos de clústeres. En la etapa 1116, se calcula una puntuación de novedad para el nuevo clúster.
En la realización representada del método 1100, el módulo 128 de clústering basado en enlaces y el módulo 132 de clústering basado en clases semánticas realizan determinaciones secuenciales. Esto puede proporcionar el beneficio de utilizar el enfoque basado en enlaces, que puede implicar una carga computacional relativamente menor, para intentar hacer primero una determinación de clústering, seguido del enfoque basado en clases semánticas, que puede implicar una carga computacional relativamente mayor, para intentar hacer una determinación de clústering solo en aquellas publicaciones para las cuales el enfoque basado en enlaces no dio como resultado una determinación, conservando así el poder de cómputo en general. En otras realizaciones, el módulo 128 de clústering basado en enlaces y el módulo 132 e clústering basado en clases semánticas se pueden usar para realizar determinaciones secuenciales paralelas u ordenadas de manera diferente, o se puede usar solo uno u otro para hacer una única determinación.
El registro de clústeres modificados y nuevos clústeres en la base 136 de datos de clústeres de las etapas 1114 y 1112 puede incluir almacenar en la base 136 de datos de clústeres para cada clúster una identificación del clúster y, en asociación con la identificación, una representación de cada una de las publicaciones o un subconjunto de los elementos de cada una de las publicaciones (como uno o más del nombre de la cuenta que origina la publicación, la dirección de la cuenta que origina la publicación, el encabezado de la publicación, la hora de la publicación, etc.) incluidos en el clúster. El registro de los clústeres modificados y nuevos proporciona una mejor presentación y consumo de publicaciones de manera basada en eventos por parte de un sistema de usuario, lo que puede proporcionar una mayor eficiencia de presentación y consumo a un usuario para una cantidad relativamente menor de información representada por los clústeres en comparación con la cantidad total de información representada por todas las publicaciones en redes sociales del sistema 24 de redes sociales, ahorrando así tiempo y esfuerzo del usuario.
En las realizaciones, un método para determinar si una publicación en las redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones puede incluir solo cualquier subconjunto o un orden alternativo de las características representadas o discutidas anteriormente con respecto a la Fig. 11.
La Fig. 12 representa una realización de un método 1200 para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones utilizando un enfoque basado en enlaces. Se pueden usar realizaciones del método 1200 para realizar la determinación de correspondencia de clúster de la etapa 1104 del método 1100. El método 1200 puede ser realizado por componentes del módulo 64 de clústering de eventos de la Fig. 10, como el módulo 128 de clústering basado en enlaces. El método comienza en la etapa 1202.
En la etapa 1204, se determina si la publicación en las redes sociales incluye un enlace. Un enlace, también llamado hipervínculo, es un puntero en la publicación en las redes sociales, que un espectador de la publicación en las redes sociales puede activar, a otro elemento, como otra publicación en las redes sociales, una página web, etc. Un enlace generalmente incluye una dirección del elemento vinculado, como una dirección de Internet, etc. En la etapa 1206, se determina si algún clúster existente incluye publicaciones que tienen el mismo enlace determinado en la etapa 1204. Puede existir una probabilidad muy alta de que una publicación y las publicaciones de un clúster existente de las publicaciones incluyen el mismo enlace se refieren al mismo evento. Por lo tanto, si en la etapa 1206 se determina que un clúster existente incluye publicaciones que tienen el enlace determinado, el método pasa a la etapa 1208, donde se determina que la publicación corresponde al clúster existente que tiene el mismo enlace. Por el contrario, si en la etapa 1206 se determina que ningún clúster existente incluye publicaciones que tengan el enlace determinado, el método avanza a la etapa 1210, donde finaliza el método, sin una determinación de correspondencia de clúster.
En realizaciones, un método de si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones que utilizan un enfoque basado en enlaces puede incluir solo cualquier subconjunto de, o un orden alternativo de, las características representadas en o discutido anteriormente con respecto a la Fig. 12
La Fig. 13 representa una realización de un método 1300 para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones utilizando un enfoque basado en clases semánticas. Se pueden utilizar realizaciones del método 1300 para realizar la determinación de correspondencia de clústeres de la etapa 1108 del método 1100. El método 1300 se puede realizar mediante componentes del módulo 64 de clústering de eventos de la Fig. 10, como el módulo 132 de clústering basado en clases semánticas. El método comienza en la etapa 1302.
En la etapa 1304, la publicación en redes sociales se procesa para extraer términos de la publicación correspondientes a una o más clases semánticas diferentes de términos, y asignar esos términos a las clases correspondientes. En general, una publicación en las redes sociales suele contener términos correspondientes a aspectos que definen un evento, como “quién”, “qué”, “dónde” y “cuándo”. Estos términos se pueden clasificar en diferentes clases semánticas, que tendrán diferentes niveles de importancia correspondientes para describir un evento y, por lo tanto, para determinar si una publicación debe unirse a un clúster de publicaciones existente o debe agregarse a un clúster recién creado. En las realizaciones, las clases semánticas utilizadas incluyen una o más de (i) nombre propio, (ii) mención, (iii) ubicación, (iv) hashtag, (v) verbo y (vi) nombre común. Por ejemplo, las clases semánticas pueden incluir todas las clases anteriores.
Los pronombres pueden describir el “quién” de un evento, como nombres de personas u organizaciones. Ocasionalmente, los pronombres también pueden describir el “qué” de un evento. Una mención en una publicación de redes sociales es una referencia a otro usuario del sistema de redes sociales, generalmente en forma de una inclusión del nombre de usuario o la dirección del usuario en el sistema de redes sociales. En muchas publicaciones en las redes sociales, “quién” está representado por una mención. Una ubicación puede describir el “dónde” de un evento. La ubicación puede estar representada por un nombre propio, pero puede asignarse a la clase de ubicación. Los verbos generalmente describen el aspecto “qué” de un evento, como mataron, demandaron y murieron. Los sustantivos comunes, como huracán y bomba, también se usan para describir el aspecto “qué” de un evento. Un hashtag en una publicación en las redes sociales es una palabra o una secuencia de caracteres que sigue al símbolo #. Los hashtags suelen describir el tema de un evento, pero también pueden reflejar el aspecto “qué”, por ejemplo, #bombardeo. Como se discutió anteriormente, un enlace es un puntero en la publicación de redes sociales a otro elemento, como otra publicación de redes sociales, una página web, etc. y generalmente incluye una dirección del elemento vinculado, como una dirección de Internet, etc.
El procesamiento del lenguaje natural basado en reglas se puede usar para extraer y asignar términos de la publicación en redes sociales a las clases semánticas correspondientes. En realizaciones, se pueden usar paquetes de procesamiento de terceros para implementar el procesamiento para extraer términos correspondientes a las clases semánticas. Por ejemplo, el paquete TweetNLP se puede usar para identificar nombres propios de publicaciones en redes sociales. Se puede usar un identificador de ubicación geográfica, como OpenCalais, para identificar ubicaciones de publicaciones en redes sociales. Los verbos también se pueden extraer usando la herramienta TweetNLP. Además, se puede usar una lista de palabras para filtrar verbos muy comunes, como tomar, hacer, etc., que pueden no ser un indicador tan útil.
En la etapa 1306, las colecciones de términos asignados a clases semánticas para la publicación se amplían para incluir sinónimos seleccionados de los términos asignados. Los sinónimos se pueden seleccionar de varias maneras. En una realización, tal como se analiza más adelante con respecto a la Fig. 14, los sinónimos para la expansión de clase se seleccionan con base en el cálculo de similitudes entre una palabra incorporada de cada término en la clase y sinónimos potenciales, y expandiendo la clase usando solo los sinónimos con las puntuaciones de similitud más altas por encima de un cierto umbral. En otras realizaciones, los sinónimos para la expansión de clases se seleccionan usando un diccionario.
En la etapa 1308, para cada clase semántica que tiene términos asignados desde la publicación, se calcula una puntuación de similitud entre los términos de esa clase para la publicación y un conjunto de términos en la misma clase para cada uno o más clústeres de publicaciones candidatos existentes. Se puede calcular una puntuación de similitud entre los términos en una clase semántica para la publicación y en la misma clase para un clúster existente utilizando cálculos de similitud de coseno y de frecuencia de documento de frequency.inverse (tf*idf). Por ejemplo, el tf* idf puede calcularse para los términos en la clase para la publicación y para los términos en la clase para el clúster, y se puede calcular una similitud de coseno entre los valores tf*idf calculados para la publicación y los valores tf*idf calculados para el clúster.
Un ejemplo específico del cálculo de similitud usando tf*idf y similitud de coseno es el siguiente. Los vectores Tf*idf para los términos en la publicación y los términos en el clúster se pueden calcular de la siguiente manera. Para una publicación, para un término t dado y una clase semántica, tf es la frecuencia de aparición de este término en la publicación. Por lo general, este valor de tf es 1, porque una publicación es corta y un término generalmente solo aparece una vez en la publicación. Para un clúster, el valor tf del término t es el número de publicaciones en este clúster en las que aparece el término t. Para idf, para un término t dado perteneciente a la clase semántica, su idf se calcula de acuerdo con:
Idf = log(N/d 1));
donde N es el número total de conglomerados existentes y d es el número total de clústeres existentes en los que aparece el término t. El valor entero 1 en (d+1) es para evitar un problema de división por cero cuando el término t no aparece en ninguno de los clústeres existentes, en cuyo caso d es 0. Así, para un término t dado y su clase semántica, su valor idf es el mismo para la publicación y para todos los clústeres existentes. Por lo tanto, en este ejemplo, para los cálculos de tf* idf para la publicación y el clúster, el idf es el mismo, pero tf puede ser diferente. El valor idf de un término se actualizará cuando cambie N o d. La similitud de coseno de los vectores tf*idf determinados se puede calcular de la siguiente manera. Para una clase semántica dada, una publicación y un clúster, si usamos el vector A para representar los términos en la publicación y el vector B para representar los términos en el clúster, donde los valores en los vectores son los valores tf*idf de los términos de publicación y del clúster, la similitud del coseno se calcula de acuerdo con la siguiente ecuación:
Por ejemplo, si la publicación y el clúster no tienen términos en común (lo que significa que tienen conjuntos de términos totalmente diferentes), el valor de similitud será 0, porque el nominador será 0. En esta ecuación, n es el número de términos en el espacio de términos de la clase dada.
La puntuación de similitud entre términos en una clase semántica para la publicación y en la misma clase para un clúster existente puede calcularse alternativamente o además usando otros tipos de cálculos, como una medida de similitud de coseno entre una representación de incorporaciones de palabras generales de los términos de la publicación y una representación de incorporaciones de palabras generales de los términos del clúster, donde dichas representaciones pueden ser al menos una de: un vector mínimo calculado a partir de las incorporaciones de palabras, un vector máximo calculado a partir de las incorporaciones de palabras, un vector promedio calculado a partir de las incorporaciones de palabras, o una concatenación de uno o más de los vectores mínimo, máximo o promedio (como una concatenación de los vectores mínimo, máximo y promedio), similar a la discutida anteriormente para la representación de la publicación en las redes sociales .
Los términos para representar un clúster para una clase semántica dada para los cálculos de similitud pueden elegirse mediante uno o más de: seleccionar términos de clase semántica que resume las publicaciones en un clúster, usar términos de clase semántica de una publicación del clúster seleccionado como una publicación de centroide del clúster, usar un porcentaje superior predeterminado de los términos de publicaciones más frecuentes del clúster, o usar un porcentaje superior predeterminado de los términos de publicaciones más frecuentes del clúster para la clase semántica dada.
Se puede mantener un índice de los términos o una representación de los términos para cada una de las clases semánticas para los clústeres existentes, y se pueden seleccionar los clústeres existentes para compararlos con la publicación al consultar el índice de clústeres candidatos, calculándose luego las puntuaciones de similitud para los clústeres candidatos.
En la etapa 1310, para cada clúster existente con el que se compara la publicación, las puntuaciones de similitud individuales para la pluralidad de clases semánticas se combinan en una única puntuación de similitud combinada para comparar la publicación con el clúster existente. La puntuación de similitud combinada puede ser una combinación ponderada de las puntuaciones de similitud de clases semánticas individuales. Por ejemplo, dada una publicación en las redes sociales Ti y un clúster Cj, un puntaje de similitud S (Ti, Cj) se puede definir como:
S ( TitCj) = a * Vp+ b * Vm+c * Vl+d * Vv+e * Vn+f * Vhr
donde Vp, Vm, V i, Vv, Vn y Vh son las puntuaciones de similitud individuales para las clases semánticas de nombre propio, mención, ubicación, verbo, nombre común y hashtag, y a, b, c, d, e y f son ponderaciones para las respectivas clases semánticas. Las ponderaciones pueden seleccionarse para enfatizar o restar énfasis correspondientemente a la contribución de la puntuación de similitud individual correspondiente a la puntuación combinada, como, por ejemplo, usando un proceso de entrenamiento.
En la etapa 1312, para cada clúster existente candidato, la puntuación de similitud combinada entre la publicación y ese clúster se compara con un valor de umbral predeterminado.
La comparación de las puntuaciones combinadas con el valor umbral permite que el método evite seleccionar lo mejor de un conjunto de clústeres existentes que simplemente coinciden mal con la publicación. El umbral predeterminado puede seleccionarse, por ejemplo, como resultado de un proceso de entrenamiento. Si en la etapa 1312, al menos uno de los puntajes de similitud combinados es mayor que el valor umbral, el método pasa a la etapa 1314, donde se determina que la publicación corresponde al clúster existente que tiene el puntaje de similitud combinado más alto. Sin embargo, si en la etapa 1312 ninguna de las puntuaciones de similitud combinadas para los clústeres candidatos es mayor que el valor umbral, entonces el método avanza a la etapa 1316, donde finaliza el método, sin determinar una correspondencia de la publicación con un clúster existente.
El enfoque basado en clases semánticas permite un clústering mejorado de publicaciones en relación con otras formas de clústering, como se analiza a continuación en comparación con otros sistemas, y por lo tanto permite una presentación mejorada de clústeres de publicaciones, con una eficiencia mejorada correspondiente de consumo de redes sociales por un usuario, eso no es posible de otra manera.
En realizaciones, un método para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones usando un enfoque basado en clases semánticas puede incluir
solo cualquier subconjunto o un orden alternativo de las características representadas en o discutidas anteriormente con respecto a la Fig. 13
Un método para determinar si una publicación en redes sociales se refiere a un mismo evento al que hace referencia un clúster existente de publicaciones utilizando un enfoque basado en clases semánticas puede, como alternativa a las etapas 1310, 1312 y 1314, en lugar de comparar cada clúster candidato cada puntaje individual para las diferentes clases semánticas hasta un umbral, y luego usa las clases semánticas de los clústeres de candidatos por encima de los umbrales como votos para un clúster de coincidencia general, opcionalmente con los votos de clase semántica nuevamente ponderados. Como otra alternativa, en su lugar, las puntuaciones de similitud individuales se pueden enviar a un clasificador entrenado para determinar el mejor clúster coincidente.
La Fig. 14 representa una realización de un método 1400 de expandir un conjunto de términos de una publicación asignada a una clase semántica para incluir sinónimos. Se pueden usar realizaciones del método 1400 para realizar la expansión de términos de la etapa 1306 del método 1300. El método 1400 se puede realizar mediante componentes del módulo 64 de clústering de eventos de la Fig. 10, como el módulo 132 de clústering basado en clases semánticas. El método comienza en la etapa 1402.
En la etapa 1402, para cada término asignado a la clase semántica para la publicación, se determinan incorporaciones de palabras para el término y para cada uno de los posibles sinónimos de ese término. Las incorporaciones de palabras pueden ser incorporaciones de palabras generales. En la etapa 1406, para cada término asignado a la clase semántica para la publicación, se determinan las puntuaciones de similitud entre la palabra incorporada para el término y para cada uno de los sinónimos potenciales de ese término. Las puntuaciones de similitud se pueden calcular utilizando una medida de similitud de coseno. En la etapa 1408, se determina si, para los términos asignados a la clase semántica, al menos una de las puntuaciones de similitud calculadas entre los términos y los sinónimos potenciales es superior a un umbral predeterminado. La comparación de las puntuaciones de similitud con el umbral predeterminado permite que el método evite expandirse por términos que tienen solo una similitud de significado indeseablemente abstracta. Si en la etapa 1408, ninguna de las puntuaciones de similitud es mayor que el umbral predeterminado, entonces el método avanza a la etapa 1412, donde finaliza el método, sin expandir el término establecido por ninguno de los posibles sinónimos. Si en la etapa 1408, al menos uno de los puntajes de similitud es mayor que el umbral predeterminado, entonces la clase semántica se expande en un número predeterminado de sinónimos potenciales que tienen los puntajes de similitud más altos.
En realizaciones, un método para expandir un conjunto de términos asignados para una publicación a una clase semántica para incluir sinónimos puede incluir solo cualquier subconjunto o un orden alternativo de las características representadas o discutidas anteriormente con respecto a la Fig. 14
Volviendo a la etapa 1116 del método 1100 representado en la Fig. 11, cuando no se determina ninguna correspondencia entre la publicación en las redes sociales y un clúster existente, la publicación se agrega a un nuevo clúster y se puede calcular una puntuación de novedad. El puntaje de novedad se puede calcular para el nuevo clúster en función del puntaje de similitud más alto que tenga con los clústeres existentes. En un ejemplo, la puntuación de novedad se calcula utilizando la siguiente ecuación:
Snovedad = ( T — S m á x )/T ,
donde T es el valor de umbral utilizado en la etapa 1312 para que una publicación en las redes sociales se una a un clúster, y Smáx es la puntuación de similitud máxima entre esta publicación en las redes sociales y los clústeres existentes. El puntaje de novedad y la identidad del clúster existente con el puntaje de similitud más alto pueden persistir con el clúster recién formado, que solo contiene esta publicación en las redes sociales por ahora y está esperando que se unan nuevas publicaciones.
Volviendo a la etapa 216 del método 200 representado en la Fig. 2, como se discutió anteriormente, clústeres modificados o nuevos de publicaciones que se refieren a eventos en el período de tiempo predeterminado (y/o datos de identificación de clústeres para los clústeres de publicaciones) y/o publicaciones que se refieren a un evento en el período de tiempo predeterminado (y/o los datos de identificación temporal para publicaciones que se refieran a un evento en el período de tiempo predeterminado) pueden salir para su visualización en el sistema 36 de usuario, como a través de la aplicación. En un ejemplo, la API 68 del módulo 64 de clústering de eventos puede proporcionar al módulo 70 de comunicación de la aplicación los clústeres nuevos o modificados, como en respuesta a una solicitud transmitida desde el módulo 70 de comunicación a la API 68 para ello, y la aplicación puede entonces presentar los clústeres de publicaciones modificadas o nuevas al usuario en una interfaz de usuario de la aplicación para su visualización en el sistema 36 de usuario, como parte de una aplicación de noticias, una aplicación de detección de eventos u otra aplicación, etc. En otro ejemplo, la API 60 del módulo 56 de identificación temporal puede proporcionar al módulo 70 de comunicación de la aplicación las identificaciones temporales de las publicaciones, como en respuesta a una solicitud transmitida desde el módulo 70 de comunicación a la API 60 para ello, y la aplicación puede luego incorporar la identificación temporal de las publicaciones en una presentación para el usuario en una interfaz de usuario de la aplicación para mostrar en el sistema 36 de usuario como parte de una aplicación de noticias, aplicación de detección de eventos u otra aplicación, etc.
Alternativamente o además del módulo 64 de clústering de eventos y/o el módulo 56 de identificación temporal que proporciona los clústeres nuevos o modificados y/o las identificaciones temporales de las publicaciones al sistema 32 de aplicación a través de las API 60, 68 y las envía al módulo 70 de comunicación en respuesta a una solicitud del módulo 70 de comunicación a las API 60, 68, el módulo 64 de clústering de eventos y/o el módulo 56 de identificación temporal pueden enviar los clústeres modificados o nuevos y/o identificaciones temporales de publicaciones y/o una notificación de tales al sistema 32 de aplicación automáticamente tras la modificación o creación de nuevos clústeres o detección de identificaciones temporales. Por ejemplo, la API 68 del módulo 64 de clústering de eventos puede ser, en lugar o además, un módulo de comunicación para transmitir automáticamente cualquier clúster nuevo o modificado al módulo 70 de comunicación de la aplicación o al sistema 36 de usuario tras la modificación o creación del clúster, y/o para transmitir una notificación, como un correo electrónico, mensaje de texto, etc., de la modificación o creación de clústeres al módulo 70 de comunicación de la aplicación o al sistema 36 de usuario. En otro ejemplo, la API 60 del módulo 56 de identificación temporal puede ser, en cambio o además, un módulo de comunicación para transmitir automáticamente identificaciones temporales de publicaciones al módulo 70 de comunicación de la aplicación o al sistema 36 de usuario al determinar las identificaciones temporales, y/o para transmitir una notificación, como un correo electrónico, mensaje de texto, etc., de las identificaciones temporales al módulo 70 de comunicación de la aplicación o al sistema 36 de usuario. Tal comunicación automática de clústeres nuevos o modificados o identificaciones temporales puede proporcionar una mejor puntualidad en la entrega de eventos, noticias, opiniones, etc. a los usuarios.
La Fig. 15 representa una realización de una vista 140 de un clúster de publicaciones proporcionadas por la aplicación y/o el sistema 28 de detección de eventos a un sistema 36 de usuario. La vista incluye un encabezado 144 de clúster y una pluralidad de publicaciones 148 de clúster agrupadas espacialmente para mostrar juntos en una pantalla del sistema 36 de usuario. Por ejemplo, la agrupación espacial puede incluir una delimitación entre el clúster y otras áreas de una interfaz de usuario de la aplicación en el sistema 36 de usuario.
En un ejemplo, la aplicación puede incluir una fuente basada en la identificación en tiempo real de desastres de las redes sociales. La salida del sistema de detección de eventos se usa para filtrar los eventos antiguos y hacer que solo los eventos nuevos aparezcan en la fuente.
En otro ejemplo, la aplicación puede incluir un módulo de riesgo de la cadena de suministro, que detecta eventos de riesgo geopolítico de las redes sociales, como desastres naturales y desastres provocados por el hombre, y alerta a los usuarios cuyo portafolio podría verse afectada por estos eventos. Estos eventos pueden afectar a los proveedores de una empresa y son de interés para inversores y analistas. El sistema de detección de eventos se utiliza para filtrar eventos antiguos y mejorar el rendimiento de la detección de eventos.
Ahora se analiza una realización ejemplar de entrenamiento de una red neuronal para producir las incorporaciones de palabras específicas temporales. La capacitación ejemplar es un proceso de capacitación supervisado, lo que significa que las publicaciones en las redes sociales utilizadas para la capacitación están etiquetadas como datos. Las publicaciones en las redes sociales para la capacitación están etiquetadas con información temporal diferente. La detección de eventos novedosos puede estar interesada en diferenciar los eventos pasados y no pasados (eventos actuales y futuros), por lo que se utilizan dos etiquetas: pasado y no pasado.
En la realización ejemplar, para entrenar el modelo TSWE, se utiliza una gran cantidad de datos, como millones de Tweets. Etiquetar manualmente tantos Tweets puede no ser realista. Para obtener tantos Tweets etiquetados, se utiliza un enfoque llamado proceso de recopilación de datos supervisado a distancia. Los datos se recopilan y etiquetan automáticamente sin anotarlos manualmente, pero contienen tuits ruidosos debido a la falta de verificación manual. Estos tuits recopilados automáticamente contienen ruidos, por lo que no se pueden usar directamente como datos de entrenamiento dorado para construir los clasificadores de identificación temporal, pero son lo suficientemente efectivos como para proporcionar señales supervisadas débilmente para entrenar la incorporación de palabras TSWE.
Para recopilar automáticamente tuits sobre eventos pasados, se define una lista de patrones de expresión temporal que identificarán con confianza un tuit que habla sobre historias en el pasado. Por ejemplo, la expresión temporal en el año xxxx, si xxxx es más pequeño que el año en que se creó el tuit, entonces estamos bastante seguros de que este tuit está hablando de algo en el pasado. Los siguientes son algunos ejemplos de los patrones de expresión temporal que se utilizan para recuperar tuits sobre eventos pasados:
ayer, la semana pasada, el mes pasado, el año pasado, el siglo pasado;
Hace XX días/semanas/meses/años/siglos;
una expresión de fecha completa, por ejemplo, 32/06/2015 y 3 de febrero de 2015, y si es más de X horas (por ejemplo, 12 horas en el experimento) antes de la hora de creación del tuit;
expresión de fecha parcial, como el 10 de enero, en marzo, según la hora de creación del tuit, identificaremos si el tuit se trata de un evento pasado;
en XXXX, en los años 60; y
antes de la Segunda Guerra Mundial.
Esta lista no intenta agotar todas las expresiones posibles para un evento pasado; simplemente usa las expresiones temporales populares para obtener suficientes tuits sobre eventos antiguos para entrenar el modelo TSWE.
Los patrones antes mencionados se buscaron utilizando expresiones regulares en un enorme conjunto de datos de tuits. Este conjunto de datos contiene Tweets de octubre de 2014 a septiembre de 2016, que incluye Tweets obtenidos a través de la API de transmisión pública de Twitter y los datos de Decahose (10 % de los datos de transmisión de Twitter) obtenidos de Twitter. El conjunto de datos incluye solo tuits en inglés y totaliza alrededor de 500 millones de tuits. Después de la búsqueda, resultaron 10 millones de Tweets que coincidían con los patrones de expresión temporal definidos, que muy probablemente estén hablando de eventos antiguos.
Para obtener tuits para eventos no pasados, se muestrearon aleatoriamente 10 millones de tuits del resto de los tuits para que las dos partes tuvieran aproximadamente la misma cantidad de tuits. En total, se utilizan alrededor de 20 millones para entrenar el modelo TSWE y generar incorporaciones temporales de palabras específicas.
La siguiente tabla muestra algunos ejemplos de Tweets sobre eventos nuevos/novedosos (no pasados) y eventos antiguos, asumiendo que la hora actual es 12-4-2016.
Antes de ser alimentado al proceso de entrenamiento del modelo, cada Tweet fue preprocesado primero para obtener una versión limpia. Las etapas previas al proceso fueron los siguientes: se eliminan todas las direcciones URL; todas las menciones fueron eliminadas; todas las proporciones y decimales, como 3/7, se reemplazan por un símbolo especial; y se eliminan todos los caracteres especiales, excepto el símbolo de hashtag #.
Ahora se analizan las evaluaciones de realizaciones de los sistemas y métodos discutidos en el presente documento. Para evaluar el rendimiento del módulo de clústering de eventos, la evaluación incluyó un gran conjunto de datos de eventos, que tiene más de 500 eventos y millones de Tweets.
El rendimiento del módulo de clústering de eventos se ha comparado con dos algoritmos: UMass (“First Story Detection in TDT is Hard”, Allen et al, CIKM, 2000a; “Detections, bounds and timelines: UMass and TDT-3”, Allen et al., Proceedings of Topic Detection and Tracking, 2000b) y LSH (“Using paraphrase for improving first story detection in news and Twitter,” Petrovic et al., CIKM, 2012).
Se utilizaron dos métricas de calidad para la evaluación: información mutua normalizada (NMI) y B-cubed. NMI es una métrica teórica de la información que mide la cantidad de información que se comparte entre eventos reales de “verdad en el terreno”, cada uno con un conjunto de tuits asociado, y la asignación de clústering. Específicamente, para un conjunto de clústeres C = (C1, C2, ..., Cj) y eventos E = (E1, E2, ..., Ek), donde cada Cj y Ek es un conjunto de tuits, y n es el número total de tuits, NMI se define como:
donde
B-cubed estima la precisión y recuperación asociados con cada tuit en el conjunto de datos individualmente, y luego usa los valores promedio de precisión Pb y Rb de recuperación promedio para el conjunto de datos para calcular B-Cubed:
2 *Pb*R¡}
B-cubed
Pb+Rb
Para cada Tweet, la precisión se definió como la proporción de elementos en el clúster de Tweets correspondientes al mismo evento, y la recuperación como la proporción de Tweets que corresponden al mismo evento, que también están en el clúster de Tweets.
Se usó un corpus de eventos existente para realizar la evaluación. Contiene Tweets de un período de 4 semanas, desde el 10/12/2012, e incluye más de 120 millones de tuits recopilados. Los eventos se generan y verifican manualmente mediante participación colectiva, lo que dio como resultado 506 eventos que contienen más de 150000 tuits. Además, se extrajeron como datos de ruido 1,3 millones de tuits de los 120 millones de ID de tuits que no pertenecen a ninguno de estos eventos.
Para comparar los presentes métodos con LSH y UMass, los datos se dividieron en 5 iteraciones, y las iteraciones de entrenamiento se usaron para aprender el umbral de clústering, la configuración del algoritmo y los pesos de características. Los resultados se muestran en la siguiente tabla:
Esta tabla muestra que los presentes métodos superaron a los otros dos algoritmos. La diferencia entre cualquiera de los dos es estadísticamente significativa al nivel de p = 0,01 utilizando la prueba t pareada.
Para evaluar la eficacia del uso de incorporaciones de palabras generales para expandir los términos semánticos, se usa el mismo conjunto de datos usado para comparar el clústering con LSH y UMass, y las métricas de calidad también son las mismas, NMI y B-Cubed. Una versión utiliza las incorporaciones de palabras generales para encontrar los términos muy similares para los términos de Tweet, y otra versión no incluye incorporaciones de palabras ni expansión de términos.
Los Tweets usados para aprender incorporaciones de palabras fueron de octubre de 2014 a septiembre de 2016. Solo se usaron Tweets en inglés, y se usan alrededor de 200 millones de Tweets para construir el modelo general de incorporación de palabras. Cada Tweet fue preprocesado para obtener una versión limpia, y luego la versión limpia fue procesada por el proceso de construcción del modelo de incorporación de palabras. En total, se procesaron 2.900 millones de palabras.
Los resultados de la evaluación calcaron la diferencia de rendimiento entre usar la expansión de términos basada en la incorporación de palabras y no usar la expansión de términos basada en la incorporación de palabras usando las métricas NMI y B-Cubed como se muestra en la siguiente tabla:
Esto muestra que el uso de la expansión de términos basada en la incorporación de palabras mejora la calidad del clúster de eventos, y la diferencia es estadísticamente significativa usando la prueba t pareada al nivel de p = 0,05.
El conjunto de datos de eventos que se usó para la evaluación fue de los datos del año de 2014 a 2016. Es posible que algunos términos del conjunto de datos de 2012 no se usen mucho de 2014 a 2016, por lo que es posible que no
se incluyan en el modelo de incorporación. Por lo tanto, se puede esperar razonablemente que, si el modelo de incorporación se hubiera aprendido de los tuits en el mismo período de tiempo que el conjunto de datos del evento, el rendimiento podría ser aún mejor.
Para evaluar la identificación temporal, se utiliza la precisión. En un nuevo sistema de detección de eventos, la precisión puede ser más importante que la recuperación. Aquí precisión significa, para los eventos antiguos identificados por este módulo, cuánto porcentaje de ellos son correctos. Y recuperar significa, para un conjunto determinado de eventos antiguos que se etiquetan manualmente, cuánto porcentaje de ellos detecta este módulo.
Para calcular la precisión, se pasaron 25.000 Tweets a través del módulo de identificación temporal. Para los eventos identificados como antiguos, dos anotadores los evaluaron manualmente y la precisión se calculó en función de su etiquetado.
La siguiente tabla muestra el resultado de la evaluación del módulo de identificación temporal. El resultado muestra una precisión muy alta. Muchos Tweets no tienen ninguna expresión temporal que pueda usarse para identificar la hora del evento. Pero en muchos casos, solo con base en las entidades en el texto del Tweet, uno puede saber si se trata de un evento antiguo o de un evento nuevo. Por ejemplo, el tuit “Le dispararon al presidente Reagan” obviamente está hablando de un evento que sucedió hace treinta años, pero no hay una expresión temporal en este tuit para que funcione el módulo basado en reglas. En este caso, el módulo TSWE ayudará, porque las incorporaciones de TSWE para “Reagon” podrían tener suficiente información temporal incorporada para proporcionar evidencia para identificar este tuit como un evento pasado.
Realizaciones del sistema 24 de redes sociales, el sistema 28 de detección de eventos, el sistema 32 de aplicación y el sistema 36 de usuario, y/o cualquiera de ellos, subconjunto o todos los componentes del mismo, como el módulo 48 de entrada de redes sociales, módulo 56 de identificación temporal, módulo 64 de clústering de eventos, módulo 72 de recuperación de redes sociales, base 76 de datos de redes sociales, módulo 116 de identificación temporal basado en reglas, módulo 120 de identificación temporal basado en TSWE, base 124 de datos de identificación temporal, módulo 128 de clústering basado en enlaces, módulo 132 de clústering basado en clase semántica y la base 136 de datos de clúster, etc., pueden implementarse como hardware, software o una combinación de hardware y software. Por ejemplo, cada uno de los sistemas 24 de redes sociales, sistema 28 de detección de eventos, sistema 32 de aplicación y sistema 36 de usuario, y/o cualquier subconjunto individual o todos los componentes del mismo, pueden implementarse usando un procesador y un medio de almacenamiento no transitorio, donde el medio de almacenamiento legible por máquina no transitorio incluye instrucciones de programa que, cuando son ejecutadas por el procesador, realizan realizaciones de las funciones de dichos componentes discutidos aquí. En realizaciones, cada uno de los sistemas 24 de redes sociales, sistema 28 de detección de eventos, sistema 32 de aplicación y sistema 36 de usuario, y/o cualquiera de ellos, subconjunto o todos los componentes del mismo, pueden implementarse utilizando uno o más sistemas informáticos, como, por ejemplo, un ordenador de escritorio, un ordenador portátil, un dispositivo informático móvil, un dispositivo de red, un servidor, un servidor de Internet, un servidor en la nube, etc.
La Fig. 16 representa una realización de un sistema 152 informático que se puede usar para implementar el sistema 28 de detección de eventos y/o cualquier subconjunto individual o todos los componentes del mismo. El sistema 152 informático incluye un procesador 156, un medio 164 de almacenamiento no transitorio legible por máquina, un módulo 160 de comunicación y, opcionalmente, otros componentes 168. El procesador 156 ejecuta las instrucciones del programa almacenadas en el medio 164 de almacenamiento no transitorio legible por máquina para realizar la funcionalidad del componente que se está implementando como se describe aquí. El módulo 160 de comunicación puede ser controlado por el procesador para comunicarse con otros dispositivos, como el sistema 24 de redes sociales, el sistema 32 de aplicación y/o el sistema 36 de usuario, para realizar la funcionalidad del componente que se está implementando como se describe aquí. Los otros componentes opcionales 168 pueden incluir cualquier componente adicional requerido por el sistema 152 informático para realizar esta funcionalidad.
Son posibles realizaciones adicionales del sistema 24 de redes sociales, el sistema 28 de detección de eventos, el sistema 32 de aplicación y el sistema 36 de usuario, y los métodos asociados, como se describe en este documento, siempre que estén dentro del alcance de protección definido en las reivindicaciones adjuntas. Por ejemplo, cualquier característica de cualquiera de las realizaciones de estos sistemas y métodos descritos en el presente documento puede usarse en cualquier otra realización de estos sistemas y métodos. Además, las realizaciones de estos sistemas y métodos pueden incluir solo cualquier subconjunto de los componentes o características de estos sistemas y métodos discutidos en este documento.
Claims (15)
1. Un método para detectar eventos y hacer clústering de publicaciones en redes sociales para mostrarlas en un sistema de usuario, el método comprende:
recuperar (204), a través de una interfaz (44) de programación de aplicaciones API de un sistema (24) de redes sociales sobre al menos una primera red (26) de comunicación, al menos una publicación del sistema (24) de redes sociales;
determinar (206) si la al menos una publicación tiene contenido que se refiere a un período de tiempo predeterminado; al determinar que la al menos una publicación tiene contenido que se refiere al período de tiempo predeterminado, determinar (210) si la al menos una publicación corresponde a un clúster existente de publicaciones relacionadas con un evento, en el que la determinación (210) si la al menos una la publicación corresponde al clúster existente de publicaciones relacionadas con el evento utiliza un enfoque basado en clases semánticas que incluye:
asignar (1304) palabras del al menos una publicación a una pluralidad de clases semánticas diferentes;
para cada clase semántica, determinar (1308) una puntuación de similitud entre las palabras asignadas a esa clase semántica para al menos una publicación y las palabras asignadas a una clase semántica correspondiente para al menos un clúster de publicaciones existente;
combinar (1310) las puntuaciones de similitud para la pluralidad de clases semánticas para generar una puntuación de similitud combinada; y
determinar si la puntuación de similitud combinada supera un umbral predeterminado;
al determinar (210) que al menos una publicación corresponde al clúster existente de publicaciones relacionadas con el evento, almacenar, en al menos una base de datos (136) en un medio de almacenamiento no transitorio legible por máquina, el clúster existente de publicaciones modificado para incluir al menos una publicación; y
proporcionar (216), a través de al menos una segunda red de comunicación (30, 34), una representación del clúster existente modificado de publicaciones para su visualización en un sistema (36) de usuario.
2. El método de la reivindicación 1, que comprende, además, al determinar (206) que al menos una publicación no corresponde al clúster existente de publicaciones, almacenar, en al menos una base de datos (136), un nuevo clúster de publicaciones que incluye la al menos una publicación.
3. El método de la reivindicación 1, que comprende además, al determinar (206) que al menos una publicación tiene contenido que se refiere al período de tiempo predeterminado, almacenar (712) una identificación temporal de al menos una publicación en al menos una base (124) de datos, y proporcionar la identificación temporal de al menos una publicación como resultado de una API (60) en respuesta a una solicitud de una aplicación a la API (60), en el que la identificación temporal se proporciona automáticamente a una aplicación en respuesta a la determinación de que la al menos una publicación tiene contenido referente al período de tiempo predeterminado.
4. El método de la reivindicación 1, en el que proporcionar (216) la representación del clúster de publicaciones existente modificado incluye al menos uno o más de los siguientes:
delimitar el clúster existente de otras publicaciones o clústeres en una interfaz de usuario de una aplicación en el sistema (36) de usuario,
proporcionar el clúster modificado de publicaciones como salida de una API (68) en respuesta a una solicitud de una aplicación a la API (68);
proporcionar automáticamente la representación del clúster existente modificado a una aplicación en respuesta a la determinación de que al menos una publicación corresponde al clúster existente de publicaciones relacionadas con el evento.
5. El método de la reivindicación 1, en el que la determinación (206) de si al menos una publicación tiene contenido relacionado con el período de tiempo predeterminado incluye:
procesar el texto de al menos una publicación usando un conjunto de reglas para intentar determinar si la al menos una publicación tiene contenido relacionado con el período de tiempo predeterminado; y
al procesar la al menos una publicación usando el conjunto de reglas no poder determinar si la al menos una publicación tiene contenido relacionado con el período de tiempo predeterminado, intentar determinar si la al menos
una publicación tiene contenido relacionado con el período de tiempo predeterminado usando incorporaciones de palabras específicas temporales determinadas para al menos una publicación.
6. El método de la reivindicación 1, en el que la determinación (206) de si al menos una publicación tiene contenido relacionado con el período de tiempo predeterminado utiliza un enfoque basado en reglas que incluye:
determinar (804) una expresión temporal en al menos una publicación;
determinar (808) una diferencia de tiempo entre la expresión temporal y un tiempo de creación de al menos una publicación;
comparar (810) la diferencia de tiempo con un umbral predeterminado; al determinar que la diferencia de tiempo es mayor que el umbral predeterminado, clasificar (814) la al menos una publicación como que no incluye contenido relacionado con el período de tiempo predeterminado; y
al determinar que la diferencia de tiempo es menor que el umbral predeterminado, clasificar (812) la al menos una publicación como correspondiente al período de tiempo predeterminado.
7. El método de la reivindicación 1, en el que la determinación (206) de si al menos una publicación tiene contenido relacionado con el período de tiempo predeterminado se realiza en función de incorporaciones de palabras específicas temporales para la al menos una publicación, las incorporaciones de palabras específicas temporales que incluyen al menos un vector numérico que representa un significado temporal de una palabra de al menos una publicación en un espacio vectorial.
8. El método de la reivindicación 1, en el que la determinación (206) de si al menos una publicación tiene contenido relacionado con el período de tiempo predeterminado utiliza un enfoque basado en la incorporación de palabras específicas temporales que incluye:
determinar (904) incorporaciones de palabras específicas temporales para palabras de al menos una publicación en redes sociales;
generar (906) una representación de al menos una publicación en las redes sociales basada en las incorporaciones de palabras específicas temporales; y
realizar (908) una clasificación de al menos una publicación que incluye contenido relacionado con el período de tiempo predeterminado o no basado en la representación generada.
9. El método de la reivindicación 1, en el que la determinación (210, 1104) de si al menos una publicación corresponde al clúster existente de publicaciones relacionadas con el evento utiliza un enfoque basado en enlaces que incluye:
determinar (1204) un enlace en al menos una publicación en las redes sociales;
determinar (1206) si el enlace está incluido en el clúster existente de publicaciones; y al determinar que el enlace está incluido en el clúster existente de publicaciones,
clasificar (1208) al menos una publicación que corresponde al clúster de publicaciones existente.
10. El método de la reivindicación 1, en el que la determinación de si (210) la al menos una publicación corresponde al clúster existente de publicaciones se realiza en función de las clases semánticas de palabras de la al menos una publicación.
11. El método de la reivindicación 1, en el que el enfoque basado en clases semánticas incluye, además: para al menos una de las clases semánticas, expandir las palabras asignadas agregando sinónimos de las palabras asignadas, incluso mediante:
determinar (1404) incorporaciones de palabras para las palabras asignadas y posibles sinónimos
generar (1406) puntuaciones de similitud entre las incorporaciones de palabras para las palabras asignadas y los posibles sinónimos;
determinar (1408) si las puntuaciones de similitud de los posibles sinónimos superan un
umbral predeterminado; y al determinar que al menos uno de los puntajes de similitud excede el umbral predeterminado, expandir (1410) las palabras asignadas para incluir sinónimos específicos que tienen puntajes de similitud que exceden el umbral predeterminado.
12. El método de la reivindicación 2, que comprende además calcular (1116) una puntuación de novedad para el nuevo clúster de publicaciones.
13. El método de la reivindicación 1, en el que la recuperación (204) incluye comunicar una solicitud a través de al menos una primera red (26) de comunicación a la API (44) del sistema (24) de redes sociales, y recibir una respuesta a través de la al menos una primera red (26) de comunicación de la API (44) que incluye al menos una publicación en las redes sociales.
14. Un sistema (20) para detectar eventos y hacer clústering de publicaciones en redes sociales para su visualización en un sistema (36) de usuario, el sistema comprende:
al menos un procesador (156); y
un medio (164) legible por máquina no transitorio que tiene instrucciones de programa, que cuando es ejecutado por al menos un procesador (156) realiza un método, el método incluye:
recuperar (204), a través de una interfaz de programación de aplicaciones API (44) de un sistema (24) de redes sociales sobre al menos una primera red (26) de comunicación, al menos una publicación del sistema (24) de redes sociales;
determinar (206) si la al menos una publicación tiene contenido que se refiere a un período de tiempo predeterminado; al determinar que la al menos una publicación tiene contenido que se refiere al período de tiempo predeterminado, determinar (210) si la al menos una publicación corresponde a un clúster existente de publicaciones relacionadas con un evento, en el que determinar si la al menos una publicación corresponde a el clúster existente de publicaciones relacionadas con el evento utiliza un enfoque basado en clases semánticas que incluye:
asignar (1304) palabras del al menos una publicación a una pluralidad de clases semánticas diferentes;
para cada clase semántica, determinar (1308) una puntuación de similitud entre las palabras asignadas a esa clase semántica para al menos una publicación y las palabras asignadas a una clase semántica correspondiente para al menos un clúster de publicaciones existente;
combinar (1310) las puntuaciones de similitud para la pluralidad de clases semánticas para generar una puntuación de similitud combinada; y
determinar si la puntuación de similitud combinada supera un umbral predeterminado;
al determinar (210) que al menos una publicación corresponde al clúster existente de publicaciones relacionadas con el evento, almacenar, en al menos una base (136) de datos en el medio de almacenamiento no transitorio legible por máquina, el clúster existente de publicaciones modificado para incluir al menos una publicación; y
proporcionar (216), a través de al menos una segunda red (30, 34) de comunicación, una representación del clúster existente modificado de publicaciones para su visualización en un sistema (36) de usuario.
15. Un medio de almacenamiento legible por máquina no transitorio que tiene instrucciones de programa, que cuando es ejecutado por al menos un procesador realiza todas las etapas del método de acuerdo con cualquiera de las reivindicaciones 1 a 13.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662416783P | 2016-11-03 | 2016-11-03 | |
PCT/US2017/059533 WO2018085401A1 (en) | 2016-11-03 | 2017-11-01 | Systems and methods for event detection and clustering |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2911173T3 true ES2911173T3 (es) | 2022-05-17 |
Family
ID=62021548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES17866577T Active ES2911173T3 (es) | 2016-11-03 | 2017-11-01 | Sistemas y métodos para la detección de eventos y clústering |
Country Status (6)
Country | Link |
---|---|
US (1) | US11157574B2 (es) |
EP (1) | EP3549029B1 (es) |
AU (1) | AU2017355420B2 (es) |
CA (1) | CA3041844C (es) |
ES (1) | ES2911173T3 (es) |
WO (1) | WO2018085401A1 (es) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12001489B1 (en) * | 2023-01-25 | 2024-06-04 | Fujitsu Limited | Ethics-based multi-modal user post monitoring |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180315414A1 (en) * | 2017-04-26 | 2018-11-01 | International Business Machines Corporation | Adaptive digital assistant and spoken genome |
US12056774B2 (en) * | 2017-11-21 | 2024-08-06 | International Business Machines Corporation | Predicting a time of non-real time posts using contextual metadata |
US10685183B1 (en) * | 2018-01-04 | 2020-06-16 | Facebook, Inc. | Consumer insights analysis using word embeddings |
US11809965B2 (en) * | 2018-04-13 | 2023-11-07 | Cisco Technology, Inc. | Continual learning for multi modal systems using crowd sourcing |
US11256869B2 (en) * | 2018-09-06 | 2022-02-22 | Lg Electronics Inc. | Word vector correction method |
WO2020061578A1 (en) * | 2018-09-21 | 2020-03-26 | Arizona Board Of Regents On Behalf Of Arizona State University | Method and apparatus for collecting, detecting and visualizing fake news |
CN109447833A (zh) * | 2018-09-26 | 2019-03-08 | 江苏大学 | 一种大规模微博用户兴趣群体发现方法 |
US11586659B2 (en) * | 2019-05-03 | 2023-02-21 | Servicenow, Inc. | Clustering and dynamic re-clustering of similar textual documents |
US11461822B2 (en) * | 2019-07-09 | 2022-10-04 | Walmart Apollo, Llc | Methods and apparatus for automatically providing personalized item reviews |
US11393036B2 (en) * | 2019-10-11 | 2022-07-19 | S&P Global Inc. | Deep learning-based two-phase clustering algorithm |
US11526688B2 (en) * | 2020-04-16 | 2022-12-13 | International Business Machines Corporation | Discovering ranked domain relevant terms using knowledge |
US11797961B2 (en) * | 2020-07-17 | 2023-10-24 | Intuit, Inc. | Vectorization of transactions |
US11494416B2 (en) | 2020-07-27 | 2022-11-08 | S&P Global Inc. | Automated event processing system |
US12055998B2 (en) | 2022-03-11 | 2024-08-06 | International Business Machines Corporation | Intelligent grouping of events in computing system event and computing system incident management domains |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100121707A1 (en) | 2008-11-13 | 2010-05-13 | Buzzient, Inc. | Displaying analytic measurement of online social media content in a graphical user interface |
WO2011000046A1 (en) * | 2009-07-01 | 2011-01-06 | Ozmota Inc. | Systems and methods for determining information and knowledge relevancy, relevant knowledge discovery and interactions, and knowledge creation |
JP5795580B2 (ja) * | 2009-07-16 | 2015-10-14 | ブルーフィン ラボズ インコーポレイテッド | タイムベースメディアにおけるソーシャルインタレストの推定および表示 |
US8688791B2 (en) * | 2010-02-17 | 2014-04-01 | Wright State University | Methods and systems for analysis of real-time user-generated text messages |
CN102387174A (zh) | 2010-09-02 | 2012-03-21 | 鸿富锦精密工业(深圳)有限公司 | 可自动更新社交网站信息的微件及方法 |
KR101169377B1 (ko) | 2010-09-27 | 2012-07-30 | 한국과학기술연구원 | 핫 토픽 이벤트 추출에 기반한 실시간 이벤트의 하이라이트 제공 시스템 및 이를 이용한 하이라이트 서비스 제공방법 |
US9276974B2 (en) * | 2011-10-12 | 2016-03-01 | MarketChorus, Inc. | Topical activity monitor and identity collector system and method |
US8977573B2 (en) * | 2012-03-01 | 2015-03-10 | Nice-Systems Ltd. | System and method for identifying customers in social media |
US20130290208A1 (en) | 2012-04-30 | 2013-10-31 | Gild, Inc. | Social media data filtering for electronic job recruiting |
US9104667B2 (en) * | 2012-09-24 | 2015-08-11 | International Business Machines Corporation | Social media event detection and content-based retrieval |
US8990194B2 (en) * | 2012-11-02 | 2015-03-24 | Google Inc. | Adjusting content delivery based on user submissions of photographs |
US9171048B2 (en) * | 2012-12-03 | 2015-10-27 | Wellclub, Llc | Goal-based content selection and delivery |
US20140201227A1 (en) | 2013-01-15 | 2014-07-17 | Getty Images (Us), Inc. | Content-identification engine based on social media |
EP2964254B1 (en) * | 2013-03-07 | 2019-09-18 | University of Maryland, Baltimore | Immunotherapeutic potential of modified lipooligosaccharides/lipid a |
EP2973066A4 (en) | 2013-03-11 | 2016-11-23 | Creopoint Inc | ADJUSTABLE CHANNEL WITH REAL TIME INTELLIGENCE |
EP2994846A4 (en) | 2013-05-09 | 2017-01-25 | Moodwire, Inc. | Hybrid human machine learning system and method |
WO2015027315A1 (en) | 2013-08-28 | 2015-03-05 | Leadsift Incorporated | System and method for identifying and scoring leads from social media |
US9299113B2 (en) * | 2013-09-13 | 2016-03-29 | Microsoft Technology Licensing, Llc | Social media driven information interface |
US20150120502A1 (en) | 2013-10-29 | 2015-04-30 | Elwha LLC, a limited liability corporation of the State of Delaware | Supporting guaranty provisioning via user attribute proffering |
US9413891B2 (en) * | 2014-01-08 | 2016-08-09 | Callminer, Inc. | Real-time conversational analytics facility |
WO2016012493A1 (en) * | 2014-07-24 | 2016-01-28 | Agt International Gmbh | System and method for social event detection |
US20160055164A1 (en) | 2014-08-25 | 2016-02-25 | Tll, Llc | News alert system and method |
US20170300582A1 (en) | 2014-10-06 | 2017-10-19 | Gary King | Event identification through analysis of social-media postings |
US10109023B2 (en) | 2015-05-08 | 2018-10-23 | Thomson Reuters Global Resources Unlimited Company | Social media events detection and verification |
-
2017
- 2017-11-01 ES ES17866577T patent/ES2911173T3/es active Active
- 2017-11-01 CA CA3041844A patent/CA3041844C/en active Active
- 2017-11-01 EP EP17866577.4A patent/EP3549029B1/en active Active
- 2017-11-01 US US15/800,876 patent/US11157574B2/en active Active
- 2017-11-01 WO PCT/US2017/059533 patent/WO2018085401A1/en unknown
- 2017-11-01 AU AU2017355420A patent/AU2017355420B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12001489B1 (en) * | 2023-01-25 | 2024-06-04 | Fujitsu Limited | Ethics-based multi-modal user post monitoring |
Also Published As
Publication number | Publication date |
---|---|
US11157574B2 (en) | 2021-10-26 |
AU2017355420A1 (en) | 2019-05-23 |
EP3549029B1 (en) | 2022-03-09 |
AU2017355420B2 (en) | 2022-07-21 |
CA3041844A1 (en) | 2018-05-11 |
WO2018085401A1 (en) | 2018-05-11 |
CA3041844C (en) | 2023-09-26 |
EP3549029A4 (en) | 2020-12-23 |
EP3549029A1 (en) | 2019-10-09 |
US20180121555A1 (en) | 2018-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2911173T3 (es) | Sistemas y métodos para la detección de eventos y clústering | |
Jang et al. | A computational approach for examining the roots and spreading patterns of fake news: Evolution tree analysis | |
Unankard et al. | Emerging event detection in social networks with location sensitivity | |
US11003638B2 (en) | System and method for building an evolving ontology from user-generated content | |
US10169419B2 (en) | System and method for generating social summaries | |
Firmino Alves et al. | A Comparison of SVM versus naive-bayes techniques for sentiment analysis in tweets: A case study with the 2013 FIFA confederations cup | |
Bi et al. | Scalable topic-specific influence analysis on microblogs | |
US9881059B2 (en) | Systems and methods for suggesting headlines | |
US20170315996A1 (en) | Focused sentiment classification | |
Reinanda et al. | Mining, ranking and recommending entity aspects | |
Harrag et al. | Arabic fake news detection: A fact checking based deep learning approach | |
Petkos et al. | Two-level Message Clustering for Topic Detection in Twitter. | |
US20170039275A1 (en) | Automated Article Summarization, Visualization and Analysis Using Cognitive Services | |
Merhav et al. | Extracting information networks from the blogosphere | |
Panda | Developing an efficient text pre-processing method with sparse generative Naive Bayes for text mining | |
Ertugrul et al. | Word embedding based event detection on social media | |
Gupta et al. | A proposed framework to analyze abusive tweets on the social networks | |
Priyatam et al. | Seed selection for domain-specific search | |
Ahuja et al. | Microblog sentiment topic model | |
Angaramo et al. | Online clustering and classification for real-time event detection in Twitter. | |
Phuvipadawat et al. | Detecting a multi-level content similarity from microblogs based on community structures and named entities | |
Khater et al. | Tweets you like: Personalized tweets recommendation based on dynamic users interests | |
Fischer et al. | Timely semantics: a study of a stream-based ranking system for entity relationships | |
Burk et al. | Apollo: Near-duplicate detection for job ads in the online recruitment domain | |
Kotsakos et al. | # tag: Meme or event? |