How to Troubleshoot Apps for the Modern Connected Worker
Set it and forget it: Let the machine learn its job - Guy Baron, Vonage
1. Set it and forget it
Let the machine learn its job
Guy Baron, Director Mobile @ Vonage
DroidCon TLV 2016
2. All of us are trying to optimize
• Onboarding
• In App Billing
• Engagement
3. A/B Testing
A/B testing is comparing two versions of a product to test which one performs
better. Usually done by showing the two variants (A and B) to different users.
When the test is over the variant that performs best is selected.
6. Epsilon-greedy strategy
• The best lever is selected for a proportion 1−𝜀 of the
trials
• A lever is selected at random for a proportion 𝜀
• A typical parameter value might be 𝜀 = 0.1
7. private static final double E = 0.1;
private final Random random = new Random();
private int[] colors = new int[]{Color.BLUE, Color.YELLOW, Color.GREEN};
private int[] trials = new int[colors.length];
private int[] rewards = new int[colors.length];
private int chooseColor() {
int selectedColor = 0;
if (random.nextDouble() <= E) {
// Random time
selectedColor = random.nextInt(colors.length);
} else {
// Calculate the expected reward for each color
for (int i = 1; i < colors.length; i++) {
// Expected reward = number of rewards divided by the bumber of trials
if ((rewards[i] / trials[i]) > (rewards[i - 1] / trials[i - 1])) {
selectedColor = i;
}
}
}
return colors[selectedColor];
}