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

Uploaded Source

Built Distribution

spline_based_transformer-0.0.6-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for spline_based_transformer-0.0.6.tar.gz
Algorithm Hash digest
SHA256 10f9c471f593605851857c16fa13005668d22b012b23de519d0542652bf6b2df
MD5 f42ac41ade01250848f01701a8921ffb
BLAKE2b-256 526bf71c328e421d13268223c2b2e74e90292384881e3fb8cc6534d6e724afa2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spline_based_transformer-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 230323750dc29b3957d67ebac8da9748d7ec746e03b8260f93bba561f11b5d6e
MD5 1c2e7ee9800b480a166926fd2d1db130
BLAKE2b-256 d1196b27a114d05192da7cdc214ce7d535e8ac56d7d002c5458a5651284c0b1f

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