맨위로가기

페이지랭크

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

페이지랭크(PageRank)는 웹페이지의 중요성을 측정하는 데 사용되는 알고리즘으로, 1996년 래리 페이지와 세르게이 브린이 스탠퍼드 대학교에서 개발했다. 웹페이지로 연결되는 링크의 수를 기반으로 순위를 매기는 방식으로, 학술 논문의 인용 분석과 유사한 개념을 적용했다. 구글 검색 엔진의 핵심 기술 중 하나이며, 학술 연구, 인터넷, 스포츠 등 다양한 분야에서 응용된다. 페이지랭크는 반복적인 계산을 통해 각 페이지의 최종 점수를 산출하며, 감쇠 계수를 사용하여 페이지 간의 링크 가중치를 조절한다. 그러나 페이지랭크는 조작의 대상이 될 수 있으며, 오래된 페이지를 선호하는 경향이 있다는 한계를 지닌다. 구글은 링크 조작을 방지하기 위해 nofollow 속성을 도입했다.

더 읽어볼만한 페이지

  • 인터넷 검색 알고리즘 - 검색 엔진 색인
    검색 엔진 색인은 검색 엔진이 효율적인 문서 검색을 위해 사용하는 데이터 구조로, 역색인 외 다양한 구조를 활용하며 생성 및 업데이트 시 병렬 처리, 저장 공간 효율, 문서 파싱, 자연어 처리 등의 기술적 과제를 포함한다.
  • 인터넷 검색 알고리즘 - 웹 색인
  • 검색 엔진 - 울프럼 알파
    울프럼 알파는 자연어 처리 기반 지식 엔진으로, 텍스트 입력을 통해 질문에 대한 답변과 복잡한 계산, 통계 분석, 금융 계산 등의 연산 결과를 제공하고 시각화한다.
  • 검색 엔진 - 웹 검색 엔진
    웹 검색 엔진은 인터넷 정보를 체계적으로 검색하고 제공하는 시스템으로, 웹 크롤러를 통해 웹 페이지를 수집 및 색인 생성하여 데이터베이스를 구축하고, 사용자의 검색어에 따라 관련성 높은 검색 결과를 제시하며, 구글, 빙, 야후! 등이 대표적이다.
  • 마르코프 모형 - 강화 학습
    강화 학습은 에이전트가 환경과의 상호작용을 통해 누적 보상을 최대화하는 최적의 정책을 학습하는 기계 학습 분야이며, 몬테카를로 방법, 시간차 학습, Q-러닝 등의 핵심 알고리즘과 탐험과 활용의 균형, 정책 경사법 등의 다양한 연구 주제를 포함한다.
  • 마르코프 모형 - 칼만 필터
    칼만 필터는 잡음이 있는 측정값들을 이용하여 선형 동적 시스템의 상태를 추정하는 재귀 필터로, 예측과 보정 단계를 반복하며 항법 시스템, 레이더 추적, 컴퓨터 비전 등 다양한 분야에 응용된다.
페이지랭크
페이지랭크
유형웹 검색 알고리즘
개발자구글
창시자래리 페이지
세르게이 브린
최초 공개1999년
특허US6285999
설명웹페이지의 중요도를 측정하는 링크 분석 알고리즘
작동 방식웹페이지로 연결되는 링크의 수와 품질을 기반으로 중요도를 평가
핵심 가정중요한 웹사이트는 다른 웹사이트로부터 더 많은 링크를 받는 경향이 있음
중요도 평가 요소링크 수
링크 품질
목적검색 엔진 결과 순위 결정
영향구글 검색 알고리즘의 핵심 구성 요소
웹 검색 순위에 큰 영향
기술적 세부 사항
수학적 기반행렬 대수학
확률론
계산웹의 링크 구조를 그래프로 표현하여 반복 계산 수행
알고리즘 작동 방식모든 페이지에 초기 순위 할당
다른 페이지로부터의 링크에 따라 순위 업데이트
순위 값이 수렴될 때까지 반복
링크 분석페이지랭크는 웹페이지에 연결된 링크를 중요도 척도로 사용
수렴페이지랭크 알고리즘은 일반적으로 수렴을 보장
덤핑 인자임의 서퍼 모델의 개념을 포함
0과 1 사이의 값을 가짐 (일반적으로 0.85)
업데이트 주기수시로 업데이트될 수 있음
도구구글 검색 콘솔 등의 도구를 통해 확인 가능 (과거)
역사
개발스탠퍼드 대학교에서 개발
창시자래리 페이지
세르게이 브린
구글 초기 알고리즘구글 검색 엔진 초기 알고리즘의 핵심 구성 요소
특허 출원1999년
특허 획득2001년
스탠퍼드 대학교 특허스탠퍼드 대학교는 구글 주식으로 3억 3600만 달러 수익
영향 및 평가
검색 엔진검색 엔진 알고리즘에 큰 영향
웹 순위검색 결과 순위 결정에 사용
검색 엔진 최적화(SEO)의 핵심 요소
공개적 평가한때 웹사이트 중요도를 평가하는 척도로 사용
구글 툴바에서 0부터 10까지의 값으로 표시 (과거)
현재더 이상 공개적으로 표시되지 않음
중요성 변화구글이 다른 요소를 더 중요하게 사용하면서 상대적 중요도 감소
기타
관련 개념하이퍼링크
링크 분석
검색 엔진 최적화
구글 폭격
참고 자료페이지랭크에 대한 다양한 학술 자료 및 문서
구글 검색 작동 방식에 대한 자료

2. 역사

페이지랭크 알고리즘의 기저가 되는 고유값 문제는 여러 점수 매기기 문제에서 독립적으로 재발견되고 재사용되었다. 1895년 에드먼드 란다우는 체스 토너먼트의 승자를 결정하는 데 이를 사용할 것을 제안했다.[9][10] 1976년에는 가브리엘 핀스키와 프랜시스 나린이 과학 저널 순위를 매기는 과학계량학 연구에,[11] 1977년에는 토마스 새티가 대안적인 선택지를 가중치화하는 계층 분석 과정 개념에,[12] 1995년에는 브래들리 러브와 스티븐 슬로먼이 개념에 대한 인지 모델인 중심성 알고리즘에 고유값 문제를 제안했다.[13][14]

