Skip to content

Python 3.12: SyntaxWarning: invalid escape sequence #1304

Description

@lstolcman

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions