Page rank
   HOME

TheInfoList



OR:

PageRank (PR) is an
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
used by
Google Search Google Search (also known simply as Google) is a search engine provided by Google. Handling more than 3.5 billion searches per day, it has a 92% share of the global search engine market. It is also the most-visited website in the world. The ...
to rank web pages in their search engine results. It is named after both the term "web page" and co-founder
Larry Page Lawrence Edward Page (born March 26, 1973) is an American business magnate, computer scientist and internet entrepreneur. He is best known for co-founding Google with Sergey Brin. Page was the chief executive officer of Google from 1997 unti ...
. PageRank is a way of measuring the importance of website pages. According to Google: Currently, PageRank is not the only algorithm used by Google to order search results, but it is the first algorithm that was used by the company, and it is the best known. As of September 24, 2019, PageRank and all associated patents are expired.


Description

PageRank is a
link analysis In network theory, link analysis is a data-analysis technique used to evaluate relationships (connections) between nodes. Relationships may be identified among various types of nodes (objects), including organizations, people and transactions. Lin ...
algorithm and it assigns a numerical
weighting The process of weighting involves emphasizing the contribution of particular aspects of a phenomenon (or of a set of data) over others to an outcome or result; thereby highlighting those aspects in comparison to others in the analysis. That i ...
to each element of a hyperlinked
set Set, The Set, SET or SETS may refer to: Science, technology, and mathematics Mathematics *Set (mathematics), a collection of elements *Category of sets, the category whose objects and morphisms are sets and total functions, respectively Electro ...
of documents, such as the
World Wide Web The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet. Documents and downloadable media are made available to the network through web ...
, with the purpose of "measuring" its relative importance within the set. The
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
may be applied to any collection of entities with
reciprocal Reciprocal may refer to: In mathematics * Multiplicative inverse, in mathematics, the number 1/''x'', which multiplied by ''x'' gives the product 1, also known as a ''reciprocal'' * Reciprocal polynomial, a polynomial obtained from another pol ...
quotations and references. The numerical weight that it assigns to any given element ''E'' is referred to as the ''PageRank of E'' and denoted by PR(E). A PageRank results from a mathematical algorithm based on the
webgraph The webgraph describes the directed links between pages of the World Wide Web. A graph, in general, consists of several vertices, some pairs connected by edges. In a directed graph, edges are directed lines or arcs. The webgraph is a directed graph ...
, created by all World Wide Web pages as nodes and hyperlinks as edges, taking into consideration authority hubs such as
cnn.com CNN (Cable News Network) is a multinational cable news channel headquartered in Atlanta, Georgia, U.S. Founded in 1980 by American media proprietor Ted Turner and Reese Schonfeld as a 24-hour cable news channel, and presently owned by ...
or mayoclinic.org. The rank value indicates an importance of a particular page. A hyperlink to a page counts as a vote of support. The PageRank of a page is defined
recursively Recursion (adjective: ''recursive'') occurs when a thing is defined in terms of itself or of its type. Recursion is used in a variety of disciplines ranging from linguistics to logic. The most common application of recursion is in mathematics ...
and depends on the number and PageRank metric of all pages that link to it ("
incoming link A backlink is a link from some other website (the referrer) to that web resource (the referent). A ''web resource'' may be (for example) a website, web page, or web directory. A backlink is a reference comparable to a citation. The quantity, q ...
s"). A page that is linked to by many pages with high PageRank receives a high rank itself. Numerous academic papers concerning PageRank have been published since Page and Brin's original paper. In practice, the PageRank concept may be vulnerable to manipulation. Research has been conducted into identifying falsely influenced PageRank rankings. The goal is to find an effective means of ignoring links from documents with falsely influenced PageRank. Other link-based ranking algorithms for Web pages include the
HITS algorithm Hyperlink-Induced Topic Search (HITS; also known as hubs and authorities) is a link analysis algorithm that rates Web pages, developed by Jon Kleinberg. The idea behind Hubs and Authorities stemmed from a particular insight into the creation of we ...
invented by
Jon Kleinberg Jon Michael Kleinberg (born 1971) is an American computer scientist and the Tisch University Professor of Computer Science and Information Science at Cornell University known for his work in algorithms and networks. He is a recipient of the Nevanl ...
(used by
Teoma Teoma (from Scottish Gaelic ''teòma'' "expert") was an Internet search engine founded in April 2000 by Professor Apostolos Gerasoulis and his colleagues at Rutgers University in New Jersey. Professor Tao Yang from the University of California, ...
and now
Ask.com Ask.com (originally known as Ask Jeeves) is a question answering–focused e-business founded in 1996 by Garrett Gruener and David Warthen in Berkeley, California. The original software was implemented by Gary Chevsky, from his own design. Wa ...
), the IBM
CLEVER project The CLEVER project was a research project in Web search led by Jon Kleinberg at IBM's Almaden Research Center. Techniques developed in CLEVER included various forms of link analysis, including the HITS algorithm. Features The CLEVER search engi ...
, the
TrustRank TrustRank is an algorithm that conducts link analysis to separate useful webpages from spam and helps search engine rank pages in SERPs (Search Engine Results Pages). It is semi-automated process which means that it needs some human assistance ...
algorithm and the Hummingbird algorithm.


History

The
eigenvalue In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denoted ...
problem behind PageRank's algorithm was independently rediscovered and reused in many scoring problems. In 1895,
Edmund Landau Edmund Georg Hermann Landau (14 February 1877 – 19 February 1938) was a German mathematician who worked in the fields of number theory and complex analysis. Biography Edmund Landau was born to a Jewish family in Berlin. His father was Leopol ...
suggested using it for determining the winner of a chess tournament. The eigenvalue problem was also suggested in 1976 by Gabriel Pinski and Francis Narin, who worked on scientometrics ranking scientific journals, in 1977 by
Thomas Saaty Thomas L. Saaty (July 18, 1926 – August 14, 2017) was a Distinguished University Professor at the University of Pittsburgh, where he taught in the Joseph M. Katz Graduate School of Business. He is the inventor, architect, and primary theoreticia ...
in his concept of
Analytic Hierarchy Process In the theory of decision making, the analytic hierarchy process (AHP), also analytical hierarchy process, is a structured technique for organizing and analyzing complex decisions, based on mathematics and psychology. It was developed by Thomas ...
which weighted alternative choices, and in 1995 by Bradley Love and Steven Sloman as a
cognitive model A cognitive model is an approximation of one or more cognitive processes in humans or other animals for the purposes of comprehension and prediction. There are many types of cognitive models, and they can range from box-and-arrow diagrams to a set ...
for concepts, the centrality algorithm. A search engine called "
RankDex Baidu, Inc. ( ; , meaning "hundred times") is a Chinese multinational technology company specializing in Internet-related services and products and artificial intelligence (AI), headquartered in Beijing's Haidian District. It is one of the la ...
" from IDD Information Services, designed by
Robin Li Robin Li Yanhong (; born 17 November 1968) is a Chinese software engineer and billionaire internet entrepreneur. He is the co-founder of the search engine Baidu. As of March 2022, his net worth was estimated at US$8.5 billion. Li studied inform ...
in 1996, developed a strategy for site-scoring and page-ranking. Li referred to his search mechanism as "link analysis," which involved ranking the popularity of a web site based on how many other sites had linked to it. RankDex, the first search engine with page-ranking and site-scoring algorithms, was launched in 1996."About: RankDex"
,
RankDex Baidu, Inc. ( ; , meaning "hundred times") is a Chinese multinational technology company specializing in Internet-related services and products and artificial intelligence (AI), headquartered in Beijing's Haidian District. It is one of the la ...
; accessed 3 May 2014.
Li filed a patent for the technology in RankDex in 1997; it was granted in 1999. He later used it when he founded
Baidu Baidu, Inc. ( ; , meaning "hundred times") is a Chinese multinational technology company specializing in Internet-related services and products and artificial intelligence (AI), headquartered in Beijing's Haidian District. It is one of the l ...
in China in 2000. Google founder
Larry Page Lawrence Edward Page (born March 26, 1973) is an American business magnate, computer scientist and internet entrepreneur. He is best known for co-founding Google with Sergey Brin. Page was the chief executive officer of Google from 1997 unti ...
referenced Li's work as a citation in some of his U.S. patents for PageRank. Larry Page and
Sergey Brin Sergey Mikhailovich Brin (russian: link=no, Сергей Михайлович Брин; born August 21, 1973) is an American business magnate, computer scientist, and internet entrepreneur, who co-founded Google with Larry Page. Brin was th ...
developed PageRank at Stanford University in 1996 as part of a research project about a new kind of search engine. An interview with Héctor García-Molina: Stanford Computer Science Professor and Advisor to Sergey provides background into the development of the page-rank algorithm. Sergey Brin had the idea that information on the web could be ordered in a hierarchy by "link popularity": a page ranks higher as there are more links to it.187-page study from Graz University, Austria
, includes the note that also human brains are used when determining the page rank in Google.
The system was developed with the help of Scott Hassan and Alan Steremberg, both of whom were cited by Page and Brin as being critical to the development of Google.
Rajeev Motwani Rajeev Motwani (Hindi: राजीव मोटवानी , March 24, 1962 – June 5, 2009) was an Indian American professor of Computer Science at Stanford University whose research focused on theoretical computer science. He was an early ad ...
and
Terry Winograd Terry Allen Winograd (born February 24, 1946) is an American professor of computer science at Stanford University, and co-director of the Stanford Human–Computer Interaction Group. He is known within the philosophy of mind and artificial intel ...
co-authored with Page and Brin the first paper about the project, describing PageRank and the initial prototype of the
Google search engine Google Search (also known simply as Google) is a search engine provided by Google. Handling more than 3.5 billion searches per day, it has a 92% share of the global search engine market. It is also the most-visited website in the world. The ...
, published in 1998. Shortly after, Page and Brin founded Google Inc., the company behind the Google search engine. While just one of many factors that determine the ranking of Google search results, PageRank continues to provide the basis for all of Google's web-search tools. The name "PageRank" plays on the name of developer Larry Page, as well as of the concept of a web page. The word is a trademark of Google, and the PageRank process has been
patented A patent is a type of intellectual property that gives its owner the legal right to exclude others from making, using, or selling an invention for a limited period of time in exchange for publishing an enabling disclosure of the invention."A p ...
(). However, the patent is assigned to Stanford University and not to Google. Google has exclusive license rights on the patent from Stanford University. The university received 1.8 million shares of Google in exchange for use of the patent; it sold the shares in 2005 for
US$ The United States dollar (symbol: $; code: USD; also abbreviated US$ or U.S. Dollar, to distinguish it from other dollar-denominated currencies; referred to as the dollar, U.S. dollar, American dollar, or colloquially buck) is the official ...
336 million. PageRank was influenced by
citation analysis Citation analysis is the examination of the frequency, patterns, and graphs of citations in documents. It uses the directed graph of citations — links from one document to another document — to reveal properties of the documents. A t ...
, early developed by
Eugene Garfield Eugene Eli Garfield (September 16, 1925 – February 26, 2017) was an American linguist and businessman, one of the founders of bibliometrics and scientometrics. He helped to create ''Current Contents'', ''Science Citation Index'' (SCI), ''Journ ...
in the 1950s at the University of Pennsylvania, and by Hyper Search, developed by Massimo Marchiori at the
University of Padua The University of Padua ( it, Università degli Studi di Padova, UNIPD) is an Italian university located in the city of Padua, region of Veneto, northern Italy. The University of Padua was founded in 1222 by a group of students and teachers from ...
. In the same year PageRank was introduced (1998),
Jon Kleinberg Jon Michael Kleinberg (born 1971) is an American computer scientist and the Tisch University Professor of Computer Science and Information Science at Cornell University known for his work in algorithms and networks. He is a recipient of the Nevanl ...
published his work on HITS. Google's founders cite Garfield, Marchiori, and Kleinberg in their original papers., published as a technical report on January 29, 199
PDF


Algorithm

The PageRank algorithm outputs a probability distribution used to represent the likelihood that a person randomly clicking on links will arrive at any particular page. PageRank can be calculated for collections of documents of any size. It is assumed in several research papers that the distribution is evenly divided among all documents in the collection at the beginning of the computational process. The PageRank computations require several passes, called "iterations", through the collection to adjust approximate PageRank values to more closely reflect the theoretical true value. A probability is expressed as a numeric value between 0 and 1. A 0.5 probability is commonly expressed as a "50% chance" of something happening. Hence, a document with a PageRank of 0.5 means there is a 50% chance that a person clicking on a random link will be directed to said document.


Simplified algorithm

Assume a small universe of four web pages: A, B, C, and D. Links from a page to itself are ignored. Multiple outbound links from one page to another page are treated as a single link. PageRank is initialized to the same value for all pages. In the original form of PageRank, the sum of PageRank over all pages was the total number of pages on the web at that time, so each page in this example would have an initial value of 1. However, later versions of PageRank, and the remainder of this section, assume a probability distribution between 0 and 1. Hence the initial value for each page in this example is 0.25. The PageRank transferred from a given page to the targets of its outbound links upon the next iteration is divided equally among all outbound links. If the only links in the system were from pages B, C, and D to A, each link would transfer 0.25 PageRank to A upon the next iteration, for a total of 0.75. :PR(A)= PR(B) + PR(C) + PR(D).\, Suppose instead that page B had a link to pages C and A, page C had a link to page A, and page D had links to all three pages. Thus, upon the first iteration, page B would transfer half of its existing value (0.125) to page A and the other half (0.125) to page C. Page C would transfer all of its existing value (0.25) to the only page it links to, A. Since D had three outbound links, it would transfer one third of its existing value, or approximately 0.083, to A. At the completion of this iteration, page A will have a PageRank of approximately 0.458. :PR(A)= \frac+ \frac+ \frac.\, In other words, the PageRank conferred by an outbound link is equal to the document's own PageRank score divided by the number of outbound links L( ). :PR(A)= \frac+ \frac+ \frac. \, In the general case, the PageRank value for any page u can be expressed as: :PR(u) = \sum_ \frac, i.e. the PageRank value for a page u is dependent on the PageRank values for each page v contained in the set Bu (the set containing all pages linking to page u), divided by the number ''L''(''v'') of links from page v.


Damping factor

The PageRank theory holds that an imaginary surfer who is randomly clicking on links will eventually stop clicking. The probability, at any step, that the person will continue is a damping factor ''d''. Various studies have tested different damping factors, but it is generally assumed that the damping factor will be set around 0.85. The damping factor is subtracted from 1 (and in some variations of the algorithm, the result is divided by the number of documents (''N'') in the collection) and this term is then added to the product of the damping factor and the sum of the incoming PageRank scores. That is, : PR(A) = + d \left( \frac+ \frac+ \frac+\,\cdots \right). So any page's PageRank is derived in large part from the PageRanks of other pages. The damping factor adjusts the derived value downward. The original paper, however, gave the following formula, which has led to some confusion: : PR(A)= 1 - d + d \left( \frac+ \frac+ \frac+\,\cdots \right). The difference between them is that the PageRank values in the first formula sum to one, while in the second formula each PageRank is multiplied by ''N'' and the sum becomes ''N''. A statement in Page and Brin's paper that "the sum of all PageRanks is one" and claims by other Google employees support the first variant of the formula above. Page and Brin confused the two formulas in their most popular paper "The Anatomy of a Large-Scale Hypertextual Web Search Engine", where they mistakenly claimed that the latter formula formed a probability distribution over web pages. Google recalculates PageRank scores each time it crawls the Web and rebuilds its index. As Google increases the number of documents in its collection, the initial approximation of PageRank decreases for all documents. The formula uses a model of a ''random surfer'' who reaches their target site after several clicks, then switches to a random page. The PageRank value of a page reflects the chance that the random surfer will land on that page by clicking on a link. It can be understood as a Markov chain in which the states are pages, and the transitions are the links between pages – all of which are all equally probable. If a page has no links to other pages, it becomes a sink and therefore terminates the random surfing process. If the random surfer arrives at a sink page, it picks another URL at random and continues surfing again. When calculating PageRank, pages with no outbound links are assumed to link out to all other pages in the collection. Their PageRank scores are therefore divided evenly among all other pages. In other words, to be fair with pages that are not sinks, these random transitions are added to all nodes in the Web. This residual probability, ''d'', is usually set to 0.85, estimated from the frequency that an average surfer uses his or her browser's bookmark feature. So, the equation is as follows: :PR(p_i) = \frac + d \sum_ \frac where p_1, p_2, ..., p_N are the pages under consideration, M(p_i) is the set of pages that link to p_i, L(p_j) is the number of outbound links on page p_j, and N is the total number of pages. The PageRank values are the entries of the dominant right
eigenvector In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denoted ...
of the modified
adjacency matrix In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph. The elements of the matrix indicate whether pairs of vertices are adjacent or not in the graph. In the special case of a finite simp ...
rescaled so that each column adds up to one. This makes PageRank a particularly elegant metric: the eigenvector is : \mathbf = \begin PR(p_1) \\ PR(p_2) \\ \vdots \\ PR(p_N) \end where R is the solution of the equation : \mathbf = \begin \\ \\ \vdots \\ \end + d \begin \ell(p_1,p_1) & \ell(p_1,p_2) & \cdots & \ell(p_1,p_N) \\ \ell(p_2,p_1) & \ddots & & \vdots \\ \vdots & & \ell(p_i,p_j) & \\ \ell(p_N,p_1) & \cdots & & \ell(p_N,p_N) \end \mathbf where the adjacency function \ell(p_i,p_j) is the ratio between number of links outbound from page j to page i to the total number of outbound links of page j. The adjacency function is 0 if page p_j does not link to p_i, and normalized such that, for each ''j'' :\sum_^N \ell(p_i,p_j) = 1, i.e. the elements of each column sum up to 1, so the matrix is a
stochastic matrix In mathematics, a stochastic matrix is a square matrix used to describe the transitions of a Markov chain. Each of its entries is a nonnegative real number representing a probability. It is also called a probability matrix, transition matrix, ...
(for more details see the computation section below). Thus this is a variant of the
eigenvector centrality In graph theory, eigenvector centrality (also called eigencentrality or prestige score) is a measure of the influence of a node in a network. Relative scores are assigned to all nodes in the network based on the concept that connections to high-sco ...
measure used commonly in
network analysis Network analysis can refer to: * Network theory, the analysis of relations through mathematical graphs ** Social network analysis, network theory applied to social relations * Network analysis (electrical circuits) See also *Network planning and ...
. Because of the large
eigengap In linear algebra, the eigengap of a linear operator is the difference between two successive eigenvalues, where eigenvalues are sorted in ascending order. The Davis–Kahan theorem, named after Chandler Davis and William Kahan, uses the ei ...
of the modified adjacency matrix above, the values of the PageRank eigenvector can be approximated to within a high degree of accuracy within only a few iterations. Google's founders, in their original paper, reported that the PageRank algorithm for a network consisting of 322 million links (in-edges and out-edges) converges to within a tolerable limit in 52 iterations. The convergence in a network of half the above size took approximately 45 iterations. Through this data, they concluded the algorithm can be scaled very well and that the scaling factor for extremely large networks would be roughly linear in , where n is the size of the network. As a result of Markov theory, it can be shown that the PageRank of a page is the probability of arriving at that page after a large number of clicks. This happens to equal t^ where t is the expectation of the number of clicks (or random jumps) required to get from the page back to itself. One main disadvantage of PageRank is that it favors older pages. A new page, even a very good one, will not have many links unless it is part of an existing site (a site being a densely connected set of pages, such as
Wikipedia Wikipedia is a multilingual free online encyclopedia written and maintained by a community of volunteers, known as Wikipedians, through open collaboration and using a wiki-based editing system. Wikipedia is the largest and most-read refer ...
). Several strategies have been proposed to accelerate the computation of PageRank. Various strategies to manipulate PageRank have been employed in concerted efforts to improve search results rankings and monetize advertising links. These strategies have severely impacted the reliability of the PageRank concept, which purports to determine which documents are actually highly valued by the Web community. Since December 2007, when it started ''actively'' penalizing sites selling paid text links, Google has combatted
link farm On the World Wide Web, a link farm is any group of websites that all hyperlink to other sites in the group for the purpose of increasing SEO rankings. In graph theoretic terms, a link farm is a clique. Although some link farms can be created ...
s and other schemes designed to artificially inflate PageRank. How Google identifies link farms and other PageRank manipulation tools is among Google's
trade secret Trade secrets are a type of intellectual property that includes formulas, practices, processes, designs, instruments, patterns, or compilations of information that have inherent economic value because they are not generally known or readily ...
s.


Computation

PageRank can be computed either iteratively or algebraically. The iterative method can be viewed as the
power iteration In mathematics, power iteration (also known as the power method) is an eigenvalue algorithm: given a diagonalizable matrix A, the algorithm will produce a number \lambda, which is the greatest (in absolute value) eigenvalue of A, and a nonzero vec ...
method or the power method. The basic mathematical operations performed are identical.


Iterative

At t=0, an initial probability distribution is assumed, usually :PR(p_i; 0) = \frac. where N is the total number of pages, and p_i; 0 is page i at time 0. At each time step, the computation, as detailed above, yields :PR(p_i;t+1) = \frac + d \sum_ \frac where d is the damping factor, or in matrix notation where \mathbf_i(t)=PR(p_i; t) and \mathbf is the column vector of length N containing only ones. The matrix \mathcal is defined as : \mathcal_ = \begin 1 /L(p_j) , & \mboxj\mboxi\ \\ 0, & \mbox \end i.e., :\mathcal := (K^ A)^T, where A denotes the
adjacency matrix In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph. The elements of the matrix indicate whether pairs of vertices are adjacent or not in the graph. In the special case of a finite simp ...
of the graph and K is the diagonal matrix with the outdegrees in the diagonal. The probability calculation is made for each page at a time point, then repeated for the next time point. The computation ends when for some small \epsilon :, \mathbf(t+1) - \mathbf(t), < \epsilon, i.e., when convergence is assumed.


Power method

If the matrix \mathcal is a transition probability, i.e., column-stochastic and \mathbf is a probability distribution (i.e., , \mathbf, =1, \mathbf\mathbf=\mathbf where \mathbf is matrix of all ones), then equation () is equivalent to Hence PageRank \mathbf is the principal eigenvector of \widehat. A fast and easy way to compute this is using the
power method In mathematics, power iteration (also known as the power method) is an eigenvalue algorithm: given a diagonalizable matrix A, the algorithm will produce a number \lambda, which is the greatest (in absolute value) eigenvalue of A, and a nonzero vec ...
: starting with an arbitrary vector x(0), the operator \widehat is applied in succession, i.e., : x(t+1) = \widehat x(t), until :, x(t+1) - x(t), < \epsilon. Note that in equation () the matrix on the right-hand side in the parenthesis can be interpreted as : \frac \mathbf = (1-d)\mathbf \mathbf^t, where \mathbf is an initial probability distribution. n the current case :\mathbf := \frac \mathbf. Finally, if \mathcal has columns with only zero values, they should be replaced with the initial probability vector \mathbf. In other words, :\mathcal^\prime := \mathcal + \mathcal, where the matrix \mathcal is defined as :\mathcal := \mathbf \mathbf^t, with : \mathbf_i = \begin 1, & \mboxL(p_i)=0\ \\ 0, & \mbox \end In this case, the above two computations using \mathcal only give the same PageRank if their results are normalized: : \mathbf_ = \frac = \frac.


Implementation


Scala/ Apache Spark

A typical example is using Scala's functional programming with Apache Spark RDDs to iteratively compute Page Ranks. object SparkPageRank


MATLAB MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
/ Octave

% Parameter M adjacency matrix where M_i,j represents the link from 'j' to 'i', such that for all 'j' % sum(i, M_i,j) = 1 % Parameter d damping factor % Parameter v_quadratic_error quadratic error for v % Return v, a vector of ranks such that v_i is the i-th rank from
, 1 The comma is a punctuation mark that appears in several variants in different languages. It has the same shape as an apostrophe or single closing quotation mark () in many typefaces, but it differs from them in being placed on the baseline o ...
function = rank2(M, d, v_quadratic_error) N = size(M, 2); % N is equal to either dimension of M and the number of documents v = rand(N, 1); v = v ./ norm(v, 1); % This is now L1, not L2 last_v = ones(N, 1) * inf; M_hat = (d .* M) + (((1 - d) / N) .* ones(N, N)); while (norm(v - last_v, 2) > v_quadratic_error) last_v = v; v = M_hat * v; % removed the L2 norm of the iterated PR end end %function
Example of code calling the rank function defined above: M = 0 0 0 1 ; 0.5 0 0 0 0 ; 0.5 0 0 0 0 ; 0 1 0.5 0 0 ; 0 0 0.5 1 0 rank2(M, 0.80, 0.001)


Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...

