¿Qué sucede cuando las búsquedas de Google usan la palabra "vs"?

¿Alguna vez has tenido esto: busca algo en Google e ingresa "vs" después de la palabra de búsqueda, esperando que el motor de búsqueda te sugiera automáticamente algo que se parece un poco a lo que necesitas?





Ingresando "vs" después de la palabra de búsqueda



Esto me ha sucedido.



Al final resultó que, esto es un gran problema. Esta es una técnica que, al buscar alternativas a algo, puede ahorrar mucho tiempo.



Veo 3 razones por las que esta técnica se muestra perfectamente si se usa para buscar información sobre tecnologías, ciertos desarrollos y conceptos que quieren entender:



  1. La mejor manera de aprender algo nuevo es descubrir cómo es, nuevo, similar a lo que ya se sabe, o cómo lo nuevo difiere de lo conocido. Por ejemplo, en la lista de oraciones que aparece después de "vs", puede ver algo sobre lo que puede decir: "Y, entonces, resulta que lo que estoy buscando parece que ya me es familiar".
  2. — . , , .
  3. «vs» — , Google , - -. «or», - -. , «or», Google , - .




Al procesar una solicitud o solicitud, Google hace sugerencias sobre Sesame Street. Y la consulta "bert vs" da pistas sobre BERT de Google.



Me hizo pensar. Pero, ¿qué sucede si tomamos las palabras que Google sugirió después de ingresar "vs" y las buscamos, y también agregamos "vs" después de ellas? ¿Qué pasa si repites esto varias veces? Si es así, puede obtener un buen gráfico de red de consultas relacionadas.



Por ejemplo, podría verse así.





Un gráfico del ego para una consulta de bert con un radio de 25



Esta es una técnica muy útil para crear mapas mentales de tecnologías, diseños o ideas que reflejen la interconexión de tales entidades.



Te diré cómo construir tales gráficos.



Automatizar la recopilación de datos "vs" de Google



Aquí hay un enlace que puede usar para obtener sugerencias de autocompletado en XML de Google. Esta característica no se parece a una API diseñada para un uso generalizado, por lo que probablemente no debería apoyarse demasiado en este enlace.



http://suggestqueries.google.com/complete/search?&output=toolbar&gl=us&hl=en&q=<search_term>


El parámetro URL output=toolbarindica que estamos interesados ​​en los resultados en formato XML, gl=usestablece el código del país, le hl=enpermite especificar el idioma y el diseño q=<search_term>es justo lo que necesita para obtener los resultados de la finalización.



Para los parámetros gly hl, se utilizan identificadores estándar de dos letras de países e idiomas .



Experimentemos con todo esto comenzando una búsqueda con, por ejemplo, una consulta tensorflow.



El primer paso de la obra es para referirse a la especifica el URL, utilizando la siguiente estructura que describe la consulta: q=tensorflow%20vs%20. El enlace completo se verá así:



http://suggestqueries.google.com/complete/search?&output=toolbar&gl=us&hl=en&q=tensorflow%20vs%20


En respuesta, recibiremos datos XML.



¿Qué hacer con XML?



Ahora debe verificar los resultados de la finalización automática con un determinado conjunto de criterios. Con los que nos convengan, seguiremos trabajando.





Verificación de los resultados obtenidos



I, al verificar los resultados, utilicé los siguientes criterios:



  • La consulta de búsqueda recomendada no debe contener el texto de la consulta original (es decir, - tensorflow).
  • La recomendación no debe incluir solicitudes que previamente se consideraron adecuadas (por ejemplo, pytorch).
  • Una recomendación no debe incluir múltiples palabras "vs".
  • Después de haber encontrado 5 búsquedas coincidentes, el resto no se consideran.


Esta es solo una forma de "limpiar" la lista de sugerencias de búsqueda automática de Google. Además, a veces veo el beneficio de elegir de la lista solo recomendaciones que consisten únicamente en una palabra, pero el uso de esta técnica depende de cada situación específica.



