martes, 27 de febrero de 2018

Visualización de redes de fotos de Facebook con Gephi y R

Recopilación de datos de Facebook y visualización de la red de fotos con Gephi y R

Katya Ognyanova



Visualizaciones en Gephi igraph qgraph

Recopilación y visualización de redes de Facebook utilizando las fotos de perfil de las personas como imágenes de nodo (de tres formas: con Gephi, igraph o qgraph): Obtenga aquí el script completo de R.


Gephi es una de mis herramientas de visualización de red favoritas: ofrece una amplia variedad de diseños personalizables, permite retoques sofisticados, hace que los gráficos grandes estén bien, trata con datos dinámicos y generalmente le permite producir resultados de aspecto elegante con un mínimo esfuerzo. Dicho esto, hay algunas cosas básicas (que casi cualquier otra herramienta de red puede hacer) que me he perdido en Gephi: como la capacidad de combinar diferentes formas de nodo y la opción de usar imágenes como nodos. La semana pasada, sin embargo, la buena gente de Yale Computer Graphics Group lanzó un plugin de Gephi que puede hacer exactamente eso. Se llama Vista previa de la imagen y le permitirá usar imágenes en su visita a la red Gephi.

Jugué un rato con el complemento para descubrir cómo funciona, y luego cambié a R para replicar los resultados que obtuve allí. Utilicé mi propia red de Facebook para este ejercicio, que facilitó la obtención de imágenes para cada nodo. Twitter habría funcionado igual de bien, pero también quería ver la nueva versión del paquete RFacebook. Pensé que compartiría los pasos para obtener los datos y visualizarlos (en Gephi, igraph o qgraph); resultó ser bastante sencillo con solo un par de fallas en el camino.

