2012-03-27 2 views
2

나는 http://en.wikipedia.org/wiki/PageRank에 설명을 읽었으며 페이지 순위는 들어오는 링크와 나가는 링크로 계산된다는 것을 알고 있습니다.페이지 순위가 실시간으로 계산되는 방법

웹 페이지를 크롤링하고 DB에 저장하는 동안 크롤러가 있는데 페이지 순위 알고리즘이 필요합니다. 내가 유 설명해 수 있습니다 다음과 같은 값

Title 
url 
content_html 
outgoing_links(external domain) 
internal_links(the links with same domain of the url) 

와 DB를 가지고 내가하고 페이지 순위를 계산하기 위해 다른 값을해야합니까. 자바를 사용하여 계산하는 방법을 설명하시기 바랍니다

+0

얼마나 멀리 갈 의향이 있습니까? Google의 실제 페이지 순위 알고리즘에 대해 말하면 훨씬 더 복잡하며 대부분은 완전히 비밀입니다. 시작하기 전에 Google은 도메인 이름의 나이와 콘텐츠가 업데이트되는 빈도를 고려합니다. 그러면 스팸 발송자를 어떻게 처리할까요? Google은 정기적으로 스패머와 전체 농장을 색인에서 제외합니다. 매우 복잡한 주제이며 * 페이지 순위를 계산할 수있는 하나의 마법 수식이 없기 때문에 "계산 방법"을 설명하기가 어렵습니다. – TacticalCoder

답변

1

몇 가지 옵션이 있습니다. duffymo의 솔루션은 완벽합니다.하지만 기존 라이브러리를 사용하려면 그래프에 대해 Jung과 비슷한 것을 제안하십시오.

graphs에 익숙하지만 링크의 구조를 저장하는 데 사용할 수 있는지 잘 모르겠지만 페이지 랭크는 대부분의 라이브러리에 포함되는 경우가 많습니다. 어떻게하면 좋을지에 따라 메모리 솔루션의 장점은 Jung이지만 영구적 인 데이터베이스 저장소가 필요하다면 Neo4J에 데이터를로드하는 것보다 페이지 랙을 수행하려면 gremlin을 설치해야합니다.

위의 내용은 Java 솔루션이지만 직접 작성하고 싶다면 (내가 마른 연구 논문을 좋아하지 않는 것처럼) 책 프로그래밍 집단 지성을 강력하게 제안 할 것입니다. 그것들은 처음부터 클릭 랭크 (pagerank)와 신경 네트워크를 포함하는 검색 엔진을 만들어 클릭을 모니터링합니다. 위의 요구 사항을 기반으로하는 유일한 문제는이 책이 Python으로 작성되었지만 Java에 논리를 쉽게 적용 할 수 있다는 것입니다. 이미 약간의 파이썬을 알고 있다면 무료로 책의 소스 코드를 다운로드하고 소프트웨어를 체크 아웃 할 수 있습니다 (소스 코드의 코드 뒤에 수학에 대한 설명은 없습니다).

희망 하시겠습니까?

+0

나는 너의 대답에 모순된다. 제가 인용 한 종이는 "건조한"것이 아닙니다. 그것을 읽고 보자. 그러나 저는 "프로그래밍 집단 지성"을 매우 좋아합니다. 나는 많은 영혼을 찾은 후에 너를 투표 할거야. – duffymo

+0

@duffymo 죄송합니다. 불쾌감을 불러 일으키지 않았습니다. (실제로 귀하의 특정 논문을 언급하지 않았으며, 일반적으로 많이 사용되었습니다). 나는 개인적으로 5 페이지 이상의 모든 종이를 발견하고 지루한 만화를 가지고 있지 않다.저는 그 성명서가 제 정보에 대한 반영이라고 생각합니다. 그래서 나는 집단 지성에 의지하는 경향이 있습니다 :-) – Lostsoul

+0

사실 저는 전에이 신문을 읽었다는 것을 깨달았습니다. 나는 그것을 끝내지 않았고 (만화 부족 및/또는 노크 농담) 노하우를 털어 놓으려고했을 때 정말 좋았고 나를 도왔습니다. 나는 외부 라이브러리를 사용하더라도 페이지 랭크 (wager)에 대해 배우는 것이 좋다라고 생각한다. 좋은 게시글 +1 – Lostsoul

1

페이지 랭크 (PageRank), 그 중심에서, 선형 대수학 고유치 문제는 다음과 같습니다

http://www.rose-hulman.edu/~bryan/googleFinalVersionFixed.pdf

당신이 선형 대수학 또는 고유치 문제를 모르거나하지 않는 경우 이 보고서를 기꺼이 읽으 려한다면이 문제를 해결할 수는 없을 것입니다. 아인슈타인이 말했듯이, "가능한 한 간단하게 문제를 해결할 수는 있지만 간단하지는 않습니다 ..."

논문의 제목은 오래되었습니다. 그것은 2004 년경의 구글의 시가 총액을 가리킨다. 그것은 오늘 아침에 211 억 달러까지이다.

기술은 그 당시에는 여전히 존재하지 않았습니다. Google은 독점적 인 방법으로 알고리즘을 계속 조정합니다. 그러나이 논문은 그것의 핵심을 설명합니다.