Mostrando entradas con la etiqueta palabras clave. Mostrar todas las entradas
Mostrando entradas con la etiqueta palabras clave. Mostrar todas las entradas

domingo, 12 de agosto de 2018

Algoritmo para la detección de fake news

La gente es mala al detectar noticias falsas. ¿Pueden los programas de computadora funcionar mejor?

Hay demasiada desinformación en línea para que los verificadores de datos humanos la atrapen
Por
Maria Temming


MONITORES DE DECEPCIÓN Los investigadores están creando algoritmos en línea para verificar la veracidad de las noticias en línea.

Alex Nabaum
Número de la revista: Science Magazine Vol. 194, No. 3, 4 de agosto de 2018, p. 22



Desplazarse a través de una fuente de noticias a menudo se siente como jugar Dos verdades y una mentira.

Algunas falsedades son fáciles de detectar. Como informes de que la Primera Dama Melania Trump quería un exorcista para limpiar los demonios de la Casa Blanca de la era Obama, o que un director de una escuela de Ohio fue arrestado por defecar frente a una asamblea estudiantil. En otros casos, la ficción se combina demasiado bien con los hechos. CNN fue realmente allanado por la Comisión Federal de Comunicaciones? ¿La policía descubrió realmente un laboratorio de metanfetamina dentro de un Walmart de Alabama? No y no. Pero cualquiera que se mueva por una serie de historias fácilmente podría ser engañado.

Vivimos en una era dorada de desinformación. En Twitter, las falsedades se extienden más y más rápido que la verdad (SN: 31/3/18, p.14). En el período previo a las elecciones presidenciales estadounidenses de 2016, los artículos falsos más populares obtuvieron más acciones, reacciones y comentarios de Facebook que las principales noticias reales, según un análisis de BuzzFeed News.

Antes de Internet, "no se podía tener a una persona sentada en un ático y generando teorías de conspiración a gran escala", dice Luca de Alfaro, científico informático de la Universidad de California en Santa Cruz. Pero con las redes sociales de hoy en día, vender mentiras es demasiado fácil: si esas mentiras provienen de disfraces como Disinfomedia, una compañía que ha sido propietaria de varios sitios web de noticias falsas o un grupo de adolescentes en Macedonia que recaudaron el dinero escribiendo noticias falsas populares durante las elecciones de 2016

La mayoría de los usuarios de internet probablemente no estén transmitiendo literas intencionalmente. La sobrecarga de información y la capacidad limitada de atención de la persona que practica surf de la web promedio no son exactamente propicias para la vigilancia de la verificación de los hechos. El sesgo de confirmación se alimenta también. "Cuando se trata de información no filtrada, es probable que las personas elijan algo que se ajuste a su propio pensamiento, incluso si esa información es falsa", dice Fabiana Zollo, científica informática de la Universidad de Venecia Ca 'Foscari, que estudia cómo circula la información en las redes sociales.

Intencional o no, compartir información errónea puede tener graves consecuencias. Las noticias falsas no solo amenazan la integridad de las elecciones y erosionan la confianza pública en las noticias reales. Amenaza vidas. Los falsos rumores que se propagan en WhatsApp, un sistema de mensajería de teléfono inteligente, por ejemplo, provocaron linchamientos en India este año que dejaron más de una docena de personas muertas.

Para ayudar a clasificar las noticias falsas de la verdad, los programadores están construyendo sistemas automatizados que juzgan la veracidad de las historias en línea. Un programa de computadora podría considerar ciertas características de un artículo o la recepción de un artículo en las redes sociales. Las computadoras que reconocen ciertas señales de advertencia podrían alertar a los verificadores de datos humanos, que harían la verificación final.

Las herramientas automáticas de búsqueda de mentiras "todavía están en su infancia", dice el científico informático Giovanni Luca Ciampaglia de la Universidad de Indiana en Bloomington. Los investigadores están explorando qué factores marcan de manera más confiable las noticias falsas. Desafortunadamente, no tienen un conjunto acordado de historias verdaderas y falsas para usar para probar sus tácticas. Algunos programadores confían en medios de comunicación establecidos o agencias de prensa estatales para determinar qué historias son ciertas o no, mientras que otros recurren a listas de noticias falsas informadas en las redes sociales. Por lo tanto, la investigación en esta área es algo así como una lucha libre.

