SlideShare una empresa de Scribd logo
1 de 26
Descargar para leer sin conexión
Hua Jiang & Kedar Sadekar
Feature Engineering with Time Travel
Jan 2018
Netflix Scale
▪ Started streaming videos
in 2007
▪ > 117M members
▪ > 190 countries
▪ > 1000 device types
▪ A third of peak US
downstream traffic
Create a page of recommendations
where the titles you are
most likely to watch and enjoy are
shown on the most visible parts of
the page
We Want to Help Members Find Great Content
We Want to Help Members Find Great Content
Title Ranking
Everything is a RecommendationRowSelection&Ordering
Recommendations are
driven by machine
learning algorithms
Over 80% of what
members watch comes
from our
recommendations
Image
• Try an idea offline using historical data to see if it
would have made better recommendations
• If it would, deploy a live A/B test to see if it performs
well in production
Running Experiments
Design Experiment
Collect Label Dataset
Offline Feature
Generation
Model Training
Compute
Validation Metrics
Model Testing
Design a New Experiment to Test Out Different Ideas
Offline
Experiment
Online
System
Online
AB Testing
Running Experiments
Offline Feature Generation - Feature Logging
• How to get features for offline training?
▪ Feature logging
▪ Pros: no need to compute offline
▪ Cons: delayed iteration for new features
Feature
Generator
Viewing
History
Service
MyList
Service
Thumbs
Service
Predictor
Facts Features
Log these
Recommendations
• How to get features for offline training?
Feature
Generator
Viewing
History
Service
MyList
Service
Thumbs
Service
Predictor
Facts Features
Log these
▪ Fact logging + time travel
Recommendations
Offline Feature Generation - Fact Logging
Offline Feature Generation - Fact Logging
Offline Feature Generation - Time Travel
Training Data
Fact Store Fact Store Fact Store
Feature
Encoders
Prepared
Data
S3
Snapshot
DeLorean: Offline
Feature Generation
Online Ranking /
Scoring Service
Model Training /
Validation / Testing
Offline Experiment
Online SystemViewing
History
Service
My List
Service
Ratings
Service
Online Feature
Generation
Deploy
models
Shared Feature
Encoders
Feature Generation - Online/Offline Parity
Feature Generation - Online/Offline Parity
Required
Data
Shared Feature
Encoders
Viewing History
Service
My List Service
Ratings
Service
Fact
Stores
Feature Generation from Logged Facts
S3
Snapshot
Model Training
Features
Training Data
Feature Model
Feature Encoders
Required
Features Data
Features
Fact Data
Required Data
1
3
42
5
6
Offline Feature Generation - Fact Logging
• Fact
▪ Input data for feature encoders
▪ Example: viewing history of member, my list of a member
• Temporal
▪ Facts are temporal i.e. they change with time
▪ Each online scoring service uses the latest value of a fact
Offline Feature Generation
▪ Pull based: Fact logging + offline feature generation
▪ Pros:
▪ Easy to add new features
▪ Cons:
▪ Not temporally accurate data
▪ Additional load on micro-services serving facts
• How to obtain features for offline training?
S3
User
Sets
Data
Snapshots Runs once
a day
S3
Snapshot
Viewing
History
Service
MyList
Service
Thumbs
Rating
Service
Snapshot data for
each user
Parquet
Feature Generation: Fact Logging - Pull based
Pull
Offline Feature Generation
▪ Push based: Fact logging + offline feature generation
▪ Pros:
▪ Easy to add new features.
▪ Temporally accurate facts
▪ Algorithm controls who to log
▪ Cons:
▪ Scale challenges
• How to obtain features for offline training?
Data
Snapshots
S3
Snapshot
User
Compute
Services
Viewing
History
Service
MyList
Service
Thumbs
Rating
Service
Feature Generation: Fact Logging - Push based
Push facts used for
compute
Data Pipeline
Offline Feature Generation
▪ Data pipeline load
▪ Multiple services logging (m facts * n services)
▪ Solution
▪ De-Duplication
▪ Considerations: Server v/s Client & TTL of data
• Push based Fact logging: Challenges
Data
Snapshots
S3
Snapshot
User
Compute
Services
Viewing
History
Service
MyList
Service
Thumbs
Rating
Service
Feature Generation: Fact Logging - Push based
Push facts
conditionally
Key Value
Store
Has a fact been
seen
Data Pipeline
Offline Feature Generation
▪ Read characteristics and performance
▪ 20-30 times more data being logged. S3 suited for storage
▪ Training data accessed is 1-5%, suited for point-query lookups
▪ Solution
▪ Hot cache for read performance
▪ Spark API thats seamless irrespective of access from cache or
from S3
• Push based Fact logging: Challenges
Data
Snapshots
S3
Snapshot
User
Compute
Services
Viewing
History
Service
MyList
Service
Thumbs
Rating
Service
Recent facts for
fast access
Feature Generation: Fact Logging - Push based
Push facts
conditionally
Key Value
Storage
Key Value
Store
Has a fact been
seen
APIData Pipeline
Conclusions
● Offline feature generation
○ Feature logging vs. fact logging
○ Time travel to retrieve fact
○ Online / offline parity
Conclusions ..
● Fact logging enabled
○ Time travel
○ Algorithm service controls when / who to log
○ Temporally accurate data
○ Log request level data used in computation
○ Scale to a very large number of members
Questions?

