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.6.tar.gz (6.8 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.6-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for kalmanformer-0.0.6.tar.gz
Algorithm Hash digest
SHA256 2f27eeb76abfda05c7d36428bc5d59993f37edaefdb57ed9c22109cb2709e4ee
MD5 2d60567f79e1db5023a7f5e6b2dc8c16
BLAKE2b-256 82e1ab157eac798d09e19cb8148bc6c30fabb7d6fd933499fb37235d92df12d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for kalmanformer-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6cb77b7e77c019aaf594ad41114050cbc333004f8416d32daf547080f5e915f5
MD5 1e4207061bc8fca6e35a526994cf6bdb
BLAKE2b-256 b3c3393cbdb861b1be253ec2b05a7fa9246392b4306ffa6f8652ffa544a48aae

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