Pero los equipos de todo el mundo están avanzando porque internet es una manguera de información, y pedirle a los inspectores de datos humanos que se mantengan al día es como apuntar esa manguera a un filtro Brita. "Es una especie de entumecimiento de la mente", dice Alex Kasprak, un escritor de ciencia en Snopes, el sitio de verificación de datos en línea más antiguo y más grande, "solo el volumen de cosas realmente de mala calidad que hay por ahí".




Sustancia y estilo

Cuando se trata de inspeccionar el contenido de las noticias directamente, hay dos formas principales de saber si una historia encaja en la factura de la fraudulencia: qué dice el autor y cómo lo dice el autor.

Ciampaglia y sus colegas automatizaron esta tediosa tarea con un programa que verifica cuán estrechamente relacionados están el sujeto y el objeto de una declaración. Para hacer esto, el programa usa una vasta red de nombres construidos a partir de hechos encontrados en el cuadro de información en el lado derecho de cada página de Wikipedia, aunque redes similares han sido construidas a partir de otros depósitos de conocimiento, como bases de datos de investigación.

En la red de nombres del grupo Ciampaglia, dos sustantivos están conectados si un sustantivo apareció en la caja de información de otro. Cuantos menos grados de separación entre el sujeto y el objeto de una declaración en esta red, y cuanto más específicas sean las palabras intermedias que conectan el sujeto y el objeto, más probable es que el programa de computadora etiquete una afirmación como verdadera.

Tomemos la falsa afirmación de que "Barack Obama es musulmán". Hay siete grados de separación entre "Obama" e "Islam" en la red de sustantivos, incluidos los sustantivos muy generales, como "Canadá", que se conectan con muchas otras palabras. Dada esta larga y serpenteante ruta, el verificador automatizado de datos, descrito en 2015 en PLoS ONE, consideró que Obama probablemente no sea musulmán.

Ruta de la rotonda

Un verificador automático de hechos juzga la afirmación "Barack Obama es musulmán" al estudiar los grados de separación entre las palabras "Obama" e "Islam" en una red de sustantivos construida a partir de la información de Wikipedia. La conexión muy suelta entre estos dos sustantivos sugiere que el enunciado es falso.


Fuente: G.L. Ciampaglia et al / PLOS One 2015

Pero estimar la veracidad de las declaraciones basadas en este tipo de separación sujeto-objeto tiene límites. Por ejemplo, el sistema consideró probable que el ex presidente George W. Bush esté casado con Laura Bush. Estupendo. También decidió que George W. Bush probablemente esté casado con Barbara Bush, su madre. Menos genial. Ciampaglia y sus colegas han estado trabajando para dar a su programa una visión más matizada de las relaciones entre los nombres en la red.

Verificar cada declaración en un artículo no es la única manera de ver si una historia pasa la prueba del olfato. El estilo de escritura puede ser otro regalo. Benjamin Horne y Sibel Adali, informáticos del Rensselaer Polytechnic Institute en Troy, N.Y., analizaron 75 artículos verdaderos de los medios de comunicación considerados más confiables por Business Insider, así como 75 historias falsas de sitios en una lista negra de sitios web engañosos. En comparación con las noticias reales, los artículos falsos tienden a ser más cortos y repetitivos con más adverbios. Las historias falsas también tienen menos citas, palabras técnicas y sustantivos.

Sobre la base de estos resultados, los investigadores crearon un programa informático que utilizaba los cuatro factores distintivos más fuertes de las noticias falsas: número de sustantivos y número de citas, redundancia y recuentos de palabras, para juzgar la veracidad del artículo. El programa, presentado en la Conferencia Internacional sobre Web y Redes Sociales en Montreal, clasificó correctamente las noticias falsas del verdadero 71 por ciento del tiempo (un programa que clasifica las noticias falsas de las verdaderas al azar mostraría una precisión del 50 por ciento). Horne y Adali están buscando características adicionales para aumentar la precisión.

Verónica Pérez-Rosas, una científica informática de la Universidad de Michigan en Ann Arbor, y sus colegas compararon 240 artículos originales y 240 inventados. Al igual que Horne y Adali, el equipo de Pérez-Rosas encontró más adverbios en los artículos de noticias falsos que en los reales. Las noticias falsas en este análisis, informadas en arXiv.org el 23 de agosto de 2017, también tienden a utilizar un lenguaje más positivo y a expresar más certeza.

Verdad y mentiras

Un estudio de cientos de artículos reveló diferencias estilísticas entre las noticias originales y las inventadas. Las historias reales contenían más lenguaje que transmitía diferenciación, mientras que las historias falsas expresaban más certeza.