También debo señalar que se puede lograr el mismo efecto incluso más rápido usando cualquiera de las muchas aplicaciones de Facebook disponibles (por ejemplo, Bernie Hogan's NameGenWeb), o con el complemento de red NodeXL de Mark Smith para Excel.

Recopilando datos de Facebook



1 Registro. Lo primero que debe hacer es obtener los datos de Facebook. Antes de que se le permita sacarlo de R, tendrá que hacer un desvío rápido a developers.facebook.com/apps, registrarse como desarrollador y crear una nueva aplicación. El nombre y la descripción son irrelevantes, lo único que tienes que hacer es ir a Settings → Website → Site URL y completar http: // localhost: 1410 / (ese es el puerto que vamos a usar). Todo el proceso lleva ~ 5 min. Y es bastante sencillo. Si necesitas un tutorial más detallado, echa un vistazo a esta publicación de blog de Julian Hillebrand.


2 Autenticación. Ahora puedes ir a R, instalar el paquete de RFacebook y autenticarte con el ID y el secreto que se muestran en la pestaña Configuración de tu aplicación de Facebook.
Facebook authentication
01
02
03
04
05
06
07
08
install.packages("Rfacebook")
library(Rfacebook)
oauth <- fbOAuth(app_id = "your_app_id_here",
                 app_secret = "your_app_secret_here",
                 extended_permissions = T)
save(oauth, file="fb_oauth")
# load(file="fb_oauth")

3 Descarga de datos. En este punto, ya puede obtener información de Facebook. El uso de getFriends le dará un marco de datos que contiene (entre otras cosas) el nombre, nombre de usuario, género, ubicación, ciudad natal y URL de imagen de todos los contactos de Facebook que han proporcionado esa información. Puede usar getNetwork para recopilar los vínculos entre las personas en su lista de amigos, ya sea como una lista de bordes o como una matriz de adyacencia. Solo por el gusto de hacerlo (y porque no lleva mucho tiempo), conseguiremos los dos.
Collect friend info & network data from Facebook
09
10
11
12
13
14
# Get friend info:
my.friends <- getFriends(oauth, simplify=F)
# Get friend network in two formats, matrix and edge list:
fb.net.mat <- getNetwork(oauth, format="adj.matrix")+0 # bool,+0 to get numeric
fb.net.el  <- as.data.frame(getNetwork(oauth, format = "edgelist"))

4 Descarga de imagen. Usando las URL del marco de datos de amigos de Facebook, podemos descargar las fotos de perfil de las personas y almacenarlas en una carpeta local (aquí FBImages). La descarga en sí misma es simple con download.file: la mayoría de las líneas de scripts a continuación se ocupan de nombrar correctamente los archivos de imagen.
Download images from Facebook
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
setwd("C:/Research/R")
dir.create("FbImages")
# Image file name and local path stored here:
my.friends$picture.dld <- NA
# Download the images:
for (i in 1:dim(my.friends)[1]) {
  # Fb images appear to be mostly JPEGs, except for people
  # with no profile pics - for those we seem to get a default GIF
  pic.ext <- ".jpg"
  if(grepl(".gif$", my.friends$picture[i])) pic.ext <- ".gif"
  # We'll name files using people's full names plus file extension.
  my.friends$picture.dld[i] <-
                 paste0("FBImages/", sub(" ", "_", my.friends$name[i]), pic.ext)
  # Some users have UTF-8 encoded names that don't work well as file names:
  if (Encoding(my.friends$name[i])=="UTF-8") {
       my.friends$picture.dld[i] <-
                  paste0("FBImages/", "FbID_", my.friends$id[i], pic.ext) }
 download.file(my.friends$picture[i],  my.friends$picture.dld[i],  mode = 'wb')
}

Visualizando la red con Gephi

Hay varias maneras de mover datos de red de R a Gephi (ambos admiten varios formatos como gexf). Sin embargo, para redes simples / pequeñas, la forma más directa de exportar desde R es probablemente como CSV. Gephi necesita dos archivos CSV: uno que contenga una lista de bordes que describa cada enlace (las columnas que contienen el nodo de inicio y el nodo final para cada enlace deben llamarse Origen y Destino). El segundo archivo es una tabla de atributos de nodo: debe contener una columna llamada ID con identificadores de nodo correspondientes a los utilizados en Origen y Destino. Cualquier otro atributo generalmente es opcional, pero aquí debe tener una imagen llamada, que contenga los nombres de los archivos de fotos para que funcione el complemento de Vista previa de la imagen.
Export the network data for Gephi
39
40
41
42
43
44
colnames(fb.net.el) <- c("Source", "Target")
my.friends$ID <- my.friends$name
my.friends$image <- gsub("FBImages/(*.)", "\\1", my.friends$picture.dld)
  
write.csv(fb.net.el, file="Facebook-friend-EDGES.csv", row.names=F)
write.csv(my.friends, file="Facebook-friend-NODES.csv" row.names=F)

Después de importar los archivos (del Data Laboratory → Import Spreadsheet), puede retocar el diseño del gráfico en la pestaña Información general hasta que esté satisfecho con él, luego cambie a la pestaña Vista previa.

Si tiene instalado el complemento de Vista previa de imagen, debería ver una sección de Imágenes de nodo en la parte inferior de la barra de Configuración de vista previa del lado derecho. Marque Renderizar nodos como imágenes y especifique la carpeta donde se encuentran las fotos en el campo a continuación.



Gephi tomará los nombres de archivo almacenados en el atributo de nodo de imagen y los buscará en la ruta de la imagen que haya establecido. Una falla que encontré (que el creador del plugin Chris Xue amablemente ayudó) era que el complemento tenía problemas de compatibilidad con Java 7. Tuve que instalar Java 6 (descargar aquí) y cambiar la configuración de inicio de Gephi (en Gephi-0.8.2 \ etc \ gephi.conf cambiando el parámetro jdkhome) antes de que el complemento funcione.


Red de Facebook: Gephi


Red de imágenes de Facebook: Gephi

Visualizando la red con igraph

R siempre ha sido capaz de manejar la adición de imágenes a gráficos de red (y gráficos en general). Intenté un par de paquetes diferentes para hacer esto; ambos funcionan bien. Estoy más familiarizado con el igraph, lo que hace que sea más fácil modificarlo, pero qgraph tiene incorporada la opción de imágenes de nodo, por lo que es muy fácil obtener un mapa de red con fotos de nodos (ver la siguiente sección, solo se necesitan unas pocas líneas). de código).

