5 ms·
Why would it be desirable to train a model from a CSV on the command line? Is opening RStudio or IPython and running a couple commands the hard part of data sci
by civilized 5y ago
Why would it be desirable to train a model from a CSV on the command line? Is opening RStudio or IPython and running a couple commands the hard part of data science?
Writing a data science pipeline with command line tools really just means writing a data science pipeline in your terminal's shell programming language. If that sounds like a good idea to you, I'd be curious to hear why.
- nitsky 5y agoYou're right, CLI vs RStudio or IPython is not a big improvement. The real benefit here is that you can use your model from Go, JavaScript, Ruby, and other languages without having to include the Python or R ecosystems in your tech stack.
- civilized 5y agoHaving a format that can be used in any language is great, and I agree this is the core problem. How does your .tangram format compare to existing attempts at standardized machine learning model formats? The only one I can think of off the top of my head is PMML and it seems like it never got much traction. Do you think tangram has a better approach to the problem?
- nitsky 5y agoUnfortunately, tangram does not help here, it just adds yet another format to the list. The reason it needs its own format is because .tangram files include all the model reporting information that shows up in the web application.
- moconnor 5y agoI actually disagree, CLI is a big improvement. Vastly more developers are familiar with the command line than RStudio or IPython, including almost all of those who don’t already use some kind of ML. Two major benefits: * Approachability. If the first step to trying ML on a problem is “download RStudio and learn how to use a GUI and unfamiliar language” that is a HUGE barrier to entry. * Confidence - if I’m going to put a model into production and all I have to go on is the output of a self-described novice who “played around in RStudio” a bit, well, that’s not going to happen. There are a million ways they might have messed up. Tangram nails both of these and I’m excited to see where it goes. Happy to talk to you more (ex startup VP Product, current ML researcher) - DM me on Twitter (yieldthought).
- civilized 5y agoBlindly running a CSV through a black box program is not the way to get confidence in your modeling.
- isabellat 5y agoI couldn’t agree more that a black box does not result in confidence in your modeling! Tangram is not a black box :) we tell you exactly the hyper parameter grid we trained, the settings that led to the best model, and provide explanations per prediction based on SHAP. And if you don’t like our settings, you can pass a config file, specifying everything from the column types in your csv, to the features produced, to the hyper parameters of the models you want trained. https://www.tangram.dev/docs/guides/train_with_custom_configuration https://www.tangram.dev/docs/guides/train_with_custom_config...
- version_five 5y agoI'm confused about the ipython reference, using a notebook for eda or results presentation doesn't have much to do with a data pipeline. I love the idea of being able to use shell scripts to orchestrate data prep and training. There are lots of curl | grep | awk > .csv patterns I've used in real life, and having a way to train a model from the command line is a great complement. Currently I would call a python training script from the command line, and do orchestrate everything in bash. I'm not sure why thay is undesirable.
- isabellat 5y agoYes! We want to make the whole ML process from training to deployment to monitoring radically more convenient. The CLI interface makes it easy to quickly train ML models without ever opening a Jupyter notebook, learning what pandas and numpy are etc. And after you’re done training, we want you to be able to incorporate your models into your existing stack: we have language libraries for programming languages traditionally underserved by the current ml tools: ruby, golang, elixir, nodejs, rust. (We also have python). All prediction happens in process with no network requests, meaning you don’t have to deploy a separate service to host your ml models :)
- epr 5y ago> Why would it be desirable to train a model from a CSV on the command line? Well, CSVs are ubiquitous. That being said, people tend to either buy in to the command line or not. It's basically a matter of opinion. To me, the ability to automate the use of a tool is a massive force multiplier which the cli is built for. To other people, the ease of use of a gui is preferable to googling for cli syntax or reading man pages. > Writing a data science pipeline with command line tools really just means writing a data science pipeline in your terminal's shell programming language. If that sounds like a good idea to you, I'd be curious to hear why. If by my terminals shell programming language you mean my terminals shell programming language, any program that can be called from the cli, any program that can export in csv, any program that can produce $format that can be converted to csv, and virtually limitless combinations of other tools and methods then yes!
- cwyers 5y ago> To me, the ability to automate the use of a tool is a massive force multiplier which the cli is built for. To other people, the ease of use of a gui is preferable to googling for cli syntax or reading man pages. RStudio is an IDE and IPython is basically a fancy REPL, they're not GUI tools at all.
- civilized 5y agoYeah, I mean, isn't "python script.py" or "R script.R" a command line tool?
- simonw 5y agoIf you run something it on the command-line, automating it will be trivial.
- deleted 5y ago[deleted]