Fuente: V. Pérez-Rosas et al / arxiv.org 2017

Las computadoras no necesitan necesariamente que los humanos les digan qué aspectos de los artículos falsos dan estas historias. El ingeniero informático e ingeniero Vagelis Papalexakis de la Universidad de California en Riverside y sus colegas construyeron un detector de noticias falso que comenzó clasificando un caché de artículos en grupos según lo similares que eran las historias. Los investigadores no proporcionaron instrucciones explícitas sobre cómo evaluar la similitud. Una vez que el programa agrupaba los artículos de acuerdo con la semejanza, los investigadores etiquetaron el 5 por ciento de todos los artículos como fácticos o falsos. A partir de esta información, el algoritmo, descrito el 24 de abril en arXiv.org, predijo etiquetas para el resto de los artículos sin marcar. El equipo de Papalexakis probó este sistema en casi 32,000 artículos reales y 32,000 falsos compartidos en Twitter. Alimentado con ese pequeño núcleo de verdad, el programa predijo correctamente las etiquetas de alrededor del 69 por ciento de las otras historias.

Supervisión de adultos

Hacer las cosas bien el 70 por ciento de las veces no es lo suficientemente preciso como para confiar en los programas de investigación de noticias por sí mismos. Pero los detectores de noticias falsos podrían ofrecer una alerta de proceder con precaución cuando un usuario abre una historia sospechosa en un navegador web, similar a la alerta que aparece cuando está a punto de visitar un sitio sin certificado de seguridad.

En un tipo similar de primer paso, las plataformas de medios sociales podrían usar perros guardianes de la información errónea para buscar fuentes de noticias cuestionables y luego enviarlas a verificadores de datos humanos. Hoy, Facebook considera los comentarios de los usuarios, como aquellos que publican comentarios incrédulos o informan que un artículo es falso, al elegir qué historias verificar. La compañía luego envía estas historias a los escépticos profesionales en FactCheck.org, PolitiFact o Snopes para su verificación. Pero Facebook está abierto a usar otras señales para encontrar fraudes de manera más eficiente, dice la portavoz de Facebook, Lauren Svensson.

No importa qué tan buenas sean las computadoras para encontrar noticias falsas, estos sistemas no deberían reemplazar totalmente a los verificadores de datos humanos, dice Horne. La decisión final sobre si una historia es falsa puede requerir una comprensión más matizada de la que puede proporcionar una computadora.

"Hay una gran escala de grises" de desinformación, dice Julio Amador Díaz López, un científico informático y economista del Imperial College de Londres. Ese espectro, que incluye la verdad tomada fuera de contexto, la propaganda y las declaraciones que son prácticamente imposibles de verificar, como las convicciones religiosas, puede ser difícil para las computadoras para navegar.

El escritor de ciencia de Snopes, Kasprak, imagina que el futuro de la verificación de los hechos será como la transcripción de audio asistida por computadora. Primero, el sistema automatizado elabora un borrador de la transcripción. Pero un humano todavía tiene que revisar ese texto para detalles que se pasan por alto, como errores de ortografía y puntuación, o palabras que el programa acaba de equivocarse. De manera similar, las computadoras podrían compilar listas de artículos sospechosos para que las personas revisen, dice Kasprak, enfatizando que los humanos aún deben tener la última palabra sobre lo que se etiqueta como verdadero.

Ojos en la audiencia

A pesar de que los algoritmos se vuelven más astutos al marcar artículos falsos, no hay garantía de que los creadores de noticias falsas no intensifiquen su juego para eludir la detección. Si los programas de computadora están diseñados para ser escépticos de las historias que son demasiado positivas o expresan mucha certeza, entonces los autores engañosos podrían refinar sus estilos de escritura en consecuencia.

"Las noticias falsas, como un virus, pueden evolucionar y actualizarse a sí mismas", dice Daqing Li, un científico de redes de la Universidad de Beihang en Beijing que ha estudiado noticias falsas en Twitter. Afortunadamente, las noticias en línea se pueden juzgar en más que el contenido de sus narraciones. Y otros signos reveladores de noticias falsas podrían ser mucho más difíciles de manipular, a saber, los tipos de participación del público que estas historias atraen en las redes sociales.

Sin ovejas

La mayoría de los usuarios de Twitter que discutieron rumores falsos sobre dos desastres publicaron tweets que simplemente difundieron estos rumores. Solo se publicó una pequeña fracción buscando verificación o expresando dudas sobre las historias.


H. Thompson