페이지 순위 매기기 및 사이트 점수 매기기 알고리즘을 갖춘 최초의 검색 엔진인 RankDex는 1996년에 출시되었다.[17] 로빈 리는 1997년 RankDex의 기술에 대한 특허를 출원했고, 1999년에 특허를 받았다.[18] 래리 페이지는 PageRank에 대한 그의 미국 특허 중 일부에서 리의 연구를 인용했다.[21][17][22]

래리 페이지세르게이 브린은 1996년 스탠퍼드 대학교에서 새로운 종류의 검색 엔진에 대한 연구 프로젝트의 일환으로 PageRank를 개발했다. 세르게이 브린의 스탠퍼드 컴퓨터 과학 교수이자 자문교수인 에크토르 가르시아 몰리나와의 인터뷰[23]는 페이지 순위 알고리즘 개발에 대한 배경을 제공한다.[24] 이 시스템은 스콧 해산과 앨런 스테렘버그의 도움으로 개발되었으며, 이들은 페이지와 브린에 의해 구글 개발에 중요한 역할을 했다고 인용되었다.[5] 라지브 모트와니와 테리 위노그래드는 페이지와 브린과 함께 프로젝트에 대한 첫 번째 논문을 공동 저술하여 PageRank와 구글 검색 엔진의 초기 프로토타입을 설명했으며, 이 논문은 1998년에 발표되었다.[5] 구글 검색 결과 순위를 결정하는 많은 요소 중 하나일 뿐이지만, PageRank는 여전히 구글의 모든 웹 검색 도구의 기반을 제공한다.[26]

"PageRank"라는 이름은 개발자 래리 페이지의 이름과 웹 페이지 개념을 결합한 것이다.[27][28] 이 단어는 구글의 상표이며, PageRank 프로세스는 특허를 받았다. 그러나 이 특허는 구글이 아닌 스탠퍼드 대학교에 양도되었다. 구글은 스탠퍼드 대학교로부터 해당 특허에 대한 독점적 라이선스 권한을 가지고 있다. 대학교는 특허 사용료로 구글 주식 180만 주를 받았고, 2005년에 미국 달러 3.36억달러에 주식을 매각했다.[29][30]

PageRank는 1950년대에 펜실베이니아 대학교에서 유진 가필드가 개발한 초기 인용 분석과 파두아 대학교의 마시모 마르키오리가 개발한 Hyper Search의 영향을 받았다. PageRank가 소개된 해(1998년)에 존 클라인버그는 HITS에 대한 연구 결과를 발표했다. 구글 설립자들은 초기 논문에서 가필드, 마르키오리, 클라인버그를 인용했다.[5][31]

2. 1. 기원

페이지랭크 알고리즘의 기저가 되는 고유값 문제는 여러 점수 매기기 문제에서 독립적으로 재발견되고 재사용되었다.[9][10] 1996년 로빈 리가 설계한 IDD 정보 서비스의 "RankDex"라는 검색 엔진은 사이트 점수 매기기 및 페이지 순위 매기기를 위한 전략을 개발했다. 리는 자신의 검색 메커니즘을 "링크 분석"이라고 언급했는데, 이는 다른 사이트에서 해당 사이트로 연결된 링크 수를 기반으로 웹사이트의 인기를 순위 매기는 것을 포함했다.[16] 그는 나중에 2000년 중국에서 바이두를 설립할 때 이 기술을 사용했다.[19][20]

1996년 래리 페이지세르게이 브린스탠퍼드 대학교에서 새로운 종류의 검색 엔진에 대한 연구 프로젝트의 일환으로 PageRank를 개발했다. 세르게이 브린은 웹의 정보를 "링크 인기도"로 계층 구조로 정렬할 수 있다는 아이디어를 떠올렸다. 즉, 페이지로 연결되는 링크가 많을수록 순위가 높아진다는 것이다.[25] 얼마 지나지 않아 페이지와 브린은 구글을 설립했다.

3. 알고리즘 설명

페이지랭크는 더 중요한 페이지는 더 많은 다른 사이트로부터 링크를 받는다는 관찰에 기초한다. 페이지랭크는 랜덤 서퍼(Random Surfer) 모델을 가정하는데, 이는 임의의 페이지를 방문하며 탐색하는 가상의 사용자이다. 페이지랭크는 페이지 간 페이지랭크 값을 주고받는 것을 반복하며, 결국 전체 웹 페이지가 특정한 페이지랭크 값에 수렴한다는 사실을 통해 각 페이지의 최종 페이지랭크를 계산한다.

페이지랭크는 월드 와이드 웹과 같이 하이퍼링크로 연결된 문서들의 집합의 각 요소에 수치적인 가중치를 할당하여 집합 내에서의 상대적 중요도를 "측정"하는 것을 목적으로 하는 링크 분석 알고리즘이다. 이 알고리즘은 상호 인용 및 참조가 있는 어떤 요소들의 집합에도 적용될 수 있다.

페이지랭크는 웹그래프를 기반으로 하는 수학적 알고리즘의 결과이며, cnn.com 또는 mayoclinic.org와 같은 권위 있는 허브를 고려한다. 페이지에 대한 하이퍼링크는 지지 투표로 계산된다. 페이지의 PageRank는 재귀적으로 정의되며, 해당 페이지로 연결되는 모든 페이지의 수와 PageRank 측정값("인바운드 링크")에 따라 달라진다. PageRank가 높은 많은 페이지에서 연결되는 페이지는 자체적으로 높은 순위를 받는다.

페이지랭크 알고리즘은 사람이 링크를 무작위로 클릭할 때 특정 페이지에 도달할 가능성을 나타내는 확률 분포를 출력한다. 확률은 0과 1 사이의 숫자 값으로 표현된다. 0.5의 확률은 일반적으로 어떤 일이 일어날 "50%의 가능성"으로 표현된다. 따라서 PageRank가 0.5인 문서는 무작위 링크를 클릭하는 사람이 해당 문서로 이동할 가능성이 50%임을 의미한다.

