4 ms·
> > Trying to draw an equivalency between code and weights is ridiculous, because the weights are not written in the same way as source code. > By the same log
by dietr1ch 2y ago
> > Trying to draw an equivalency between code and weights is ridiculous, because the weights are not written in the same way as source code.
> By the same logic, the comparison between a compiled artifact and weights fails because the weights are not "compiled" in any meaningful sense.
To me the weights map to assembly and the training data+models map to source code+compilers.
Sure, you can hand me assembly, and with the assembly I may be able to execute the model/program, but having it does not mean that I can stare at it and learn nor modify it with a reasonable understanding of what's going to change.
I got to add that the situation feels even worse than assembly, because assembly, hand-coded or mutilated by an optimizing compiler still does something very specific and deterministic, but the weights on the model makes things equivalent to programming without booleans, but seemingly random numbers and checking for inequalities to get a binary decision.
- lolinder 2y agoThis is the analogy that people keep saying, but as I observed above, the key difference is that the company that produces a binary executable doesn't prefer to work with that binary: they work with the source code and re-compile after changing it. In contrast, the weights are the preferred form for modification, even for the company that built it. They only very rarely start a brand new training run from scratch, and when they do so it's not to modify the existing work, it's to make a brand new work that builds on what they learned from the previous model. If the company makes the form of the work that they themselves use as the primary artifact freely available, I'm not sure why we wouldn't call the work open.
- smolder 2y agoIs a .rom file open source because you can pipe it into an emulator and generate new machine code for a different platform? I don't think your argument holds any water.
- lolinder 2y agoIs a .rom file the preferred form for modifying the work?
- smolder 2y agoTo get it to run on different platforms and gain new features like super-resolution and so on, yes. Rom files are the preferred form for modifying old games. No one bothers digging up old source code and assets to reconstruct things when they can use an emulator to essentially spit out a derivative binary with new capability. See every re-release of a 16 bit era or earlier game. Now that I've beat my head against this issue for a while, I think it's best summed up as: weights are a binary artifact, not source of any kind.
- lolinder 2y agoIf what you say is true—if the ROM is the preferred form for making modifications (even for the original company that produced it) and the ROM is released under a FOSS license—then sure, I have no problem calling it open source.
- grandma_tea 2y agoPreferred by who? It sounds like these people have a strong say in what constitutes open source.
- lolinder 2y agoPreferred by anyone who's actually using and modifying the work. No one trains an existing model from scratch, even those who have access to all of the data to do so. There's just no compelling reason to retrain a model to make a change when you have the weights already—fine tuning is preferred by everyone. The only people I've seen who've asserted otherwise are random commenters on the internet who don't really understand the tech.
- grandma_tea 2y ago
- Nevermark 2y ago> In contrast, the weights are the preferred form for modification, even for the company that built it. Preferred is obviously not a particularly strong line. If someone ships object code for a bunch of stable modules, and only provides the source for code that’s expected to be where changed, is that really open? “Preferred” gets messy quick. Not sure how that can be defined in any consistent way. Models are going to get more & more complex. Training with competitive models, etc. I think you either have it all, or it isn’t really open. Or only some demarked subset is.