Open
Description
What happened + What you expected to happen
Bug:
Due to the changes in python 3.12, incorrect escape sequence generates a syntax warnings.
https://docs.python.org/3/whatsnew/3.12.html
A backslash-character pair that is not a valid escape sequence now generates a SyntaxWarning, instead of DeprecationWarning.
There are such escape sequences in code comments.
Expected behavior:
No syntax warnings when using python 3.12
Logs:
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:96
--
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:96: SyntaxWarning: invalid escape sequence '\m'
"""Mean Absolute Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:137
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:137: SyntaxWarning: invalid escape sequence '\m'
"""Mean Squared Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:178
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:178: SyntaxWarning: invalid escape sequence '\m'
"""Root Mean Squared Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:223
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:223: SyntaxWarning: invalid escape sequence '\m'
"""Mean Absolute Percentage Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:270
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:270: SyntaxWarning: invalid escape sequence '\m'
"""Symmetric Mean Absolute Percentage Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:319
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:319: SyntaxWarning: invalid escape sequence '\m'
"""Mean Absolute Scaled Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:375
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:375: SyntaxWarning: invalid escape sequence '\m'
"""Relative Mean Squared Error
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:429
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:429: SyntaxWarning: invalid escape sequence '\m'
"""Quantile Loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:505
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:505: SyntaxWarning: invalid escape sequence '\m'
"""Multi-Quantile loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:644
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:644: SyntaxWarning: invalid escape sequence '\m'
"""Implicit Quantile Loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:940
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:940: SyntaxWarning: invalid escape sequence '\s'
"""Tweedie Distribution
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2020
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2020: SyntaxWarning: invalid escape sequence '\m'
"""
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2049
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2049: SyntaxWarning: invalid escape sequence '\m'
"""Poisson Mixture Mesh
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2249
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2249: SyntaxWarning: invalid escape sequence '\m'
"""Gaussian Mixture Mesh
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2456
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2456: SyntaxWarning: invalid escape sequence '\m'
"""Negative Binomial Mixture Mesh
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2670
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2670: SyntaxWarning: invalid escape sequence '\h'
""" Huber Loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2722
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2722: SyntaxWarning: invalid escape sequence '\;'
""" Tukey Loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2810
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2810: SyntaxWarning: invalid escape sequence '\m'
"""Huberized Quantile Loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2873
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2873: SyntaxWarning: invalid escape sequence '\d'
"""Huberized Multi-Quantile loss
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2987
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:2987: SyntaxWarning: invalid escape sequence '\m'
"""Accuracy
../opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:3034
/opt/venv/lib/python3.12/site-packages/neuralforecast/losses/pytorch.py:3034: SyntaxWarning: invalid escape sequence '\m'
"""Scaled Continues Ranked Probability Score
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:59
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:59: SyntaxWarning: invalid escape sequence '\m'
"""MinMax Scaler
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:109
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:109: SyntaxWarning: invalid escape sequence '\m'
"""MinMax1 Scaler
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:161
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:161: SyntaxWarning: invalid escape sequence '\m'
"""Standard Scaler
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:199
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:199: SyntaxWarning: invalid escape sequence '\m'
"""Robust Median Scaler
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:249
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:249: SyntaxWarning: invalid escape sequence '\m'
"""Invariant Median Scaler
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:331
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_scalers.py:331: SyntaxWarning: invalid escape sequence '\m'
"""Temporal Normalization
../opt/venv/lib/python3.12/site-packages/neuralforecast/common/_modules.py:84
/opt/venv/lib/python3.12/site-packages/neuralforecast/common/_modules.py:84: SyntaxWarning: invalid escape sequence '\m'
"""Causal Convolution 1d
../opt/venv/lib/python3.12/site-packages/neuralforecast/models/hint.py:14
/opt/venv/lib/python3.12/site-packages/neuralforecast/models/hint.py:14: SyntaxWarning: invalid escape sequence '\m'
"""BottomUp Reconciliation Matrix.
../opt/venv/lib/python3.12/site-packages/neuralforecast/models/hint.py:38
/opt/venv/lib/python3.12/site-packages/neuralforecast/models/hint.py:38: SyntaxWarning: invalid escape sequence '\m'
"""MinTraceOLS Reconciliation Matrix.
../opt/venv/lib/python3.12/site-packages/neuralforecast/models/hint.py:70
/opt/venv/lib/python3.12/site-packages/neuralforecast/models/hint.py:70: SyntaxWarning: invalid escape sequence '\m'
"""MinTraceOLS Reconciliation Matrix.
Versions / Dependencies
neuralforecast 3.0.0, latest
environment:
WSL ubuntu 24.04
python 3.12
Reproduction script
minimal example from readme shows the warning
from neuralforecast import NeuralForecast
from neuralforecast.models import NBEATS
from neuralforecast.utils import AirPassengersDF
nf = NeuralForecast(
models = [NBEATS(input_size=24, h=12, max_steps=100)],
freq = 'ME'
)
nf.fit(df=AirPassengersDF)
nf.predict()
Issue Severity
Low: It annoys or frustrates me.