Antes de hacer una visualización de igraph usando imágenes de nodo, podemos trazar el gráfico a la antigua usanza y ajustar el diseño hasta que se vea bien.
Plot the network with igraph (no images yet)
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
require("png")
require("jpeg")
require("igraph")
fb.net <- graph.adjacency(fb.net.mat)
# Add node degree, node colors based on gender, and
# edge colors based on the color of the source node.
my.friends$degree <- degree(fb.net)
my.friends$color <- "gray45"
my.friends$color[my.friends$gender=="female"] <- "lightpink3"
my.friends$color[my.friends$gender=="male"]   <- "lightblue"
fb.net.el$color <- my.friends$color[match(fb.net.el$Source, my.friends$name)]
l <- layout.fruchterman.reingold(fb.net, niter=10000,area=vcount(fb.net)^2.3,
                                  repulserad=vcount(fb.net)^2.2)
png("Facebook-friends-net-IGRAPH.png", width = 2500, height = 2000)
plot(fb.net, vertex.size=my.friends$degree/20, vertex.label=NA,
     vertex.color=my.friends$color, edge.color=fb.net.el$color,
     edge.width=1, edge.arrow.size=0, edge.curved=0.3,  layout=l)
dev.off()

Para trazar con imágenes, aplicaremos el diseño que creamos anteriormente y trazaremos el grafo, pero esta vez con cuadrados blancos para los nodos. Luego usaremos las coordenadas devueltas desde la función de diseño para superponer las fotos sobre esos cuadros blancos. Una cosa que tardó un poco en descubrirse (la obtuve gracias a un comentario dejado en algún lugar en las interwebs por el autor de qgraph Sacha Epskamp) es que el diseño debe ser re-escalado a [-1,1] primero.

Plot the image network with igraph
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# Rescale the layout so it goes from -1 to 1
l <- layout.norm(l, -1, 1, -1, 1)
  
png("Facebook-friends-net-IGRAPH.png", width = 2500, height = 2000)
plot(fb.net, vertex.size=4, vertex.label=NA, edge.color=fb.net.el$color,
     vertex.shape="square",vertex.color="white", vertex.frame.color="white",
     edge.width=1, edge.arrow.size=0, edge.curved=0.2,  layout=l)
img.sc <- 0.03 #Image scaling
for (i in 1:dim(l)[1]) {
  img <- my.friends$picture.dld[i]
  img <- if(grepl(".jpg", img)) readJPEG(img) else "gray20"
  rasterImage(img, l[i,1]-img.sc, l[i,2]-img.sc, l[i,1]+img.sc, l[i,2]+img.sc)
}
dev.off()
detach(package:igraph)

Y así es como se ven los archivos de imagen exportados:


Red de Facebook: igraph

Red de fotografías de Facebook: igraph


Visualizando la red con qgraph

Realmente no hay mucho que explicar aquí: las imágenes de nodo son una opción incorporada para qgraph. La función qgraph tomará una matriz y un vector de nombres de imágenes (con rutas), y producirá un gráfico con imágenes de nodo de inmediato sin ningún retoque adicional.
.
Plot the image network with qgraph
83
84
85
86
87
88
89
90
91
require("png")
require("qgraph")
png("Facebook-friends-net-2014-04-QGRAPH.png", width = 2500, height = 2000)
qgraph(fb.net.mat, images = my.friends$picture.dld, labels = F,
        borders = F, esize=0.1, curve=0.2, curveAll=T, edge.color="gray55")
dev.off()
detach(package:qgraph)



Red de Facebook: qgraph

[Actualización abril 26 2014] Esteban Moro me recordó que no hay necesidad de reescalar manualmente los diseños de igraph ahora - uno puede usar layout.norm () en su lugar (script actualizado en consecuencia).
Hugle en GitHub Gist señaló amablemente un par de errores tipográficos, que ahora están corregidos.

