Kalman Folding: Extracting Models from Data One Observation at a Time • Brian Beckman • YOW! 2017

Extract models from data one observation at a time with Kalman Folding, a novel approach to state estimation, and explore its applications and limitations in this talk.

Key takeaways
  • Kalman Folding is an iterative process: Extracting models from data one observation at a time.
  • Fold abstracts iteration: Allows iteration over sequential data, reducing code complexity.
  • Binary function and initial state: Used in fold abstraction, allowing state to be updated at each iteration.
  • Fibonacci combiner: Example of fold abstraction, calculates Fibonacci numbers.
  • Observer abstraction: Callback function that takes an observable as input, updating its state.
  • Kalman filtering: Optimization of state estimation using a mathematical framework.
  • Tuning and optimization: Theorectical capacity of the system is optimal, with limitations in practical applications.
  • Large covariance: Large uncertainty in the system, resulting in poor state estimates.
  • Stream abstraction: Infinite sequence of data, processed one element at a time.
  • Functional programming: Provides decoupling of data processing and state updating, allowing for modular code.
  • Observations vs. predictions: Observation is an input to the model, while predictions are outputs of the model.
  • Folding and scanning: Functional programming concepts that are related, but distinct.
  • Lessons learned: Functional programming concepts, such as fold, observer, and stream, can be applied to model extraction from data.
  • Potential applications: Robotics, economics, navigation, and battery modeling.
  • Kalman filter limitations: Does not account for unknowns, assumes data is independent and identically distributed, and has computational complexity issues.
  • Functional folding: Combining fold and stream abstractions for processing sequential data.
  • State updates: Updating state at each iteration in the Kalman filter.
  • Estimation vs. prediction: Estimation is the process of determining a set of unknowns, while prediction is making an inference about the future based on that set.