Looking For Steam Players - Insight Project

Preview:

Citation preview

Now Looking for Players… By: Margery (Midge) Hines

Now Looking for Players… By: Margery (Midge) Hines

Now Looking for Players… By: Margery (Midge) Hines

Now Looking for Players… By: Margery (Midge) Hines

Measuring Similarity

𝑢𝑠𝑒𝑟𝑠

𝑔𝑎𝑚𝑒𝑠

𝑢1 𝑢2 𝑢3 𝑢4 …

𝑢1

𝑢2

𝑢3

𝑢4

1

𝑚32

𝑚42

𝑚12

𝑚21

𝑚41

1

1

𝑚23

1

𝑚31

𝑚13 𝑚14

𝑚42 𝑚43

𝑚34

Rank to find top user matches!

𝑢1 𝑢2 𝑢3 𝑢4 …

𝑔1

𝑔2

𝑔3

𝑔4

𝑝11

𝑝32

𝑝42

𝑝12

𝑝21

𝑝41

?

?

?

?

?

?

?

?

𝑝23

𝑝42

𝑢1 𝑢2 𝑢3 𝑢4 …

𝑔1

𝑔2

𝑔3

𝑔4

𝑟11

𝑟32

𝑟 42

𝑟12

𝑟21

𝑟 41

?

?

?

?

?

?

?

?

𝑟23

𝑟 42

Compute Cosine

Similarity

Compute Cosine

Similarity

ValidationUser Similarity

Distribution Profile Types

Obscure Gamers

AAA Gamers

Broad Gamers

ValidationUser Similarity

Distribution Profile Types

Obscure Gamers

AAA Gamers

Broad Gamers

ValidationUser Similarity

Distribution Profile Types

Obscure Gamers

AAA Gamers

Broad Gamers

Margery (Midge) Hines

PhD Electrical Engineering from Northeastern University

Dissertation: Autonomous landmine detection using GPR for humanitarian demining

Extra Slides

Improved Matching System: User Playtime Scores

• Score each user’s game by relative playtime compared to the set of people who own that game using deciles

Improved Matching System: Results

• On average all similarity scores are lower• Random Pairing < Friend Pairing < Algorithm Pairing

Similarity Matrix

Future ImprovementsAdditional User Matching Features • Number and/or type of steam achievements for each game

• Match based on features using SVD after filtering database for specific game of choice• Before matching filter by location (low ping, time-zones)Site Enhancement• Include video game recommendations • Add Steam open-id support

Play Style

SkillLevel

Similarity Metric Visualization𝑢𝑠𝑒𝑟𝑠

𝐴 ¿𝑂𝑟𝑖𝑔𝑖𝑛𝑎𝑙𝑆𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦 𝑀𝑎𝑡𝑟𝑖𝑥 𝐵 ¿ 𝐴 h𝑤𝑖𝑡 𝑆𝑜𝑟𝑡𝑒𝑑𝑅𝑜𝑤𝑠 𝐶 ¿𝐵 h𝑤𝑖𝑡 𝑅𝑜𝑤𝑠𝑅𝑎𝑛𝑘𝑒𝑑

0 1

Note: The strong similarity in the diagonal of A and first column of B and C is due to users match with themselves

Alternative Method for Feature Matching: SVD 𝑢1 𝑢2 𝑢3 𝑢4 …

𝑔1

𝑔2

𝑔3

𝑔4

𝑠11

𝑠32

𝑠42

𝑠12

𝑠21

𝑠41

?

?

?

?

?

?

?

?

𝑠23

𝑠42

Compute SVD

𝑓 1 𝑓 2 …

𝑢1

𝑢2

𝑢3

𝑢4

𝑢11

𝑢32

𝑢12

𝑢21

𝑢41

𝑢31

𝑢22

𝑢42

𝑢13

𝑢33

𝑢43

𝑢23

𝑓 1 𝑓 2 …

𝑓 1

𝑓 2

𝑤11

0

0

0

0

0

0

𝑔1 𝑔2 𝑔3 …

𝑓 1

𝑓 2

𝑔11

𝑔32