viernes, 23 de febrero de 2018

Usando métricas para detectar fraudes

Detección de fraude utilizando aprendizaje profundo (deep learning) en incrustaciones de grafos y métricas de topología

Graham Ganssle, Ph.D., P.G. || Expero

¿No estás usando grafos todavía? Si no, obviamente no has leído mis otras publicaciones en el blog. Ve a hacer eso, luego instala algo de bondad gráfica, luego regresa aquí. Te veo pronto.



De acuerdo, ahora que eres un experto en grafos, podemos continuar hablando sobre el título de este artículo. Como Andrew Ng señala en su conferencia sobre la aplicación de una función de pérdida de triplete, es común en la literatura de aprendizaje profundo que los títulos sean <dominio de interés> insertados en cualquiera de las secuencias "______ Net" o "Deep ______". En ese espíritu, iba a nombrar este papel Fraude neto o Fraude profundo, pero luego me di cuenta de que la publicación de una publicación de blog de la compañía sobre Fraude profundo probablemente no es la mejor comunicación.

Estoy divagando. Hablemos de detección de fraude.


Figura 1: Un grafo que incluye transacciones financieras corporativas regulares y transacciones financieras fraudulentas.

Lo que realmente queremos es predicción de fraude (y desde allí prevención de fraude), ¿verdad? Sí, pero eso está en una próxima publicación de blog. Hoy hablaremos de atribuir cierto comportamiento a priori a un objetivo de clase binaria, a saber, un objetivo de fraude / notfraud. Veremos dos formas de determinar si una determinada entidad ha realizado o no una actividad fraudulenta, primero utilizando incrustaciones de un grafo y, en segundo lugar, usando varias métricas de topología de un grafo.

Sé lo que estás pensando: si el fraude ya ha sido cometido, ¿a quién le importa? Según este artículo, a todos debería importarles. En 2015, afirma el autor, el costo del etiquetado de fraude falso positivo fue de 118 mil millones de dólares. Eso es mil millones. Con una "b". El costo de los casos reales de fraude fue de solo $ 9 mil millones. No me malinterpreten, nueve mil millones de smackeroos son bastantes, pero es solo el siete por ciento del total de dinero perdido. Etiquetar incorrectamente las transacciones como fraudulento vale tanto como construir una nueva estación espacial internacional. Todos los años. Entonces, sin más digresiones, permítanme mostrarles cómo ahorrar $ 118,000,000,000. (De nada)

Uso de incrustaciones de grafos: Fraude individual

Escenario número uno: desea aumentar la precisión de su herramienta de análisis de fraude de tarjetas de crédito. Primero organizaría sus datos en un grafo, creando instancias de nodos como clientes individuales y comerciantes con propiedades de nodo sobre sus historiales financieros. Construiría enlaces que representen transacciones financieras entre estas entidades con propiedades de nodo, como la marca de tiempo de la transacción y el importe pagado.

Ahora debe incrustar el grafo en un espacio dimensional inferior para que pueda usar un modelo simple para analizarlo. ¿Por qué no insertas directamente tu grafo en tu modelo? Porque las geometrías no son compatibles. Si te interesa la teoría de grafos o la geometría diferencial, léelo para comprender la última oración sobre geometrías. Para aquellos de nosotros que no están dentro de las teorías de graph thingys o different whosits, consideremos como un axioma que tenemos que insertar nuestro grafo.

Aquí hay un grafo con una seria necesidad de incrustación. Como se describió anteriormente, los nodos representan a las personas con tarjetas de crédito y a los comerciantes a quienes les cuelgan el plástico. Tenga en cuenta la compleja estructura tridimensional y la gran cantidad de enlaces, que representan las transacciones financieras.


Figura 2: un grafo antes de la incrustación. Los nodos son titulares de tarjetas de crédito y comerciantes. Los enlaces son transacciones financieras.

Las estrategias de inclusión abundan; algunos son más populares que otros por razones fuera del alcance de este artículo. Mostraré dos más comunes en la imagen siguiente, reducción de dimensionalidad por análisis de componente principal e incrustación espectral por descomposición de valores propios.


