Skip to main content

PEER - Pytorch

Project description

PEER - Pytorch

Pytorch implementation of the PEER block from the Deepmind paper, Mixture of A Million Experts, by Xu Owen He.

Install

$ pip install PEER-pytorch

Usage

import torch
from PEER_pytorch import PEER

peer = PEER(
    dim = 512,
    heads = 8,                   # tested up to 32 - (hk = heads * num_experts_per_head (16))
    num_experts = 1_000_000,     # he chose 1 million
    num_experts_per_head = 16,   # he settled on 16, but was 32 in PKM paper
    dim_key = 128,
    pre_rmsnorm = True
).cuda()

x = torch.randn(2, 1024, 512).cuda()

out = peer(x) + x

assert x.shape == out.shape

Citations

@inproceedings{He2024MixtureOA,
    title   = {Mixture of A Million Experts},
    author  = {Xu Owen He},
    year    = {2024},
    url     = {https://api.semanticscholar.org/CorpusID:271038610}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

peer_pytorch-0.1.0.tar.gz (265.6 kB view details)

Uploaded Source

Built Distribution

peer_pytorch-0.1.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file peer_pytorch-0.1.0.tar.gz.

File metadata

  • Download URL: peer_pytorch-0.1.0.tar.gz
  • Upload date:
  • Size: 265.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for peer_pytorch-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ea95dd84e6c4a427cccaa9b0236f5c2464cc60611f206165d2993a008f5d91d1
MD5 152a4caa40c4a124b47e42b90fa0ec88
BLAKE2b-256 fe3aa95f7610489c0b1121d15fe13ad7e57a839252ea2fdeb953e10bf5140c42

See more details on using hashes here.

File details

Details for the file peer_pytorch-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for peer_pytorch-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0cb349c9ac31e7559834e536b38fa47011194f4ad84c1be4b6912bd043a4661c
MD5 eacd67bc3801ef44760b6df86bfb0c34
BLAKE2b-256 ada405c8a9e6ae2203bc63d538344edb60e56b92e1be4ebc6c2b2d1eaf4f2f34

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page