𝑔12

𝑔21

𝑔31

𝑔22

𝑔13

𝑔33

𝑔23

𝑢1 𝑢2 𝑢3 𝑢4 …

𝑢1

𝑢2

𝑢3

𝑢4

1

𝑚32

𝑚42

𝑚12

𝑚21

𝑚41

1

1

𝑚23

1

𝑚31

𝑚13 𝑚14

𝑚42 𝑚43

𝑚34

Match User’s

Features

𝑤22

𝑤33

Validation

So why not SVD?

• Feature matching doesn’t guarantee that matched users will own or play the same games

𝑢𝑖 (𝑃 𝑗)=¿𝑜𝑓 h𝑟𝑠𝑜𝑛𝑔 𝑗

𝑡𝑜𝑡𝑎𝑙¿𝑜𝑓 h𝑟𝑠 ¿

User’s Game Preference

Distribution of User’s Maximum Game Preferences

Some users spend all playtime on

Steam on Dota 2

Few users spend all playtime on Steam

on Portal

User 1: Looking For PlayersBest Match:

70% Compatibility 69% Compatibility

Suggestion: You might enjoy Borderlands !

Worst Match: 0.01% Compatibility

Actual Friend of User 1!

Example Comparison of User Match Result

Video Game Recommendations

Steam’s Current Game Recommendations: Personal Experience

Games Steam Recommends Me

My Playtime by Title

Users’ Playtime for “Tiny and Big: Grandpa’s Leftovers”

• Compared to my other games, my playtime of this game seems small

• Compared to other people who own this game my playtime is small (lowest decile)

Implying User Scores Based on Playtime

• Score each user’s game by relative playtime compared to the set of people who own that game using deciles

Game Recommendations Using SVD 𝑢1 𝑢2 𝑢3 𝑢4 …

𝑔1

𝑔2

𝑔3

𝑔4

𝑠11

𝑠32

𝑠42

𝑠12

𝑠21

𝑠41

?

?

?

?

?

?

?

?

𝑠23

𝑠42

Compute SVD

𝑓 1 𝑓 2 …

𝑢1

𝑢2

𝑢3

𝑢4

𝑢11

𝑢32

𝑢12

𝑢21

𝑢41

𝑢31

𝑢22

𝑢42

𝑢13

𝑢33

𝑢43

𝑢23

𝑔1 𝑔2 𝑔3 …

𝑓 1

𝑓 2

𝑔11

𝑔32

𝑔12

𝑔21

𝑔31

𝑔22

𝑔13

𝑔33

𝑔23

𝑓 1 𝑓 2 …

𝑓 1

𝑓 2

𝑤11

0

0

0

0

0

0𝑤22

𝑤33

Train SVD with 80% of Data

Test SVD with 20% of Data𝑢1 𝑢2 𝑢3 …

𝑔1

𝑔2

𝑠11 𝑠12

𝑠21 ?

?

𝑠23Predict SVD

𝑢1 𝑢2 𝑢3 …

𝑔1

𝑔2

�̂�11 �̂�12

�̂�21 ?

?

�̂�23Calculate

RMSE

RMSE = 2.7NRMSE = 0.31Netflix’s NRMSE = 0.21

𝑅𝑀𝑆𝐸=√ 1𝑛∑𝑖 𝑗❑

( �̂�𝑖𝑗−𝑠𝑖𝑗 )2

More Exploratory Analysis!

Independent Game Development is on the Rise!

Only 31% of Steam games are rated on Metacritic

124 games have been purchased but never been played!

Not all games are played; Not all games are rated

Strictly Single Player

Multiplayer

The playtime on only 6 games is equal to the total playtime on all others

Multiplayer games tend to have greater playtime than strictly single-player games

Steam Games by Genre

• MMOs account for few games on Steam, but have high playtime per title

• Over half of Steam’s game are Indie, but Indie games have very little playtime per title

Steam Games by Genre

• Sports games have the highest average cost, and MMOs have the lowest (note subscriptions not included)

• MMOs and Action games have the best “bang-for-the-buck” in terms of hours of playtime/dollar

Recommended