페이지랭크 알고리즘의 발상은 인용에 기반한 학술논문의 평가와 유사하다.


  • 학술논문의 중요성을 측정하는 지표로는 피인용 수가 자주 사용된다. 중요한 논문은 많은 사람들에 의해 인용되므로 피인용 수가 많을 것이라고 생각된다. 마찬가지로, 주목할 만한 중요한 웹페이지는 많은 페이지에서 링크될 것이라고 생각된다.
  • 또한, 피인용 수를 이용하는 것 외에 “피인용 수가 많은 논문에서 인용되고 있는 논문은 중요도가 높다”라는 생각도 이전부터 존재했다. 웹페이지의 경우에도 마찬가지로, 중요한 페이지에서의 링크는 가치가 높다고 생각된다.
  • 하지만, 무분별하게 생성된 링크에는 가치가 별로 없다고 생각된다. 링크 목록처럼 많은 링크를 만드는 것을 목적으로 하는 경우에는 링크 대상 웹페이지에 강하게 주목하고 있다고 말하기는 어렵다.


이러한 발상을 수억~수십억 페이지에 달하는 웹페이지의 링크 관계에 적용한 것이 페이지랭크이다. 이 방법을 적용함으로써, 서로 링크만 해주는 사이트의 중요도가 높아지는 것을 막고, 링크 목록처럼 많은 링크를 걸고 있는 사이트로부터의 링크의 중요성을 상대적으로 낮추는 효과가 있다.

페이지랭크의 수학적 표현은 다음과 같다.

  • 각 페이지는 고유한 점수를 갖는다.
  • 각 링크 또한 고유한 점수를 갖는다.
  • 페이지 X에 대해,
  • X의 점수를 P라고 한다.
  • 다른 페이지에서 X로 향하는 링크의 점수를 각각 I_1, \dotsc, I_n이라고 한다.
  • X에서 다른 페이지로 향하는 링크의 점수를 각각 O_1, \dotsc, O_m이라고 한다.
  • 이때, 다음이 성립한다고 가정한다.

: I_1 + \dotsb + I_n = P

: O_1 = \dotsb = O_m = \frac{P}{m} \left( = \frac{\sum_{i=1}^n I_i}{m} \right)

즉, 각 페이지로 "유입되는" 링크 점수의 총합과 각 페이지에서 "유출되는" 링크 점수의 총합이 같도록 하여, 그 총합을 그 페이지의 점수로 간주한다. 이 점수가 높을수록 그 페이지는 중요하다고 볼 수 있다.

전체적으로 모순이 발생하지 않도록 점수를 적절히 배분해야 하는데, 이는 일종의 흐름 문제이며, 이 문제의 해법에 대해서는 다양한 이론이 제시되어 있다.

3. 1. 단순화된 알고리즘

페이지 랭크는 더 중요한 페이지는 더 많은 다른 사이트로부터 링크를 받는다는 관찰에 기초한다. 어떤 페이지로 연결되는 링크가 많을수록, 그 페이지는 더 중요하다고 간주된다.

페이지 랭크는 페이지 간에 페이지 랭크 값을 주고받는 것을 반복하여, 전체 웹 페이지의 페이지 랭크 값이 특정 값으로 수렴한다는 사실을 이용해 각 페이지의 최종 페이지 랭크를 계산한다. 이 과정에서 구글 행렬(Google matrix)이 사용된다. 페이지랭크 알고리즘은 특정 페이지에 도달할 가능성을 나타내는 확률 분포를 출력한다.[1] 확률은 0과 1 사이의 숫자 값으로 표현되며, 0.5는 어떤 일이 일어날 "50%의 가능성"을 의미한다.[2]

간단한 알고리즘의 예시는 다음과 같다.

  • A, B, C, D 네 개의 웹 페이지로 구성된 작은 네트워크를 가정한다.
  • 초기에는 모든 페이지의 페이지랭크를 동일하게 0.25로 설정한다. (0과 1 사이의 확률 분포를 가정)[3]
  • 페이지 B, C, D가 모두 A를 가리키는 링크를 가지고 있다면, 다음번 반복에서 A의 페이지랭크는 0.75가 된다.
  • : PR(A)= PR(B) + PR(C) + PR(D).\,[4]
  • 만약 B가 A와 C, C가 A, D가 A, B, C 모두에 링크를 걸고 있다면, A의 페이지랭크는 다음과 같이 계산된다.
  • : PR(A)= \frac{PR(B)}{2}+ \frac{PR(C)}{1}+ \frac{PR(D)}{3}.\,[5]
  • 즉, 외부 링크에 의해 부여되는 페이지랭크는 해당 페이지의 페이지랭크 점수를 외부 링크 수 '''L( )'''로 나눈 값과 같다.[6]
  • : PR(A)= \frac{PR(B)}{L(B)}+ \frac{PR(C)}{L(C)}+ \frac{PR(D)}{L(D)}. \,[7]
  • 일반적인 경우, 임의의 페이지 '''u'''의 페이지랭크 값은 다음 공식으로 표현할 수 있다.[8]
  • : PR(u) = \sum_{v \in B_u} \frac{PR(v)}{L(v)}[9]
  • 즉, 페이지 '''u'''의 페이지랭크 값은 페이지 '''u'''에 링크하는 모든 페이지('''Bu''')의 페이지랭크 값을 해당 페이지의 링크 수 ''L''(''v'')로 나눈 값의 합이다.[10]


PageRank 개념도


페이지랭크 알고리즘의 핵심 아이디어는 인용을 기반으로 한 학술논문 평가와 유사하다.[11]

  • 중요한 논문은 많은 사람들에게 인용되므로 피인용 수가 많아진다. 마찬가지로, 중요한 웹페이지는 많은 페이지에서 링크된다.[12]
  • 피인용 수가 많은 논문에서 인용하는 논문은 중요도가 높다. 웹페이지의 경우에도 중요한 페이지에서의 링크는 가치가 높다.[13]
  • 그러나 무분별한 링크는 가치가 낮다. 링크 목록처럼 많은 링크를 만드는 것이 목적인 경우, 링크 대상 웹페이지에 주목한다고 보기 어렵다.[14]


페이지랭크는 이러한 아이디어를 수억~수십억 페이지에 달하는 웹페이지의 링크 관계에 적용한 것이다.[15] 이 방법을 통해 서로 링크만 하는 사이트의 중요도를 낮추고, 링크 목록처럼 많은 링크를 가진 사이트로부터의 링크 중요도를 상대적으로 낮추는 효과가 있다.[16]