"""PageRank algorithm with explicit number of iterations. Returns ------- ranking of nodes (pages) in the adjacency matrix """ import numpy as np def pagerank(M, num_iterations: int = 100, d: float = 0.85): """PageRank: The trillion dollar algorithm. Parameters ---------- M : numpy array adjacency matrix where M_i,j represents the link from 'j' to 'i', such that for all 'j' sum(i, M_i,j) = 1 num_iterations : int, optional number of iterations, by default 100 d : float, optional damping factor, by default 0.85 Returns ------- numpy array a vector of ranks such that v_i is the i-th rank from
, 1 The comma is a punctuation mark that appears in several variants in different languages. It has the same shape as an apostrophe or single closing quotation mark () in many typefaces, but it differs from them in being placed on the baseline o ...
v sums to 1 """ N = M.shape v = np.ones(N) / N M_hat = (d * M + (1 - d) / N) for i in range(num_iterations): v = M_hat @ v return v M = np.array( 0, 0, 0, 0, 1 .5, 0, 0, 0, 0 .5, 0, 0, 0, 0 , 1, 0.5, 0, 0 , 0, 0.5, 1, 0) v = pagerank(M, 100, 0.85)
This example takes ≈13 iterations to converge.


Variations


PageRank of an undirected graph

The PageRank of an undirected
graph Graph may refer to: Mathematics *Graph (discrete mathematics), a structure made of vertices and edges **Graph theory, the study of such graphs and their properties *Graph (topology), a topological space resembling a graph in the sense of discre ...
G is statistically close to the degree distribution of the graph G, but they are generally not identical: If R is the PageRank vector defined above, and D is the degree distribution vector : D = \begin \deg(p_1) \\ \deg(p_2) \\ \vdots \\ \deg(p_N) \end where \deg(p_i) denotes the degree of vertex p_i, and E is the edge-set of the graph, then, with Y=\mathbf, shows that: \, Y-D\, _1\leq \, R-D\, _1\leq \, Y-D\, _1, that is, the PageRank of an undirected graph equals to the degree distribution vector if and only if the graph is regular, i.e., every vertex has the same degree.


Ranking objects of two kinds

A generalization of PageRank for the case of ranking two interacting groups of objects was described by Daugulis. In applications it may be necessary to model systems having objects of two kinds where a weighted relation is defined on object pairs. This leads to considering bipartite graphs. For such graphs two related positive or nonnegative irreducible matrices corresponding to vertex partition sets can be defined. One can compute rankings of objects in both groups as eigenvectors corresponding to the maximal positive eigenvalues of these matrices. Normed eigenvectors exist and are unique by the Perron or Perron–Frobenius theorem. Example: consumers and products. The relation weight is the product consumption rate.


Distributed algorithm for PageRank computation

Sarma et al. describe two
random walk In mathematics, a random walk is a random process that describes a path that consists of a succession of random steps on some mathematical space. An elementary example of a random walk is the random walk on the integer number line \mathbb Z ...
-based
distributed algorithms A distributed algorithm is an algorithm designed to run on computer hardware constructed from interconnected processors. Distributed algorithms are used in different application areas of distributed computing, such as telecommunications, scientific ...
for computing PageRank of nodes in a network. One algorithm takes O(\log n/\epsilon) rounds with high probability on any graph (directed or undirected), where n is the network size and \epsilon is the reset probability ( 1-\epsilon, which is called the damping factor) used in the PageRank computation. They also present a faster algorithm that takes O(\sqrt/\epsilon) rounds in undirected graphs. In both algorithms, each node processes and sends a number of bits per round that are polylogarithmic in n, the network size.


Google Toolbar

The
Google Toolbar Google Toolbar is a discontinued web browser toolbar for Internet Explorer, developed by Google. It was first released in 2000 for Internet Explorer 5. Google Toolbar was also distributed as a Mozilla plug-in for Firefox from September 2005 to J ...
long had a PageRank feature which displayed a visited page's PageRank as a whole number between 0 (least popular) and 10 (most popular). Google had not disclosed the specific method for determining a Toolbar PageRank value, which was to be considered only a rough indication of the value of a website. The "Toolbar Pagerank" was available for verified site maintainers through the Google Webmaster Tools interface. However, on October 15, 2009, a Google employee confirmed that the company had removed PageRank from its ''Webmaster Tools'' section, saying that "We've been telling people for a long time that they shouldn't focus on PageRank so much. Many site owners seem to think it's the most important
metric Metric or metrical may refer to: * Metric system, an internationally adopted decimal system of measurement * An adjective indicating relation to measurement in general, or a noun describing a specific type of measurement Mathematics In mathem ...
for them to track, which is simply not true." The "Toolbar Pagerank" was updated very infrequently. It was last updated in November 2013. In October 2014 Matt Cutts announced that another visible pagerank update would not be coming. In March 2016 Google announced it would no longer support this feature, and the underlying API would soon cease to operate. On April 15, 2016 Google turned off display of PageRank Data in Google Toolbar, though the PageRank continued to be used internally to rank content in search results.


SERP rank

