Haystack 2019 - Towards a Learning To Rank Ecosystem @ Snag - We've got LTR to work! Now what? - Xun Wang

OpenSource Connections
OpenSource ConnectionsPrincipal, OpenSource Connections and Solr Consultant at OpenSource Connections
1
Towards a Learning To Rank
Ecosystem @ snag
---- We've got LTR to “work”, now what?
Xun Wang (xun.wang@snag.co)
2
Iterating LTR beyond v1
Agenda today
● Snag Overview
● Snag & Learning to Rank
● Troubleshooting Learning to Rank
● Elements of the LTR Ecosystem (LTR
2.0 initiatives)
3
Snag Overview
About Snag
4
Snag is an Hourly Job Marketplace
snag
● Marketplace health
● Member growth
● Revenue growth
Job-seekers
● Preference
● Qualifications
● Schedule
● Responsiveness
Employers &
Hiring Agencies
● Candidate volume
● Candidate quality
● Cost per hire/lead
Fabio
Rosati
90MM+ registered workers 150K+ hires per month 400K+ active locations
5
Hourly Jobs are Transactional
● Fragmented
Organized around “Shifts”. A worker
can be assigned 1 to 30+ hours per
week. Many hold multiple jobs
● High turnover
Workers stay at each job for 6 months
on average
● Lightly Skilled
Many hourly jobs require just a high
school diploma https://www.snag.co/employers/wp-content/uploads/2016/07/2016
_SOTHW_Report-3.pdf
6
Hourly Job Search is Open-ended
Schedule and location more
important than actual job duty
Queries not explicit (40% without keywords)
7
Matching Hourly Jobs
Recommendation
Search/IR
Explicit
Requests
Implicit
Feedbacks Activities
Job Inventory
Worker Profile Match
Query
Keywords
Query
Locations
Employer
Locations
Employer Profiles
Preference
Yield
Positions
Trey
Grainger
requires a hybrid approach
8
Snag & Learning to Rank
what we’ve built as v1
9
The Old System
● System too complex to accurately tune the boosts: Relevancy
whack-a-mole
● Inventory content frequently changes
● Lacks data driven input -- assumption driven without proper statistical
analysis
“If only there was a way to do this
differently…”
Jason
Kowalewsky
(This slide is a shout-out to Jason Kowalewsky, who jump-started Learning to Rank at Snag.
He was a terrific boss but routinely wrote sloppy slides like this. )
10
Learning to Rank Model Doug
Turnbull
Abandonment: 0
Relevancy Labels Features
Click: 1
Apply Intent: 2
bm25 scores on job title,
employer name, job type, ...
distance <position, seeker>
match scores on query location
(e.g. zip-code, city)
Bm25 scores on job description
query string attributes (e.g
length, query type)
posting attributes (e.g. position,
requirements, industry,
semantics representation)
.
.
.
lambdamart
Machine learning is everywhere
11
Training Pipeline Rishi
Kumar
Elizabeth
Haubert
Peter
Dixon-Moses
User events posting
collection
event
sampler
posting
sampler
training
data
parser
posting
ingestion
model
generator
feature
backfilling
relevancy label
parser
relevancy
scores
query
info
features training
data
ranking
model
posting
docs
user
events
training
index
search
engine
(dev)
search
engine
(prod)
“click model” +
HyperOpt
Scott
Stults
12
Last time we checked, LTR “worked” Aash
Srikar
...with varying degrees of success across query types
11%
27%
0%
-3%
0%
Old New
5%
% of searches 24% 13% 16% 30% 13%
15%
“Near me”
(50% native app traffic)
13
However, with great power... Everyone who
complained
“Why is my customer losing so many
applications? ”
“Why is this keyword search still
perform poorly?”
“I heard Google released a job search
service, why don’t we just use that?
Nobody beats Google in search!”
(Somebody actually set up a meeting with
Google Cloud Talent Solution while I was
on vacation…)
(OK this one’s on us. We actually made
the conversion rate better than before
but it’s still far from satisfactory)
(Because your customer has been gaming
our site for years and the new system
closed the loophole?)
14
Troubleshooting Learning to Rank
Issues we realized, fixed or stumbled upon while maintaining v1.0
15
Sample Complexity Simon
Hughes
Factorial state space, low capacity model, biased training data
● Many LTR algorithms approximate
ranking as a scoring problem due to
intractable state space (Perm(n, r)).
● Under-expressive model formulation
leads to high bias and overfitting
● Search log typically contains bias
introduced by previous ranking models
https://en.wikipedia.org/wiki/Sample_complexity
16
BM 2.5 scores can make spurious LTR features
Low precision on long texts, low recall on short texts
17
Presentation Bias Jason
Kowalewsky
Stephen
Ahearn
● Users’ propensity to click on an
search entry can be influenced by
factors besides relevancy (e.g.
position, yield, UX)
● Search logs often cannot tell active
skipping from passive neglects,
introducing lots of false negatives -
had to throw away lots of data
Not all clicks are created equal
Unbiased learning to rank: https://arxiv.org/abs/1608.04468
18
Search Metrics
Used in training, offline and online testing but often don’t align with business objectives
1
0
0
0
0
0
This SERP has NDCG
of 1 but 0 apply
0
2
1
0
0
0
This SERP has
lower NDCG but
one apply (ERR?)
KFC
KFC
Macy’s
KFC
KFC
Uber
...until you realize KFC
showed up 4 times for no
good reason
0
0
2
2
0
0
This SERP has the
lowest NDCG but the
best yield (MAP?)
http://olivier.chapelle.cc/pub/err.pdf
19
Bot detection
● Bot traffic consists of > 60% of
Snag’s web and mobile web traffic
● Bots behave very differently from
human users. (e.g. views 50+
pages, clicks every posting, etc.)
● Thus, even a 5~10% false
negative rate can significantly
contaminate LTR training data
Ali
Bartos
Carl
Gieringer
Garbage in, garbage out
20
SEO - External Query Pattern Shift
Problem:
Solution:
Outcome:
When Google doesn’t care about small businesses (not that it ever did)...
21
Elements of the LTR Ecosystem
Work in progress and future initiatives towards LTR 2.0
22
Search Engine needs Metadata
Availability Req. Example Integration Strategy
User/Query
Metadata real-time query string search engine plugin / external API
near-static user profile external API
near real-time search history streaming -> external API
Posting
Metadata static
industry, vector
embeddings external API -> search index
near real-time
yield, remaining
budget streaming -> external API -> search index
Relevancy real-time relevancy score search engine plugin / external API
for both offline training and real time querying
(current focus)
(long term goal)
23
Signals Platform
Signals is an Kafka-based data streaming
platform to stream & transform real-time
events data to various internal
consumers.
● Kafka backend to process real-time
comprehensive user behavior &
product activity data
● “Hermes” REST API layer to enable
signal publishing via http calls
● Avro schema registry to enforce
typed event definition
Corey
Fritz
Clean, granular data to train and serve machine learning models
24
Position Profile via Clustering
“CDL Training School ! We
train, We Hire, Guaranteed!”
“Truck
Driver”
use position ontology to align with query intent and boost recall
25
Posting Summarization via Topic Modeling
“ If you are an actor, actress, admin, agency, artist,
assistant, barista, bartender, broker, bus driver, cab
driver, cashier, chauffeur, cleaner, college student,
customer service agent, chef, contract worker, cook,
courier, designer, dishwasher, dog walker, driver,
entrepreneurs, fitness trainer, food prep, food services,
freelancer, handyman, hostess, insurance broker,
instructor, intern, janitor, maid, maintenance,
messenger, manager, management, musician, maid,
office assistant, office administrator, photographer,
private hire, professional driver, realtor, retail associate,
sales associate, sales person, security, server, students,
teacher, tutor, valet, veteran, waiter, waitress who is
looking for a flexible part-time, full-time or summer gig,
apply to <> to supplement your income this summer! ”
extracted from a real job description:
● Many postings contain
‘stuffed’ keywords to boost
their own recall at the
expense of others’
● Topic models “summarize”
each posting by the strength
of its key concepts to both
reduce spurious recall and
promote relevant recall
https://en.wikipedia.org/wiki/Latent_Dirichlet_allocation
(proof of concept) Goodbye keyword spamming
26
Posting Deduplication via LSH Robert
Mealey
● Large employers often supply generic job
descriptions that receive similar relevancy
scores for neighboring store locations,
affecting result diversity
● Locality-Sensitive Hashing (LSH) is used
to tag duplicates/near duplicates so that
all but one is shown in search results
https://en.wikipedia.org/wiki/Locality-sensitive_hashing
no, not 4 KFC jobs on the same SERP
27
Yield Management
● An interesting problem to the
LTR framework because users
behave agnostically of yield
information
● Requires careful user modeling
to “de-bias” relevancy signal
and streaming infrastructure to
update yield and budget
information
Quadrant III
Low Engagement,
Low yield
Quadrant II
High Engagement,
High Yield
(proof of concept) make some money, change the world
Anuradha
Uduwage
28
Additional Initiatives
● Language model for job postings
● Posting quality score
● User profile features/embeddings
● Enhanced AB testing and metrics
monitoring capabilities
● Real-time user-activity-based
features and related infrastructure
● Search result diversity
● Query expansion
● Named Entity detection
● Knowledge graph and
graph-based search
● Vector-based relevancy
● Neural ranking models
hopefully some of those will make themselves to Haystack 2020
29
Lessons Learned
30
Lessons Learned
● LTR isn’t just about the ML model or the search engine
Ranking models are only as expressive and/or accurate as the features and labels
we feed them. Investment in data infrastructure and data assets is absolutely
necessary and arguably more critical.
● Expectations from stakeholders need to be carefully managed
Workers, employers, internal teams, Google bots, etc. all have their own areas of
emphasis and sometimes may demand slightly different search experiences.
Navigating through those multiple party-tradeoffs is crucial for the success of the
search system.
31
We are Hiring!
Join us and solve some interesting data engineering and search relevance engineering problems !
Richmond, VA, too
32
Thank you.
Any questions?
1 of 32

Recommended

Establishing a relevance focused culture in a large organization by
Establishing a relevance focused culture in a large organizationEstablishing a relevance focused culture in a large organization
Establishing a relevance focused culture in a large organizationTom Burgmans
23 views16 slides
Haystack 2019 - Architectural considerations on search relevancy in the conte... by
Haystack 2019 - Architectural considerations on search relevancy in the conte...Haystack 2019 - Architectural considerations on search relevancy in the conte...
Haystack 2019 - Architectural considerations on search relevancy in the conte...OpenSource Connections
136 views13 slides
Haystack 2019 - Making the case for human judgement relevance testing - Tara ... by
Haystack 2019 - Making the case for human judgement relevance testing - Tara ...Haystack 2019 - Making the case for human judgement relevance testing - Tara ...
Haystack 2019 - Making the case for human judgement relevance testing - Tara ...OpenSource Connections
491 views29 slides
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit... by
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...
Haystack 2019 Lightning Talk - Quaerite a Search relevance evaluation toolkit...OpenSource Connections
250 views11 slides
An introduction to Elasticsearch's advanced relevance ranking toolbox by
An introduction to Elasticsearch's advanced relevance ranking toolboxAn introduction to Elasticsearch's advanced relevance ranking toolbox
An introduction to Elasticsearch's advanced relevance ranking toolboxElasticsearch
2.5K views155 slides
Made to Measure: Ranking Evaluation using Elasticsearch by
Made to Measure: Ranking Evaluation using ElasticsearchMade to Measure: Ranking Evaluation using Elasticsearch
Made to Measure: Ranking Evaluation using ElasticsearchDaniel Schneiter
602 views27 slides