페이지랭크의 수학적 표현은 다음과 같다.[17]

  • 각 페이지는 고유한 점수를 갖는다.[18]
  • 각 링크 또한 고유한 점수를 갖는다.[19]
  • 페이지 X에 대해,[20]
  • X의 점수를 P라고 한다.[21]
  • 다른 페이지에서 X로 향하는 링크의 점수를 각각 I_1, \dotsc, I_n이라고 한다.[22]
  • X에서 다른 페이지로 향하는 링크의 점수를 각각 O_1, \dotsc, O_m이라고 한다.[23]
  • 이때, 다음이 성립한다.[24]
  • I_1 + \dotsb + I_n = P[25]
  • O_1 = \dotsb = O_m = \frac{P}{m} \left( = \frac{\sum_{i=1}^n I_i}{m} \right)[26]


즉, 각 페이지로 "유입되는" 링크 점수의 총합과 각 페이지에서 "유출되는" 링크 점수의 총합이 같도록 하여, 그 총합을 그 페이지의 점수로 간주한다. 이 점수가 높을수록 그 페이지는 중요하다고 볼 수 있다.[27]

3. 2. 감쇠 계수 (Damping Factor)

페이지랭크에서 감쇠 계수(Damping Factor)는 사용자가 특정 페이지에서 링크를 클릭하여 다른 페이지로 계속 이동하지 않고, 임의의 다른 페이지로 이동할 확률을 의미한다. 이 확률은 보통 0.85로 설정된다.[5]

감쇠 계수는 페이지랭크 값을 낮추는 역할을 한다. 페이지랭크는 대부분 다른 페이지의 페이지랭크로부터 계산되기 때문이다. 감쇠 계수를 적용하면, 다른 페이지로부터 받는 영향력이 줄어든다.

페이지랭크 계산식은 다음과 같다.

:PR(A) = {1 - d \over N} + d \left( \frac{PR(B)}{L(B)}+ \frac{PR(C)}{L(C)}+ \frac{PR(D)}{L(D)}+\,\cdots \right).

  • PR(A): 페이지 A의 페이지랭크
  • d: 감쇠 계수 (보통 0.85)
  • N: 전체 웹 페이지 수
  • PR(B), PR(C), PR(D): 페이지 B, C, D의 페이지랭크
  • L(B), L(C), L(D): 페이지 B, C, D의 외부 링크 수


위 식에서 (1 - d) / N 항은 사용자가 링크를 따라가지 않고 임의의 페이지로 이동하는 경우를 나타내며, 나머지 항은 링크를 통해 페이지랭크가 전달되는 부분을 나타낸다.

구글의 초기 논문에서는 다음과 같은 다른 공식이 제시되기도 했다.[5]

:PR(A)= 1 - d + d \left( \frac{PR(B)}{L(B)}+ \frac{PR(C)}{L(C)}+ \frac{PR(D)}{L(D)}+\,\cdots \right).

그러나 이 공식은 페이지랭크의 총합을 N(전체 페이지 수)으로 만들기 때문에, 첫 번째 공식이 더 일반적으로 사용된다. 구글 직원들도 첫 번째 공식을 지지한다고 밝혔다.[5][32]

3. 3. 수학적 표현

페이지 랭크는 그래프 이론을 사용하여 표현할 수 있다. 웹 페이지는 노드로, 하이퍼링크는 에지로 표현되는 유향 그래프를 구성한다. 페이지 랭크는 이 그래프의 인접 행렬을 기반으로 계산되며, 행렬의 고유값과 고유 벡터를 통해 최종 점수를 구한다.

웹 페이지를 노드, 하이퍼링크를 에지로 하는 웹 그래프를 기반으로, cnn.com 또는 mayoclinic.org와 같은 권위 있는 허브를 고려하여 페이지의 중요도를 나타내는 순위 값을 결정한다.[5] 페이지에 대한 하이퍼링크는 지지 투표로 계산되며, 페이지의 PageRank는 재귀적으로 정의된다. 즉, 해당 페이지로 연결되는 모든 페이지의 수와 PageRank 측정값("인바운드 링크")에 따라 달라진다.[5]

이러한 발상은 인용에 기반한 학술논문의 평가와 유사하다.

# 학술논문의 중요성을 측정하는 지표로는 피인용 수가 자주 사용된다. 중요한 논문은 많은 사람들에 의해 인용되므로, 피인용 수가 많아질 것이라고 생각된다. 마찬가지로, 주목할 만한 중요한 웹페이지는 많은 페이지에서 링크될 것이라고 생각된다.

# 또한, 피인용 수를 이용하는 생각에 더하여, “피인용 수가 많은 논문에서 인용되고 있는 논문은 중요도가 높다”라는 생각이 이전부터 존재했다. 웹페이지의 경우에도 마찬가지로, 중요한 페이지에서의 링크는 가치가 높다고 생각된다.

# 하지만, 무분별하게 생성된 링크에는 가치가 별로 없다고 생각된다. 링크 목록처럼, 아무튼 많은 링크를 만드는 것을 목적으로 하고 있는 경우에는, 링크 대상 웹페이지에 강하게 주목하고 있다고 말하기는 어렵다.

이를 수억~수십억 페이지에 달하는 웹페이지의 링크 관계에 적용한 것이 PageRank이다. 이 방법을 적용함으로써, 서로 링크만 해주는 사이트의 중요도가 높아지는 것을 막고, 링크 목록처럼 많은 링크를 걸고 있는 사이트로부터의 링크의 중요성을 상대적으로 낮추는 효과가 있다.

간단한 수학적 표현은 다음과 같다.

  • 각 페이지는 고유한 점수를 갖는다.
  • 각 링크 또한 고유한 점수를 갖는다.
  • 페이지 X에 대해,
  • X의 점수를 P라고 한다.
  • 다른 페이지에서 X로 향하는 링크의 점수를 각각 I_1, \dotsc, I_n이라고 한다.
  • X에서 다른 페이지로 향하는 링크의 점수를 각각 O_1, \dotsc, O_m이라고 한다.
  • 이때, 다음이 성립한다고 가정한다.

: I_1 + \dotsb + I_n = P

: O_1 = \dotsb = O_m = \frac{P}{m} \left( = \frac{\sum_{i=1}^n I_i}{m} \right)