The
search engine results page Search Engine Results Pages (SERP) are the pages displayed by search engines in response to a query by a user. The main component of the SERP is the listing of results that are returned by the search engine in response to a keyword query. The p ...
(SERP) is the actual result returned by a search engine in response to a keyword query. The SERP consists of a list of links to web pages with associated text snippets. The SERP rank of a web page refers to the placement of the corresponding link on the SERP, where higher placement means higher SERP rank. The SERP rank of a web page is a function not only of its PageRank, but of a relatively large and continuously adjusted set of factors (over 200).
Search engine optimization Search engine optimization (SEO) is the process of improving the quality and quantity of website traffic to a website or a web page from search engines. SEO targets unpaid traffic (known as "natural" or " organic" results) rather than dire ...
(SEO) is aimed at influencing the SERP rank for a website or a set of web pages. Positioning of a webpage on Google SERPs for a keyword depends on relevance and reputation, also known as authority and popularity. PageRank is Google's indication of its assessment of the reputation of a webpage: It is non-keyword specific. Google uses a combination of webpage and website authority to determine the overall authority of a webpage competing for a keyword. The PageRank of the HomePage of a website is the best indication Google offers for website authority. After the introduction of Google Places into the mainstream organic SERP, numerous other factors in addition to PageRank affect ranking a business in Local Business Results. When Google elaborated on the reasons for PageRank deprecation at Q&A #March 2016, they announced Links and Content as the Top Ranking Factors. RankBrain had earlier in October 2015 been announced as the #3 Ranking Factor, so the Top 3 Factors have been confirmed officially by Google.


Google directory PageRank

The
Google Directory The Google Directory was a web directory hosted by Google. It was discontinued on July 20, 2011. However, the Google business places and recommended businesses is now commonly referred to as the Google directory. Information The Google Directory ...
PageRank was an 8-unit measurement. Unlike the Google Toolbar, which shows a numeric PageRank value upon mouseover of the green bar, the Google Directory only displayed the bar, never the numeric values. Google Directory was closed on July 20, 2011.


False or spoofed PageRank

It was known that the PageRank shown in the Toolbar could easily be spoofed. Redirection from one page to another, either via a
HTTP 302 The HTTP response status code 302 Found is a common way of performing URL redirection. The HTTP/1.0 specification (RFC 1945) initially defined this code, and gave it the description phrase "Moved Temporarily" rather than "Found". An HTTP respons ...
response or a "Refresh"
meta tag Meta elements are tags used in HTML and XHTML documents to provide structured metadata about a Web page. They are part of a web page's head section. Multiple Meta elements with different attributes can be used on the same page. Meta elements can ...
, caused the source page to acquire the PageRank of the destination page. Hence, a new page with PR 0 and no incoming links could have acquired PR 10 by redirecting to the Google home page. Spoofing can usually be detected by performing a Google search for a source URL; if the URL of an entirely different site is displayed in the results, the latter URL may represent the destination of a redirection.


Manipulating PageRank

For
search engine optimization Search engine optimization (SEO) is the process of improving the quality and quantity of website traffic to a website or a web page from search engines. SEO targets unpaid traffic (known as "natural" or " organic" results) rather than dire ...
purposes, some companies offer to sell high PageRank links to webmasters. As links from higher-PR pages are believed to be more valuable, they tend to be more expensive. It can be an effective and viable marketing strategy to buy link advertisements on content pages of quality and relevant sites to drive traffic and increase a webmaster's link popularity. However, Google has publicly warned webmasters that if they are or were discovered to be selling links for the purpose of conferring PageRank and reputation, their links will be devalued (ignored in the calculation of other pages' PageRanks). The practice of buying and selling is intensely debated across the Webmaster community. Google advised webmasters to use the
nofollow nofollow is a setting on a web page hyperlink that directs search engines not to use the link for page ranking calculations. It is specified in the page as a type of link relation; that is: <a rel="nofollow" ...>. Because search engines ...
HTML attribute HTML attributes are special words used inside the opening tag to control the element's behaviour. HTML attributes are a modifier of an ''HTML element type''. An attribute either modifies the default functionality of an element type or provides fu ...
value on paid links. According to
Matt Cutts Matthew Cutts (born 1972 or 1973) is an American software engineer. Cutts is the former Administrator of the United States Digital Service. He was first appointed as acting administrator, to later be confirmed as full administrator in October 20 ...
, Google is concerned about webmasters who try to
game the system Gaming the system (also rigging, abusing, cheating, milking, playing, working, or breaking the system, or gaming or bending the rules) can be defined as using the rules and procedures meant to protect a system to, instead, manipulate the system ...
, and thereby reduce the quality and relevance of Google search results. In 2019, Google offered a new type of tags that do not pass "link juice" and thus do not have value for SEO link manipulation: rel="ugc" as a tag for user-generated content, such as comments; and rel="sponsored" tag for advertisements or other types of sponsored content. Even though PageRank has become less important for SEO purposes, the existence of back-links from more popular websites continues to push a webpage higher up in search rankings.


Directed Surfer Model

A more intelligent surfer that probabilistically hops from page to page depending on the content of the pages and query terms the surfer is looking for. This model is based on a query-dependent PageRank score of a page which as the name suggests is also a function of query. When given a multiple-term query, Q=\, the surfer selects a q according to some probability distribution, P(q), and uses that term to guide its behavior for a large number of steps. It then selects another term according to the distribution to determine its behavior, and so on. The resulting distribution over visited web pages is QD-PageRank.


Social components

Katja Mayer views PageRank as a social network as it connects differing viewpoints and thoughts in a single place. People go to PageRank for information and are flooded with citations of other authors who also have an opinion on the topic. This creates a social aspect where everything can be discussed and collected to provoke thinking. There is a social relationship that exists between PageRank and the people who use it as it is constantly adapting and changing to the shifts in modern society. Viewing the relationship between PageRank and the individual through
sociometry Sociometry is a quantitative method for measuring social relationships. It was developed by psychotherapist Jacob L. Moreno and Helen Hall Jennings in their studies of the relationship between social structures and psychological well-being, and u ...
allows for an in-depth look at the connection that results. Matteo Pasquinelli reckons the basis for the belief that PageRank has a social component lies in the idea of
attention economy Attention economics is an approach to the management of information that treats human attention as a scarce commodity and applies economic theory to solve various information management problems. According to Matthew Crawford, "Attention is a ...
. With attention economy, value is placed on products that receive a greater amount of human attention and the results at the top of the PageRank garner a larger amount of focus then those on subsequent pages. The outcomes with the higher PageRank will therefore enter the human consciousness to a larger extent. These ideas can influence decision-making and the actions of the viewer have a direct relation to the PageRank. They possess a higher potential to attract a user's attention as their location increases the attention economy attached to the site. With this location they can receive more traffic and their online marketplace will have more purchases. The PageRank of these sites allow them to be trusted and they are able to parlay this trust into increased business.


