Web Search Tutorial Jan Pedersen and Knut Magne Risvik Yahoo! Inc. Search and Marketplace.

Post on 21-Dec-2015

215 views 1 download

Tags:

transcript

Web Search Tutorial

Jan Pedersen and Knut Magne Risvik

Yahoo! Inc. Search and Marketplace

Agenda

• A Short History

• Internet Search Fundamentals– Web Pages– Indexing

• Ranking and Evaluation

• Third Generation Technologies

A Short History

Precursors

• Information Retrieval (IR) Systems– online catalogs, and News

• Limited scale, homogeneous text

– recall focus– empirical

• Driven by results on evaluation collections

– free text queries shown to win over Boolean

• Specialized Internet access– Gopher, Wais, Archie

• FTP archives and special databases• Never achieved critical mass

First Generation Systems

• 1993: Mosaic opens the WWW– 1993 Architext/Excite (Stanford/Kleiner Perkins)– 1994 Webcrawler (full text Indexing)– 1994 Yahoo! (human edited Directory)– 1994 Lycos (400K indexed pages)– 1994 Infoseek (subscription service)

• Power systems– 1994 AltaVista (Dec Labs, advanced query syntax,

large index)– 1996 Inktomi (massively distributed solution)

Second Generation Systems

• Relevance matters– 1998 Direct Hit (clickthrough based re-ranking)– 1998 Google (link authority based re-ranking)

• Size matters– 1999 FAST/AllTheWeb (scalable architecture)

• The user matters– 1996 Ask Jeeves (question answering)

• Money matters– 1997 Goto/Overture (pay-for-performance search)

Third Generation Systems

• Market consolidation– 2002 Yahoo! Purchases Inktomi– 2003 Overture purchases AV and FAST/AllTheWeb– 2003 MSN announces intention to build a Search Engine

• Search matures– $2B market projected to grow to $6B by 2005– required capital investment limits new players

• Gigablast?

– traffic focused in a few sites• Yahoo!, MSN, Google, AOL

– consumer use driven by Brand marketing

Web Search Fundamentals

Web Fundamentals

URL

User Browser Web Server

HTML Page

Page Rendering Page ServingHyper Links

HTTP Request

Definitions

• URL’s refer to WWW content– referential integrity is not guaranteed– roughly 10% of Url’s go 404 every month

• HTTP requests fetch content from a server– stateless protocol– cookies provide partial state

• Web servers generate HTML pages– can be static or dynamic (output of a program)– markup tags determine page rendering

• HTML pages contain hyperlinks– link consists of a url and anchor text

Url’s

• URL Definition– http://host:port/path;params?query#fragment

• fragment is not considered part of the URL• params are considered part of the path

– params are not frequently used

• Examples– http://www.cnn.com/– http://ad.doubleclick.net/jump;sz=120x60;ptile=6;ord=69810

62172– http://us.imdb.com/Title?0068646– http://www.sky.com/skynews/article/0,,30000-12261027,00.h

tml

Dynamic Url’s

• Urls with Dynamic Components– Path (including params) and host are not dynamic

• If you change the PATH and/or host you will get a 404 or similar error

– Query is dynamic• If you change the query part, you will get a valid page back• source of potentially infinite number of pages

• Examples– http://www.cnn.com/index.html?test

• Returns a valid 200 page, even if test is not a valid query term

– http://www.cnn.com/index.html;test• Returns a 404 error page

• Not all Url’s Follow this Convention:– http://www.internetnews.com/xSP/article.php/1378731

Dynamic Content

• Content Depends on External (to URL) Factors– Cookies – IP– Referrer– User-Agent

• Examples– http://my.yahoo.com/– http://forum.doom9.org/forumdisplay.php?s=af9ddb31710c7

b314b75262c1031d8af&forumid=65

• Dynamic Url’s and Dynamic Content are Orthogonal– static url’s can refer to dynamic content– dynamic url’s can refer to static content

HMTL Sample

<html> <head> <title>Andreas S. WEIGEND, PhD</title> </head>

<body>

<blockquote><font face="Verdana,Tahoma,Arial" size=2>

<h2><font size="4" face="Verdana, Arial, Helvetica, sans-serif">Andreas S. WEIGEND,

