|
|
5 lat temu | |
|---|---|---|
| .circleci | 5 lat temu | |
| tesseract | 5 lat temu | |
| tests | 5 lat temu | |
| .gitignore | 5 lat temu | |
| CONTRIBUTING.md | 5 lat temu | |
| LICENSE | 5 lat temu | |
| README.md | 5 lat temu | |
| requirements.txt | 5 lat temu | |
| setup.py | 5 lat temu |
Distributed training of large neural networks across volunteer computers.
[WIP] - this branch is in progress of updating. If you're interested in supplementary code for Learning@home paper, you can find it at https://github.com/mryab/learning-at-home .
cd to its root directory.requirements.txtTrainer process:
RemoteExpert(lib/client/remote_expert.py) behaves like a pytorch module with autograd support but actually sends request to a remote runtime.GatingFunction(lib/client/gating_function.py) finds best experts for a given input and either returns them as RemoteExpert or applies them right away.Runtime process:
TesseractRuntime (lib/runtime/__init__.py) aggregates batches and performs inference/training of experts according to their priority.TesseractServer (lib/server/__init__.py) wraps runtime and periodically uploads experts into TesseractNetwork.DHT:
TesseractNetwork(lib/network/__init__.py) is a node of Kademlia-based DHT that stores metadata used by trainer and runtime.WIP