Other uses

The mathematics of PageRank are entirely general and apply to any graph or network in any domain. Thus, PageRank is now regularly used in bibliometrics, social and information network analysis, and for link prediction and recommendation. It is used for systems analysis of road networks, and in biology, chemistry, neuroscience, and physics.


Scientific research and academia

PageRank has been used to quantify the scientific impact of researchers. The underlying citation and collaboration networks are used in conjunction with pagerank algorithm in order to come up with a ranking system for individual publications which propagates to individual authors. The new index known as pagerank-index (Pi) is demonstrated to be fairer compared to h-index in the context of many drawbacks exhibited by h-index. For the analysis of protein networks in biology PageRank is also a useful tool. In any ecosystem, a modified version of PageRank may be used to determine species that are essential to the continuing health of the environment. A similar newer use of PageRank is to rank academic doctoral programs based on their records of placing their graduates in faculty positions. In PageRank terms, academic departments link to each other by hiring their faculty from each other (and from themselves). A version of PageRank has recently been proposed as a replacement for the traditional
Institute for Scientific Information The Institute for Scientific Information (ISI) was an academic publishing service, founded by Eugene Garfield in Philadelphia in 1956. ISI offered scientometric and bibliographic database services. Its specialty was citation indexing and analysi ...
(ISI)
impact factor The impact factor (IF) or journal impact factor (JIF) of an academic journal is a scientometric index calculated by Clarivate that reflects the yearly mean number of citations of articles published in the last two years in a given journal, as ...
, and implemented at
Eigenfactor The Eigenfactor score, developed by Jevin West and Carl Bergstrom at the University of Washington, is a rating of the total importance of a scientific journal. Journals are rated according to the number of incoming citations, with citations from ...
as well as at
SCImago The SCImago Journal Rank (SJR) indicator is a measure of the prestige of scholarly journals that accounts for both the number of citations received by a journal and the prestige of the journals where the citations come from. Rationale Cita ...
. Instead of merely counting total citations to a journal, the "importance" of each citation is determined in a PageRank fashion. In
neuroscience Neuroscience is the scientific study of the nervous system (the brain, spinal cord, and peripheral nervous system), its functions and disorders. It is a multidisciplinary science that combines physiology, anatomy, molecular biology, developme ...
, the PageRank of a
neuron A neuron, neurone, or nerve cell is an electrically excitable cell that communicates with other cells via specialized connections called synapses. The neuron is the main component of nervous tissue in all animals except sponges and placozoa. ...
in a neural network has been found to correlate with its relative firing rate.


Internet use

