Comments (3)
How important is Flax to the migration? I've been exploring pgx and it seems really nice and I've started using it, but my go to is equinox (https://github.com/patrick-kidger/equinox, probably the second most popular behind flax). I would be down to work on this issue, as long as you are ok with equinox instead of flax.
from pgx.
Thank you for your interest in pgx! 🙏
Whether it's Flax or not isn't particularly important. I simply considered it as the first candidate because I thought it's the framework used by the largest community.
I think Equinox is a good choice. The issue I had with Haiku was that batch normalization couldn't handle dimensions that were made by vmap
, so inevitably, I had to initialize models that included batch dimensions. Equinox doesn't have this issue, so I think it's wonderful.
If you could send a PR, I would greatly appreciate it. If you send a PR, I'll check the following points on my end and then merge:
- A decrease in NN inference speed due to the switch from Haiku to Equinox is acceptable up to about double the time.
- It would be preferable to have similar learning performance with 400 iterations on Go 9x9 (although I think a few percent difference would be acceptable).
I believe this will be a relatively significant change, so from a review standpoint, it would be preferable if the PR could focus on changes to the NN module and keep other changes to a minimum.
from pgx.
At the very least, there will be no members in our team working on this issue by the end of the year, so it's fine for you to proceed at your own pace 👍
from pgx.
Related Issues (20)
- Haiku errors in Py3.8
- Royal Game of Ur Environment HOT 4
- [Internal change] Decompose the game logic and API HOT 2
- alphazero one game search in mult devices HOT 1
- Remove `player_id` argument in `Env.observe`
- Add `jaxlib` to `requirements.txt`
- AlphaZero training on standard chess HOT 3
- bug about go game HOT 7
- Load (human) chess play data HOT 4
- Add fields to state in chess HOT 1
- [Kuhn Poker] Simplify the implementation HOT 2
- Loading Trained AlphaZero Model HOT 2
- Implementing Stratego HOT 1
- Investigate Pawn moves in (Gardner) chess
- Fix `AttributeError: module 'jax.random' has no attribute 'KeyArray'` in Python 3.12 HOT 1
- Restore `test_baseline.py`
- Upgrade Kuhn poker version
- Release `v2.1.0`
- Refer to cfrx in README
- go game ownership HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pgx.