Viewing profile — amakelov
amakelov
HN member- Joined
- Tue, Jan 04, 2022, 5:21 PM UTC
- HN karma
- 49
- Public activity
- 22 items
- HN profile
- View on Hacker News ↗
About amakelov
No profile information was provided.
Recent public activity
- story
-
comment
Comment #40957400
Thanks! And thanks for sharing the pointer - I think I've seen `mltrace` at some point in the past. The tool has some similarities, but seems different from `mandala` on a philosop…
-
comment
Comment #40957347
Thanks Rachit! Great running into you after all these years! Being aware of types is certainly a must in a more performance-critical implementation; this project is not at this sta…
-
comment
Comment #40952973
Forgot to mention: yes, the dependency tracking is transitive, i.e. if your @op calls a @track-decorated function, which in turn calls another @track-decorated function, then both …
-
comment
Comment #40948266
Thanks for sharing! This is a great project. It is quite close to the memoization part of `mandala` and I'll add it to the related work in the README. I think the similarities are:…
-
comment
Comment #40948137
Great question! The versioning system does something essentially equivalent to what you describe. It currently works as follows: - When a call to an `@op` is executed, it keeps a s…
-
comment
Comment #40946190
Thanks! Yes I think a caching solution like this is great for notebooks, because it makes it very cheap to re-run the whole thing (as long as you reasonably organized long-running …
-
comment
Comment #40945992
Oh also totally missed the Borges mention the first time - I'm a big fan of his stories!
-
comment
Comment #40945962
Thanks! Indeed, despite the fact that the main goal is to track ML experiments, the approach taken in `mandala` has a lot in common with e.g. time-travel debugging ( https://en.wik…
-
comment
Comment #40941886
This blog port gives an overview of the core dependency tracking logic: https://amakelov.github.io/blog/deps/
-
comment
Comment #40941739
Ah, yes, the notorious state problem in notebooks. In your project, do you find the dependencies statically or dynamically?
-
comment
Comment #40941623
Great question - personally, I mostly use it from notebooks, and I think it's a great fit for that. Bundling experiment tracking with incremental computation makes a lot of sense i…
-
comment
Comment #40941563
Thanks! Indeed, the ultimate (but very ambitious from the point of view of coordination and infrastructure) vision would be to build the "planetary computer" where everyone can con…
-
comment
Comment #40941520
In order, 1. Yes, you can choose to create a persistent storage by passing `db_path` to `Storage()`. The current implementation is just an SQLite file. To run on many machines, you…
-
story
Show HN: Mandala – Automatically save, query and version Python computations
`mandala` is a framework I wrote to automate tracking ML experiments for my research. It differs from other experiment tracking tools by making persistence, query and versioning lo…
- story
-
comment
Comment #38702849
This is neat and self-contained! But as someone running experiments with a high degree of interactivity, I often have an orthogonal requirement: add more computations to the same c…
-
comment
Comment #38702123
I see two concerns here: - inputs/outputs being high volume: the inputs/outputs that are large are often also things that don't change over the course of a project (e.g. a dataset …
-
comment
Comment #38177246
Author here - thank you for the compliment! Always happy to answer any questions (the docs are admittedly quite sparse) and hear about what people like/dislike about the library!
- story
-
comment
Comment #35591488
The dependency tracking and the graph/SQL thing are largely independent pieces. The graph/SQL thing is used to query the memoization tables of the memoized functions by "joining th…
-
comment
Comment #35584137
Hi, author here. Sorry about the confusion - this blog post's intention was to give a more programming-language-themed introduction to the project (discussion on r/programminglangu…