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.2.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.2-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: multiscreen-0.1.2.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.2.tar.gz
Algorithm Hash digest
SHA256 2b4b5de336279d19b6d36a7f5558623a037a0dc3a95707979486f6ec70b010a6
MD5 7d2b15358c1b13b6af2571f63fe5cfe4
BLAKE2b-256 a3866af0d4cb7a0c39a2902d3ce2997bcf353f993422baeec66d676e691abb60

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for multiscreen-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 90f51bf27615a849dd38bf97de1e09abe8e0c317ac8b4764450ede5fb1fc663e
MD5 5ed31dd157a3db904b827fc8b33e85a5
BLAKE2b-256 79894c7a73bad07b1cc2c93122fe7b2a6d822fb835408bf0e36ecc8b1bd2e4f4

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