A nice interface will only be useful if people actually implement it. I think this will by far be the major hurdle to overcome.
Here's some infrastructure that I believe in necessary for interface adoption:
A pitch to academics about why this is a good interface
A pitch to industry about how a consistent interface would improve R's stability for use in production
Skeleton package for researchers developing new methods, with explanations of what they need to fill in
A detailed explanation of how and why researchers implementing new methods should decouple calibration, preprocessing and hyperparameter selection as much as humanly possible
A system to check new methods for interface compliance
Perhaps more importantly: a machine learning library making use the interface and demonstrating how nice it is. (Maybe with cleanly written reference implementations of common ML methods? Or wrappers around cleanly written C++ implementations?)
Since most people start with OLS, GLMs and penalized regression, I think it is key to provide beautiful, clean, full on replacements/wrappers for lm, glm and glmnet, as well as vignettes extensively documenting their use.
A nice interface will only be useful if people actually implement it. I think this will by far be the major hurdle to overcome.
Here's some infrastructure that I believe in necessary for interface adoption:
Perhaps more importantly: a machine learning library making use the interface and demonstrating how nice it is. (Maybe with cleanly written reference implementations of common ML methods? Or wrappers around cleanly written C++ implementations?)
Since most people start with OLS, GLMs and penalized regression, I think it is key to provide beautiful, clean, full on replacements/wrappers for
lm
,glm
andglmnet
, as well as vignettes extensively documenting their use.