Predicting Customer Lifetime Value - umu. · PDF filePredicting Customer Lifetime Value Using...

Click here to load reader

  • date post

  • Category


  • view

  • download


Embed Size (px)

Transcript of Predicting Customer Lifetime Value - umu. · PDF filePredicting Customer Lifetime Value Using...

  • Predicting Customer Lifetime ValueUsing machine learning algorithms

    Matilda Karlssson

    Matilda KarlsssonHT 2016Examensarbete, 30 hpSupervisor: Patrik EklundExaminer: Henrik BjorklundCivilingenjorsprogrammet i tekinsk datavetenskap, 300hp

  • Abstract

    Spending money to acquire new customers can be a risk since new play-ers never immediately pay off. In this thesis three machine learningalgorithms, neural network, bayesian network and regression, is used totry to early find out if it is possible to determine how much a user willspend in the game in order to minimize the risk.

    The result showed that neural network performed badly mostly becausethere might not be a strong correlation between how a player plays, orwhere he comes from, and how much he will spend.

    Because of how bayesian network works, it was hard to answer the ques-tion, but it still gave a good indication at what kind of players spendsmoney in the game.

    Regression showed that a player should have paid off around 50% of theadvertisement cost around day six or seven, or it will most likely neverpay off.

  • Contents

    1 Introduction 1

    1.1 Partners 1

    1.2 Purpose 1

    2 Problem description 3

    2.1 Problem 3

    2.2 Mad skills motocross 2 3

    2.3 Goals and purposes 4

    2.3.1 In-depth study 4

    2.3.2 Data 5

    3 Machine learning algorithms 7

    3.1 Bayesian network 7

    3.1.1 Sprinkler, rain and wet grass 8

    3.1.2 Hugin Expert 10

    3.2 Neural network 10

    3.2.1 Back propagation 12

    3.3 Regression 12

    4 Results 15

    4.1 Result of neural network 15

    4.2 Result of bayesian network 16

    4.3 Result of Regression 17

    5 Conclusion and future work 21

    5.1 Conclusion and limitation 21

    5.2 Future work 21

  • A All other bayesian networks 25

  • 1(40)

    1 Introduction

    Having customers is an essential part of any profitable company. Without paying customersmost companies would quickly have to go bankrupt. Therefore most companies needs away of acquiring new customers.

    Advertisement could be an efficient way to gain new customers. But advertisement costsmoney and if the company wants to profit they need to acquire enough costumers to coverthe advertisement costs. A new customer might have a lifetime of over a year, and duringthis time the customer will hopefully pay off. However, when acquiring new customerswe do not want to wait a full year before knowing whether or not the advertisement wassuccessful. The best case would be to know already after a week or two so that we couldquickly stop advertise in case it costs more than it will ever return. Therefore it could be ofgood value to be able to predict a customers lifetime value. When knowing the customerlifetime value a company also know how much they can be willing to spend to acquire newcustomers.

    Turborilla AB[23] develops games for iOS and Android and wishes to advertise their gamewith Pay per Click advertisement. Turborilla would have to pay for every click on theiradvertisement, and hopefully gain a customer for every click as well. In Turborillas gameMad Skills Motocross 2, they earn money from customers watching ads, and customersbuying certain in-game features, such as a new bike or some kind of assist to beat a track.

    1.1 Partners

    The idea for this thesis was provided by Turborilla AB. They also provided test data andresources to use when implementing and testing the algorithms. They helped a lot duringthe work of this thesis with knowledge, information and a workspace.

    1.2 Purpose

    The purpose of this thesis is to test if it is possible to predict the lifetime value of a customerwithin a confidence interval:

    The customer X will spend Y amount within 180 days with 95% confidence.

    Preferably as soon as possible after the customer was acquired.

    This can be divided into several subtasks. First we need to figure out which attributes

    Matilda Karlsson Predicting Customer Lifetime Value

  • 2(40)

    about a customer that correlates to their lifetime value. Looking at the device they playon might give an indication of how much they are willing to spend on a mobile game. Itcould be possible that someone on a brand new phone might be willing to spend real moneyon a mobile game while someone one an older phone might not be, or that how well theyperform in the game correlates to how much they are willing to spend.

    It is also essential that we are able to measure the confidence of the predictions. A modelthat predicts the lifetime value of customers is useless unless it also gives some kind ofconfidence of the prediction. Using a 95% confidence interval means that we know with acertainty of 95% that the actual value will lie within the interval. Any percentage could beused for the interval, and 90%, 95% or 99% is commonly chosen.

    Matilda Karlsson Predicting Customer Lifetime Value

  • 3(40)

    2 Problem description

    This chapter will explain more about the game in question, the problem and explain the datathat Turborilla currently saves about their customers.

    2.1 Problem

    Turborilla does not have any way of calculating their customers lifetime value today, mean-ing that this thesis does not depend on any previous work at Turborilla.

    The requirements for the prediction of lifetime value is that is should run fairly quickly.With Turborillas 29 million users it can be expected to take some time but this should stillbe minimized as much as possible. The software also needs to be able to make confidentpredictions. The software needs to predict the right value quite certain to be of any use atall.

    2.2 Mad skills motocross 2

    The main focus of this thesis is how Turborilla AB profits from their game Mad SkillsMotocross 2 (MSM2).

    Matilda Karlsson Predicting Customer Lifetime Value

  • 4(40)

    Figure 1: Screenshot from the game MSM2, where two players race against each other.

    MSM2 is a 2D side-scrolling game where players compete against each other or against acomputer controlled player. Figure 1 is a screenshot from the game where two players raceagainst each other. The game is free to download and play for free if the user wishes too.New bikes or bike parts are possible to unlock when the player is skilled enough, or theycan be bought at any time for real money.

    A player who has never spent any money in the game is shown advertisement once per day,meaning that Turborilla will profit from users even if they have not spent any money in thegame.

    2.3 Goals and purposes

    This thesis consists of two parts.

    Make an in-depth study of machine learning algorithms, calculations of lifetime valuefrom other companies and study Turborillas data.

    Using some machine learning methods to test if it is possible to predict players life-time value.

    2.3.1 In-depth study

    The first part of the in-depth study consists of reading how other companies evaluate theircustomers lifetime value and Turborillas data. When reading about other calculations ofcustomers lifetime value, most used an equation that depends on a customers average spentfor a week and for how long they expect a customer to stay within the company. CustomerLifetime Value = weekly spent * number of weeks in company. When checkingthis against Turborillas data it was quite easy to understand that this approach would notbe sufficient. This is the main reason why this thesis focuses on using machine learning

    Matilda Karlsson Predicting Customer Lifetime Value

  • 5(40)

    algorithms to solve this problem.

    In the in-depth study the main focus what therefore machine learning algorithms. Thealgorithms studied where bayesian network, neural network and regression. The study ofthe algorithms shows what kind of data that applies usually is used. Neural network tendsto work best with continuous data, while Bayesian network also work on categorical data.

    2.3.2 Data

    There are two kinds of data available, one for aggregated players, and one for a single player.

    Turborilla has today around 29 million users, meaning that the user data over every singleplayer is huge. The data is also split into two; one for Android users and one for Appleusers. These are split so that around two third of the users are Android users and one thirdis Apple users.

    Aggregated data

    The aggregated user data is grouped by the date players started playing, and for all of theseit is possible to see what they together spent a specific date.

    Table 1 A table over aggregated data showing date, players and spent every day after startDate players 0 1 2 3 4 301 jan 5241 $ $ $ $ $ $2 jan 4613 $ $ $ $ $ $3 jan 4166 $ $ $ $ $ $4 jan 2554 $ $ $ $ $ $...26 feb 5048 $ $ $ $ $27 feb 4512 $ $ $ $28 feb 5623 $ $ $29 feb 5241 $ $30 feb 1245 $

    Table 1 shows how the aggregated data looks like. The number of users starting on a specificday are made up, and in the real data it is a numbers instead if $, but Turborilla wanted tokeep these numbers hidden.

    For every date, 1 Jan, 2 Jan, it shows how many players that installed the game on thisspecific date, and the rest is how much they totally spent on day x after they started. So forthe 5241 players who started on January 1 the 0 column is how much they spent on Januray1, and the 1 column shows how much they spent on January 2. But for the 4613 playerswho started on January 2 the 0 column shows how much they spent on January 2, and thecolumn 1 shows how much they spent on the January 3. This data is only collected up untilday 30.

    Matilda Karlsson Predicting Customer Lifetime Value

  • 6(40)

    Single user data

    The single user data is collected in massive database files, where every row in one use