Entonces, usando este conjunto de criterios, obtuvimos los siguientes 5 resultados, a cada uno de los cuales se le asigna un cierto peso.





5 resultados



Próxima iteración



Estas 5 recomendaciones encontradas se someten al mismo procesamiento que la consulta de búsqueda original. Se pasan a la API usando la palabra "vs" y nuevamente se seleccionan 5 resultados de autocompletado que cumplen con los criterios anteriores. Aquí está el resultado de dicho procesamiento de la lista anterior.





Búsqueda de resultados de autocompletar para palabras



que ya se han encontrado Puede continuar este proceso examinando las palabras en la columna que aún no se han examinadotarget.



Si realiza suficientes iteraciones de esta búsqueda de palabras, obtendrá una tabla bastante grande que contiene información sobre consultas y sobre pesos. Estos datos son adecuados para la visualización gráfica.



El ego cuenta



El gráfico de red que le mostré al principio del artículo es el llamado gráfico del ego, creado, en nuestro caso, para una consulta tensorflow. Un gráfico del ego es un gráfico, todos los nodos de los cuales están a cierta distancia del nodo tensorflow. Esta distancia no debe exceder la distancia especificada.



¿Cómo se determina la distancia entre nodos?



Primero veamos el gráfico terminado.





Gráfico de ego para consulta de flujo de tensor con radio 22 Ya conocemos el



peso del borde que conecta la consultaAyB. Este es el rango de la recomendación de la lista de autocompletar, que va de 1 a 5. Para hacer que el gráfico no se dirija, simplemente puede agregar los pesos de las conexiones entre vértices que van en dos direcciones (es decir, deAaBy, si existe tal conexión, deBaA) ... Esto nos dará pesos de borde que van de 1 a 10.



La longitud del borde (distancia), por lo tanto, se calculará utilizando la fórmula11 — ... Elegimos 11 aquí porque el peso máximo del borde es 10 (un borde tendrá ese peso si ambas recomendaciones aparecen en la parte superior de las listas de autocompletado del otro). Como resultado, la distancia mínima entre las solicitudes será 1. El



tamaño (tamaño) y el color (color) del vértice del gráfico está determinado por el número (recuento) de casos en los que la solicitud correspondiente aparece en la lista de recomendaciones. Como resultado, resulta que cuanto mayor es el pico, más importante es el concepto que representa.



El gráfico del ego considerado tiene un radio de 22. Esto significa que es posible llegar a cada solicitud, comenzando desde el vértice tensorflow, caminando una distancia que no exceda de 22. Echemos un vistazo a lo que sucede si el radio del gráfico se incrementa a 50.





Gráfico de ego para consulta de tensorflow con radio 50



¡Resultó interesante! Este gráfico contiene la mayoría de las tecnologías básicas que cualquier persona que trabaje en inteligencia artificial debe conocer. Además, los nombres de estas tecnologías están agrupados lógicamente.



Y todo esto se basa en una sola palabra clave.



¿Cómo dibujar gráficos similares?



Utilicé la herramienta en línea Flourish para dibujar ese gráfico .



Este servicio le permite construir gráficos de red y otros diagramas utilizando una interfaz simple. Creo que vale la pena mirarlo para aquellos que estén interesados ​​en construir gráficos de ego.



¿Cómo crear un gráfico de ego con un radio dado?



Puede usar el paquete Python para crear un gráfico de ego con un radio dado networkx. Tiene una característica muy conveniente ego_graph. El radio del gráfico se especifica cuando se llama a esta función.



import networkx as nx

#  
#nodes = [('tensorflow', {'count': 13}),
# ('pytorch', {'count': 6}),
# ('keras', {'count': 6}),
# ('scikit', {'count': 2}),
# ('opencv', {'count': 5}),
# ('spark', {'count': 13}), ...]

