Skip to main content

KalmanFormer - using transformer to model the Kalman Gain in Kalman Filters

Project description

KalmanFormer

Implementation of KalmanFormer.

The paper proposes learning the Kalman Gain directly from data using Transformers, bypassing the limitations of traditional Kalman Filters on non-linear systems.

Install

$ pip install kalmanformer

Usage

import torch
from kalmanformer import KalmanFormer

# kalmanformer

kalmanformer = KalmanFormer(
    state_dim = 3,
    obs_dim = 3,
    dim = 64,
    depth = 2,
    heads = 2,
    dim_head = 32,
    mlp_dim = 64
)

# mock observations

observations = torch.randn(2, 10, 3)

# state transition matrix f and observation matrix h

F = torch.randn(3, 3)
H = torch.randn(3, 3)

# initial state

x_0 = torch.zeros(2, 3)

# tracking over sequence

post_states = kalmanformer(
    observations,
    F,
    H,
    x_0 = x_0
)

assert post_states.shape == (2, 10, 3)

Citations

@article{Shen2025KalmanFormer,
    title   = {KalmanFormer: using transformer to model the Kalman Gain in Kalman Filters},
    author  = {Siyuan Shen and Jichen Chen and Guanfeng Yu and Zhengjun Zhai and Pujie Han},
    journal = {Frontiers in Neurorobotics},
    year    = {2025},
    volume  = {18},
    doi     = {10.3389/fnbot.2024.1460255}
}

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

kalmanformer-0.0.12.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kalmanformer-0.0.12-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file kalmanformer-0.0.12.tar.gz.

File metadata

  • Download URL: kalmanformer-0.0.12.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.17

File hashes

Hashes for kalmanformer-0.0.12.tar.gz
Algorithm Hash digest
SHA256 27477f98e170dea3c33f7c5c39b46470fb927b6af1c9ba9a4d2785a90cf2f998
MD5 ded15f3f978fbf939ba1ed399a7b887e
BLAKE2b-256 481a79aba374eca4d8217f15efb1ac8369463ea9ff7224d16a6ac4784f00570d

See more details on using hashes here.

File details

Details for the file kalmanformer-0.0.12-py3-none-any.whl.

File metadata

File hashes

Hashes for kalmanformer-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 8565a6b24ec2964c90e57cdbc5c9a4525ed09eb9dcd95644ddb57363ff0ba55e
MD5 9f2b96212738231f6279b3bdf8a677f2
BLAKE2b-256 6f9892dbe53a4f06ba5142aa3fb5f8c0c4f765813d5d173e9dabb49feb729055

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