More Related Content

What's hot

Personalized Re-Ranking of Documents by
Personalized Re-Ranking of DocumentsPersonalized Re-Ranking of Documents
Personalized Re-Ranking of Documentskswapna9
1K views11 slides
Reduce Query Time Up to 60% with Selective Search by
Reduce Query Time Up to 60% with Selective SearchReduce Query Time Up to 60% with Selective Search
Reduce Query Time Up to 60% with Selective SearchLucidworks
174 views19 slides
Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb... by
Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb...Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb...
Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb...Lucidworks
529 views44 slides
Real-time Recommendations for Retail: Architecture, Algorithms, and Design by
Real-time Recommendations for Retail: Architecture, Algorithms, and DesignReal-time Recommendations for Retail: Architecture, Algorithms, and Design
Real-time Recommendations for Retail: Architecture, Algorithms, and DesignJuliet Hougland
5K views54 slides
Agnes Molnar - Scoping and Enterprise Search Implementation by
Agnes Molnar - Scoping and Enterprise Search ImplementationAgnes Molnar - Scoping and Enterprise Search Implementation
Agnes Molnar - Scoping and Enterprise Search ImplementationAgnes Molnar
458 views8 slides
Felix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINE by
Felix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINEFelix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINE
Felix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINEsemanticsconference
958 views14 slides

What's hot(20)

Personalized Re-Ranking of Documents by kswapna9
Personalized Re-Ranking of DocumentsPersonalized Re-Ranking of Documents
Personalized Re-Ranking of Documents
kswapna91K views
Reduce Query Time Up to 60% with Selective Search by Lucidworks
Reduce Query Time Up to 60% with Selective SearchReduce Query Time Up to 60% with Selective Search
Reduce Query Time Up to 60% with Selective Search
Lucidworks174 views
Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb... by Lucidworks
Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb...Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb...
Scaling Box-Search: Gearing up for Petabyte Scale - Shubhro Roy & Anthony Urb...
Lucidworks529 views
Real-time Recommendations for Retail: Architecture, Algorithms, and Design by Juliet Hougland
Real-time Recommendations for Retail: Architecture, Algorithms, and DesignReal-time Recommendations for Retail: Architecture, Algorithms, and Design
Real-time Recommendations for Retail: Architecture, Algorithms, and Design
Juliet Hougland5K views
Agnes Molnar - Scoping and Enterprise Search Implementation by Agnes Molnar
Agnes Molnar - Scoping and Enterprise Search ImplementationAgnes Molnar - Scoping and Enterprise Search Implementation
Agnes Molnar - Scoping and Enterprise Search Implementation
Agnes Molnar458 views
Felix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINE by semanticsconference
Felix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINEFelix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINE
Felix Burkhardt | ARCHITECTURE FOR A QUESTION ANSWERING MACHINE
Webinar: How to (Finally!) Get Relevant Results From SharePoint’s Search by Lucidworks
Webinar: How to (Finally!) Get Relevant Results From SharePoint’s SearchWebinar: How to (Finally!) Get Relevant Results From SharePoint’s Search
Webinar: How to (Finally!) Get Relevant Results From SharePoint’s Search
Lucidworks432 views
Commercializing Alternative Data by Databricks
Commercializing Alternative DataCommercializing Alternative Data
Commercializing Alternative Data
Databricks351 views
Productionising Machine Learning Models by Tash Bickley
Productionising Machine Learning ModelsProductionising Machine Learning Models
Productionising Machine Learning Models
Tash Bickley206 views
Enterprise search Information by Netwoven Inc.
Enterprise search Information Enterprise search Information
Enterprise search Information
Netwoven Inc. 338 views
Casablanca SharePoint Days Power User Search Tips by Joel Oleson
Casablanca SharePoint Days Power User Search TipsCasablanca SharePoint Days Power User Search Tips
Casablanca SharePoint Days Power User Search Tips
Joel Oleson1.3K views
Question Answering and Virtual Assistants with Deep Learning by Lucidworks
Question Answering and Virtual Assistants with Deep LearningQuestion Answering and Virtual Assistants with Deep Learning
Question Answering and Virtual Assistants with Deep Learning
Lucidworks226 views
Enterprise Search in the Big Data Era: Recent Developments and Open Challenges by Yunyao Li
Enterprise Search in the Big Data Era: Recent Developments and Open ChallengesEnterprise Search in the Big Data Era: Recent Developments and Open Challenges
Enterprise Search in the Big Data Era: Recent Developments and Open Challenges
Yunyao Li2.8K views
Optimize HR From Hire To Retire With Oracle BI Cloud Service for E-Business S... by KPI Partners
Optimize HR From Hire To Retire With Oracle BI Cloud Service for E-Business S...Optimize HR From Hire To Retire With Oracle BI Cloud Service for E-Business S...
Optimize HR From Hire To Retire With Oracle BI Cloud Service for E-Business S...
KPI Partners1.6K views
Modelling Customer Lifetime Revenue for Subscription Business by Databricks
Modelling Customer Lifetime Revenue for Subscription BusinessModelling Customer Lifetime Revenue for Subscription Business
Modelling Customer Lifetime Revenue for Subscription Business
Databricks391 views
Cloud Analytics for E-Business Suite by KPI Partners
Cloud Analytics for E-Business SuiteCloud Analytics for E-Business Suite
Cloud Analytics for E-Business Suite
KPI Partners1.5K views
FrugalML: Using ML APIs More Accurately and Cheaply by Databricks
FrugalML: Using ML APIs More Accurately and CheaplyFrugalML: Using ML APIs More Accurately and Cheaply
FrugalML: Using ML APIs More Accurately and Cheaply
Databricks181 views