</font><font size="3" face="Verdana, Arial, Helvetica, sans-serif">Ph.D.</font><font face="Verdana, Arial, Helvetica, sans-serif"><br>

<font size="2">Chief Scientist, Amazon.com</font></font></h2> </font>

<blockquote>

<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><i>&quot;Sophisticated

algorithms have always been a big part of creating the Amazon.com customer

experience.&quot; (Jeff Bezos, Founder and CEO of Amazon.com)</i></font></p></blockquote>

<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2"> <a href="http://www.amazon.com">Amazon.com</a>

might be the world's largest laboratory to study human behavior and decision

making. It for sure is a place with very smart people, with a healthy attitude

towards data, measurement, and modeling. I am responsible for research in

machine learning and computational marketing. Applications range from real-time

predictions of customer intent and satisfaction, to personalization and long-term

optimization of pricing and promotions.<font size="-2"> [<a href="http://www.weigend.com/amazonjobs.html"

onclick="window.open(this.href);return false;">Job openings.</a>] </font>

I'm also the point person for academic relations.</font></p>

</blockquote>

<font face="Verdana,Tahoma,Arial" size=2>

<h3> <font face="Verdana, Arial, Helvetica, sans-serif"><i><font size="3"> Schedule Summer 2003</font></i></font></h3>

</font>

Rendered Page

WWW Size

• How pages are in the WWW?– Lawrence and Giles,

1999: 800M pages with most pages not indexed

– Dynamically generated pages imply effective size is infinite

• How many sites are registered?– Churn due to SPAM

Crawling

• Search Engine robot– visits every page that will be indexed– traversal behavior depends on crawl policy

• Index parameterized by size and freshness– freshness is time since last revisit if page has changed

• Batch vs Incremental– Batch crawl has several, distinct, batch processing stages

• discover, grab, index• AV discovery phase takes 10 days, grab another 10, etc.• sharp freshness curve

– Incremental crawl• crawler constantly operates, intermixing discovery with grab• mild drop-off in freshness

Typical Crawl/Build Architecture

Grab

URL DBSeed List

Discovery

InternetInternet

Pagefiles

Filtered Pagefiles IndexPagefiles

Anchor Text DB

Connectivity DB

Duplicates DB

Alias DB

Index Build

Crawl

Relative Size

From SearchEngineShowdown

Google claims 3B

Fast claims 2.5B

AV claims 1B

Freshness

From

Search Engine Showdown

Note hybrid indices; subindices

with differing update rates

Query Language

• Free text with implicit AND and implicit proximity– Syntax-free input

• Explicit Boolean – AND (+)– OR (|)– AND NOT (-)

• Explicit Phrasing (“”)

• Filters – domain: filetype:– host: title: – link: image:– url: anchor:

Query Serving Architecture

• Index divided into segments each served by a node

• Each row of nodes replicated for query load

• Query integrator distributes query and merges results

• Front end creates a HTML page with the query results

Load Balancer

FE1

QI1

Node1,1 Node1,2 Node1,3 Node1,N

Node2,1 Node2,2 Node2,3 Node2,N

Node4,1 Node4,2 Node4,3 Node4,N

Node3,1 Node3,2 Node3,3 Node3,N

QI2 QI8

FE2 FE8

“travel”

“travel”

“travel”

“travel”

“travel”

…………

Query Evaluation

• Index has two tables: – term to posting

– document ID to document data

• Postings record term occurrences– may include positions

• Ranking employs posting– to score documents

• Display employs document info– fetched for top scoring documents

Terms Posting Doc ID Doc Data

Query Evaluator

“travel”

ranking display

Scale

• Indices typically cover billions of pages– terrabytes of data

• Tens of millions of queries served every day– translates to hundreds of queries per second

• User require rapid response– query must be evaluated in under 300 msecs

• Data Centers typically employ thousands of machines– Individual component failures are common

Search Results Page

• Blended results– multiple sources

• Relevance ranked• Assisted search

– Spell correction

• Specialized indices– via Tabs

• Sponsored listing– monetization

• Localization– Country language

experience

Relevance Evaluation

Relevance is Everything

• The Search Paradigm: 2.4 words, a few clicks, and you’re done

– only possible if results are very relevant

