4 ms·
This article is light on the details about this being a GPL license violation or not. The final paragraph also makes it sound like Stockfish is under a permissi
by ufo 6y ago
This article is light on the details about this being a GPL license violation or not. The final paragraph also makes it sound like Stockfish is under a permissive license (only requiring attribution) when in fact it's licensed under the copyleft GPLv3.
- bonzini 6y agoIt was, but according to Wikipedia they sorted that out by moving the proprietary neural network out of the executable. If this is correct, it means that the source is available and the nature of the changes (including removing the original authors) should be visible.
- tutfbhuf 6y agohttps://github.com/official-stockfish/Stockfish/blob/master/Copying.txt https://github.com/official-stockfish/Stockfish/blob/master/... Stockfish _is_ currently licensed under GPLv3. Chessbase is allowed to sell a modified copy, but only under the same license and they have to provide the source.
- bonzini 6y agoThe neural network is just data, but if it's part of the executable you need to provide the raw data that is then linked into the executable.
- Someone 6y agoI think it can be argued that the set of weights of a neural network is a program, but not “the preferred form of the work for making modifications to it”. That would mean the training set and training algorithm (and random number generator seed) would have to be distributed under the GPL, too.
- bonzini 6y agoI don't think it is always feasible to make the learning process entirely deterministic, especially for distributed reinforcement learning.
- nullc 6y agoBinaries weren't historically deterministic either. This isn't a problem.
- bonzini 6y agoThey did the same thing though. Two differently trained neural networks will have different outcomes, in this case they'd pick different chess moves in some special cases.
- Someone 6y agoI’m fairly sure there were (maybe still are) linkers that, given duplicate symbol names, would happily grab one of them without checking whether they had the same code. Add in parallel linking, and program behavior can change.
- glomph 6y agoThe stockfish blogpost is quite a lot clearer: https://blog.stockfishchess.org/post/643239805544792064/statement-on-fat-fritz-2 https://blog.stockfishchess.org/post/643239805544792064/stat...