StanfordASL / ALPaCA

Code for "Meta-Learning Priors for Efficient Online Bayesian Regression" by James Harrison, Apoorva Sharma, and Marco Pavone

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Purpose of `f_nom` in ALPACA

bkj opened this issue · comments

Are you able to explain the purpose of f_nom in ALPACA? Is this modification referenced in the paper at all?

Thanks

Hey Ben,

The purpose of f_nom is to provide a nominal transformation from x to y, and have the model only learn and adapt the error model online. Mathematically, the model is changed to be:

y = K^T \phi(x) + f_nom(x)

We did not use this for any of the simple function regression experiments in the paper.

For the dynamical systems modeling experiments, we use the ALPaCA framework to model the change in state. This is accomplished by using the model:

x[t+1] = K^T \phi(x[t], u[t]) + f_nom(x[t],u[t])

and setting

f_nom(x[t],u[t]) = x[t]

In the code, this is the default behavior when using the AdaptiveDynamics class without specifying f_nom manually.

Hope that clarifies things!

Cheers,
Apoorva