DLR-RM / DLR-RM/stable-baselines3

[Feature Request] Inform what normalization from preprocess_obs was applied to verbose = 2

Open
#1,206 3 comments 0 reactions 0 assignees View on GitHub
documentation enhancement
Dominant language
Python
Stars
13.8k
Forks
2.2k
Avg merge
1h 35m
Merged PRs (30d)
2

Description

### 🚀 Feature

I suggest we add a log with `verbose=2` that describe if preprocess_obs normalized any of the input for the network.

### Motivation

This is a very small one but the fact we don't know if the image/on hot is normalized without manually having to check it manually is cumbersome. Most likely it ends up in behavior where people use VecNormalization when they don't have to.

### Pitch

I would like to be able to see in my logs if my observation space got normalized.

### Alternatives

Alternatively, it could be an extra property of the policy object after model training.

### Additional context

_No response_

### Checklist

- [X] I have checked that there is no similar [issue](https://github.com/DLR-RM/stable-baselines3/issues) in the repo

Contributor guide

Open the contributing guide

Research direction

Search the Python code for preprocess_obs and existing verbose=2 logging, then trace how observation normalization is determined. The change is done when logs clearly report whether the input observations were normalized, with the alternative policy property considered only if the existing logging path cannot expose it.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.