Similar to Haystack 2019 - Towards a Learning To Rank Ecosystem @ Snag - We've got LTR to work! Now what? - Xun Wang

Haystack- Learning to rank in an hourly job market by
Haystack- Learning to rank in an hourly job market Haystack- Learning to rank in an hourly job market
Haystack- Learning to rank in an hourly job market Xun Wang
665 views49 slides
Introduction-To-RPA_1.pptx by
Introduction-To-RPA_1.pptxIntroduction-To-RPA_1.pptx
Introduction-To-RPA_1.pptxRohit Radhakrishnan
74.7K views35 slides
Adoption of Robotic Automation Process by
Adoption of Robotic Automation ProcessAdoption of Robotic Automation Process
Adoption of Robotic Automation ProcessMukund Wangikar
1.8K views28 slides
Uncovering hidden stories in logs! by
Uncovering hidden stories in logs!Uncovering hidden stories in logs!
Uncovering hidden stories in logs!Chandan Jog
58 views20 slides
Webinar - Know Your Customer - Arya (20160526) by
Webinar - Know Your Customer - Arya (20160526)Webinar - Know Your Customer - Arya (20160526)
Webinar - Know Your Customer - Arya (20160526)Turi, Inc.
610 views24 slides
The future Proof Financial: Fintech by
The future Proof Financial: FintechThe future Proof Financial: Fintech
The future Proof Financial: FintechMartijn Zoet
656 views145 slides

Similar to Haystack 2019 - Towards a Learning To Rank Ecosystem @ Snag - We've got LTR to work! Now what? - Xun Wang(20)

Haystack- Learning to rank in an hourly job market by Xun Wang
Haystack- Learning to rank in an hourly job market Haystack- Learning to rank in an hourly job market
Haystack- Learning to rank in an hourly job market
Xun Wang665 views
Adoption of Robotic Automation Process by Mukund Wangikar
Adoption of Robotic Automation ProcessAdoption of Robotic Automation Process
Adoption of Robotic Automation Process
Mukund Wangikar1.8K views
Uncovering hidden stories in logs! by Chandan Jog
Uncovering hidden stories in logs!Uncovering hidden stories in logs!
Uncovering hidden stories in logs!
Chandan Jog58 views
Webinar - Know Your Customer - Arya (20160526) by Turi, Inc.
Webinar - Know Your Customer - Arya (20160526)Webinar - Know Your Customer - Arya (20160526)
Webinar - Know Your Customer - Arya (20160526)
Turi, Inc.610 views
The future Proof Financial: Fintech by Martijn Zoet
The future Proof Financial: FintechThe future Proof Financial: Fintech
The future Proof Financial: Fintech
Martijn Zoet656 views
SmartRecruiters Corporate Edition by Michelle Cowden
SmartRecruiters Corporate Edition SmartRecruiters Corporate Edition
SmartRecruiters Corporate Edition
Michelle Cowden321 views
Epam BI - Near Realtime Marketing Support System by Dmitry Tolpeko
Epam BI - Near Realtime Marketing Support SystemEpam BI - Near Realtime Marketing Support System
Epam BI - Near Realtime Marketing Support System
Dmitry Tolpeko742 views
Leveraging Machine Learning for Competitive Advantage at Search Party by Dylan Hogg
Leveraging Machine Learning for Competitive Advantage at Search PartyLeveraging Machine Learning for Competitive Advantage at Search Party
Leveraging Machine Learning for Competitive Advantage at Search Party
Dylan Hogg1.5K views
Leveraging Machine Learning for Competitive Advantage by Dylan Hogg - Search ... by Search Party
Leveraging Machine Learning for Competitive Advantage by Dylan Hogg - Search ...Leveraging Machine Learning for Competitive Advantage by Dylan Hogg - Search ...
Leveraging Machine Learning for Competitive Advantage by Dylan Hogg - Search ...
Search Party281 views
Job Street Impact Recruitment Automation by vikashmodi
Job Street Impact Recruitment AutomationJob Street Impact Recruitment Automation
Job Street Impact Recruitment Automation
vikashmodi1.5K views
Aen010 Stroka 091907 by Dreamforce07
Aen010 Stroka 091907Aen010 Stroka 091907
Aen010 Stroka 091907
Dreamforce07391 views
HRU_EPAM_April2016_v1 by ddiddo
HRU_EPAM_April2016_v1HRU_EPAM_April2016_v1
HRU_EPAM_April2016_v1
ddiddo183 views
Recruitment Software- TalentRecruit: Industry's Best Recruitment Software by Talent-Recruit
Recruitment Software- TalentRecruit: Industry's Best Recruitment SoftwareRecruitment Software- TalentRecruit: Industry's Best Recruitment Software
Recruitment Software- TalentRecruit: Industry's Best Recruitment Software
Talent-Recruit4.5K views
WORKSHOP: STRATEGY AND SUCCESS WITH OFFICE 365: PRACTICAL TOOLS AND TECHNIQUE... by Richard Harbridge
WORKSHOP: STRATEGY AND SUCCESS WITH OFFICE 365: PRACTICAL TOOLS AND TECHNIQUE...WORKSHOP: STRATEGY AND SUCCESS WITH OFFICE 365: PRACTICAL TOOLS AND TECHNIQUE...
WORKSHOP: STRATEGY AND SUCCESS WITH OFFICE 365: PRACTICAL TOOLS AND TECHNIQUE...
Richard Harbridge363 views
Rpa ai automation webinar by new, cfgi, ui path 11 82018 by Bob Fitzpatrick
Rpa ai automation webinar by new, cfgi, ui path 11 82018Rpa ai automation webinar by new, cfgi, ui path 11 82018
Rpa ai automation webinar by new, cfgi, ui path 11 82018
Bob Fitzpatrick571 views
Luxoft Personnel_Presentation in English by IMorgulis
Luxoft Personnel_Presentation in EnglishLuxoft Personnel_Presentation in English
Luxoft Personnel_Presentation in English
IMorgulis472 views
Luxoft Personnel _ presentation (In English) by IMorgulis
Luxoft Personnel _ presentation (In English)Luxoft Personnel _ presentation (In English)
Luxoft Personnel _ presentation (In English)
IMorgulis1.8K views

More from OpenSource Connections

Encores by
EncoresEncores
EncoresOpenSource Connections
2K views53 slides
Test driven relevancy by
Test driven relevancyTest driven relevancy
Test driven relevancyOpenSource Connections
272 views20 slides
How To Structure Your Search Team for Success by
How To Structure Your Search Team for SuccessHow To Structure Your Search Team for Success
How To Structure Your Search Team for SuccessOpenSource Connections
162 views25 slides
The right path to making search relevant - Taxonomy Bootcamp London 2019 by
The right path to making search relevant  - Taxonomy Bootcamp London 2019The right path to making search relevant  - Taxonomy Bootcamp London 2019
The right path to making search relevant - Taxonomy Bootcamp London 2019OpenSource Connections
995 views56 slides
Payloads and OCR with Solr by
Payloads and OCR with SolrPayloads and OCR with Solr
Payloads and OCR with SolrOpenSource Connections
655 views22 slides
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull by
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullHaystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullOpenSource Connections
498 views5 slides

More from OpenSource Connections(20)

The right path to making search relevant - Taxonomy Bootcamp London 2019 by OpenSource Connections
The right path to making search relevant  - Taxonomy Bootcamp London 2019The right path to making search relevant  - Taxonomy Bootcamp London 2019
The right path to making search relevant - Taxonomy Bootcamp London 2019
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull by OpenSource Connections
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie HullHaystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - The Future of Quepid - Charlie Hull
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison by OpenSource Connections
Haystack 2019 Lightning Talk - State of Apache Tika - Tim AllisonHaystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - State of Apache Tika - Tim Allison
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ... by OpenSource Connections
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Relevance on 17 million full text documents - ...
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj by OpenSource Connections
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj BharadwajHaystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 Lightning Talk - Solr Cloud on Kubernetes - Manoj Bharadwaj
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl by OpenSource Connections
Haystack 2019 - Search-based recommendations at Politico - Ryan KohlHaystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger by OpenSource Connections
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey GraingerHaystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Natural Language Search with Knowledge Graphs - Trey Grainger
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh... by OpenSource Connections
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Search Logs + Machine Learning = Auto-Tagging Inventory - Joh...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse... by OpenSource Connections
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Improving Search Relevance with Numeric Features in Elasticse...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber... by OpenSource Connections
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Custom Solr Query Parser Design Option, and Pros & Cons - Ber...
Haystack 2019 - Establishing a relevance focused culture in a large organizat... by OpenSource Connections
Haystack 2019 - Establishing a relevance focused culture in a large organizat...Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Establishing a relevance focused culture in a large organizat...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz... by OpenSource Connections
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
Haystack 2019 - Solving for Satisfaction: Introduction to Click Models - Eliz...
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via by OpenSource Connections
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
2019 Haystack - How The New York Times Tackles Relevance - Jeremiah Via
Haystack 2019 - Addressing variance in AB tests: Interleaved evaluation of ra... by OpenSource Connections
Haystack 2019 - Addressing variance in AB tests: Interleaved evaluation of ra...Haystack 2019 - Addressing variance in AB tests: Interleaved evaluation of ra...
Haystack 2019 - Addressing variance in AB tests: Interleaved evaluation of ra...
Haystack 2019 - Beyond The Search Engine: Improving Relevancy through Query E... by OpenSource Connections
Haystack 2019 - Beyond The Search Engine: Improving Relevancy through Query E...Haystack 2019 - Beyond The Search Engine: Improving Relevancy through Query E...
Haystack 2019 - Beyond The Search Engine: Improving Relevancy through Query E...

Recently uploaded

LIVE OAK MEMORIAL PARK.pptx by
LIVE OAK MEMORIAL PARK.pptxLIVE OAK MEMORIAL PARK.pptx
LIVE OAK MEMORIAL PARK.pptxms2332always
7 views6 slides
Listed Instruments Survey 2022.pptx by
Listed Instruments Survey  2022.pptxListed Instruments Survey  2022.pptx
Listed Instruments Survey 2022.pptxsecretariat4
121 views12 slides
AZConf 2023 - Considerations for LLMOps: Running LLMs in production by
AZConf 2023 - Considerations for LLMOps: Running LLMs in productionAZConf 2023 - Considerations for LLMOps: Running LLMs in production
AZConf 2023 - Considerations for LLMOps: Running LLMs in productionSARADINDU SENGUPTA
9 views16 slides
Custom Tag Manager Templates by
Custom Tag Manager TemplatesCustom Tag Manager Templates
Custom Tag Manager TemplatesMarkus Baersch
30 views17 slides
DGST Methodology Presentation.pdf by
DGST Methodology Presentation.pdfDGST Methodology Presentation.pdf
DGST Methodology Presentation.pdfmaddierlegum
7 views9 slides
Analytics Center of Excellence | Data CoE |Analytics CoE| WNS Triange by
Analytics Center of Excellence | Data CoE |Analytics CoE| WNS TriangeAnalytics Center of Excellence | Data CoE |Analytics CoE| WNS Triange
Analytics Center of Excellence | Data CoE |Analytics CoE| WNS TriangeRNayak3
5 views6 slides

Recently uploaded(20)

LIVE OAK MEMORIAL PARK.pptx by ms2332always
LIVE OAK MEMORIAL PARK.pptxLIVE OAK MEMORIAL PARK.pptx
LIVE OAK MEMORIAL PARK.pptx
ms2332always7 views
Listed Instruments Survey 2022.pptx by secretariat4
Listed Instruments Survey  2022.pptxListed Instruments Survey  2022.pptx
Listed Instruments Survey 2022.pptx
secretariat4121 views
AZConf 2023 - Considerations for LLMOps: Running LLMs in production by SARADINDU SENGUPTA
AZConf 2023 - Considerations for LLMOps: Running LLMs in productionAZConf 2023 - Considerations for LLMOps: Running LLMs in production
AZConf 2023 - Considerations for LLMOps: Running LLMs in production
DGST Methodology Presentation.pdf by maddierlegum
DGST Methodology Presentation.pdfDGST Methodology Presentation.pdf
DGST Methodology Presentation.pdf
maddierlegum7 views
Analytics Center of Excellence | Data CoE |Analytics CoE| WNS Triange by RNayak3
Analytics Center of Excellence | Data CoE |Analytics CoE| WNS TriangeAnalytics Center of Excellence | Data CoE |Analytics CoE| WNS Triange
Analytics Center of Excellence | Data CoE |Analytics CoE| WNS Triange
RNayak35 views
Games, Queries, and Argumentation Frameworks: Time for a Family Reunion by Bertram Ludäscher
Games, Queries, and Argumentation Frameworks: Time for a Family ReunionGames, Queries, and Argumentation Frameworks: Time for a Family Reunion
Games, Queries, and Argumentation Frameworks: Time for a Family Reunion
K-Drama Recommendation Using Python by FridaPutriassa
K-Drama Recommendation Using PythonK-Drama Recommendation Using Python
K-Drama Recommendation Using Python
FridaPutriassa5 views
Product Research sample.pdf by AllenSingson
Product Research sample.pdfProduct Research sample.pdf
Product Research sample.pdf
AllenSingson33 views
CRM stick or twist.pptx by info828217
CRM stick or twist.pptxCRM stick or twist.pptx
CRM stick or twist.pptx
info82821711 views
GDG Cloud Community Day 2022 - Managing data quality in Machine Learning by SARADINDU SENGUPTA
GDG Cloud Community Day 2022 -  Managing data quality in Machine LearningGDG Cloud Community Day 2022 -  Managing data quality in Machine Learning
GDG Cloud Community Day 2022 - Managing data quality in Machine Learning
Pydata Global 2023 - How can a learnt model unlearn something by SARADINDU SENGUPTA
Pydata Global 2023 - How can a learnt model unlearn somethingPydata Global 2023 - How can a learnt model unlearn something
Pydata Global 2023 - How can a learnt model unlearn something
Lack of communication among family.pptx by ahmed164023
Lack of communication among family.pptxLack of communication among family.pptx
Lack of communication among family.pptx
ahmed16402315 views
Data about the sector workshop by info828217
Data about the sector workshopData about the sector workshop
Data about the sector workshop
info82821729 views
6498-Butun_Beyinli_Cocuq-Daniel_J.Siegel-Tina_Payne_Bryson-2011-259s.pdf by 10urkyr34
6498-Butun_Beyinli_Cocuq-Daniel_J.Siegel-Tina_Payne_Bryson-2011-259s.pdf6498-Butun_Beyinli_Cocuq-Daniel_J.Siegel-Tina_Payne_Bryson-2011-259s.pdf
6498-Butun_Beyinli_Cocuq-Daniel_J.Siegel-Tina_Payne_Bryson-2011-259s.pdf
10urkyr347 views
4_4_WP_4_06_ND_Model.pptx by d6fmc6kwd4
4_4_WP_4_06_ND_Model.pptx4_4_WP_4_06_ND_Model.pptx
4_4_WP_4_06_ND_Model.pptx
d6fmc6kwd47 views

Haystack 2019 - Towards a Learning To Rank Ecosystem @ Snag - We've got LTR to work! Now what? - Xun Wang

  • 1. 1 Towards a Learning To Rank Ecosystem @ snag ---- We've got LTR to “work”, now what? Xun Wang (xun.wang@snag.co)
  • 2. 2 Iterating LTR beyond v1 Agenda today ● Snag Overview ● Snag & Learning to Rank ● Troubleshooting Learning to Rank ● Elements of the LTR Ecosystem (LTR 2.0 initiatives)
  • 4. 4 Snag is an Hourly Job Marketplace snag ● Marketplace health ● Member growth ● Revenue growth Job-seekers ● Preference ● Qualifications ● Schedule ● Responsiveness Employers & Hiring Agencies ● Candidate volume ● Candidate quality ● Cost per hire/lead Fabio Rosati 90MM+ registered workers 150K+ hires per month 400K+ active locations
  • 5. 5 Hourly Jobs are Transactional ● Fragmented Organized around “Shifts”. A worker can be assigned 1 to 30+ hours per week. Many hold multiple jobs ● High turnover Workers stay at each job for 6 months on average ● Lightly Skilled Many hourly jobs require just a high school diploma https://www.snag.co/employers/wp-content/uploads/2016/07/2016 _SOTHW_Report-3.pdf
  • 6. 6 Hourly Job Search is Open-ended Schedule and location more important than actual job duty Queries not explicit (40% without keywords)
  • 7. 7 Matching Hourly Jobs Recommendation Search/IR Explicit Requests Implicit Feedbacks Activities Job Inventory Worker Profile Match Query Keywords Query Locations Employer Locations Employer Profiles Preference Yield Positions Trey Grainger requires a hybrid approach
  • 8. 8 Snag & Learning to Rank what we’ve built as v1
  • 9. 9 The Old System ● System too complex to accurately tune the boosts: Relevancy whack-a-mole ● Inventory content frequently changes ● Lacks data driven input -- assumption driven without proper statistical analysis “If only there was a way to do this differently…” Jason Kowalewsky (This slide is a shout-out to Jason Kowalewsky, who jump-started Learning to Rank at Snag. He was a terrific boss but routinely wrote sloppy slides like this. )
  • 10. 10 Learning to Rank Model Doug Turnbull Abandonment: 0 Relevancy Labels Features Click: 1 Apply Intent: 2 bm25 scores on job title, employer name, job type, ... distance <position, seeker> match scores on query location (e.g. zip-code, city) Bm25 scores on job description query string attributes (e.g length, query type) posting attributes (e.g. position, requirements, industry, semantics representation) . . . lambdamart Machine learning is everywhere
  • 11. 11 Training Pipeline Rishi Kumar Elizabeth Haubert Peter Dixon-Moses User events posting collection event sampler posting sampler training data parser posting ingestion model generator feature backfilling relevancy label parser relevancy scores query info features training data ranking model posting docs user events training index search engine (dev) search engine (prod) “click model” + HyperOpt Scott Stults
  • 12. 12 Last time we checked, LTR “worked” Aash Srikar ...with varying degrees of success across query types 11% 27% 0% -3% 0% Old New 5% % of searches 24% 13% 16% 30% 13% 15% “Near me” (50% native app traffic)
  • 13. 13 However, with great power... Everyone who complained “Why is my customer losing so many applications? ” “Why is this keyword search still perform poorly?” “I heard Google released a job search service, why don’t we just use that? Nobody beats Google in search!” (Somebody actually set up a meeting with Google Cloud Talent Solution while I was on vacation…) (OK this one’s on us. We actually made the conversion rate better than before but it’s still far from satisfactory) (Because your customer has been gaming our site for years and the new system closed the loophole?)
  • 14. 14 Troubleshooting Learning to Rank Issues we realized, fixed or stumbled upon while maintaining v1.0
  • 15. 15 Sample Complexity Simon Hughes Factorial state space, low capacity model, biased training data ● Many LTR algorithms approximate ranking as a scoring problem due to intractable state space (Perm(n, r)). ● Under-expressive model formulation leads to high bias and overfitting ● Search log typically contains bias introduced by previous ranking models https://en.wikipedia.org/wiki/Sample_complexity
  • 16. 16 BM 2.5 scores can make spurious LTR features Low precision on long texts, low recall on short texts
  • 17. 17 Presentation Bias Jason Kowalewsky Stephen Ahearn ● Users’ propensity to click on an search entry can be influenced by factors besides relevancy (e.g. position, yield, UX) ● Search logs often cannot tell active skipping from passive neglects, introducing lots of false negatives - had to throw away lots of data Not all clicks are created equal Unbiased learning to rank: https://arxiv.org/abs/1608.04468
  • 18. 18 Search Metrics Used in training, offline and online testing but often don’t align with business objectives 1 0 0 0 0 0 This SERP has NDCG of 1 but 0 apply 0 2 1 0 0 0 This SERP has lower NDCG but one apply (ERR?) KFC KFC Macy’s KFC KFC Uber ...until you realize KFC showed up 4 times for no good reason 0 0 2 2 0 0 This SERP has the lowest NDCG but the best yield (MAP?) http://olivier.chapelle.cc/pub/err.pdf
  • 19. 19 Bot detection ● Bot traffic consists of > 60% of Snag’s web and mobile web traffic ● Bots behave very differently from human users. (e.g. views 50+ pages, clicks every posting, etc.) ● Thus, even a 5~10% false negative rate can significantly contaminate LTR training data Ali Bartos Carl Gieringer Garbage in, garbage out
  • 20. 20 SEO - External Query Pattern Shift Problem: Solution: Outcome: When Google doesn’t care about small businesses (not that it ever did)...
  • 21. 21 Elements of the LTR Ecosystem Work in progress and future initiatives towards LTR 2.0
  • 22. 22 Search Engine needs Metadata Availability Req. Example Integration Strategy User/Query Metadata real-time query string search engine plugin / external API near-static user profile external API near real-time search history streaming -> external API Posting Metadata static industry, vector embeddings external API -> search index near real-time yield, remaining budget streaming -> external API -> search index Relevancy real-time relevancy score search engine plugin / external API for both offline training and real time querying (current focus) (long term goal)
  • 23. 23 Signals Platform Signals is an Kafka-based data streaming platform to stream & transform real-time events data to various internal consumers. ● Kafka backend to process real-time comprehensive user behavior & product activity data ● “Hermes” REST API layer to enable signal publishing via http calls ● Avro schema registry to enforce typed event definition Corey Fritz Clean, granular data to train and serve machine learning models
  • 24. 24 Position Profile via Clustering “CDL Training School ! We train, We Hire, Guaranteed!” “Truck Driver” use position ontology to align with query intent and boost recall
  • 25. 25 Posting Summarization via Topic Modeling “ If you are an actor, actress, admin, agency, artist, assistant, barista, bartender, broker, bus driver, cab driver, cashier, chauffeur, cleaner, college student, customer service agent, chef, contract worker, cook, courier, designer, dishwasher, dog walker, driver, entrepreneurs, fitness trainer, food prep, food services, freelancer, handyman, hostess, insurance broker, instructor, intern, janitor, maid, maintenance, messenger, manager, management, musician, maid, office assistant, office administrator, photographer, private hire, professional driver, realtor, retail associate, sales associate, sales person, security, server, students, teacher, tutor, valet, veteran, waiter, waitress who is looking for a flexible part-time, full-time or summer gig, apply to <> to supplement your income this summer! ” extracted from a real job description: ● Many postings contain ‘stuffed’ keywords to boost their own recall at the expense of others’ ● Topic models “summarize” each posting by the strength of its key concepts to both reduce spurious recall and promote relevant recall https://en.wikipedia.org/wiki/Latent_Dirichlet_allocation (proof of concept) Goodbye keyword spamming
  • 26. 26 Posting Deduplication via LSH Robert Mealey ● Large employers often supply generic job descriptions that receive similar relevancy scores for neighboring store locations, affecting result diversity ● Locality-Sensitive Hashing (LSH) is used to tag duplicates/near duplicates so that all but one is shown in search results https://en.wikipedia.org/wiki/Locality-sensitive_hashing no, not 4 KFC jobs on the same SERP
  • 27. 27 Yield Management ● An interesting problem to the LTR framework because users behave agnostically of yield information ● Requires careful user modeling to “de-bias” relevancy signal and streaming infrastructure to update yield and budget information Quadrant III Low Engagement, Low yield Quadrant II High Engagement, High Yield (proof of concept) make some money, change the world Anuradha Uduwage
  • 28. 28 Additional Initiatives ● Language model for job postings ● Posting quality score ● User profile features/embeddings ● Enhanced AB testing and metrics monitoring capabilities ● Real-time user-activity-based features and related infrastructure ● Search result diversity ● Query expansion ● Named Entity detection ● Knowledge graph and graph-based search ● Vector-based relevancy ● Neural ranking models hopefully some of those will make themselves to Haystack 2020
  • 30. 30 Lessons Learned ● LTR isn’t just about the ML model or the search engine Ranking models are only as expressive and/or accurate as the features and labels we feed them. Investment in data infrastructure and data assets is absolutely necessary and arguably more critical. ● Expectations from stakeholders need to be carefully managed Workers, employers, internal teams, Google bots, etc. all have their own areas of emphasis and sometimes may demand slightly different search experiences. Navigating through those multiple party-tradeoffs is crucial for the success of the search system.
  • 31. 31 We are Hiring! Join us and solve some interesting data engineering and search relevance engineering problems ! Richmond, VA, too