즉, 각 페이지로 "유입되는" 링크 점수의 총합과 각 페이지에서 "유출되는" 링크 점수의 총합이 같도록 하여, 그 총합을 그 페이지의 점수로 생각하는 것이다. 이 점수가 높을수록 그 페이지는 중요하다고 생각할 수 있다.

이것은 일종의 흐름 문제이며, 이 문제의 해법에 대해서는 다양한 이론이 제시되어 있다.

그래프 이론 용어를 사용하면 다음과 같다.

# WWW 상의 각 페이지를 노드(ノード)로 보고, 링크를 에지(エッジ)로 본 유향 그래프(有向グラフ)를 생각한다.

# 이 유향 그래프의 인접 행렬(隣接行列)을 A=(a_{ij})로 하고, 행렬 B=(b_{ij}) b_{ij} = a_{ji} \bigg/ \textstyle\sum_{k} a_{jk}로 정의한다.

# 행렬 (1-d)J_N/N+dB의 최대 고유값(固有値)에 속하는 고유 벡터(固有ベクトル)를 구한다. 여기서 J_N는 요소가 모두 1인 N\times N 행렬이다. 고유 벡터의 각 요소의 값이 구해야 할 각 페이지의 점수이다.

여기서 BA의 전치 행렬(転置行列) A^T의 각 요소를 그 열의 영이 아닌 요소의 수로 나눈 것이다. 따라서 B의 각 열의 합은 1이 된다.

B는 '''전이 확률 행렬'''이라고 불리며, 어떤 페이지에서 어떤 페이지로 링크에 의해 점프하는 확률을 나타내는 것으로 생각할 수 있다.

페이지 A의 페이지랭크 PR(A)는 다음 식으로 정의된다.[5]

:PR\left(A\right) = \frac{1-d}{N} + d\sum_{i=1}^n \frac{PR\left(T_i \right)}{C\left(T_i \right)}

  • PR\left(T_n\right): 페이지 A에 링크하고 있는 페이지 T_n의 페이지랭크. 만약 페이지 A에 3개의 페이지가 링크하고 있다면, T_1부터 T_3까지 각 페이지를 나타낸다.
  • C\left(T_n\right): 페이지 T_n에 포함된 다른 페이지로의 링크의 총 수.
  • d: 감쇠 계수(damping factor). 일반적으로 0.85로 설정되지만, 인위적으로 페이지랭크를 높이려는 경우에는 더 작은 값으로 설정된다. (항상 0 \le d \le 1)

4. 계산

페이지랭크 알고리즘은 사용자가 링크를 무작위로 클릭할 때 특정 페이지에 도달할 가능성을 나타내는 확률 분포를 출력한다. PageRank는 어떤 크기의 문서 집합에도 계산될 수 있으며, 계산 과정이 시작될 때 분포가 집합 내 모든 문서에 고르게 분배된다고 가정한다. PageRank 계산에는 여러 번의 "반복"이 필요하다.

확률은 0과 1 사이의 숫자 값으로 표현된다. 0.5의 확률은 어떤 일이 일어날 "50%의 가능성"을 의미한다. 따라서 PageRank가 0.5인 문서는 무작위 링크를 클릭하는 사람이 해당 문서로 이동할 가능성이 50%임을 의미한다.

PageRank는 반복적 방법이나 대수적 방법으로 계산될 수 있다. 반복적 방법은 멱법[35][36] 또는 멱승법이라고도 하며, 기본적인 수학적 연산은 동일하다.

4. 1. 반복적 방법

PageRank 알고리즘은 초기 확률 분포를 가정하여 시작한다. 일반적으로 모든 페이지의 초기 PageRank 값은 동일하게 설정되며, 전체 페이지 수에 따라 결정된다. 예를 들어, 네 개의 웹 페이지(A, B, C, D)로 구성된 초기에는 각 페이지의 PageRank가 0.25로 설정된다. 이는 0과 1 사이의 확률 분포를 가정한 것이다.[35][36]

각 반복 단계에서, 특정 페이지의 PageRank는 해당 페이지로 연결되는 다른 페이지들의 PageRank 값에 의해 결정된다. 페이지 '''u'''의 PageRank 값은 집합 '''Bu''' (페이지 '''u'''로 링크하는 모든 페이지)에 속한 각 페이지 '''v'''의 PageRank 값을 페이지 '''v'''의 외부 링크 수 ''L''(''v'')로 나눈 값의 합으로 계산된다.

:PR(u) = \sum_{v \in B_u} \frac{PR(v)}{L(v)}

예를 들어, B 페이지가 A와 C 페이지로 링크하고, C 페이지가 A 페이지로 링크하며, D 페이지가 세 페이지 모두로 링크하는 경우, 각 페이지의 PageRank는 다음과 같이 업데이트된다.

:PR(A)= \frac{PR(B)}{2}+ \frac{PR(C)}{1}+ \frac{PR(D)}{3}.\,

이 계산은 각 시간 단계에서 반복되며, PageRank 값이 특정 수준 이하로 변화할 때까지 (즉, 수렴할 때까지) 계속된다.

:|\mathbf{R}(t+1) - \mathbf{R}(t)| < \epsilon

여기서 \epsilon은 매우 작은 값을 의미한다.

이러한 반복적 방법을 통해 PageRank는 각 페이지의 중요도를 나타내는 값으로 수렴하게 된다.

4. 2. 멱법 (Power Method)

페이지랭크는 반복적인 방법이나 대수적 방법으로 계산될 수 있는데, 반복적인 방법은 멱법[35][36] 또는 멱승법으로 볼 수 있다. 기본적인 수학적 연산은 동일하게 수행된다.

멱법을 사용하여 페이지랭크를 계산하는 빠르고 쉬운 방법은 다음과 같다. 임의의 벡터 x(0)으로 시작하여 연산자 \widehat{\mathcal{M}}를 연속적으로 적용한다. 즉, 다음 식이 성립할 때까지 반복한다.

: x(t+1) = \widehat{\mathcal{M}} x(t)

:|x(t+1) - x(t)| < \epsilon.

이러한 방법을 통해 페이지랭크 \mathbf{R}\widehat{\mathcal{M}}의 주된 고유벡터로 계산된다.