• Relevance is ‘speed’– time from task initiation to resolution– important factors:

• Location of useful result• UI Clutter• latency

• Relevance is relative– context dependent

• e.g. ‘football’ in the UK vs the US

– task dependent• e.g. ‘mafia’ when shopping vs researching

Relevance is Hard to Measure

• Poorly defined, subjective notion– depends on task, user context, etc.

• Analysts have Focused on Easier-to-Measure Surrogates– index size, traffic, speed– anecdotal relevance tests

• e.g. Vanity queries

• Requires Survey Methodology– averaged over queries– averaged over users

Survey Methodologies

• Internal expert assessments– assessments typically not replicated– models absolute notion of relevance

• External consumer assessments– assessments heavily replicated– models statistical notion of relevance

• A/B surveys– compare whole result sets– visual relevance plays a large role

• Url surveys– judge relevance of particular url for query

A/B Test Design

• Strategy:– Compare two ranking algorithms by asking panelists to compare pairs

of search results

• Queries:– 1000 semi-random queries, filtered for family-friendly,

understandability• Users can select from a list of 20 queries

• URLS– Top 10 search results from 2 algorithms

• Voting:– 5 point scale, 7 replications– Each user rates 6 queries, one of which is a control query

• Control query has AV results on one side, random URLs on the other• Reject voters who take less than 10 seconds to vote

Query selection screen

Rating screen

A/B Test Scoring

• Test ran until we had 400 decisive votes– Margin of error = 5%

• Compute:– Majority Vote: count of queries where more than half

of the users said one engine was “somewhat better” or “much better”

– Total Vote: count of users that rated a result set “somewhat better” of “better” for each engine

• Compare percentages– test if one system ‘out votes’ the other– determine if the difference is statistically significant

Results

Queries with winner All accepted votes

Majority Unanimous “a little better” “much better”

AltaVista 37.6% 6.1% 24.4% 11.0%

SE1 37.3% 8.0% 22.2% 10.7%

Same 25.1% 2.6% 31.7%

Queries with winner All accepted votes

Majority Unanimous “a little better” “much better”

Good 98.1% 51.5% 24.4% 59.1%

Bad 0% 0% 4.7% 1.7%

Same 1.9% 0.6% 10.1%

• Control Votes (error bar = 1/sqrt(160) = 7.9%)

• Test One: AV vs SE1 (error bar = 1/sqrt(400) = 5%)

Results

Queries with winner All accepted votes

Majority Unanimous “a little better” “much better”

AltaVista 58.5% 13.4% 26.5% 16.3%

SE2 28.1% 4.6% 21.8% 8.9%

Same 13.4% 0.9% 26.4%

Queries with winner All accepted votes

Majority Unanimous “a little better” “much better”

SE1 35.4% 4.7% 28.2% 13.2%

SE2 40.6% 4.1% 29.0% 15.6%

Same 24.0% 1.9% 13.8%

• Test Three: SE1 Vs SE2

• Test Two: AV Vs SE2 (with UI issue)

Ranking

• Given 2.4 query terms, search 2B documents and return 10 highly relevant in 300 msecs– Problem queries:

• Travel (matches 32M documents)• John Ellis (which one)• Cobra (medical or animal)

• Query types– Navigational (known item retrieval)– Informational

• Ingredients– Keyword match (title, abstract, body)– Anchor Text (referring text)– Quality (link connectivity)– User Feedback (clickrate analysis)

The Components of Relevance

• First Generation:– Keyword matching

• Title and abstract worth more

• Second Generation:– Computed document authority

• Based on link analysis

– Anchor text matching• Webmaster voting

• Development Cycle:Tune Ranking

Evaluate Metrics

Connectivity

Connectivity Goals

• An indicator of authority– As measured by static links– Each link is a ‘vote’ in favor of a site– Webmasters are the voters

• Not all links are equal– Links from authoritative sites are worth more

• Introduces an interesting circularity– Votes from sites with many links are discounted

• Use your vote wisely– Discount navigational links

• Not all links are editorial– Account for link SPAM

Connectivity Network

A

B

• What is authority score for nodes A and B?

• Inlink computes:– A = 3– B = 2

• Page Rank Computes– A = .225– B = .295

Definitions

• Connectivity Graph– Nodes are pages (or hosts)– Directed edges are links– Graph edges can be represented as a transition matrix, A

• The ith row of A represents the links out from node i

• Authority score– Score associated with each node– Some function of inlinks to node and outlinks from node

• Simplest authority score is inlink count

• Contribution averaged over all outlinks

• Node score is the sum of contributions

• Fixed point equation

– If A is normalized• Each row sums to 1.0

Page Rank (Without Random Jump)

.1

.1 A (.25)

B (.3)

1/2

1/2

.1

ijj je

jrir

: )(

)()(

rAr

• A is a stochastic matrix– r(i) can be interpreted as a probability

• Suppose a surfer takes a outlink at random

• r(i) is the long run probability of landing at a particular node

– Solution to fixed point equation is the principal Eigen vector

• principal Eigen value is 1.0

• Solution can be found by iteration– If then

– Start with random initial value for r

– Iterate multiplication by A

• Contribution of smaller eigen values will drop out

– Final value is a good estimate of the fixed point solution

Page Rank Implications

rrA nrrA

• What’s the score for a node with no in-links?

• Revised equation

• Fixed point equation

• Probability interpretation– As before with chance of

jumping randomly

Page Rank (with random jump)

.1

.1 A (.225)

B (.293)

1/2

1/2

.1

ijj je

jr

Nir

: )(

)()1()(

Nji1

))1((

,

U

rAUr

= 0.1

Eigenrank

• Separates internal from external links– Internal transition matrix I– External transition matrix E

• Introduces a new parameter is the random jump probability is the probability of taking an internal link– (1 - - ) is the probability of taking an external link

• Revised equation

• Fixed point equation

• Probability interpretation chance of random jump chance of internal link– (1--) chance of external link

Eigenrank

.1

.1 A (.2)

B (.202)

1/2

1/2

.1

external:

internal: )(

)()1(

)(

)()(

ijjijj je

jr

je

jrNir

Nji1

))1((

,

U

rEIUr

= 0.1= 0.1

Computational Issues

• Nodes with no outlinks– Transition matrix with zero row

• Internal or external

– Leave out of computation(?)– Redistribute mass to random jump(?)

• Currently mass is redistributed– Complex formula that prefers external links

• Two scores– Authority score, a– Hub score, h

• Fixed Point equations– Authority

– Hub

– Principal Eigen vectors are solutions

Kleinberg

aAAhAa t

hAAaAh t t

SPAM

• Manipulation of content purely to influence ranking– Dictionary SPAM– Link sharing– Domain hi-jacking– Link farms

• Robotic use of search results– Meta-search engines– Search Engine optimizers– Fraud

Third Generation Technologies

Handling Ambiguity

Results for query: Cobra

Impression Tracking

Incoherent urls are those that receive high rank for a large

diversity of queries. Many incoherent urls indicate SPAM or a

bug (as in this case).

Clickrate Relevance Metric

Average highest rank clicked perceptibly increased with the release of

a new rank function.

User Interface

• Ranked result lists– Document summaries are critical

• Hit highlighting• Dynamic abstracts• url

– No recent innovation• Graphical presentations not well fit to the task

• Blending– Predefined segmentation

• e.g. Paid listing

– Intermixed with results from other sources• e.g. News

Future Trends

• Question Answering– WWW as language model

• Enables simple methods

• e.g. Dumais et al. (SIGIR 2002)

• New contexts– Ubiquitous Searching

• Toolbars, desktop, phone

– Implicit Searching• Computed links

• New Tasks– E.g. Local/ Country Search

Bibliography

• Modeling the Internet and the Web: Probabilistic Methods and Algorithmsby Pierre Baldi, Paolo Frasconi, and Padhraic SmythJohn Wiley & Sons; May 28, 2003

• Mining the Web: Analysis of Hypertext and Semi Structured Databy Soumen ChakrabartiMorgan Kaufmann; August 15, 2002

• The Anatomy of a Large-scale Hypertextual Web Search Engine by S. Brin and L. Page.7th International WWW Conference, Brisbane, Australia; April 1998.

• Websites:– http://www.searchenginewatch.com/– http://www.searchengineshowdown.com/

• Presentations– http://infonortics.com/searchengines/sh03/slides/evans.pdf