public class HITS
extends java.lang.Object
function HITS(query) returns pages (with hub and authority numbers) pages ← EXPAND-PAGES(RELEVANT-PAGES(query)) for each p in pages do p.AUTHORITY ← 1 p.HUB ← 1 repeat until convergence do for each p in pages do p.AUTHORITY ← Σi INLINKi(p).HUB p.HUB ← Σi OUTLINKi(p).AUTHORITY NORMALIZE(pages) return pagesFigure 22.1 The HITS algorithm for computing hubs and authorities with respect to a query. RELEVANT-PAGES fetches the pages that match the query, and EXPAND-PAGES add in every page that links to or is linked from one of the relevant pages. NORMALIZE divides each page's score by the sum of the squares of all pages' scores (separately for both the authority and hubs scores.
Constructor and Description |
---|
HITS(java.util.Map<java.lang.String,Page> pTable) |
HITS(java.util.Map<java.lang.String,Page> pTable,
int rank_hist_depth,
double delta_tolerance) |
Modifier and Type | Method and Description |
---|---|
java.util.List<Page> |
expandPages(java.util.List<Page> pages)
Adds pages that are linked to or is linked from one of the pages passed
as argument.
|
double |
getAveDelta(double[] curr,
double[] prev)
Determine how much values in a list are changing.
|
Page |
getMaxAuthority(java.util.List<Page> result)
Return from a set of Pages the Page with the greatest Authority value
|
Page |
getMaxHub(java.util.List<Page> result)
Return from a set of Pages the Page with the greatest Hub value
|
java.util.List<Page> |
hits(java.lang.String query) |
boolean |
matches(java.lang.String query,
java.lang.String text)
Simple check if query string is a substring of a block of text.
|
java.util.List<Page> |
normalize(java.util.List<Page> pages)
Divides each page's score by the sum of the squares of all pages' scores
(separately for both the authority and hubs scores
|
java.util.List<Page> |
relevantPages(java.lang.String query)
Fetches and returns all pages that match the query
|
void |
report(java.util.List<Page> result)
Simple console display of HITS Algorithm results.
|
void |
sortAuthority(java.util.List<Page> result)
Organize the list of pages according to their descending Authority Scores
|
void |
sortHub(java.util.List<Page> result)
Organize the list of pages according to their descending Hub scores.
|
double |
SumInlinkHubScore(Page page)
Calculate the Authority score of a page by summing the Hub scores of that
page's inlinks.
|
double |
SumOutlinkAuthorityScore(Page page)
Calculate the Hub score of a page by summing the Authority scores of that
page's outlinks.
|
public HITS(java.util.Map<java.lang.String,Page> pTable, int rank_hist_depth, double delta_tolerance)
public HITS(java.util.Map<java.lang.String,Page> pTable)
public java.util.List<Page> hits(java.lang.String query)
public java.util.List<Page> relevantPages(java.lang.String query)
query
- UnsupportedEncodingException
public boolean matches(java.lang.String query, java.lang.String text)
query
- text
- public java.util.List<Page> expandPages(java.util.List<Page> pages)
pages
- public java.util.List<Page> normalize(java.util.List<Page> pages)
pages
- public double SumInlinkHubScore(Page page)
page
- pagesTable
- public double SumOutlinkAuthorityScore(Page page)
page
- pagesTable
- public double getAveDelta(double[] curr, double[] prev)
r
- public Page getMaxHub(java.util.List<Page> result)
pageTable
- public Page getMaxAuthority(java.util.List<Page> result)
pageTable
- public void sortHub(java.util.List<Page> result)
result
- public void sortAuthority(java.util.List<Page> result)
result
- public void report(java.util.List<Page> result)
result
-