5. 변형

무향 그래프 G의 페이지랭크는 통계적으로 그래프 G의 차수 분포와 가깝지만, 일반적으로 동일하지 않다.[37] 페이지랭크 벡터를 R, 차수 분포 벡터를 D라고 하면, 다음과 같다.

:

D = {1\over 2|E|}

\begin{bmatrix}

\deg(p_1) \\

\deg(p_2) \\

\vdots \\

\deg(p_N)

\end{bmatrix}



여기서 \deg(p_i)는 정점 p_i의 차수를 나타내고, E는 그래프의 변 집합이다. Y={1\over N}\mathbf{1}이라고 하면,[38] 다음이 성립한다.

:{1-d\over1+d}\|Y-D\|_1\leq \|R-D\|_1\leq \|Y-D\|_1,

즉, 무향 그래프의 페이지랭크는 그래프가 정규 그래프, 즉 모든 정점이 같은 차수를 가질 때에만 차수 분포 벡터와 같다.

다우굴리스는 두 종류의 상호 작용하는 객체를 순위 매기는 경우에 대한 페이지랭크의 일반화를 설명했다.[39] 응용 프로그램에서는 두 종류의 객체를 가지는 시스템을 모델링해야 할 필요가 있을 수 있으며, 객체 쌍에 가중치 관계가 정의된다. 이는 이분 그래프를 고려하게 한다. 이러한 그래프의 경우, 정점 분할 집합에 해당하는 두 개의 관련된 양수 또는 비음의 기약 행렬을 정의할 수 있다. 두 그룹 모두에서 객체의 순위를 이러한 행렬의 최대 양수 고유값에 해당하는 고유벡터로 계산할 수 있다. 페론 또는 페론-프로베니우스 정리에 따라 정규화된 고유벡터는 존재하며 유일하다. 예를 들어 소비자와 제품을 들 수 있는데, 관계 가중치는 제품 소비율이다.

페이지 내용과 검색어에 따라 확률적으로 페이지를 이동하는 더 지능적인 서퍼 모델도 있다. 이 모델은 페이지의 쿼리 종속 페이지랭크 점수를 기반으로 하며, 이름에서 알 수 있듯이 쿼리의 함수이기도 하다. 다중 항 쿼리 Q=\{q1,q2,\cdots\}가 주어지면, 서퍼는 어떤 확률 분포 P(q)에 따라 q를 선택하고, 많은 단계 동안 해당 항을 사용하여 동작을 안내한다. 그런 다음 분포에 따라 다른 항을 선택하여 동작을 결정하는 식으로 진행한다. 방문한 웹 페이지에 대한 결과 분포는 QD-페이지랭크이다.[56]

6. 응용

페이지랭크의 수학적 원리는 일반적이어서, 어떤 영역의 그래프나 네트워크에도 적용 가능하다. 따라서 출판물 분석, 사회 및 정보 네트워크 분석, 링크 예측 및 추천에 사용된다.[57] 또한 도로 네트워크의 시스템 분석과 생물학, 화학, 신경과학, 물리학에도 사용된다.[57]

스포츠 분야에서는 NFL 팀 순위,[71] 축구 및 다이아몬드 리그 선수 순위[72][73]를 매기는 데 활용된다. 그 외에도 공간이나 도로에 얼마나 많은 사람(보행자나 차량)이 오는지 예측하고,[74][75] 단어 의미 분석,[76] 의미적 유사성,[77] 워드넷 동의어 집합 순위[78] 결정, 교통 시스템 분석[79] 등 다양한 분야에 응용되고 있다.

6. 1. 학술 연구

페이지랭크는 연구자들의 과학적 영향력을 정량화하는 데 사용되어 왔다. 인용 및 공동 연구 네트워크를 페이지랭크 알고리즘과 함께 사용하여 개별 출판물에 대한 순위 시스템을 만들고, 이를 개별 저자에게까지 확장한다. 페이지랭크 지수(Pi)는 h-지수의 많은 단점을 보완하여 더 공정한 지표로 평가받고 있다.[58]

생물학에서 페이지랭크는 단백질 네트워크 분석에 유용한 도구로 사용된다.[59][60]

또한, 페이지랭크의 수정된 버전을 사용하여 특정 생태계에서 환경의 지속적인 건강에 필수적인 종을 결정할 수 있다.[61]

최근에는 대학원 졸업생들의 교수직 취업 실적을 기반으로 학계 박사 과정을 순위 매기는 데 페이지랭크와 유사한 방식이 사용된다. 페이지랭크 용어로는, 학과들이 서로(그리고 자신들로부터) 교수를 채용함으로써 서로 연결된다.[62]

6. 2. 인터넷

트위터는 사용자에게 팔로우할 만한 다른 계정을 추천하기 위해 개인화된 페이지랭크를 사용한다.[65] 웹 크롤러는 웹을 탐색하며 어떤 URL을 방문할지 결정할 때 페이지랭크를 중요한 지표 중 하나로 활용한다.[67][68] 또한, 페이지랭크는 블로그스피어와 같은 온라인 커뮤니티가 전체 웹에 미치는 영향력을 측정하는 데에도 사용될 수 있다.

6. 3. 기타 응용

페이지랭크는 다양한 분야에 응용되고 있다.

  • 스포츠:

분야내용
NFL팀 순위[71]
축구선수 순위[72]
다이아몬드 리그선수 순위[73]


  • 공간 및 도로: 공간이나 도로에 얼마나 많은 사람(보행자나 차량)이 오는지 예측하는 데 사용된다.[74][75]

  • 어휘 의미론: 단어 의미 분석,[76] 의미적 유사성,[77] 워드넷 동의어 집합 순위[78] 등에 사용된다.

  • 교통 시스템 분석: 교통 시스템의 주요 상태를 식별하고 탐색하는 데 활용된다.[79]

7. 한계 및 문제점

페이지랭크는 검색 엔진 최적화(SEO)를 위해 조작될 수 있다는 한계가 있었다. 예를 들어, 리다이렉션을 이용하여 낮은 페이지랭크의 페이지가 높은 페이지랭크를 얻도록 조작할 수 있었다.[46] 또한, 일부 회사들은 높은 페이지랭크를 가진 페이지의 링크를 판매하기도 했는데, 이는 페이지랭크의 신뢰성을 떨어뜨리는 요인이었다.[53] 구글은 이러한 조작에 대응하기 위해 유료 링크에 nofollow 속성을 사용하도록 권고하고, 새로운 유형의 태그를 도입하는 등의 노력을 기울였다.[53][54]

