Skip to main content

Spline Based Transformer

Project description

Spline-Based Transformer (wip)

Implementation of the proposed Spline-Based Transformer 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.2.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

spline_based_transformer-0.0.2-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for spline_based_transformer-0.0.2.tar.gz
Algorithm Hash digest
SHA256 96fdc44be057b0669c688a9e171dced684674d2ff413a701c2c4700604be0adf
MD5 3d4caa1f8e3887b9612ad105f84645a4
BLAKE2b-256 dcabd49def5ffb844352ee0c1459fd595a2d3b63f4c05802bdb84fc13a58117a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for spline_based_transformer-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dfc78fb9b8a8c205027f9b09973bb8726587b2f92518538c482e4eb0b06627d3
MD5 ff5e3b07075d004a36656d06cca00746
BLAKE2b-256 0ea0d46e96aaa8a5c40ced5d2b932b93d168b48be3798fb8311c16f9b0ba1bb4

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