David Carteau wrote: ↑Thu Nov 19, 2020 8:24 pm
I'm not familiar at all with licenses (that's one of the reason why Orion's source code is not available, the others being that the engine is too weak to be helpful, and code is maybe not so "elegant" ), but if people are interested in and if it is possible to find the most "public domain" license possible, I would be happy to share my work (both inference code in C, with incremental updates, and training code in Python, using Pytorch).
Finally, I wonder what the community would thought about releasing an "official" version of Orion, using my own implementation of inference code, using a net trained with my own (home-made) trainer, but... using SF's eval to train the all thing I think some people would highly "disapprove", but on the other hand, a lot of work has been done and, as humans, to learn, we need a teacher. I think it's the same for engines : they need to be trained by the best experts
It has been known for some time that in effect "reverse-engineering" an eval function is possible by using learning, even when the engine used for training is not open source. It isn't a license violation per se as I understand it. It wasn't even an issue before supervised eval learning became widely prevalent a few years ago. Training NNs raises similar issues. I am not highly exercised about it myself: it is not so very different in principle from a strong human learning from that human's opponents.
Thanks Jon for your reply. I was wondering what was the most appropriate license to share my work without implying any restriction on usage by others (I didn't have the NNUE idea, I just implemented a piece of code that can reuse the idea). If it can help others to understand the concept, that would be great (if needed). I should take time to study the different choices (MIT, GPL 2/3, BSD, etc.), all this doesn't seem easy
jdart wrote: ↑Thu Nov 19, 2020 9:31 pm
It has been known for some time that in effect "reverse-engineering" an eval function is possible by using learning, even when the engine used for training is not open source. It isn't a license violation per se as I understand it. It wasn't even an issue before supervised eval learning became widely prevalent a few years ago. Training NNs raises similar issues. I am not highly exercised about it myself: it is not so very different in principle from a strong human learning from that human's opponents.
To avoid any misleading, my work is only based on the use of nn-82215d0fd0df.nnue network, provided by Sergio Vieri under the CC0 license which, as I understand, is the license which is the closest possible one of a public domain reuse. I haven't hacked or reverse engineered StockFish