# PageRank and personalized PageRank algorithms

Source: Internet
Author: User

PageRank and personalized PageRank algorithms

PageRank is the first algorithm Google has proposed to measure the importance of Web pages.

Her ideas are based on links between pages as weighted votes. If page a points to B,

So the importance of page B is affected by page A, and the more important it is, the more important B is. If page C also points to B,

But C versus a, C points to the number of other pages (out of the degree) less, then C to B contribution to the degree greater than a to B.

Here is a formula for the importance of page I, where D is a probability that in (i) represents all pages that point to page I.

The idea of this formula is to simulate the behavior of a random surfer browsing the Web page, the left part of the formula indicates that the Surfer (1-d)/n is the probability of entering a URL from the browser to access the page I, the formula to the right part of the page from other points to page I to jump over. After multiple iterations, the importance values of all pages converge.

Expressed in the form of probability transfer, the formula is as follows

An example of the calculation of a single iteration is as follows:

where the probability transfer matrix M,

Each column represents the page J's out-of-line, and each column adds up to 1.

Each row represents the entry of page I.

Personalised PageRank

The goal of a personalized PageRank is to calculate the correlation of all nodes relative to the user U. Starting from the user U node, each node stops at the probability of 1-d and starts again from U, or continues with the probability of D, and randomly selects a node downstream from the node pointed to by the current node in accordance with the uniform distribution. So after a lot of rounds, each vertex is accessed to the probability of convergence tends to stabilize, this time we can use probability to rank.

As can be seen from the formula, the personalized PageRank is different from the traditional PageRank, and every time we re-walk, we always start with the user U node. In addition, each node weight initialization, personalized PageRank is such, if the user U recommended, the user U node is initialized to 1, the other nodes are initialized to 0.

Here is the source code of the personalized PageRank algorithm that I implemented separately in C + + and Java

Https://github.com/linger2012/personal-rank-implemented-by-CPP

Https://github.com/linger2012/recommendation-algorithm-implemented-by-java/tree/master/src/personalrank

On how to accelerate the personalized PageRank, Xiangliang "recommended system Combat" has been mentioned, using matrix operations to do.

I am still learning the research stage, welcome to explore.

Resources:

http://blog.csdn.net/harryhuang1990/article/details/10048383

Http://www.cnblogs.com/fengfenggirl/p/pagerank-introduction.html

"Topic-sensitive PageRank"

PageRank and personalized PageRank algorithms

Related Keywords:

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

## A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

• #### Sales Support

1 on 1 presale consultation

• #### After-Sales Support

24/7 Technical Support 6 Free Tickets per Quarter Faster Response

• Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.