martius-lab / SMORL

21 stars 3 forks source link

differences in scalor implementation #2

Closed shivanimall closed 3 years ago

shivanimall commented 3 years ago

Hello,

I looked at the official SCALOR implementation and the one here: https://github.com/martius-lab/SMORL/blob/main/rlkit/rlkit/torch/scalor/scalor.py These two seem to differ, specifically you defined model.py which does not exist in SCALOR: https://github.com/JindongJiang/SCALOR

Did you adapt implementation from SCALOR? why was that so? and what if I intended to use SCALOR package directly, would I be missing any functionality?

thank you!

zadaianchuk commented 3 years ago

We've adapted SCALOR implementation to add some functionally such as the next step prediction method. As SCALOR was not using their method in interactive settings action dependence of the dynamics is also one obvious difference between original methods and our implementation.

shivanimall commented 3 years ago

okay thank you! @zadaianchuk -- also, https://github.com/martius-lab/SMORL/blob/main/rlkit/rlkit/envs/scalor_wrapper.py file is this also adapted? or auto-generated?

zadaianchuk commented 3 years ago

No, this file is not auto-generated or adapted. This wrapper provides the way to transform image inputs to SCALOR representation as well as their interpretation (e.g. reward signal) and it is one of the main parts of SMORL logic.

shivanimall commented 3 years ago

okay thank you for the clarification!

zadaianchuk commented 3 years ago

This file is for training and evaluation (evaluation is happening each epoch of the training)

shivanimall commented 3 years ago

ah got it, missed that, thought it was only for training.

shivanimall commented 3 years ago

@zadaianchuk - during inference time, then do you reuse the latent codes generated by SCALOR for z_what? is it that only z_where/z_depth may differ? if so, how do you track the different object rotations/lighting in case it may cause changes in z_what? or do you have to re-process the entire image via SCALOR during evaluation time?

I saw experiments gt_exp_name.py but correct me if I am wrong, you only replace the z_where latent codes and z_what you'd still have to recompute?

zadaianchuk commented 3 years ago

We re-process the entire image via SCALOR during evaluation time.