#edges = [('pytorch', 'tensorflow', {'weight': 10, 'distance': 1}),
# ('keras', 'tensorflow', {'weight': 9, 'distance': 2}),
# ('scikit', 'tensorflow', {'weight': 8, 'distance': 3}),
# ('opencv', 'tensorflow', {'weight': 7, 'distance': 4}),
# ('spark', 'tensorflow', {'weight': 1, 'distance': 10}), ...]

#   
G=nx.Graph()
G.add_nodes_from(nodes)
G.add_edges_from(edges)

# -  'tensorflow'
EG = nx.ego_graph(G, 'tensorflow', distance = 'distance', radius = 22)

#  
subgraphs = nx.algorithms.connectivity.edge_kcomponents.k_edge_subgraphs(EG, k = 3)

# ,  'tensorflow'
for s in subgraphs:
    if 'tensorflow' in s:
        break
pruned_EG = EG.subgraph(s)

ego_nodes = pruned_EG.nodes()
ego_edges = pruned_EG.edges()


Además, usé otra función aquí - k_edge_subgraphs. Se utiliza para eliminar algunos resultados que no satisfacen nuestras necesidades.



Por ejemplo, stormes un marco de código abierto para la computación distribuida en tiempo real. Pero este también es un personaje del universo Marvel. ¿Qué sugerencias de búsqueda crees que "ganarán" si escribes "storm vs" en Google?



La función k_edge_subgraphsencuentra grupos de vértices que no se pueden dividir realizando ko menos acciones. Al final resultó que, los valores de los parámetros k=2y se muestran bien aquí k=3. Al final, solo quedan esos subgrafos, a los que pertenecen tensorflow. Esto asegura que no nos alejemos demasiado de donde comenzamos nuestra búsqueda y no nos alejemos demasiado.



Usando gráficos de ego en la vida



Alejémonos del ejemplo c tensorflowy consideremos otro gráfico del ego. Esta vez, un gráfico dedicado a otra cosa que me interesa. Este es un debut de ajedrez llamado la Fiesta Española (apertura de ajedrez de Ruy López).



▍Investigación de aperturas de ajedrez





Estudio de la "Fiesta española" (Ruy López)



Nuestra metodología nos permitió descubrir rápidamente las ideas iniciales más comunes, que pueden ayudar a un investigador de ajedrez.



Ahora veamos otros ejemplos de uso de gráficos de ego.



▍Comida saludable



¡Repollo! ¡Sabroso!



Pero, ¿qué pasaría si quisieras reemplazar un repollo hermoso e incomparable con algo más? El gráfico del ego construido alrededor de la col ( kale) te ayudará con esto .





Gráfico de ego para consulta de col rizada con radio 25



▍Compramos un perro



Hay tantos perros y tan poco tiempo ... Necesito un perro. ¿Pero cual? Tal vez algo así como un caniche ( poodle)?





Gráfico de ego para consulta de caniche con radio 18



▍ Buscando amor



¿El perro y la col no cambian nada? ¿Necesitas encontrar tu alma gemela? Si es así, aquí hay un pequeño pero muy autosuficiente gráfico de ego que puede ayudar con esto.





Gráfico de ego para solicitar café con bagel con radio 18



▍ ¿Y si las aplicaciones de citas no ayudaran?



Si las aplicaciones de citas no son útiles, es posible que desee ver el programa en lugar de pasar el rato con un helado con sabor a repollo (o un helado con sabor a cohete recientemente descubierto). Si te gusta The Office (sin duda el que se filmó en el Reino Unido), también te pueden gustar algunos de los otros programas.





Gráfico de ego para la consulta de oficina con radio 25



Salir



Con esto concluye mi historia sobre el uso de la palabra "vs" en las búsquedas de Google y sobre los gráficos de ego. Espero que todo esto lo ayude al menos un poco en su búsqueda de amor, un buen perro y una comida saludable.



¿Está utilizando alguna técnica de búsqueda inusual en Internet?






All Articles