Skip to content

Latest commit

 

History

History
28 lines (21 loc) · 1.47 KB

README.md

File metadata and controls

28 lines (21 loc) · 1.47 KB

MEKFEMA-DME

Modified Extended Kalman Filter with generalized Exponential Moving Average and Dynamic Multi-Epoch update strategy (MEKFEMA-DME)

Pytorch implementation source coder for paper Robust Online Model Adaptation by Extended Kalman Filter with Exponential Moving Average and Dynamic Multi-Epoch Strategy.

In this paper, inspired by Extended Kalman Filter (EKF), a base adaptation algorithm Modified EKF with forgetting factor (MEKFλ) is introduced first. Then using exponential moving average (EMA) methods, this paper proposes EMA filtering to the base EKFλ in order to increase the convergence rate. In order to effectively utilize the samples in online adaptation, this paper proposes a dynamic multi-epoch update strategy to discriminate the “hard” samples from “easy” samples, and sets different weights for them. With all these extensions, this paper proposes a robust online adaptation algorithm: MEKF with Exponential Moving Average and Dynamic Multi-Epoch update strategy (MEKFEMA-DME).

Requirements

  • Python 3.6
  • pytorch >=1.1.0
  • pip install -r requirements.txt

How to use it

1 . Offline Neural Network Training

python train.py

2 . Online Adaptation

python adapt.py

You can online adapt the offline trained model with several optimizers, including SGD, Adam, MEKFλ, MEKFEMA-DME.