If they were trying to detect pedestrians from a self-driving car then they'd need a lot more accuracy and so a lot more training data.
In terms of practical machine learning, plotting learning curves are a great way to know if samples are "enough" [0, 1]. If your algorithm under fits (high bias) both errors (training and validation) will be high and in this case, adding training samples would not help.
[0] http://www.astroml.org/sklearn_tutorial/practical.html
[1] http://blog.fliptop.com/blog/2015/03/02/bias-variance-and-ov...
Getting more data is one of our top priorities going forward with this project.
1) Mis-identifying a lead as a non-lead.
2) Mis-identifying a non-lead as a lead.
I would guess that (1) would be more costly if non-leads go to somewhere where they aren't followed-up on. But I'd appreciate the insight.
Thanks again!
Mis-identifying a lead as a non-lead is potentially loosing out on a big deal that can make or break your company. You never know what email will lead to a quickly closed $30k ARR sale, which are golden for any SaaS startup.
The reverse has almost no consequences unless you're really going to town with the emailing and end up being flagged for spam. Usually people just ignore you (not so smart) or write back that it's not relevant.
I don't think the scikit learn algorithm differentiates between the two types of errors, in terms of cost.
Though it seems to give less false negatives than false positives overall, when testing on new datasets.
I'll put in the f1 score in the article when I have time.
Is it typical that ~2000 samples (1000 leads, 1000 non-leads) is "enough"? I see that accuracy on the training set was ~86% and that the results are "starting to become useful for our sales team", but I would have thought more samples would have been needed. (I guess that since you're always collecting more real-world data you can continue to train the model and so it should get better?)