Skip to main content

Stack Attention (wip)

For following a line of research that augments attention with a differentiable stack, beginning with DuSell et al. at ETH Zurich

Install

$ pip install stack-attention-pytorch

Usage

StackTransLayer

import torch
from stack_attention import StackTransLayer

tokens = torch.randn(2, 512, 256)

layer = StackTransLayer(256)

out1, state = layer(tokens)

out2, state = layer(
    tokens,
    stack_states = state
)

assert out1.shape == out2.shape == tokens.shape

Citations

@misc{dusell2024stackattentionimprovingability,
    title   = {Stack Attention: Improving the Ability of Transformers to Model Hierarchical Patterns}, 
    author  = {Brian DuSell and David Chiang},
    year    = {2024},
    eprint  = {2310.01749},
    archivePrefix = {arXiv},
    primaryClass = {cs.CL},
    url     = {https://arxiv.org/abs/2310.01749}, 
}
@misc{zhang2025stacktranslargelanguagemodel,
    title    = {StackTrans: From Large Language Model to Large Pushdown Automata Model}, 
    author   = {Kechi Zhang and Ge Li and Jia Li and Huangzhao Zhang and Yihong Dong and Jia Li and Jingjing Xu and Zhi Jin},
    year     = {2025},
    eprint   = {2507.15343},
    archivePrefix = {arXiv},
    primaryClass = {cs.SE},
    url      = {https://arxiv.org/abs/2507.15343}, 
}
@inproceedings{joulin2015inferring,
    author    = {Armand Joulin and Tom{\'a}{\v{s}} Mikolov},
    title     = {Inferring Algorithmic Patterns with Stack-Augmented Recurrent Nets},
    booktitle = {Advances in Neural Information Processing Systems 28 (NIPS 2015)},
    year      = {2015}
}

Release files for stack-attention-pytorch 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for stack-attention-pytorch 0.0.6
File Size Uploaded
stack_attention_pytorch-0.0.6.tar.gz 7.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for stack-attention-pytorch 0.0.6
File Interpreter ABI Platform
stack_attention_pytorch-0.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 16.4 kB

Release files / stack_attention_pytorch-0.0.6.tar.gz

Download URL stack_attention_pytorch-0.0.6.tar.gz
Size 7.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f724250b89778ed7674202c3d2a3e25f6437b0dd44f4d43c94c04b18c620faf2
BLAKE2b-256 checksum
How to use checksums
1f51e4947de5128437f441c528dfbf4a5ea88e2cafb45605d78886c35245378f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.17

Release files / stack_attention_pytorch-0.0.6-py3-none-any.whl

Download URL stack_attention_pytorch-0.0.6-py3-none-any.whl
Size 8.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
092c6f74f72d7e987f146729b583a045dedc5cae32a17994c232b9a0c70ee0d1
BLAKE2b-256 checksum
How to use checksums
1530a717dfe16eddf0db3707f3d43bc00a368f4f3937e57287c29f89d5831326
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.17

Release history Release notifications | RSS feed

0.0.8

2 release files

0.0.7

2 release files

This release

0.0.6 This release

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page