Más contenido relacionado

La actualidad más candente

Artwork Personalization at Netflix
Artwork Personalization at NetflixArtwork Personalization at Netflix
Artwork Personalization at Netflix
Justin Basilico
 

La actualidad más candente (20)

Sequential Decision Making in Recommendations
Sequential Decision Making in RecommendationsSequential Decision Making in Recommendations
Sequential Decision Making in Recommendations
 
Déjà Vu: The Importance of Time and Causality in Recommender Systems
Déjà Vu: The Importance of Time and Causality in Recommender SystemsDéjà Vu: The Importance of Time and Causality in Recommender Systems
Déjà Vu: The Importance of Time and Causality in Recommender Systems
 
Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
 Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se... Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
Deeper Things: How Netflix Leverages Deep Learning in Recommendations and Se...
 
Context Aware Recommendations at Netflix
Context Aware Recommendations at NetflixContext Aware Recommendations at Netflix
Context Aware Recommendations at Netflix
 
Contextualization at Netflix
Contextualization at NetflixContextualization at Netflix
Contextualization at Netflix
 
Calibrated Recommendations
Calibrated RecommendationsCalibrated Recommendations
Calibrated Recommendations
 
Netflix talk at ML Platform meetup Sep 2019
Netflix talk at ML Platform meetup Sep 2019Netflix talk at ML Platform meetup Sep 2019
Netflix talk at ML Platform meetup Sep 2019
 
A Multi-Armed Bandit Framework For Recommendations at Netflix
A Multi-Armed Bandit Framework For Recommendations at NetflixA Multi-Armed Bandit Framework For Recommendations at Netflix
A Multi-Armed Bandit Framework For Recommendations at Netflix
 
Making Netflix Machine Learning Algorithms Reliable
Making Netflix Machine Learning Algorithms ReliableMaking Netflix Machine Learning Algorithms Reliable
Making Netflix Machine Learning Algorithms Reliable
 
Past, Present & Future of Recommender Systems: An Industry Perspective
Past, Present & Future of Recommender Systems: An Industry PerspectivePast, Present & Future of Recommender Systems: An Industry Perspective
Past, Present & Future of Recommender Systems: An Industry Perspective
 
Learning a Personalized Homepage
Learning a Personalized HomepageLearning a Personalized Homepage
Learning a Personalized Homepage
 
Data council SF 2020 Building a Personalized Messaging System at Netflix
Data council SF 2020 Building a Personalized Messaging System at NetflixData council SF 2020 Building a Personalized Messaging System at Netflix
Data council SF 2020 Building a Personalized Messaging System at Netflix
 
ML Infra for Netflix Recommendations - AI NEXTCon talk
ML Infra for Netflix Recommendations - AI NEXTCon talkML Infra for Netflix Recommendations - AI NEXTCon talk
ML Infra for Netflix Recommendations - AI NEXTCon talk
 
Artwork Personalization at Netflix
Artwork Personalization at NetflixArtwork Personalization at Netflix
Artwork Personalization at Netflix
 
Recommendation at Netflix Scale
Recommendation at Netflix ScaleRecommendation at Netflix Scale
Recommendation at Netflix Scale
 
Recommending for the World
Recommending for the WorldRecommending for the World
Recommending for the World
 
Crafting Recommenders: the Shallow and the Deep of it!
Crafting Recommenders: the Shallow and the Deep of it! Crafting Recommenders: the Shallow and the Deep of it!
Crafting Recommenders: the Shallow and the Deep of it!
 
Recommendations for Building Machine Learning Software
Recommendations for Building Machine Learning SoftwareRecommendations for Building Machine Learning Software
Recommendations for Building Machine Learning Software
 
Personalized Page Generation for Browsing Recommendations
Personalized Page Generation for Browsing RecommendationsPersonalized Page Generation for Browsing Recommendations
Personalized Page Generation for Browsing Recommendations
 