Personalized PageRank is used by
Twitter Twitter is an online social media and social networking service owned and operated by American company Twitter, Inc., on which users post and interact with 280-character-long messages known as "tweets". Registered users can post, like, and ...
to present users with other accounts they may wish to follow.
Swiftype Swiftype is a search and index company based in San Francisco, California, that provides search software for organizations, websites, and computer programs. Notable customers include AT&T, Dr. Pepper, Hubspot and TechCrunch. History Swiftype was ...
's site search product builds a "PageRank that's specific to individual websites" by looking at each website's signals of importance and prioritizing content based on factors such as number of links from the home page. A
Web crawler A Web crawler, sometimes called a spider or spiderbot and often shortened to crawler, is an Internet bot that systematically browses the World Wide Web and that is typically operated by search engines for the purpose of Web indexing (''web spid ...
may use PageRank as one of a number of importance metrics it uses to determine which URL to visit during a crawl of the web. One of the early working papers that were used in the creation of Google is ''Efficient crawling through URL ordering'', which discusses the use of a number of different importance metrics to determine how deeply, and how much of a site Google will crawl. PageRank is presented as one of a number of these importance metrics, though there are others listed such as the number of inbound and outbound links for a URL, and the distance from the root directory on a site to the URL. The PageRank may also be used as a methodology to measure the apparent impact of a community like the
Blogosphere The blogosphere is made up of all blogs and their interconnections. The term implies that blogs exist together as a connected community (or as a collection of connected communities) or as a social networking service in which everyday authors can pu ...
on the overall Web itself. This approach uses therefore the PageRank to measure the distribution of attention in reflection of the
Scale-free network A scale-free network is a network whose degree distribution follows a power law, at least asymptotically. That is, the fraction ''P''(''k'') of nodes in the network having ''k'' connections to other nodes goes for large values of ''k'' as : P(k) ...
paradigm.


Other applications

In 2005, in a pilot study in Pakistan, ''Structural Deep Democracy, SD2'' was used for leadership selection in a sustainable agriculture group called Contact Youth. SD2 uses ''PageRank'' for the processing of the transitive proxy votes, with the additional constraints of mandating at least two initial proxies per voter, and all voters are proxy candidates. More complex variants can be built on top of SD2, such as adding specialist proxies and direct votes for specific issues, but SD2 as the underlying umbrella system, mandates that generalist proxies should always be used. In sport the PageRank algorithm has been used to rank the performance of: teams in the National Football League (NFL) in the USA; individual soccer players; and athletes in the Diamond League. PageRank has been used to rank spaces or streets to predict how many people (pedestrians or vehicles) come to the individual spaces or streets. In
lexical semantics Lexical semantics (also known as lexicosemantics), as a subfield of linguistic semantics, is the study of word meanings.Pustejovsky, J. (2005) Lexical Semantics: Overview' in Encyclopedia of Language and Linguistics, second edition, Volumes 1-14Ta ...
it has been used to perform
Word Sense Disambiguation Word-sense disambiguation (WSD) is the process of identifying which sense of a word is meant in a sentence or other segment of context. In human language processing and cognition, it is usually subconscious/automatic but can often come to consc ...
,
Semantic similarity Semantic similarity is a metric defined over a set of documents or terms, where the idea of distance between items is based on the likeness of their meaning or semantic content as opposed to lexicographical similarity. These are mathematical tool ...
, and also to automatically rank
WordNet WordNet is a lexical database of semantic relations between words in more than 200 languages. WordNet links words into semantic relations including synonyms, hyponyms, and meronyms. The synonyms are grouped into '' synsets'' with short defin ...
synsets according to how strongly they possess a given semantic property, such as positivity or negativity.


nofollow

In early 2005, Google implemented a new value, "
nofollow nofollow is a setting on a web page hyperlink that directs search engines not to use the link for page ranking calculations. It is specified in the page as a type of link relation; that is: <a rel="nofollow" ...>. Because search engines ...
", for the
rel Rel or REL may mean: __NOTOC__ Science and technology * REL, a human gene * the rel descriptor of stereochemistry, see Relative configuration *REL (''Rassemblement Européen pour la Liberté''), European Rally for Liberty, a defunct French far-ri ...
attribute of HTML link and anchor elements, so that website developers and
blog A blog (a truncation of "weblog") is a discussion or informational website published on the World Wide Web consisting of discrete, often informal diary-style text entries (posts). Posts are typically displayed in reverse chronological order s ...
gers can make links that Google will not consider for the purposes of PageRank—they are links that no longer constitute a "vote" in the PageRank system. The nofollow relationship was added in an attempt to help combat spamdexing. As an example, people could previously create many message-board posts with links to their website to artificially inflate their PageRank. With the nofollow value, message-board administrators can modify their code to automatically insert "rel='nofollow'" to all hyperlinks in posts, thus preventing PageRank from being affected by those particular posts. This method of avoidance, however, also has various drawbacks, such as reducing the link value of legitimate comments. (See: Spam in blogs#nofollow) In an effort to manually control the flow of PageRank among pages within a website, many webmasters practice what is known as PageRank Sculpting—which is the act of strategically placing the nofollow attribute on certain internal links of a website in order to funnel PageRank towards those pages the webmaster deemed most important. This tactic had been used since the inception of the nofollow attribute, but may no longer be effective since Google announced that blocking PageRank transfer with nofollow does not redirect that PageRank to other links.


See also

*
Attention inequality Attention is the behavioral and cognitive process of selectively concentrating on a discrete aspect of information, whether considered subjective or objective, while ignoring other perceivable information. William James (1890) wrote that "Atte ...
*
CheiRank The CheiRank is an eigenvector with a maximal real eigenvalue of the Google matrix G^* constructed for a directed network with the inverted directions of links. It is similar to the PageRank vector, which ranks the network nodes in average p ...
*
Domain authority The domain authority (also referred to as thought leadership) of a website describes its relevance for a specific subject area or industry. Domain Authority is a search engine ranking score developed by Moz. This relevance has a direct impact on it ...
* EigenTrust — a decentralized PageRank algorithm * Google bombing *
Google Hummingbird Hummingbird is the codename given to a significant algorithm change in Google Search in 2013. Its name was derived from the speed and accuracy of the hummingbird. The change was announced on September 26, 2013, having already been in use for a m ...
*
Google matrix A Google matrix is a particular stochastic matrix that is used by Google's PageRank algorithm. The matrix represents a graph with edges representing links between pages. The PageRank of each page can then be generated iteratively from the Google ...
*
Google Panda Google Panda is a major change to Google's search results ranking algorithm that was first released in February 2011. The change aimed to lower the rank of "low-quality sites" or "thin sites", in particular " content farms", and return higher-qual ...
*
Google Penguin Google Penguin was a codename for a Google algorithm update that was first announced on April 24, 2012. The update was aimed at decreasing search engine rankings of websites that violate Google's Webmaster Guidelines by using now declared Grey Ha ...
*
Google Search Google Search (also known simply as Google) is a search engine provided by Google. Handling more than 3.5 billion searches per day, it has a 92% share of the global search engine market. It is also the most-visited website in the world. The ...
*
Hilltop algorithm The Hilltop algorithm is an algorithm used to find documents relevant to a particular keyword topic in news search. Created by Krishna Bharat while he was at Compaq Systems Research Center and George A. Mihăilă University of Toronto, it was a ...
*
Katz centrality In graph theory, the Katz centrality of a node is a measure of centrality in a network. It was introduced by Leo Katz in 1953 and is used to measure the relative degree of influence of an actor (or node) within a social network. Unlike typical ce ...
– a 1953 scheme closely related to pagerank * Link building *
Search engine optimization Search engine optimization (SEO) is the process of improving the quality and quantity of website traffic to a website or a web page from search engines. SEO targets unpaid traffic (known as "natural" or " organic" results) rather than dire ...
* SimRank — a measure of object-to-object similarity based on random-surfer model *
TrustRank TrustRank is an algorithm that conducts link analysis to separate useful webpages from spam and helps search engine rank pages in SERPs (Search Engine Results Pages). It is semi-automated process which means that it needs some human assistance ...
*
VisualRank VisualRank is a system for finding and ranking images by analysing and comparing their content, rather than searching image names, Web links or other text. Google scientists made their VisualRank work public in a paper describing applying PageRa ...
- Google's application of PageRank to image-search *
Webgraph The webgraph describes the directed links between pages of the World Wide Web. A graph, in general, consists of several vertices, some pairs connected by edges. In a directed graph, edges are directed lines or arcs. The webgraph is a directed graph ...


References


Citations


Sources

* * * * * * *


Relevant patents


Original PageRank U.S. Patent—Method for node ranking in a linked database
€”Patent number 6,285,999—September 4, 2001

€”Patent number 6,799,176—September 28, 2004 * [http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&u=%2Fnetahtml%2FPTO%2Fsearch-adv.htm&r=1&p=1&f=G&l=50&d=PTXT&S1=7,058,628.PN.&OS=pn/7,058,628&RS=PN/7,058,628 PageRank U.S. Patent—Method for node ranking in a linked database]—Patent number 7,058,628—June 6, 2006
PageRank U.S. Patent—Scoring documents in a linked database
€”Patent number 7,269,587—September 11, 2007


External links



by Google
Our products and services
by Google

by the American Mathematical Society {{DEFAULTSORT:Pagerank Google Search Search engine optimization Reputation management Internet search algorithms American inventions Crowdsourcing Markov models Link analysis Articles with example MATLAB/Octave code Graph algorithms