This document discusses machine learning applications for digital advertising. It describes how machine learning can optimize advertising by predicting click-through rates and conversion probabilities based on user, ad, and website data. However, obtaining sufficient high-quality data for machine learning models is challenging for advertisers due to data sparsity, high costs, and lack of access to raw user data from platforms. The document also outlines some machine learning techniques like gradient boosting trees that have shown promise for digital advertising optimization.
Kenya Coconut Production Presentation by Dr. Lalith Perera
Machine Learning Digital Advertising Guide
1. Machine Learning for Digital Advertising
Marc Garcia
Outreach digital - June 14th, 2016
1 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
2. Digital advertising: a data scientist point of view
2 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
3. Digital advertising: a data scientist point of view
What is the Internet? A lot of bored people...
3 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
4. Digital advertising: a data scientist point of view
...who use a gadget...
4 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
5. Digital advertising: a data scientist point of view
...to access useless sites.
5 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
6. Digital advertising: a data scientist point of view
Ok, some of them are looking for something.
6 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
7. What is our goal?
7 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
8. What is our goal?
Get their money!
8 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
9. What is our goal?
That’s the truth,
but let’s say it in a more subtle way...
9 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
10. What is our goal?
We want to attract them to our site...
10 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
11. What is our goal?
...and sell our product.
11 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
12. How does it work?
12 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
13. How does it work?
The user journey
13 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
14. How does it work?
The user journey
14 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
15. How does it work?
The user journey
15 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
16. How does it work?
The user journey
16 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
17. How does it work?
The user journey
17 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
18. Ad exchange point of view
18 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
19. Ad exchange point of view
How the ad exchange works?
A publisher has an available ad space.
19 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
20. Ad exchange point of view
How the ad exchange works?
Advertisers bid for their ads on the cost for a click.
bid: £0.35 bid: £0.20
20 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
21. Ad exchange point of view
How the ad exchange make money?
income = bid ·
clicks
impressions
(1)
Impressions are constant regardless of the ad
Bids are known for each ad
Clicks are unknown, but can be predicted
21 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
22. Ad exchange point of view
What is the best option?
bid: £0.35
expected clicks (for 1000 impressions): 25
expected profit (for 1000 impressions): £8.75
bid: £0.20
expected clicks (for 1000 impressions): 47
expected profit (for 1000 impressions): £9.40
22 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
23. E-commerce point of view
23 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
24. E-commerce point of view
T-shirt e-commerce example
24 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
25. E-commerce point of view
Income statement1
Sales £23.89 100%
Cost of goods sold £11.72 60%
Delivery £4.36 18.25%
Payment gateway £0.84 3.5%
Total direct costs £19.53 81.75%
Available for marketing £4.36 18.25%
Average cost-per-click £0.20
Conversion rate (break-even) 22
1
Excludes many costs (product returns, freight-in, development, support, hardware, salaries, etc.)
25 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
26. E-commerce point of view
Not so easy to make money...
26 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
27. An optimization problem
27 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
28. An optimization problem
What can be optimized?
Higher prices (added value, branding...)
Lower production costs
Leverage marketing costs
Virality (share on social networks...)
Recurrence (newsletter to customers...)
Conversion rate optimization
Targeting / market segmentation
Ad optimization
Website optimization (A/B testing...)
28 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
29. An optimization problem
Conversion rate optimization: the numbers
income = average_price · margin · num_sales − average_cpc · num_clicks (2)
29 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
30. An optimization problem
Conversion rate optimization: Features
30 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
31. An optimization problem
Features: Users
What Facebook, Google... know about our users?
Age
Gender
Location
Interests / Pages visited
Friends / Interactions
Sociocultural status
... mostly everything
What do we know about them?
Not much individually
We can access aggregated data
31 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
34. An optimization problem
Features: Summary
Users
Age
Gender
Location
Interests
Friends
Sociocultural status
...
Ads
Source
Message
Type (image,
text,...)
Placement
Site
...
Website
Layout
Colours, font size...
Content density
Offers, reviews...
Conditions
(delivery, returns)
Steps to purchase
...
Other
User behaviour
Day of week
Time
Weather
Social environment
...
34 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
35. An optimization problem
An amazing dataset
Age 28
Gender female
Location Lewisham
Occupation receptionist
Interests hiking, salsa
Education university
Device smartphone
Source Google search
Placement top
Ad type image
Message type sales offer
Web layout basic
Web main colour green
Conditions free delivery
Returns free
Product type shoes
Quality high
Price £79
Day business day
Time evening
Purchase true
35 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
36. An optimization problem
What could we get from a dataset like this?
Women aged 25 to 35 buy shoes on rainy Sundays
Users leave pages with more than 800 characters on the layout quite fast
People from city A buy more product X, while people from city B, prefer product Y
Ads with red colours have more clicks, but we get less conversions from them
And all this means higher profits.
36 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
38. Introduction to machine learning
38 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
39. Introduction to machine learning
So, what is machine learning?
Different definitions
A fancy word for statistics
The science of programming computers, so we don’t tell them what to do, but we tell them how
to learn what to do
A set of techniques to implement statistical models that are able to predict, and find patterns in
the data
Similar concepts: Big data, data science, data mining, deep learning, artificial intelligence...
39 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
40. Introduction to machine learning
What can machine learning do?
It can accurately compute the probability of a certain user, to click on a certain ad.
bid: £0.35
Click probability: 0.025
Expected profit: £0.00875
bid: £0.20
Click probability: 0.047
Expected profit: £0.00940
A small difference in profit but at scale: multiply by 1bn daily Fb users: £650,000/day
40 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
41. Introduction to machine learning
How does machine learning work?
41 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
42. Introduction to machine learning
How does machine learning work?
42 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
43. Introduction to machine learning
Some maths
Prclick =
1
1 + e−(β0+β1·x1+β2·x2)
(3)
43 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
44. Introduction to machine learning
More complex models: neural networks
44 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
45. Machine learning for digital advertising
45 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
46. Machine learning for digital advertising
Some problems
Data is expensive (average of £0.20 per row) :(
No public data
So, we need to obtain it all ourselves...
...and it’s expensive :(
Unbalanced / sparse data (1 purchase for 100 clicks)
So, we need 100x the data...
...and it’s expensive :(
High (or very high) dimensionality
So, we need a huge number of rows to avoid the curse of dimensionality
...and it’s expensive :(
46 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
47. Machine learning for digital advertising
More problems
We bias the data when we know who is more likely to buy
Exploration an exploitation problem
We have to buy "bad" clicks to avoid it
Many categorical variables
They don’t play well with many models
Data seasonality
Black Friday, sales, Christmas...
Access to data
Google, Facebook do not give access to raw data
We have to use aggregated data
And they do not let you cross variables
We need to assume independence among them
47 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
48. Machine learning for digital advertising
He is very sad now
48 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
49. Machine learning for digital advertising
What models can be used?
Some techniques that gave good results:
Gradient boosting trees
Active learning (semisupervised learning)
Online learning (for data freshness)
49 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit
50. Machine learning for digital advertising
Questions?
@datapythonista
http://datapythonista.github.io
https://www.linkedin.com/in/datapythonista
50 / 50
Machine Learning for Digital Advertising - @datapythonista - @outreachdigit