MACM 316 - Asignación de Informática


MACM 316 - Informática Asignación 6
Fecha de vencimiento: viernes 20 marzo a las 11:00 pm.
Instrucciones de presentación: Debe cargar un archivo .pdf en Crowdmark que consta de dos páginas:
la página 1 es el informe que debe caber todas las discusiones, datos y cifras en una sola página; y la página 2 es una
lista de su código. La fecha límite es a las 11:00 pm en la fecha de vencimiento. El debido tiempo real se ajusta a 23:05
y si Crowdmark indica que se ha presentado con retraso, se le asignará una calificación de 0 en esta tarea.
Su ayudante técnico le ha enviado por correo electrónico un enlace Crowdmark que debe guardar, ya que le permitirá cargar sus
tareas completadas.
❼ Por favor revise las Directrices para las asignaciones de cuidado.
❼ Reconocer cualquier colaboración o asistencia de colegas / TA / instructor.
❼ Si usted tiene alguna pregunta sobre Matlab o aspectos de esta asignación, a continuación, se recomienda encarecidamente
a los tutoriales de asistir y drop-in talleres.
Antecedentes sobre el PageRank de Google (que se resumen de las conferencias)
Cuando se hace una búsqueda en Google, las páginas web resultantes se enumeran en un orden jerárquico de importancia o
significado. El método utilizado para calcular esta clasificación se llama el algoritmo de PageRank, y es la
base para el éxito financiero de Google. En su esencia, este algoritmo toma el n × n conectividad matriz G para
todas las páginas web en Internet (actualmente numerados en n> 60 mil millones de páginas) y calcula un vector propio
X que contiene las filas de cada página. En el cálculo de la asignación de esta semana, explorará el proceso
de calcular el vector PageRank durante unos gráficos simples de la tela.
Clasificación Web páginas
en las clases que viste una descripción breve de cómo se calcula el PageRank, que se repite aquí. Imagínese
代写MACM 316作业,代做Matlab实验作业
surf la web de una página a otra seleccionando al azar un enlace de salida de la página actual para pasar
a la siguiente. De vez en cuando puede quedarse atascado en un callejón sin salida (sin enlaces salientes) o dentro de un ciclo de
páginas conectadas. En estos casos es posible que simplemente “rescatar” al decantarse por alguna otra página al azar, y
luego continuar a partir de ahí. A grandes rasgos, una página se considera que tiene un alto rango si otras páginas con alto rango
enlazar con él. Vamos a ampliar en lo que entendemos por rango.
El × n matriz de conectividad en banda N G tiene entradas definidas como
Gij = (1, si hay un enlace a la página i de la página j0, de lo contrario
G es enorme pero extremadamente escasa. Supongamos que los puntos de página j a un total de cj otras páginas, entonces es
claro que cj = Pn
i = 1 gij (el número de outlinks) es sólo el j
ésimo suma columna de G. del mismo modo, la fila suma
ri = Pn
j = 1 gij da el número de enlaces entrantes a la página i. Una pequeña ejemplo, con n = 6 páginas se muestra a continuación.
a continuación, definir el rango de una página j ser xj y proponer un sistema de clasificación en el que la página j contribuye
una parte igual de su rango, xj
cj, a cada una de las páginas que apunta a . denotamos por cualquier página i el conjunto de páginas
que enlazan con ella por Bi. Entonces el rango de esta página es sólo
xi = Xj∈Bixjcj
que puede escribirse en forma matricial como x = GDx donde D es el n × n matriz diagonal con entradas
djj = 1cj. La matriz A = GD con entradas aij =
gij
cj
se muestra para el ejemplo de pequeña web anteriormente. La
ecuación x = Ax tiene una forma familiar, en el que nuestro PageRank vector x es un vector propio de A correspondiente
al valor propio 1!
Esto sólo es la situación más simple, y todavía tenemos que explicar cómo hacer frente a los dos problemas
de los casos mencionados anteriormente:
los nodos sin salida: En el ejemplo de la derecha, no hay ninguna página de escape 3,
que corresponde a una columna de cero ( no outlinks, c3 = 0). Un razonable
solución es simplemente saltar a una página al azar, lo que significa reemplazar todas las
entradas en la columna por 1
n. A continuación, la matriz A se convierte en
aij = (gijcj, si cj 6 = 01N, si cj = 0
trayectorias cíclicas: Para el ejemplo de la derecha, uno pueden quedar atrapados en el ciclo
2 → 3 → 4 → 5 → 2 →... . para permitir el escape, dirigimos nuestra sistemática
de recorrido de web en un recorrido aleatorio en el que de vez en cuando saltamos la habitual
selección de páginas y en vez de saltar a alguna página arbitraria en la web. para
ser más precisos, seguimos enlaces como de costumbre con cierta probabilidad P ( decir
p = 0,85), pero luego con probabilidad 1 - p de saltar a otro al azar
página seleccionada (p veces se llama una “probabilidad de teletransporte”) esto conduce.
a una fórmula modificada para a:
En resumen, encontrar el vector PageRank x se reduce a resolver el problema vector propio x = Ax, donde
A se puede escribir de forma compacta en forma de matriz como
y e = (1, 1,..., 1) siendo t el n-vector que contiene todos los .
Cálculo de la PageRank Vector con Matlab
enfoque simple A para la solución de problemas de valores propios se denomina el método de alimentación y toma la forma de
un punto fijo iteración x
(k) = Ax (k-1) para k = 1, 2,. . . , Dado alguna conjetura inicial x
(0). Sin previo
conocimiento acerca de las filas, elegimos x
(0) = 1ne que asume que todas las páginas son la misma clasificación. Y
eso es todo 1 El algoritmo descrito anteriormente es bastante fácil de implementar en Matlab, utilizando el código de abajo!
(Publicado en la lona como mypagerank.m):
% Estimado de la PageRank para una conectividad web pequeña
matriz% utilizando el método de la potencia.
p = 0,85; % "Teletransporte" probabilidad
% Configure la matriz de conectividad utilizando el índice
% vectores que definen el de-> a las conexiones
% entre los números de las páginas 1 a n.
n = 6; % Número de páginas
= II [2 4 3 6 1 4 6 2 5 2 6 3]; % "A" índice
jj = [1 1 2 2 3 3 3 4 4 5 5 6]; % "De" índice
G = escasa (ii, jj, 1, n, n);
c = completo (suma (G)); % Sumas de columnas
e = los (n, 1);
k = encontrar (c ~ = 0); % Índices de cero columnas
D = escasa (k, k, 1./c(k), n, n);
z = ((1-p) * (c ~ = 0) + (c == 0)) / n;
A = p * G * D + e * z; % PageRank matriz
x = e / n; % Conjetura inicial
xOld = ceros (n, 1);
niter = 0;
mientras norma (x-xOld)> 0,0001,
niter = niter + 1;
xOld = x;
x = A * x;
final
x, niter
bar (x), SHG
Este código devuelve el vector PageRank x = (0,1038, 0,1693, 0,2781 ✿✿✿✿✿✿
, 0,1479, 0,0879, 0,2131) T
, de la que
es fácil ver que la página 3 recibe rango más alto.
1 Esta es una versión simplificada del método de la potencia que se aplica al caso muy especial en el que A tiene entradas positivas,
kAk1 = 1, kx
(0) k1 = 1 y el valor propio es 1. En estas condiciones, la garantía de tener una real positivo única
solución x, y converge método de la potencia a esta solución, aunque a veces lentamente. Por problemas de valores propios más generales,
el método de la potencia requiere requiere algunas modificaciones adicionales.
Su asignación Informática - Exploración de PageRank
1. Ejecute el código mypagerank en el ejemplo 6-página determinada para varios valores del parámetro de teletransporte
p comprendido entre 0 y 1. ¿Cómo hacer cambios en la pág impacto de la página web mejor clasificado, y la velocidad de
convergencia de las iteraciones del método de alimentación? ¿Qué ocurre con la clasificación como p → 0, y que puede
explicar por qué esto podría ser así?
2. Modificar el código para el conjunto más grande de n = 18 páginas web y enlaces se muestra a continuación:
(a) Calcular el PageRank para cada una de las 18 páginas que usan p = 0,85, e informar de los resultados de
la clasificación como un diagrama de barras (que puede encontrar una especie de comando de Matlab útil para escoger la
página mejor clasificado).
(b) Repetir con p = 0,5. ¿Qué página filas aumento y disminución, que?
(c) Repita con p = 0.98, y el aviso de que varias páginas tienen un rango que es cercano a cero. ¿Hay
algo acerca de la estructura de enlaces de este gráfico web que podría explicar por qué sucede esto? Si
usted fuera capaz de añadir un solo enlace entre dos páginas web que más aumentar la
reputación de las páginas de clasificación más baja, que sería? Explica tu elección.

Si es necesario, añada QQ: 99515681 o por correo electrónico: [email protected] carta micro: codehelp

Supongo que te gusta

Origin www.cnblogs.com/aaabb/p/12533369.html
Recomendado
Clasificación