Skip to main content

Implementation of MultiScreen

Project description

MultiScreen

Implementation of Multiscreen proposed by Ken Nakanishi for Screening is Enough

Basically it is a non-softmax attention with ReLU squared activation, content similarity thresholding, and aggressive normalization of the values.

Install

$ pip install multiscreen

Usage

import torch
from multiscreen import MultiScreen

multi_screen = MultiScreen(
    num_tokens = 256,
    dim = 512,
    depth = 6,
    heads = 8,
    dim_keys = 16,     # paper says 16 or 32
    dim_values = 64    # paper says 64 or 128
)

token_ids = torch.randint(0, 256, (1, 1024))

logits = multi_screen(token_ids)
assert logits.shape == (1, 1024, 256)

Enwik8

$ uv run train.py

Citations

@misc{nakanishi2026screening,
    title   = {Screening Is Enough},
    author  = {Ken M. Nakanishi},
    year    = {2026},
    eprint  = {2604.01178},
    archivePrefix = {arXiv},
    primaryClass = {cs.LG},
    url     = {https://arxiv.org/abs/2604.01178},
}
@misc{zhang2021sparse,
    title   = {Sparse Attention with Linear Units},
    author  = {Biao Zhang and Ivan Titov and Rico Sennrich},
    year    = {2021},
    eprint  = {2104.07012},
    archivePrefix = {arXiv},
    primaryClass = {cs.CL}
}

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

multiscreen-0.1.4.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

multiscreen-0.1.4-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file multiscreen-0.1.4.tar.gz.

File metadata

  • Download URL: multiscreen-0.1.4.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for multiscreen-0.1.4.tar.gz
Algorithm Hash digest
SHA256 8a46bc31b76d731bee98ef47d4ef26b8ae27d92f31900ca8b98cd14bc3829740
MD5 154c3959a992ba613420764fbc3adadf
BLAKE2b-256 c801a3da858f9e60e7bb93a2d5daf749ba85e38769c008c30a468b8bb70f1df7

See more details on using hashes here.

File details

Details for the file multiscreen-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for multiscreen-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 7c85cade0a1a546f69682293040d70f70af793bafa6eca805d1185033c281cc5
MD5 4e270c8fa374aae838a630d0fae642a7
BLAKE2b-256 6ca06983b68b1c605a26621a1c5f71f78e90247d66014000fb41e48a3ce54bd3

See more details on using hashes here.

Supported by

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