Juan Cao, científico informático del Instituto de Tecnología Informática de la Academia de Ciencias de China en Beijing, descubrió que en la versión china de Twitter, Sina Weibo, los tweets específicos sobre una determinada noticia son buenos indicadores de si una historia en particular es cierto. El equipo de Cao creó un sistema que podría resumir los tweets sobre un evento noticioso en particular, y luego ordenarlos en dos grupos: los que expresaron su apoyo a la historia y los que se opusieron. El sistema consideró varios factores para medir la credibilidad de esos puestos. Si, por ejemplo, la historia se centra en un evento local que un usuario estaba geográficamente cerca, la entrada del usuario se vio como más creíble que la entrada de un usuario más lejano. Si un usuario estuvo inactivo por un tiempo prolongado y comenzó a publicar una sola historia, ese comportamiento anormal contó con la credibilidad del usuario. Al sopesar el carácter distintivo de los tweets de apoyo y escépticos, el programa decidió si una historia en particular podría ser falsa.

El grupo de Cao probó esta técnica en 73 historias reales y 73 falsas, etiquetadas como tales por organizaciones como la Agencia de Noticias Xinhua dirigida por el gobierno de China. El algoritmo examinó alrededor de 50,000 tweets sobre estas historias en Sina Weibo, y reconoció noticias falsas correctamente alrededor del 84 por ciento del tiempo. El equipo de Cao describió los hallazgos en 2016 en Phoenix en una conferencia de la Asociación para el Avance de la Inteligencia Artificial. De Alfaro y sus colegas de UC Santa Cruz informaron similarmente en Macedonia en la Conferencia Europea sobre Aprendizaje Automático y Principios y Prácticas de Descubrimiento de Conocimiento en Bases de Datos del año pasado, que los engaños se pueden distinguir de las noticias reales que circulan en Facebook en base a qué usuarios les gustan estas historias.

En lugar de ver quién está reaccionando a un artículo, una computadora puede ver cómo se transmite la historia en las redes sociales. Li y sus colegas estudiaron las formas de las redes de repost que se ramificaron de las noticias en las redes sociales. Los investigadores analizaron las redes de publicación de aproximadamente 1,700 historias falsas y 500 noticias verdaderas en Weibo, así como alrededor de 30 redes de noticias falsas y 30 redes de noticias reales en Twitter. En ambos sitios de redes sociales, el equipo de Li descubrió que la mayoría de la gente tendía a publicar noticias reales directamente de una sola fuente, mientras que las noticias falsas tendían a extenderse más a través de la gente que publicaba datos de otros remitentes.

Una red típica de repositorios de noticias reales "se parece mucho más a una estrella, pero las noticias falsas se extienden más como un árbol", dice Li. Esto se mantuvo incluso cuando el equipo de Li ignoró las noticias publicadas originalmente por fuentes oficiales conocidas, como los propios medios de noticias. Informado el 9 de marzo en arXiv.org, estos hallazgos sugieren que las computadoras podrían usar el compromiso con las redes sociales como una prueba de fuego para la veracidad, incluso sin poner las publicaciones individuales bajo el microscopio.

Ramificando

En Twitter, la mayoría de las personas que publican (puntos rojos) noticias reales lo obtienen de una única fuente central (punto verde). Las noticias falsas se propagan más a través de las personas que reposten de otros remitentes.


Z. Zhao et al / arxiv.org 2018

Verdad a la gente


Cuando se capta la desinformación circulando en las redes sociales, la mejor forma de lidiar con ella sigue siendo una pregunta abierta. Simplemente fregar artículos falsos de los feeds de noticias probablemente no sea el camino a seguir. Las plataformas de medios sociales que ejercen ese nivel de control sobre lo que los visitantes pueden ver "serían como un estado totalitario", dice Murphy Choy, analista de datos de SSON Analytics en Singapur. "Va a ser muy incómodo para todas las partes involucradas".

Las plataformas podrían poner señales de advertencia sobre la desinformación. Pero etiquetar las historias que han sido verificadas como falsas puede tener un desafortunado "efecto de verdad implícita". Las personas pueden confiar más en las historias que no están señaladas explícitamente como falsas, ya sea que hayan sido verificadas o no, de acuerdo con una investigación publicada el pasado Septiembre en la Red de Investigación de Ciencias Sociales por los investigadores del comportamiento humano Gordon Pennycook, de la Universidad de Regina en Canadá, y David Rand en la Universidad de Yale.

