¿Como ordena los resultados de las búsquedas Google?
Tras obtener la lista de páginas que contienen las palabras buscadas (k), las ordena según el resultado de la función de ranking. El valor más alto se corresponde con la primera posición.
Su fórmula es:
R(A,k)=P1*C1(k,F1(A,k))*F1(A,k)+…+Pn*Cn(k,Fn(A,k))*Fn(A,k)
Donde
- R(A,K) es la función de ranking para la página A y las cadena de búsqueda (keyword) k.
- Pn es el Peso del Factor n
- Cn(k,Fn(A,k)) es el Corrector de Factor n para la cadena de keyword k y el valor del Factor para keyword en la página
- Fn(A,k) es el valor del Factor n para la página A y la keyword k
Factores
Llamamos factores a cada uno de los parametros medidos por el buscador:
- Densidad de la keyword en el cuerpo (body) de la página
- Densidad de la keyword en el título de la página
- Número de enlaces que apuntan a la página con la keyword en el texto del enlace
- PageRank de la página
- Antiguedad del dominio
- Peso de la Página
- Número de enlaces rotos de la página
- ….
Cada uno de los factores puede ser dependiente/independiente de la página (A) o/y de la keyword.
Peso de la página: dependiente de la página, independiente de la keyword
Frecuencia de busquedas de la keyword: independiente de página, dependiente de keyword
Fn(A,k) calcula el valor del factor n para la página, por ejemplo la densidad de página www.ejemplo.com/pag1.htm para la keyword trabajo es 0,023 (2,3%)
Correctores
Los correctores permiten adecuar los valores de los factores. Son funciones que matizan los valores de los factores dando mayor valor a ciertos rangos.
Cn(k,Fn(A,k)) calcula el corrector para el factor n y la keyword k, dependiendo del valor
Se ve claro con un ejemplo.
Supongamos que la densidad del 2,3% para la palabra “trabajo” google la considera óptima dando un valor de 1 a C_densidad(”trabajo” , 2.3%), el factor de C_densidad podría implementar la siguente tabla
x=densidad | C_densidad(”trabajo”,x) |
0 | 0 |
0-1% | 0.5 |
1%-2% | 0.75 |
2-3% | 1 |
3-4% | 0.6 |
4-5% | 0.2 |
5-8% | 0 |
9-15% | -0.5 |
16-100% | -1 |
Resaltamos los valores negativos, que en la practica suponen restar puntuación de la ranking para densidades superiores al 9% (antiSPAM). El valor del Corrector varía dependiendo de la keyword. De esta forma con k=”para” al ser una palabra común la densidad umbral para obtener valores negativos se aumenta (ej al 25%)
Peso
El peso permite establecer la importancia relativa de todos los factores. El peso de cada factor es un valor entre 0-1. La suma de todos los pesos es 1.
De esta forma es facil ajustar el ranking dando mayor o menor importancia a ciertos factores. Se estima que el peso del factor PageRank era alto en el pasado (ej 0.2) y se ha bajado en la actualidad (ej 0.05), dando más importancia relativa (aumentando el peso) de otros factores.
Efecto Sandbox
El efecto sandbox es el resultado de la valoración del factor “Antiguedad de Enlaces Entrantes”. Según el modelo propuesto
- El Peso es 0.2 (un 20% del total),
- El Corrector está entre 0 y 1
- La función que evalua el factor es el (sumatorio normalizado de los enlaces con el anchor k hacia nuestra página * antiguedad en dias del enlace) – la media para la cadena buscada, es decir el resultado puede ser negativo (enlaces recientes) o positivo (enlaces antiguos)
A más antiguedad y número de los enlaces con el anchor k, mas valor de la función.
El factor de corrección es una función que depende de la frecuencia de búsqueda del término k. De esta forma un término muy buscado da un valor alto (cercano a 1) y un termino poco buscado un valor bajo (cercano a 0)
C(k,Fn(A,k))=min(1 , 1.1^(X/100000)-1)
siendo x=número de busquedas del la cadena k en la ultima semana
Por ejemplo para la k=”ojos de cristal” con 493 busquedas, C=0.000469989597, es decir el efecto sandbox casi no existe.
Para “posicionamiento en buscadores” con 536234 busquedas, C=0.667099999, por existe un sandbox fuerte
Para “mp3″, con 9823430 busquedas, el C=1, por lo que el efecto sandbox es máximo.
De esta forma, una cadena muy buscada, tendrá más en cuenta el valor de la antiguedad de los enlaces, si estos es muy recientes el resultado es negativo bajando nuestro resultado global para la cadena k.
Las cadenas poco buscadas, al ser el Corrector cercano a 0, la antiguedad afecta poco.
¿Cual es el problema? Que el cálculo es muy costoso para calcularse en tiempo de búsqueda, por lo que se calcula cada 2 o 3 días.
Esto provoca que desde que creamos una página, hasta que se ve afectada por esta variable, pasa este tiempo, provocando resultados mejores durante los 2 o tres primeros dias (no esta calculada la variable para nuestra página, no hay resultados negativos) con lo que estará relacionado con el Efecto Bonus.
P.D. Nunca he sido bueno con esto de las Matemáticas.
El artículo es excelente. Los felicito. Creo que es la mejor aproximación del cálculo de ordenamiento de resultados que he visto. Sin embargo tuve que leerlo dos veces para entenderlo (a pesar de estar muy familiarizado con la notación matemática de las funciones). Da la impresión que es un artículo traducido (probablemente del inglés) y sería interesante explicarlo un poco mejor o citar la fuente original, para que sea más claro.
Felicidades por el artículo. Pero me ha quedado una duda, como sabes el número absoluto de búsquedas para determinada palabra clave? como sabes que ”ojos de cristal” tiene 493 búsquedas?
el primer link del post parece estar mal, no lleva a ninguna web… o eso me ocurre amí
Muy buena la explicación. Lástima que no dependa “tan solo” de eso. Yo creo que la fórmula se tendria que alargar bastante más. Esa formula se debe parecer bastante al algoritmo de 2001, pero la evolución del spam ha obligado a Google a sofisticar bastante más el algoritmo.