7. 1. 페이지랭크 조작

검색 엔진 최적화(SEO)를 위해 페이지랭크를 인위적으로 조작하려는 시도가 있었다. 한 페이지에서 다른 페이지로 리다이렉션하면 소스 페이지가 대상 페이지의 페이지랭크를 얻는 방식으로, PR 0인 새 페이지가 구글 홈페이지로 리다이렉션하여 PR 10을 얻을 수 있었다.[46]

SEO 목적으로, 일부 회사는 웹마스터에게 높은 페이지랭크 링크를 판매하기도 했다.[53] 높은 페이지랭크를 가진 페이지의 링크는 더 가치 있다고 여겨져 가격이 더 비쌌다. 그러나 구글은 페이지랭크를 높이기 위해 링크를 판매하는 것이 발각되면 해당 링크의 가치가 떨어진다고 경고했다.[52] 구글은 유료 링크에 nofollow HTML 속성 값을 사용하도록 권고했다.[53]

2019년 구글은 SEO 링크 조작에 가치가 없는 새로운 유형의 태그를 제공했다. 사용자 생성 콘텐츠(예: 댓글)에는 `rel="ugc"` 태그를, 광고 또는 기타 유형의 후원 콘텐츠에는 `rel="sponsored"` 태그를 사용한다.[54] 페이지랭크가 SEO 목적으로 덜 중요해졌지만, 인기 웹사이트의 역링크는 여전히 검색 순위에 긍정적인 영향을 미친다.[55]

8. Nofollow

2005년 초, 구글은 HTML 링크 및 앵커 요소의 rel 속성에 "nofollow"라는 새로운 값을 구현했다.[80] 이를 통해 웹사이트 개발자와 블로그 작성자는 구글이 페이지랭크를 계산할 때 고려하지 않는 링크를 만들 수 있게 되었다. 즉, 페이지랭크 시스템에서 더 이상 "투표"로 간주되지 않는 링크이다. nofollow 관계는 스팸덱싱과의 싸움을 돕기 위해 추가되었다.