En lugar de eliminar las historias, Facebook muestra menos historias desacreditadas en las noticias de los usuarios, lo que puede reducir las opiniones futuras de un artículo falso en un 80 por ciento, dice el portavoz de la compañía, Svensson. Facebook también muestra artículos que desacreditan historias falsas cada vez que los usuarios encuentran las historias relacionadas, aunque esa técnica puede ser contraproducente. En un estudio de usuarios de Facebook a los que les gusta y comparten noticias de conspiración, Zollo y su colega Walter Quattrociocchi descubrieron que, después de que los conspiradores interactuaran con artículos desacreditados, estos usuarios realmente aumentaron su actividad en las páginas de conspiración de Facebook. Los investigadores informaron este hallazgo en junio en Complex Spreading Phenomena in Social Systems.

Todavía hay mucho trabajo por hacer en la enseñanza de computadoras, y personas, para reconocer noticias falsas. Como dice el viejo refrán: una mentira puede llegar a la mitad del mundo antes de que la verdad se ponga en sus zapatos. Pero los algoritmos informáticos de ojos penetrantes pueden al menos frenar las historias falsas con algunos nuevos pesos de tobillo.

Este artículo aparece en la edición del 4 de agosto de 2018 de Science News con el titular "Detectando noticias falsas: los programas informáticos invocan mentiras en Internet".

martes, 18 de julio de 2017

Marketing: Cómo ayuda a la gestión de SEO el uso de grafos

SEO: Cómo impulsar su tráfico de Web con visualización de grafos

Grégory DOMINÉ | Linkurious
En esta entrada de blog nuestros amigos de NetBooster explican cómo convertir los datos de su sitio web en una visualización de grafos para mejorar su palabra clave y las decisiones de contenido de SEO.


Search Engine Optimization es una disciplina de marketing digital que tiene como objetivo mejorar la visibilidad de sitios web en los motores de búsqueda. Una gran parte del trabajo consiste en la minería de datos semánticos para medir el interés y localizar el potencial de crecimiento del tráfico.

Mientras tanto, mediante la ingeniería inversa algoritmo de búsqueda de Google, los expertos SEO tienden a organizar los sitios web en arquitecturas significativas que se rastrean, entendido e indexado por las arañas de Google.

De su blog personal a la venta al por menor en línea de primera clase, la semántica y la arquitectura de la información se convierten en críticas de hecho cuando Google tiene que decidir qué página - de un competidor o de su Web site - alineará primero en las páginas de los resultados de la búsqueda.

SEO orientado a datos

Durante muchos años, la experiencia SEO se basó principalmente en tácticas de prueba y aprendizaje, pero nosotros, en NetBooster, fomentamos el uso de datos para predecir y medir el éxito de SEO.

Mientras que la recolección de datos para dar forma a la estructura del sitio web era un desafío complejo, se hizo obvio que la visualización del gráfico podía ayudarnos a hacer sentido fuera de él: un Web site es apenas otra red de nodos (Webpages) ligados.

Así que empezamos recogiendo datos de SEO: rastreo de sitios, búsqueda centrada en el sitio, búsqueda centrada en el usuario, clasificaciones de sitios.

Rastreo del sitio

Por definición, un sitio web es una red de archivos (la mayoría de las veces los documentos HTML también se llaman páginas web) vinculados entre sí. Pero una página también puede vincularse a otra sin reciprocidad.

De acuerdo con el tamaño del sitio web, la gran cantidad de páginas y enlaces entre ellos puede ser rápidamente abrumadora. Por lo tanto, los expertos SEO utilizan el software para rastrear cada página y cada enlace de un sitio web. El rastreo del sitio resulta en una tabla en la que se enumeran todos (ver datos de ejemplo a continuación: la página car.html tiene un enlace hacia la página plane.html).

Esta red de nodos y enlaces será la base de nuestra base de datos de gráficos.


Búsqueda centrada en el sitio

Google Search Console es una herramienta gratuita que proporciona datos de búsqueda para un sitio determinado. Ofrece a los webmasters una visión general de las actuaciones de su sitio web para cada consulta específica buscada por sus visitantes (ver ejemplos de datos a continuación: la palabra clave ha conducido 20 visitas de Google a la página car.html).


Página fuentePágina destino
mysite.com/transportation/car.htmlmysite.com/transportation/plane.html

Estos datos serán útiles para determinar qué consultas, buscadas en Google, realmente dirigen tráfico a la página de un sitio web. La mayoría de las veces, resulta en miles de entradas.

Búsqueda centrada en el usuario

Google Keyword Planner es otra herramienta gratuita proporcionada por la empresa de Mountain View. Ayuda a los expertos de SEO a pesar volúmenes de búsqueda de miles de consultas y acciones de prioridad (ver ejemplo de datos a continuación: la palabra clave coche se ha buscado 12.000 veces el mes pasado).



CategoryKeyword
Monthly average search volume
Transportationcar
12,000
Transportationplane
8,000
Transportationtrain
4,000


A medida que cada palabra clave está completamente categorizada, los expertos en SEO pueden agruparlos en grupos de intenciones y extrapolar la demanda de búsqueda para propósitos más amplios (por ejemplo, palabras clave como coche, avión y tren podrían agruparse en un grupo de transporte y acumular un volumen de búsqueda de 24.000 consultas por mes).

Esta taxonomía es fundamental para reducir el alcance de las asignaciones de sitios y para priorizar los temas más estratégicos: puede decidir fácilmente si priorizar la creación de contenido dedicado al transporte o al alojamiento.


Visualización del sitio

Después de recopilar e importar los datos en una base de datos de grafos (decidimos usar Neo4J asociado con Linkurious después de resultados infructuosos usando Gephi) pudimos solicitar cualquier nodo de nuestro sitio web y mostrar enlaces entre ellos:

  • Nodos de palabras clave, recopilados a través de datos de búsqueda centrados en el sitio y datos de búsqueda centrados en el usuario;
  • Nodos de página, recopilados a través de datos de rastreo de sitios.

Esto es cuando empezamos a convertir los datos de nuestro sitio web en visualización.

Clasificación por categoría de palabras clave

Una vez importados en la base de datos Neo4J y mostrados a través de Linkurious, ahora podríamos mostrar todas las palabras clave relacionadas con una categoría y ver cuáles de ellas estaban dirigiendo el tráfico al sitio web.

En el siguiente ejemplo, las palabras clave relacionadas con management (strategic management) generaron visitas a 2 páginas del sitio web (nodos grises). El tamaño de los nodos de palabras clave muestra su volumen de búsqueda mensual (manager es más solicitado que management).



Visualización del cluster de palabras clave de management y sus conexiones a páginas web.

En este otro ejemplo, las palabras clave relacionadas con finance no generan tráfico alguno en el sitio web.



Visualización del cluster de palabras clave finance.

Siguiendo esta metodología, el análisis de todos los temas identificados en los datos de búsqueda centrados en el usuario puede caracterizar el tráfico a un sitio web y revelar el potencial de crecimiento: los temas que no tienen una página de respuesta pueden abordarse a través de la creación de contenido.

Creación de página

La creación de páginas que reflejan estructuras semánticas consistentes era una tarea fastidiosa. Y por desgracia, tuvimos que mover cada nodo manualmente para diseñar patrones significativos, ya que aún no sabíamos sobre la opción de peso de ForceLink Layout (que distribuiría nodos según el peso de su enlace) disponible en el SDK.

En la siguiente figura, creamos una nueva página (nodo gris con estrellas) destinada a capturar tráfico de las palabras clave relacionadas con las finanzas: our-finance-programs.html


Visualización de las nuevas conexiones entre la página web y el clúster de palabras clave finance.

Pero estas estructuras pueden ser mucho más complejas, dependiendo del tamaño de los clústeres de palabras clave. En el siguiente ejemplo, las palabras clave relacionadas con el grado de tema, se han reorganizado manualmente en varios subclases, cada uno vinculado a una nueva página dedicada.


Visualización de subgrupos de palabras clave degree y sus respectivas conexiones a páginas web.

Despliegue de contenido

Por último, la visualización de estructuras web que mezclan páginas (existentes o nuevas) y palabras clave (que conducen tráfico o aún no) a menudo resulta en una cartografía compleja.

Pero más allá de su complejidad aparente, tal visualización puede ofrecer una hoja de ruta consistente para la creación y el despliegue de contenido con el fin de ganar más visitantes: cada página existente debe ser editada para dirigir su campo semántico correctamente; Cada nuevo campo semántico puede ser abordado a través de la creación de un contenido específico. Y todos deben estar unidos entre sí dentro de una organización significativa.


Representación de grafos de una estructura de sitio web y las conexiones entre palabras clave, tráfico y páginas web.

PDs: muchas gracias a Olivier Tassel por inspirar esta visualización ya Dimitri Tacita por hacerla posible.

lunes, 3 de octubre de 2016

Redes de agrupamiento de palabras claves con Gephi

La agrupación de palabras clave: un ejemplo con Gephi
 semántica
Blog de SEO / Semantic


El concepto de agregación se discutió de nuevo en el blog, pero desde otro ángulo. De hecho, decidí explorar la funcionalidad de Gephi para generar la cartografía de un universo semántico. El objetivo es visualizar tanto el valor de una palabra clave (volumen de búsqueda) y cómo está conectado a otras palabras clave (similitud semántica)

En el post anterior he presentado un método basado en el algoritmo K-means para particionar un corpus de palabras clave. Aunque es muy fácil acceso, este método tiene la desventaja de tener que saber de antemano el número de grupos que desea crear. Sin superior.

Así que continué mi investigación: La primera vez que compré el libro Massih-Reza Amini y Eric Gaussuier, Búsqueda de Información - Aplicaciones, modelos y algoritmos. minería de datos, y la toma de datos grande, que dedica un capítulo muy interesante a la partición de datos, y en paralelo, yo estaba interesado en Gephi más cerca. Saqué una metodología concreta para la visualización de un conjunto de palabras clave, con base en el coeficiente de Dice y en Gephi y algoritmos de agrupamiento embebidos.

Paso 1: recuperar palabras clave y su volumen de búsquedas

El primer paso será, por supuesto, para recuperar el máximo de palabras clave en el tema que desea estudiar. Por esto, no voy a entrar en detalles, uso Palabras clave Planner, SEMrush o cualquier otra herramienta que le puede dar una coincidencia entre una palabra clave y un volumen de búsquedas mensuales.

Formatear el archivo de la siguiente manera: una primera columna titulada "Id", una segunda columna "Etiqueta" y una columna pasada "Peso". En la primera columna se incluyen las palabras clave en la segunda columna, las palabras clave de nuevo (copia simple / pegar) y en la tercera columna de los volúmenes de búsqueda. Guarde el archivo CSV con el nombre nodes.csv. El archivo de "nodos" está listo para ser importado en Gephi. Vamos a volver ahora.

Paso 2: Se calcula la similitud entre cada palabra clave
Normalizar palabra clave
Antes de pasar al cálculo de la similitud, vamos a proceder en primer lugar a un conjunto de pre-tratamiento, Ruby, que nos permitirá consolidar mejor nuestras palabras clave. Utilizando los mismos conjunto de datos como en el artículo anterior, vamos a almacenar en una matriz.

keywords = ["consultant seo","référencement naturel","expert seo","referencement naturel","consultant referencement","consultant référencement","agence de référencement","agence seo","consultant en référencement","expert referencement","agence référencement","consultant référencement naturel","agence referencement","consultant en referencement","agence de referencement","référencement seo","experts referencement","référenceur freelance","consultant référencement internet","expert référencement","consultant referencement naturel","consultant en référencement naturel","conseil seo","referenceur freelance","spécialiste référencement naturel","search engine optimization for dummies","seo referencement","consultant en referencement naturel","devis referencement","top seo company","expert référencement naturel"]
El primer paso es transformar cada frase de palabras clave en fichas. Esta es la manera de proceder: corté cada cuerda tan pronto como encuentre un espacio.


def get_tokens_from(string)
  tokens = string.split(' ')
  tokens
end
Una vez que la tokenización se ha hecho, voy a conseguir en una base de datos lema (ver mi artículo sobre el análisis semántico), la correspondencia entre cada símbolo y lema. También utilizo el marco Tratar de determinar la categoría morfosintáctica de cada palabra y de este modo eliminar la ambigüedad cuando son posibles varios lemas para una sola ficha.

