Skip to main content

Spline Based Transformer

Project description

Spline-Based Transformer (wip)

Implementation of the proposed Spline-Based Transformer (paper) from Disney Research

This is basically a transformer based autoencoder, but they cleverly use a set of latent tokens, where that set of tokens are the (high dimensional) control points for a spline.

Install

$ pip install spline-based-transformer

Usage

import torch
from spline_based_transformer import SplineBasedTransformer

model = SplineBasedTransformer(
    dim = 512,
    enc_depth = 6,
    dec_depth = 6
)

data = torch.randn(1, 1024, 512)

loss = model(data, return_loss = True)
loss.backward()

# after much training

recon, control_points = model(data, return_latents = True)
assert data.shape == recon.shape

# mess with the control points, which should preserve continuity better

control_points += 1

controlled_recon = model.decode_from_latents(control_points, num_times = 1024)
assert controlled_recon.shape == data.shape

Citations

@misc{Chandran2024,
    author  = {Prashanth Chandran, Agon Serifi, Markus Gross, Moritz Bächer},
    url     = {https://la.disneyresearch.com/publication/spline-based-transformers/}
}

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

spline_based_transformer-0.0.11.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file spline_based_transformer-0.0.11.tar.gz.

File metadata

File hashes

Hashes for spline_based_transformer-0.0.11.tar.gz
Algorithm Hash digest
SHA256 02c14565eb8c3ae2d1f3a9abbbdd87792c5e41885c8aa8b4a2395249c348b57c
MD5 b95c6160c02cf778be049e27bc2de634
BLAKE2b-256 23ebe7277944ec2448f47681acb8261967d8a07891745ff8e5a0a54fa671f459

See more details on using hashes here.

File details

Details for the file spline_based_transformer-0.0.11-py3-none-any.whl.

File metadata

File hashes

Hashes for spline_based_transformer-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 8fb6ca72d899e338e4942a810cdf8b0d3b7d06fb6fe5c6d0e025aca5f4a3ba4b
MD5 4ee186b28a3f7e936585cfb33f73f283
BLAKE2b-256 43a526db16facb03a26b2fd75a06736cd2102f7b612279da8328a03075cd0f9d

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