|
|
hace 5 años | |
|---|---|---|
| .circleci | hace 5 años | |
| docs | hace 5 años | |
| scripts | hace 5 años | |
| tesseract | hace 5 años | |
| tests | hace 5 años | |
| .gitignore | hace 5 años | |
| CONTRIBUTING.md | hace 5 años | |
| LICENSE | hace 5 años | |
| README.md | hace 5 años | |
| requirements.txt | hace 5 años | |
| setup.py | hace 5 años |
Distributed training of large neural networks across volunteer computers.
[WIP] - this branch is a work in progress. If you're interested in supplementary code for Learning@home paper, you can find it at https://github.com/mryab/learning-at-home.
Currently, there is no way to do it easily. There are some tests (you can check ./tests/benchmark_throughput.py
or look into CI logs) and we want to expand them. If you want to
do something complex with it, please contact us by opening an issue (less preferred: telegram).
tesseract quick tourTrainer process:
RemoteExpert(tesseract/client/remote_expert.py) behaves like a pytorch
module with autograd support but actually sends request to a remote runtime.RemoteMixtureOfExperts(tesseract/client/remote_moe.py) finds best experts
for a given input and either returns them as RemoteExpert or applies them
right away.Runtime process:
TesseractRuntime (tesseract/runtime/__init__.py) aggregates batches
and performs inference/training of experts according to their priority.TesseractServer (tesseract/server/__init__.py) wraps runtime and
periodically uploads experts into TesseractNetwork.DHT:
TesseractNetwork(tesseract/network/__init__.py) is a node of
Kademlia-based DHT that stores metadata used by trainer and runtime.DHT:
Runtime: