3 ms·
Technically, it is not code-free - it is declarative programming in YML. You still have to specify your input_features, output_features, and training architectu
by jamesblonde 8y ago
Technically, it is not code-free - it is declarative programming in YML. You still have to specify your input_features, output_features, and training architecture/specification. This is not a drag-and-drop UI (although, you could probably layer one on top of this).
This should work well with a Feature Store, where features are already pre-processed and ready for input to model training. With a feature store, this could be like the Tableau/Qlik/PowerBI tool for Data Science.
- foxes 8y agoAren't most popular ml libraries declarative, e.g. keras, you aren't exactly specifying how to transform the state (for example all the specific matrix multiplication is hidden), rather you are declaring the logic of the computation (you list out the layers).
- jamesblonde 8y agoTensorFlow has mappers/reducers for feature engineering, and it's Python - so you will inevitably do what you want in there. But yes, you have a point there. How do you debug this thing, though?
- w4nderlust 8y agoYou have a good point about debugging. So far my approach has been to write quite long and explanatory error messages (like this https://github.com/uber/ludwig/blob/9c9e5de56dcad89461c5d2ecbd2d218e2273bdcf/ludwig/models/combiners.py#L170 https://github.com/uber/ludwig/blob/9c9e5de56dcad89461c5d2ec... for instance) and as detailed documentation as I can and, at least when people used it internally, that has been enough. But I'm definitely open to suggestions here.
- w4nderlust 8y agoWe are considering a bunch of options re feature store. I personally like EuclidDB, but I'm not sure it fits the notion of feature store that we need (while it's great for ANN inference). Anyway we are looking into it. Regarding the code-free vs declarative, I mean, it really depends where you draw the line :) Is calling a command line program with some parameters declarative programming? What if there are a lot of parameters? And what if those parameters have a nested structure and are contained in a YAML file? And what if the parameters become so many and so detailed that you can write almost each single operation than the command line program will perform (like in Caffe configurations files for instance)? Do you see what I mean? Anyway, if it's not code-free you may agree that it's the closest open source tool to be code-free :)