Live data from Hacker News

Who needs MLflow when you have SQLite?

ploomber.io

41–50 of 113 posts

Re: Who needs MLflow when you have SQLite?

#41

The elephant in the room with data is that we don’t need a lot of the fancy and powerful technology. SQL against a relational database gets us extraordinarily far. Add some Python scripts where we need some imperative logic and glue code, and a sprinkle of CI/CD if we really want to professionalise the work of data scientists. I think this covers the vast majority of situations. Despite being around it for some time,…

> SQL against a relational database gets us extraordinarily far.

I think it gets us all the way once you consider the ability to expose domain-specific functions to SQL that are serviced by your application code.

I've always been of the mindset that you can do anything with SQL if you are clever enough.

Re: Who needs MLflow when you have SQLite?

#42

I think MLflow is a good idea (very) badly executed. I would like to have a library that combines: - simple logging of (simple) metrics during and after training - simple logging of all arguments the model was created with - simple logging of a textual representation of the model - simple logging of general architecture details (number of parameters, regularisation hyperparameters, learning rate, number of epochs etc…

have you used comet? it basically does everything you are asking and lot more user-friendly than MLFlow

Re: Who needs MLflow when you have SQLite?

#43

I think MLflow is a good idea (very) badly executed. I would like to have a library that combines: - simple logging of (simple) metrics during and after training - simple logging of all arguments the model was created with - simple logging of a textual representation of the model - simple logging of general architecture details (number of parameters, regularisation hyperparameters, learning rate, number of epochs etc…

have you used comet? it basically does everything you are asking and lot more user-friendly than MLFlow

Isn't Comet a proprietary SaaS? I like MLFlow because I can run it on my own computer if I want to.

Re: Who needs MLflow when you have SQLite?

#44
post #37

Earlier quoted context omitted.

Yep, this is a mark of someone that's never used R but has heard a lot of incredibly ill informed criticism around it. One look of dplyr code over pandas would of course disabuse anyone of the notion that R is trash and the tragedy is Python will in the current state never have anything like that. That's the advantage of the language being influenced by Lisp vs not.

I've heavily used R several times. I agree that it is a trash language and that, outside that many frontier academic ideas are available and some plotting preferences are solidly prescriptive, it should be thrown into the trash bin. Python, Julia when it gets its druthers for TTFP, Octave, Fortran, C, and eventually Rust. These are the tools I've found in use over and over and over again across business, government,…

Try to separate the language from its standard library. Neither one is "trash".

I agree that the standard library is what you might call "a chaotic disorganized mess".

Re: Who needs MLflow when you have SQLite?

#45
post #13

Earlier quoted context omitted.

"the API makes Pandas look good" It sparks joy in my heart whenever I see shade cast against pandas.

I have never seen a worse documented library. Initially I thought that they were lazy, now I realize that it cannot be documented because it is a total mess of a library held together with tape. Close second is the plotly library.

I think the R docs are the intended reference material for pandas ;)

Re: Who needs MLflow when you have SQLite?

#46
post #14
post #11

Earlier quoted context omitted.

How many data scientists that use Databricks for modeling do you know?

its forced upon many of them that are in finance, banking, insurance, ... Mainly because those tend to run on Microsoft Azure, which has no decent analytics offering, and are pushing Databricks extremely hard. The CTO or whatever just pushes databricks. On paper it checks all the boxes. Mlops, notebooks, experiment management. It just does all of those things very badly, but the exec doesn't care. They only care abou…

My team very nearly had this happen to us.

We pushed back on it very, very, very hard, and finally convinced "IT" to not turn off our big Linux server running JupyterHub. We actually ended up using Databricks (PySpark, Delta Lake, hosted MLFlow) quite a bit for various purposes, and were happy to have it available.

But the thought of forcing us into it as our only computing platform was a spine-chilling nightmare. Something that only a person who has no idea what data analysts and data scientists actually do all day would decide to do.

Re: Who needs MLflow when you have SQLite?

#47
post #13

Earlier quoted context omitted.

"the API makes Pandas look good" It sparks joy in my heart whenever I see shade cast against pandas.

I have never seen a worse documented library. Initially I thought that they were lazy, now I realize that it cannot be documented because it is a total mess of a library held together with tape. Close second is the plotly library.

The Pandas documentation has improved quite a bit. Last I checked, the only part of the reference docs with a big gap was the description of "extension arrays" and accessors.

The user guide material absolutely needs work, and the examples in the reference docs tend to be a little contrived. But I absolutely have seen worse-documented libraries, such as Gunicorn and Pydantic.

Re: Who needs MLflow when you have SQLite?

#48
post #23
post #13

Earlier quoted context omitted.

"the API makes Pandas look good" It sparks joy in my heart whenever I see shade cast against pandas.

What bothers me the most is the egregious data types for any argument. If it's a string, do this. If it's a list, do that. If it's a dictionary of lists, do this other thing. No, I want you to force me to provide my data in the right way and raise a noisy exception if I don't.

Series and DataFrame have "alternate constructors" for this purpose, and the loc/iloc accessors give you a bit more control.

I agree that the magic type auto-detection is a bit too magical and sloppy, but you have to realize that data analysts and scientists have historically been incredibly sloppy programmers who wanted as much magic as possible. It's only in recent years that researchers have begun to value some amount of discipline in their research code.

Re: Who needs MLflow when you have SQLite?

#49
post #25

I don't get why a lot of people are calling mlflow a shitshow when it has done so much getting data scientist out of recording experiments via CSV. I can log models and parameters and use the UI to track different runs. After comparisons, I can use the registry to register different staging. If you have other model diagnostic charts you can log the artifact as well. I think mlflow v2 has auto logging included so why…

People tend to forget that first movers rarely tend to also have the best design. MLFlow (and DVC) brought us out of the dark ages. Now we can build better tools, with the benefit of hindsight.

Claiming that something is "broken" or "trash" when you mean "I don't like it" is a good way to make yourself feel big and smart, but it's not actually constructive.

Post reply on HN