Figura 3: la incrustación bidimensional del grafo en la Figura 2. El algoritmo naranja fue PCA, el azul fue incrustación espectral.

Finalmente, estamos listos para construir un modelo. La codificación del grafo incrustado para modelar es tan simple como crear vectores de características a partir de los nodos ahora aplanados. Incluimos las propiedades de nodo (entidad) y enlace (transacción), pero también concatenamos la información de coordenadas incorporada de la imagen anterior. Luego construimos un vector objetivo (o matriz para un régimen objetivo de clase múltiple) de nuestras etiquetas conocidas, activamos nuestra GPU y lo vemos comer.


Uso de métricas de topología: fraude organizacional

Escenario número dos: desea descubrir las organizaciones de lavado de dinero de su base de datos de registros transaccionales. Este problema es un orden de magnitud más interesante que analizar registros transaccionales individuales; en lugar de buscar muestras discretas, estamos interesados ​​en analizar los anillos de interacción financiera. Este es el paradigma en el cual el grafo realmente brilla.

Echa un vistazo a la imagen a continuación. Es un conjunto de empresas que interactúan financieramente. Los colores son representativos de su "comunidad", determinada por un algoritmo de aprendizaje no supervisado. Esta discusión se está acercando peligrosamente al territorio de salsa secreta, así que lo dejo así. La pregunta es, ¿las empresas amarillas están haciendo negocios como de costumbre, o es esta comunidad amarilla realmente un anillo de lavado de dinero?


Figura 4: un grafo de empresas coloreadas por comunidad. ¿Las empresas amarillas en la parte inferior derecha son realmente frentes para un anillo de lavado de dinero?

Paso uno: Combine sus datos en la misma estructura de grafos definida en la sección anterior.

Paso dos: cree un algoritmo inteligente que extraiga subgrafos de interés (las comunidades de color en la imagen anterior) y calcule las métricas de topología para cada comunidad. "Métrica de topología" es un nombre elegante para las descripciones de la geometría del subgrafo en cuestión. Por ejemplo, una métrica de topología popular es number-of-edges; en el subgrafo amarillo tenemos 23 bordes. Existen muchas de estas métricas de topología, y calculamos varias docenas para cada subgrafo.

Paso tres: cree un vector de características de estas métricas de topología para cada subgrafo. Concatenar las propiedades del nodo en otro tipo de forma secreta. Una implementación de ejemplo de esto sería calcular las propiedades de nodo promedio de todos los nodos en el subgrafo.

Paso cuatro: construya un vector objetivo (o matriz para un régimen objetivo de clase múltiple) de nuestras etiquetas conocidas, active nuestra GPU y deje que se horneen.

Envuélvelo ya

Estas técnicas dependen en gran medida de qué tipos de datos están disponibles y la estructura de las entidades que describen estos datos. La implementación debe ser personalizada (o al menos apropiada para el pedido) para cada banco / agencia / investigador interesado en realizar este trabajo. Es probable que el uso de una solución estándar empeore el problema, pero cuando se diseñan e implementan correctamente, estas técnicas pueden ahorrar miles de millones de dólares por año.

PD Sintonícese la próxima semana para obtener una versión más sofisticada de este análisis utilizando una metodología kernelizado llamada Graph graph convolutional network.

P.P.S. La detección de fraude es un problema manejable sin grafo. ¿Desea encontrar estafadores sin volver a manipular su base de datos 100 PB en otro formato? No hay problema. Nosotros hacemos eso, también.

miércoles, 21 de febrero de 2018

Optimización de motores de búsquedas a través de redes de texto

Tutorial de SEO: visualización de palabras clave para la optimización del motor de búsqueda

Nodus Lab


La visualización de redes de texto de los resultados de búsqueda de Google puede ser muy útil para las comprobaciones de optimización de motores de búsqueda (SEO). Los fragmentos de texto que los motores de búsqueda muestran en sus resultados de búsqueda se consideran los más relevantes para la consulta de búsqueda. Por lo tanto, sería muy útil saber qué otras palabras contienen esos fragmentos, de modo que podamos crear contenido que sea más relevante tanto para Google como para la audiencia.