예를 들어, 이전에는 사람들이 자신의 웹사이트 링크가 포함된 많은 게시판 게시글을 만들어 페이지랭크를 인위적으로 높일 수 있었다. nofollow 값을 사용하면 게시판 관리자는 코드를 수정하여 게시글의 모든 하이퍼링크에 "rel='nofollow'"를 자동으로 삽입하여 해당 게시글이 페이지랭크에 영향을 미치는 것을 방지할 수 있다. 그러나 이러한 회피 방법은 정당한 댓글의 링크 가치를 감소시키는 등 여러 가지 단점도 있다. (참조: 블로그 스팸#nofollow)

웹사이트 내 페이지 간의 페이지랭크 흐름을 수동으로 제어하기 위해 많은 웹마스터는 페이지랭크 조각(PageRank Sculpting)[81]이라고 알려진 방법을 사용한다. 이는 웹마스터가 가장 중요하다고 생각하는 페이지로 페이지랭크를 유도하기 위해 전략적으로 웹사이트의 특정 내부 링크에 nofollow 속성을 배치하는 행위이다. 이 전술은 nofollow 속성이 처음 도입된 이후로 사용되어 왔지만, 구글이 nofollow를 사용하여 페이지랭크 전달을 차단해도 그 페이지랭크가 다른 링크로 리다이렉트되지 않는다고 발표한 이후로는 더 이상 효과적이지 않을 수 있다.[82]

참조

[1] 웹사이트 Facts about Google and Competition https://www.google.c[...] 2014-07-12
[2] 웹사이트 What Is Google PageRank? A Guide For Searchers & Webmasters http://searchenginel[...] 2007-04-26
[3] 웹사이트 Algorithms Rank Relevant Results Higher https://www.google.c[...]
[4] 웹사이트 US7058628B1 - Method for node ranking in a linked database - Google Patents https://patents.goog[...] 2019-09-14
[5] 논문 The anatomy of a large-scale hypertextual Web search engine http://infolab.stanf[...]
[6] 간행물 Proceedings of the 32nd International Conference on Very Large Data Bases (VLDB '06, Seoul, Korea) http://ilpubs.stanfo[...]
[7] 웹사이트 FAQ: All About The New Google "Hummingbird" Algorithm https://searchengine[...] 2013-09-26
[8] 웹사이트 Improved Link-Based Algorithms for Ranking Web Pages https://cs.nyu.edu/m[...] New York University, Department of Computer Science 2023-08-07
[9] 논문 Zur relativen Wertbemessung der Turnierresultate 1895
[10] arXiv Landau on Chess Tournaments and Google's PageRank 2022-10-31
[11] 논문 Citation influence for journal aggregates of scientific publications: Theory, with application to the literature of physics
[12] 논문 A scaling method for priorities in hierarchical structures
[13] 간행물 Proceedings of the Seventeenth Annual Conference of the Cognitive Science Society
[14] 웹사이트 How a CogSci undergrad invented PageRank three years before Google http://bradlove.org/[...] bradlove.org
[15] 논문 Toward a qualitative search engine 2002-08-06
[16] 뉴스 The Rise of Baidu (That's Chinese for Google) https://www.nytimes.[...] 2006-09-17
[17] 웹사이트 About: RankDex http://www.rankdex.c[...] 2014-05-03
[18] 특허 Hypertext Document Retrieval System and Method https://www.google.c[...]
[19] 뉴스 The Man Who's Beating Google https://www.forbes.c[...] Forbes 2009-10-05
[20] 웹사이트 About: RankDex http://www.rankdex.c[...]
[21] 웹사이트 Method for node ranking in a linked database https://patents.goog[...] Google Patents
[22] 웹사이트 10 Unusual Things About Google https://www.forbes.c[...] 2011-03-18
[23] 웹사이트 Hector Garcia-Molina: Stanford Computer Science Professor and Advisor to Sergey https://www.podomati[...]
[24] 웹사이트 PageRank: Bringing Order to the Web http://ilpubs.stanfo[...] Stanford Digital Library Project 1997-08-18
[25] 웹사이트 187-page study from Graz University, Austria http://www.iicm.tugr[...]
[26] 웹사이트 Our products and services https://www.google.c[...]
[27] 서적 The Google Story https://archive.org/[...] Delacorte Press
[28] 웹사이트 Google Press Center: Fun Facts https://www.google.c[...]
[29] 뉴스 Stanford Earns $336 Million Off Google Stock http://www.redorbit.[...] 2005-12-01
[30] 웹사이트 Starting Up. How Google got its groove http://www.stanforda[...] Stanford magazine
[31] 보고서 The PageRank citation ranking: Bringing order to the Web http://dbpubs.stanfo[...] 1998-01-29
[32] 웹사이트 Straight from Google: What You Need to Know http://www.mattcutts[...]
[33] 논문 The Second Eigenvalue of the Google Matrix http://www-cs-studen[...] 2003-03
[34] 학회발표 Fast PageRank Computation Via a Sparse Linear System (Extended Abstract) 2004
[35] 학회발표 PageRank computation and the structure of the web: Experiments and algorithms
[36] arXiv PageRank: Standing on the shoulders of giants
[37] journal Spectral centrality measures in complex networks 2008-09-00
[38] journal A Note on the PageRank of Undirected Graphs
[39] journal A note on a generalization of eigenvector centrality for bipartite graphs and applications 2012-00-00
[40] journal Fast Distributed PageRank Computation
[41] 웹사이트 PageRank Distribution Removed From WMT https://www.google.c[...]
[42] 뉴스 Google Page Rank Update is Not Coming https://managedadmin[...] Managed Admin 2014-10-12
[43] 웹사이트 Google has confirmed it is removing Toolbar PageRank http://searchenginel[...] 2016-03-08
[44] 웹사이트 Google Toolbar PageRank officially goes dark http://searchenginel[...] 2016-04-18
[45] 웹사이트 Google PageRank Officially Shuts its Doors to the Public https://www.searchen[...] 2016-04-19
[46] 웹사이트 Search Engine Ranking Factors - Version 2 http://www.seomoz.or[...] seomoz.org 2007-04-02
[47] 서적 Search Engine Optimization Secrets Wiley
[48] 간행물 The Importance of Keyword Difficulty Screening for SEO News Press
[49] 웹사이트 Ranking of listings: Ranking - Google Places Help https://support.goog[...]
[50] 뉴스 Google Turning Its Lucrative Web Search Over to AI Machines https://www.bloomber[...] Bloomberg
[51] 웹사이트 Google Directory Has Been Shut Down https://www.searchen[...] Search Engine Watch 2011-07-25
[52] 웹사이트 Google Link Schemes https://support.goog[...] Google
[53] 웹사이트 How to report paid links http://www.mattcutts[...] mattcutts.com/blog 2007-04-14
[54] 웹사이트 Evolving https://developers.g[...]
[55] 웹사이트 So...You Think SEO Has Changed http://searchenginew[...] 2014-03-19
[56] 서적 The Intelligent Surfer:Probabilistic Combination of Link and Content Information in PageRank http://research.micr[...]
[57] journal PageRank Beyond the Web 2015-01-00
[58] journal The Pagerank-Index: Going beyond Citation Counts in Quantifying Scientific Impact of Researchers
[59] journal When the Web meets the cell: using personalized PageRank for analyzing protein interaction networks
[60] journal Equal opportunity for low-degree network nodes: a PageRank-based method for protein target identification in metabolic graphs
[61] 뉴스 Google trick tracks extinctions http://news.bbc.co.u[...] 2009-09-04
[62] journal Ranking Doctoral Programs by Placement: A New Method http://www.people.fa[...]
[63] conference MESUR: Usage-based metrics of scholarly impact Association for Computing Machinery 2006-12-00
[64] journal From Structure to Activity: Using Centrality Measures to Predict Neuronal Activity
[65] book Proceedings of the 22nd International Conference on World Wide Web ACM 2013-00-00
[66] 뉴스 Y Combinator-Backed Swiftype Builds Site Search That Doesn't Suck https://techcrunch.c[...] 2012-05-08
[67] 웹사이트 Working Papers Concerning the Creation of Google http://dbpubs.stanfo[...]
[68] conference Efficient crawling through URL ordering http://dbpubs.stanfo[...]
[69] 웹사이트 Yahoo! Groups https://groups.yahoo[...] Groups.yahoo.com
[70] CiteSeerX Autopoietic Information Systems in Modern Organizations
[71] 논문 An application of Google's PageRank to NFL rankings 2012-12-31
[72] arXiv A network theory analysis of football strategies 2012-06-28
[73] 논문 A novel application of PageRank and user preference algorithms for assessing the relative performance of track athletes in competition 2017-06-02
[74] 논문 Ranking spaces for predicting human movement in an urban environment 2006
[75] 논문 Self-organized natural roads for predicting traffic flow: a sensitivity study 2008
[76] 논문 An Experimental Study of Graph Connectivity for Unsupervised Word Sense Disambiguation http://www.dsi.uniro[...] IEEE Press 2010
[77] 논문 Align, Disambiguate and Walk: A Unified Approach for Measuring Semantic Similarity http://wwwusers.di.u[...] 2013
[78] 논문 PageRanking WordNet synsets: An Application to Opinion-Related Properties http://nmis.isti.cnr[...] 2007-06-30
[79] 논문 Transitions between quasi-stationary states in traffic systems: Cologne orbital motorways as an example 2023
[80] 웹사이트 Preventing Comment Spam http://googleblog.bl[...] Google 2005-01-01
[81] 웹사이트 PageRank Sculpting: Parsing the Value and Potential Benefits of Sculpting PR with Nofollow http://www.seomoz.or[...] SEOmoz 2011-05-27
[82] 웹사이트 PageRank sculpting http://www.mattcutts[...] Mattcutts.com 2011-05-27
[83] 특허
[84] 웹사이트 Stanford Earns $336 Million Off Google Stock http://www.redorbit.[...] San Jose Mercury News, cited by redOrbit 2009-02-25
[85] 웹사이트 Starting Up. How Google got its groove http://www.stanforda[...] Stanford magazine 2009-02-25



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com