Engagement, metrics and "recommenders"
Engagement, metrics and "recommenders"Engagement, metrics and "recommenders"
Engagement, metrics and "recommenders"
 

Similar a Netflix Recommendations Feature Engineering with Time Travel

Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...
Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...
Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...
Spark Summit
 

Similar a Netflix Recommendations Feature Engineering with Time Travel (20)

Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019 Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
 
Capturing speed of user experience using user timing api
Capturing speed of user experience using user timing apiCapturing speed of user experience using user timing api
Capturing speed of user experience using user timing api
 
Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...
Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...
Distributed Time Travel for Feature Generation by DB Tsai and Prasanna Padman...
 
Service Mapping.pptx
Service Mapping.pptxService Mapping.pptx
Service Mapping.pptx
 
Netflix factstore for recommendations - 2018
Netflix factstore  for recommendations - 2018Netflix factstore  for recommendations - 2018
Netflix factstore for recommendations - 2018
 
Fact Store at Scale for Netflix Recommendations with Nitin Sharma and Kedar S...
Fact Store at Scale for Netflix Recommendations with Nitin Sharma and Kedar S...Fact Store at Scale for Netflix Recommendations with Nitin Sharma and Kedar S...
Fact Store at Scale for Netflix Recommendations with Nitin Sharma and Kedar S...
 
Fact Store at Scale for Netflix Recommendations
Fact Store at Scale for Netflix RecommendationsFact Store at Scale for Netflix Recommendations
Fact Store at Scale for Netflix Recommendations
 
Netflix Recommendations - Fact Store
Netflix Recommendations - Fact Store Netflix Recommendations - Fact Store
Netflix Recommendations - Fact Store
 
SAIS2018 - Fact Store At Netflix Scale
SAIS2018 - Fact Store At Netflix ScaleSAIS2018 - Fact Store At Netflix Scale
SAIS2018 - Fact Store At Netflix Scale
 
Growing into a proactive Data Platform
Growing into a proactive Data PlatformGrowing into a proactive Data Platform
Growing into a proactive Data Platform
 
Linked in stream experimentation framework
Linked in stream experimentation frameworkLinked in stream experimentation framework
Linked in stream experimentation framework
 
How Totango uses Apache Spark
How Totango uses Apache SparkHow Totango uses Apache Spark
How Totango uses Apache Spark
 
Front end performance on Shopify.com
Front end performance on Shopify.comFront end performance on Shopify.com
Front end performance on Shopify.com
 
Real User Monitoring: Getting Real Data from Real Users in the Real World - S...
Real User Monitoring: Getting Real Data from Real Users in the Real World - S...Real User Monitoring: Getting Real Data from Real Users in the Real World - S...
Real User Monitoring: Getting Real Data from Real Users in the Real World - S...
 
AWS re:Invent 2016: Content and Data Platforms at Vevo: Rebuilding and Scalin...
AWS re:Invent 2016: Content and Data Platforms at Vevo: Rebuilding and Scalin...AWS re:Invent 2016: Content and Data Platforms at Vevo: Rebuilding and Scalin...
AWS re:Invent 2016: Content and Data Platforms at Vevo: Rebuilding and Scalin...
 
Webinar: Proactive Strategies for Finding and Fixing Performance Issues
Webinar: Proactive Strategies for Finding and Fixing Performance IssuesWebinar: Proactive Strategies for Finding and Fixing Performance Issues
Webinar: Proactive Strategies for Finding and Fixing Performance Issues
 
Machine Learning at Netflix Scale
Machine Learning at Netflix ScaleMachine Learning at Netflix Scale
Machine Learning at Netflix Scale
 
From Architecture to Analytics: A look at Simply Business’s data strategy
From Architecture to Analytics: A look at Simply Business’s data strategy From Architecture to Analytics: A look at Simply Business’s data strategy
From Architecture to Analytics: A look at Simply Business’s data strategy
 
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
Aprenda mais sobre sua aplicação e seus usuários com Application Insights (DN...
 
Data driven testing - slavik pashanin (eng)
Data driven testing - slavik pashanin (eng)Data driven testing - slavik pashanin (eng)
Data driven testing - slavik pashanin (eng)
 

Último

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Último (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Netflix Recommendations Feature Engineering with Time Travel

  • 1. Hua Jiang & Kedar Sadekar Feature Engineering with Time Travel Jan 2018
  • 2. Netflix Scale ▪ Started streaming videos in 2007 ▪ > 117M members ▪ > 190 countries ▪ > 1000 device types ▪ A third of peak US downstream traffic
  • 3. Create a page of recommendations where the titles you are most likely to watch and enjoy are shown on the most visible parts of the page We Want to Help Members Find Great Content
  • 4. We Want to Help Members Find Great Content
  • 5. Title Ranking Everything is a RecommendationRowSelection&Ordering Recommendations are driven by machine learning algorithms Over 80% of what members watch comes from our recommendations Image
  • 6. • Try an idea offline using historical data to see if it would have made better recommendations • If it would, deploy a live A/B test to see if it performs well in production Running Experiments
  • 7. Design Experiment Collect Label Dataset Offline Feature Generation Model Training Compute Validation Metrics Model Testing Design a New Experiment to Test Out Different Ideas Offline Experiment Online System Online AB Testing Running Experiments
  • 8. Offline Feature Generation - Feature Logging • How to get features for offline training? ▪ Feature logging ▪ Pros: no need to compute offline ▪ Cons: delayed iteration for new features Feature Generator Viewing History Service MyList Service Thumbs Service Predictor Facts Features Log these Recommendations
  • 9. • How to get features for offline training? Feature Generator Viewing History Service MyList Service Thumbs Service Predictor Facts Features Log these ▪ Fact logging + time travel Recommendations Offline Feature Generation - Fact Logging
  • 10. Offline Feature Generation - Fact Logging
  • 11. Offline Feature Generation - Time Travel Training Data Fact Store Fact Store Fact Store Feature Encoders Prepared Data
  • 12. S3 Snapshot DeLorean: Offline Feature Generation Online Ranking / Scoring Service Model Training / Validation / Testing Offline Experiment Online SystemViewing History Service My List Service Ratings Service Online Feature Generation Deploy models Shared Feature Encoders Feature Generation - Online/Offline Parity
  • 13. Feature Generation - Online/Offline Parity Required Data Shared Feature Encoders Viewing History Service My List Service Ratings Service Fact Stores
  • 14. Feature Generation from Logged Facts S3 Snapshot Model Training Features Training Data Feature Model Feature Encoders Required Features Data Features Fact Data Required Data 1 3 42 5 6
  • 15. Offline Feature Generation - Fact Logging • Fact ▪ Input data for feature encoders ▪ Example: viewing history of member, my list of a member • Temporal ▪ Facts are temporal i.e. they change with time ▪ Each online scoring service uses the latest value of a fact
  • 16. Offline Feature Generation ▪ Pull based: Fact logging + offline feature generation ▪ Pros: ▪ Easy to add new features ▪ Cons: ▪ Not temporally accurate data ▪ Additional load on micro-services serving facts • How to obtain features for offline training?
  • 17. S3 User Sets Data Snapshots Runs once a day S3 Snapshot Viewing History Service MyList Service Thumbs Rating Service Snapshot data for each user Parquet Feature Generation: Fact Logging - Pull based Pull
  • 18. Offline Feature Generation ▪ Push based: Fact logging + offline feature generation ▪ Pros: ▪ Easy to add new features. ▪ Temporally accurate facts ▪ Algorithm controls who to log ▪ Cons: ▪ Scale challenges • How to obtain features for offline training?
  • 20. Offline Feature Generation ▪ Data pipeline load ▪ Multiple services logging (m facts * n services) ▪ Solution ▪ De-Duplication ▪ Considerations: Server v/s Client & TTL of data • Push based Fact logging: Challenges
  • 21. Data Snapshots S3 Snapshot User Compute Services Viewing History Service MyList Service Thumbs Rating Service Feature Generation: Fact Logging - Push based Push facts conditionally Key Value Store Has a fact been seen Data Pipeline
  • 22. Offline Feature Generation ▪ Read characteristics and performance ▪ 20-30 times more data being logged. S3 suited for storage ▪ Training data accessed is 1-5%, suited for point-query lookups ▪ Solution ▪ Hot cache for read performance ▪ Spark API thats seamless irrespective of access from cache or from S3 • Push based Fact logging: Challenges
  • 23. Data Snapshots S3 Snapshot User Compute Services Viewing History Service MyList Service Thumbs Rating Service Recent facts for fast access Feature Generation: Fact Logging - Push based Push facts conditionally Key Value Storage Key Value Store Has a fact been seen APIData Pipeline
  • 24. Conclusions ● Offline feature generation ○ Feature logging vs. fact logging ○ Time travel to retrieve fact ○ Online / offline parity
  • 25. Conclusions .. ● Fact logging enabled ○ Time travel ○ Algorithm service controls when / who to log ○ Temporally accurate data ○ Log request level data used in computation ○ Scale to a very large number of members