Demostraremos nuestro enfoque utilizando el ejemplo de este artículo sobre análisis de redes de texto y visualización de datos para la optimización de motores de búsqueda.

Paso 1: identificar las consultas de búsqueda relevantes: contexto de SEO

Queremos que este artículo sea leído por aquellos interesados ​​en SEO, análisis de redes de texto y visualización de datos. Entonces, el primer paso es comprender mejor lo que las personas realmente están buscando cuando buscan esos términos: el contexto. Una búsqueda rápida en la Herramienta de palabras clave de Google y la función de autosugestión de Google revela que las siguientes frases de búsqueda más destacadas se utilizan en este contexto:



en todos los casos, los usuarios están buscando
"Herramientas", "técnicas", "software" y "tutorial"

Por lo tanto, vemos que hay un gran interés para el software y los tutoriales relacionados con la optimización del motor de búsqueda, así como la visualización de datos.

Lo que significa que este artículo se escribirá específicamente para incluir esas palabras clave tanto en su título principal (etiquetas) como en todo el texto.


Paso 2: Análisis de red de texto de resultados de búsqueda de Google: visualización de datos de SEO

Ahora que sabemos lo que los usuarios realmente están buscando, necesitamos ver qué resultados de búsqueda ven realmente. Esto es importante por dos razones diferentes:

  1. Los fragmentos de resultados de búsqueda contienen el texto que los motores de búsqueda consideran relevante para la consulta de búsqueda. Por lo tanto, sabremos qué otras palabras clave debe incluir nuestro texto para aparecer en los resultados de búsqueda.
  2. Al utilizar la visualización de la red de texto, identificaremos las lagunas, o las áreas vacías entre los grupos de palabras clave que tienden a coincidir en los fragmentos de texto. Estas lagunas nos mostrarán lo que falta en los resultados de búsqueda, de modo que podamos incluir esas partes faltantes en nuestro texto y asegurarnos de que aparezca en la parte superior de los resultados de búsqueda de Google.

Usaremos la herramienta de visualización de red de texto InfraNodus para visualizar fragmentos de texto de diferentes resultados de búsqueda. Este instrumento nos mostrará un gráfico de las palabras que tienden a coincidir una al lado de la otra en los mismos fragmentos (de las primeras 5 páginas de resultados). También nos mostrará las palabras clave más relevantes que se utilizan con la consulta de búsqueda que estamos estudiando.

Usando la función "Importar" de InfraNodus creamos una visualización de red de texto de los siguientes términos de búsqueda:

"SEO de optimización de motores de búsqueda"



Los propios términos de búsqueda se excluyen del gráfico, por lo que podemos ver el contexto real en el que aparecen en los resultados de búsqueda.

Hay tres clústeres prominentes en este gráfico, lo que significa que esas palabras tienden a coincidir más a menudo juntas:

1. "mejorar", "visibilidad", "sitio web", "ranking"



2. "optimizar", "google", "rango"



3. "servicio", "marketing", "agencia"



Esto demuestra que los resultados de búsqueda de Google básicamente tienen 3 temas principales: mejorar la visibilidad de un sitio web, optimizar el rango del sitio web de Google y también propuestas de / para agencias de marketing.

Lo que significa que si queremos encajar bien en esa constelación con nuestro artículo, tenemos que hacer dos cosas.

Primero, debemos incluir todos esos términos en este artículo (especialmente en,, y otras etiquetas). Hicimos eso de manera automática porque hemos estado escribiendo sobre las palabras anteriores.

En segundo lugar, el gráfico muestra lo que los usuarios realmente encuentran. Necesitamos proponerles algo original, algo que aún no encuentran. Esto se puede hacer cerrando las brechas en el gráfico entre los clústeres de términos de búsqueda que identificamos.

