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}
}
@article{Csordas2023ApproximatingTF,
    title   = {Approximating Two-Layer Feedforward Networks for Efficient Transformers},
    author  = {R'obert Csord'as and Kazuki Irie and J{\"u}rgen Schmidhuber},
    journal = {ArXiv},
    year    = {2023},
    volume  = {abs/2310.10837},
    url     = {https://api.semanticscholar.org/CorpusID:264172384}
}

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.2.1.tar.gz (268.0 kB view details)

Uploaded Source

Built Distribution

peer_pytorch-0.2.1-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: peer_pytorch-0.2.1.tar.gz
  • Upload date:
  • Size: 268.0 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.2.1.tar.gz
Algorithm Hash digest
SHA256 1b96b4ff2f3fa8c0186d8139d62981b344759adcab020902bfd17dc2e943712e
MD5 bf2a30bf7856c44feab14ec9b377e131
BLAKE2b-256 e503240d177d100b6d94b3de0f897d25dc307e4be2567949312662d8d675579d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: peer_pytorch-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for peer_pytorch-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0979861a320cf6b09176bb023d21d6cfb984b96c3e9fd428ff7aee834046aec8
MD5 8e4de2d03a984de0bd962810e31e963f
BLAKE2b-256 6500548cdc160668723af782ef9ac60a38e4efc4a9f9fb10f258044bb98cf333

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