El siguiente método se encuentra en la base de datos por cada ficha, el lema asociado con él, entonces todas las tiendas en una tabla y elimina los acentos y palabras vacías (dos funciones simples se utilizan para estas operaciones, y remove_accents_from delete_stop_words_from, no voy a detallar aquí).
.
def get_lemmatised_words_from(tokens)
  keywords = Array.new(0)
  tokens.each do |w|
    begin
      word_str = $client.escape(w)
      rows     = $client.query("SELECT lemma,word,category
                                FROM lemmas
                                WHERE word   = '#{word_str}' COLLATE utf8_bin
                                AND category = '#{w.category}'
                                LIMIT 1")
      if rows.size > 0
        keywords << remove_accents_from(rows.map{ |row| row["lemma"] }.first)
      else
        keywords << remove_accents_from(word_str)
      end
    rescue => e
      puts "#{w} => #{e}"
      next
    end
  end
  delete_stop_words_from(keywords)
end

Calcular el coeficiente de Dice

Ahora podemos pasar a la primera etapa de la partición. Como se explica en el libro Massih-Reza Amini y Eric Gaussuier, cuando se trabaja de partición, el primer paso es elegir "una medida de similitud" entre los documentos. Varias medidas de similitud se presentan en este libro, incluyendo el coeficiente de dados, que utilicé para mi análisis. Es lo suficientemente cerca del índice de Jaccard y se calcula dividiendo el doble de la intersección de dos conjuntos, la unión de estos dos conjuntos.

El método a continuación examina cada palabra clave, calcula su similitud uno por uno a través del coeficiente de Dice y almacena los resultados en una tabla.
.
def get_results_from(data)
  results = Array.new(0)
  data.each do |k, v|
    data.dup.each do |kb, vb|
      dice = 2 * (v & vb).count.to_f / (v.count + vb.count)
      dice = dice.round(2)
      results << [k, kb, dice]
    end
  end
  results
end 

Ya sólo queda crear el archivo edges.csv, que indican el grado en Gephi "atracción" entre cada nodo.

def make_edges_csv_file_from(array)
  CSV.open("./edges.csv", "wb", {:col_sep => ";"}) do |csv|
    csv << ["source", "target", "weight"]
    array.each do |row|
      csv << [row[0], row[1], row[2]]
    end
  end
end
Y aquí, ahora tenemos todos los datos necesarios, van a la utilización de Gephi! Para los interesados, el código completo aquí: https://gist.github.com/ABrisset/661a87fb11a16807cf4ae984e7df8c13.

Paso 3: Ver datos en Gephi

Importación de datos

Abra Gephi, haga clic en "Archivo> Nuevo proyecto" y luego ir a "Laboratorio de datos" y haga clic en "Importar hoja de cálculo".

Ir a buscar a su archivo edges.csv. Es él quien le dirá Gephi qué grado de atracción entre cada par de palabras. Seleccione "Como una mesa de enlace", seleccionar el separador de la derecha, y luego haga clic en Siguiente. En la siguiente ventana, seleccione "Crear nodos que falta" y haga clic en "Finalizar".


Bordes - Gephi

A continuación, repita la misma operación, pero esta vez para los nodos. Debe seleccionar "A medida que los nodos de la tabla", a continuación, a la siguiente ventana, llenar "Entero" como el tipo de datos para el campo "Peso" y asegúrese de desactivar "Forzar a los nodos importados para ser nuevos nodos" .

Gracias a la columna "ID" de los nodos de archivos, Gephi es capaz de identificar qué nodos de la conexión "Fuente" y "destino".




Jugar con los parámetros de Gephi

El último paso es personalizar los nodos y enlaces de acuerdo con nuestro objetivo de la agrupación. Vaya a "Información general".

En primer lugar, ejecute el algoritmo de "modularidad" a través del panel de la derecha. Esto ayuda a identificar las comunidades en una estructura gráfica. Más información aquí. A continuación, en el panel izquierdo, haga clic en "partición" y "nudos" y seleccione "La modularidad de clase". Se encontraron tres grupos diferentes: los nodos son de color de acuerdo a su "comunidad" de unión.


Cambiar a la pestaña "Orden", seleccione "nudos" y "Altura / Peso", seleccione "Peso": los nodos son ahora el tamaño proporcional del volumen de búsquedas. Puede hacer lo mismo para el tamaño de las etiquetas.


Sólo queda por añadir un poco de espacio. Para ello, utilice la fuerza Atlas 2, con los siguientes parámetros.



Exportación de la visualización 

Deje Atlas Force girar unos momentos. Ahora pestaña Dirección "Vista". Debe obtener la visualización más adelante, con 3 grupos:

  • palabras clave de todo de referencia + todo 
  • palabras clave de todo "SEO"
  • palabras clave de todo "SEO" + "agencia" + "natural", etc.

Consejo: abra la imagen en una nueva pestaña y descargar la extensión de Chrome SVG Navegador para hacer un zoom;)



¿Qué opinas de este punto de vista? En lo personal, creo que es una buena manera de un lado temática e identificar rápidamente los sitios prioritarios de SEO, es decir, los territorios semánticos en los que centrar sus esfuerzos.

Creo, sin embargo, que podríamos obtener una mejor granularidad comparación de n-gramas ellos, no sólo palabras. A seguir ;)