Calculating the sample size required for developing a clinical prediction model
bmj.com
bmj.com
It's related to Goodheart's law: "When a measure becomes a target, it ceases to be a good measure".
It also works in one's personal life. If you find that you made a mistake, don't just fix that particular thing, go back and see what other similar things may need fixing. It connects to the idea of fixing the deeper reason than fixing the symptoms. "Deeper reason" just means, something that generalizes.
By the way, you need to be careful about your data split. This always depends on how you intend to use the model. If you intend to use it on new, unseen patients, then the train and test data cannot overlap with respect to people. Another obvious case is videos: You can't just take every even frame as a training sample and every odd frame as test. Even though technically you would be testing on non-overlapping data, the performance measure would be biased compared to real world performance. Or if you want to classify burglars from security camera footage, you may need to test it on new camera setups from different houses if you intend to deploy it to new houses. If your scenario is such that you'd perform training on each new site and run a location specific model, you can test on images from the same site.
You always have to use your brain to decide what to do.
This is a great point, and it articulates some challenges that I’ve seen with test-driven development.
I would say that if you can write tests that fully specify the desired functionality, rather than merely check a few possible inputs, it’s less of an issue. This is a reason to try to build things with less knobs to twiddle, so the space of inputs has lower dimensionality.
Tests describing requirements acts as documentation, validation, and regression prevention with future refactors.
Having a perfect implementation is not bad, of course. It's just not realistic.
Essentially the response, submitted by several ML / CS / math researchers, addresses a note in the paper which recommends against train/test split in model training, calling it "inefficient". The response is dedicated to explaining what generalization error is and why estimating it is important, and how that's basically impossible without any sort of train/test split or cross-validation.
Perhaps if any staff are paying attention on the holiday, we could get the "/rr" chopped off the end of the link, so that we get to the main article instead?
A family member was part of the control group for a cancer treatment study a few years back. The study chose a stopping criterion based on Bayesian methods. Relatively early into the study they were able to determine that it made sense to move people from the control group to the treatment group.
Once you're dealing with real people, early termination is a huge deal, and it quickly goes beyond just the interpretation of statistics. You almost always want to have 3rd party referees involved anyways.
The reasoning for doing so is much more coherent (imo) in a Bayesian framework where you don't have to say that you are "going beyond" statistics.
Some of the frequentist approaches to early-stopping seem pretty coherent to me. Curtailiment, for example, just stops collecting data once it will no longer change the outcome of a test. The frequentist emphasis on error control for the procedure also seems like a reasonable fit for a regulatory regime where you're actually making decisions (no argument that it is...weirder for basic research)
At any rate, some approaches for early-stopping have sensible frequentist and Bayesian properties, which is nice.
Agreed that things are weirder for basic research.
Note intuition from traditional statistics does not universally apply to deep learning and/or extremely high-dimensional data. For example, deep neural networks with 1-4 orders of magnitude more parameters than training examples can still generalize well to unseen data.
When doing a test you should plan it in advance based on other data, you should execute the test as planned and analyze the results accordingly failing any of the tests will results in wrong to totally wrong conclusions.
For starters, consider this xkcd comic: https://xkcd.com/882/
If you're doing A/B testing where you continuously watch the results, and conclude your test as soon as you see the numbers significantly deviate, what you're doing is more-or-less equivalent to what's happening in the comic, only it's the number of jelly beans that you vary instead of their color. Not exactly the same, since in the numbers case your draws from the random variable aren't independent, but still.
I think this is not entirely true. In areas where experimentation feedback is fast (and experiments are probably cheaper to run), the problem is much more accurately and sample efficiently solved by Thompson Sampling [1,2] which in fact dictates you to have a broad enough prior over the solution space and then let the posterior dictate your conclusions.
[1]: https://www.microsoft.com/en-us/research/wp-content/uploads/...