Puede jugar con el gráfico usando la interfaz a continuación. Haga clic en el icono del gráfico de la esquina superior derecha para eliminar los fragmentos de texto, haga clic en los nodos del gráfico para ver en qué resultados de búsqueda aparecen y cómo se relacionan entre sí.

Paso 3: mejore la visibilidad y el ranking de Google de la página de su sitio web - escriba algo original

Es importante notar aquí que Google todavía tiene en cuenta cuántas páginas externas se vinculan a su página y esto afectará la clasificación. Sin embargo, las palabras clave, especialmente para los sitios web que ya tienen un alto rango, son muy importantes.

Ahora demostraremos cómo puede mejorar la visibilidad y clasificación de esta página

  1. cerrar las brechas entre los diferentes clústeres de palabras clave que aparecen en el grafo y también
  2. proponer algo nuevo (que nuestros competidores en los resultados de búsqueda no escriben).

El primer punto ya está algo completo porque este artículo contiene todos los posibles conglomerados de palabras (contextos) que ya aparecen en los resultados de búsqueda. No nos arriesgaremos a repetirlos una vez más para evitar penalizaciones por spam de Google.

En cambio, puede ser interesante mencionar algunas veces más algunos términos que los usuarios están buscando junto con "seo" y "optimización de motores de búsqueda", pero que realmente no aparecen en los resultados de búsqueda. Estos serán mencionados más adelante.

El segundo punto también se cumple por el hecho de que estamos escribiendo sobre un nuevo tema: la visualización de la red de texto de los resultados de búsqueda de Google, que no encontrará en ningún otro lado.

Es importante tener esto en cuenta cuando se crean textos optimizados para SEO: cerrar las brechas entre diferentes temas y agregar nuevos aumentará su clasificación en los motores de búsqueda.

Paso 4: InfraNodus como herramienta SEO - Software para visualización de red de texto

Hemos mostrado más arriba cómo la herramienta de visualización de red de texto InfraNodus se puede utilizar para los resultados de búsqueda de Google.

Cree una cuenta (obtenga un código de invitación de nosotros), haga clic en "Importar", elija "Búsqueda de Google", escriba su consulta de búsqueda, elija el nombre para el Contexto (la categoría / lista donde se guardan los resultados), elija el número de los fragmentos de resultados de búsqueda que desea ver en el gráfico (preferimos 50), haga clic en "Guardar" y visualice el gráfico.



También puede usar el análisis de red de texto para sus textos, para que pueda ver qué tan relevantes son para las consultas de búsqueda y los resultados de búsqueda en su tema. Para hacer eso, simplemente copie y pegue el texto en InfraNodus (o use la función de importación) y se visualizará como una red:



Si excluimos los términos como "búsqueda", "seo", "optimización" que deben figurar en este texto, vemos que las palabras clave como "resultado", "google" y "palabra clave" son las más destacadas. Tal vez los dos últimos están bien, pero el primero, "resultado", no fue prominente en las consultas de búsqueda y en la búsqueda ... err ... respuestas. Por lo tanto, tendría sentido revisar este artículo y eliminar esa palabra clave, por lo que no es tan prominente.

Paso 5: Salga de la burbuja del filtro: mejore el discurso en línea

Demostramos más arriba cómo se puede usar el análisis de red de texto para optimizar las páginas de sitios web para la búsqueda. El enfoque no es nuevo, sin embargo, esperamos que las herramientas y técnicas que proponemos sean útiles para cualquier persona interesada en SEO y visualización de datos.

Una cosa interesante de agregar es que la mayoría de las páginas en la web en realidad se crean con motores de búsqueda en mente, lo que significa que la mayoría de las veces vemos lo que esperamos encontrar. Por lo tanto, si le interesa darles a sus usuarios un poco de valor agregado y ayudarlos a salir de la burbuja de filtro de los motores de búsqueda, intente identificar los temas que serían novedosos para el discurso ya existente disponible en línea. Los gráficos de red de texto pueden ser muy útiles para eso y ofrecen una clara metáfora visual para la interacción digital.





PD
Después de dos días, este artículo ha estado en línea: