Skip to content

Commit

Permalink
added Pytorch 2.0 compatibility
Browse files Browse the repository at this point in the history
  • Loading branch information
oguiza committed Apr 1, 2023
1 parent 8add057 commit db55074
Show file tree
Hide file tree
Showing 10 changed files with 1,010 additions and 1,071 deletions.
228 changes: 90 additions & 138 deletions nbs/006_data.core.ipynb

Large diffs are not rendered by default.

1,801 changes: 896 additions & 905 deletions nbs/009_data.preprocessing.ipynb

Large diffs are not rendered by default.

28 changes: 14 additions & 14 deletions nbs/012_data.image.ipynb

Large diffs are not rendered by default.

Binary file modified nbs/data/TSCategoricalEncoder.joblib
Binary file not shown.
Binary file modified nbs/data/TSDateTimeEncoder.joblib
Binary file not shown.
Binary file modified nbs/data/TSMissingnessEncoder.joblib
Binary file not shown.
Binary file modified nbs/models/test.pth
Binary file not shown.
6 changes: 3 additions & 3 deletions settings.ini
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ status = 4
min_python = 3.7
audience = Developers
language = English
requirements = fastai>=2.7.9 pyts>=0.12.0 imbalanced-learn>=0.8.0 psutil>=5.4.8
pip_requirements = torch>=1.7,<1.14
requirements = fastai>=2.7.12 pyts>=0.12.0 imbalanced-learn>=0.8.0 psutil>=5.4.8
pip_requirements = torch>=1.7,<2.1
conda_user = timeseriesAI
conda_requirements = pytorch>=1.7,<1.14
conda_requirements = pytorch>=1.7,<2.1
extra_requirements = sktime>=0.10.1 tsfresh>=0.18.0 PyWavelets>=1.1.1 nbformat>=5.1.3
dev_requirements = nbdev>2 ipykernel>6
console_scripts = nb2py=tsai.export:nb2py
Expand Down
16 changes: 6 additions & 10 deletions tsai/data/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,11 @@ def data(self): return cast(self, Tensor)

def __repr__(self):
if self.ndim > 0: return f'NumpyTensor(shape:{tuple(self.shape)}, device={self.device}, dtype={self.dtype})'
else: return f'NumpyTensor([{self}], device={self.device}, dtype={self.dtype})'
else: return f'NumpyTensor([{self.data}], device={self.device}, dtype={self.dtype})'


def show(self, ax=None, ctx=None, title=None, **kwargs):
if self.ndim == 0: return str(self)
if self.ndim == 0: return str(self.data)
elif self.ndim != 2: self = type(self)(to2d(self))
if not isinstance(self,np.ndarray): self = self.detach().cpu().numpy()
ax = ifnone(ax, ctx)
Expand Down Expand Up @@ -79,13 +79,9 @@ def __new__(cls, o, dtype=None, device=None, copy=None, requires_grad=False, **k

@property
def data(self): return cast(self, Tensor)

def __repr__(self):
if self.ndim > 0: return f'NumpyTensor(shape:{tuple(self.shape)}, device={self.device}, dtype={self.dtype})'
else: return f'NumpyTensor([{self}], device={self.device}, dtype={self.dtype})'

def show(self, ax=None, ctx=None, title=None, **kwargs):
if self.ndim == 0: return str(self)
if self.ndim == 0: return str(self.data)
elif self.ndim != 2: self = type(self)(to2d(self))
if not isinstance(self,np.ndarray): self = self.detach().cpu().numpy()
ax = ifnone(ax, ctx)
Expand Down Expand Up @@ -115,7 +111,7 @@ def __repr__(self):
return f'TSTensor(vars:{self.shape[-2]}, len:{self.shape[-1]}, device={self.device}, dtype={self.dtype})'
elif self.ndim == 1:
return f'TSTensor(len:{self.shape[-1]}, device={self.device}, dtype={self.dtype})'
else: return f'TSTensor([{self}], device={self.device}, dtype={self.dtype})'
else: return f'TSTensor([{self.data}], device={self.device}, dtype={self.dtype})'

# %% ../../nbs/006_data.core.ipynb 8
class ToTSTensor(Transform):
Expand All @@ -134,12 +130,12 @@ def show_tuple(tup, **kwargs):
# %% ../../nbs/006_data.core.ipynb 27
class TSLabelTensor(NumpyTensor):
def __repr__(self):
if self.ndim == 0: return f'{self}'
if self.ndim == 0: return f'{self.data}'
else: return f'TSLabelTensor(shape:{tuple(self.shape)}, device={self.device}, dtype={self.dtype})'

class TSMaskTensor(NumpyTensor):
def __repr__(self):
if self.ndim == 0: return f'{self}'
if self.ndim == 0: return f'{self.data}'
else: return f'TSMaskTensor(shape:{tuple(self.shape)}, device={self.device}, dtype={self.dtype})'

# %% ../../nbs/006_data.core.ipynb 30
Expand Down
2 changes: 1 addition & 1 deletion tsai/data/image.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ def vars(self):
def len(self): return self.shape[-2:]

def __repr__(self):
if self.ndim == 0: return f'{self}'
if self.ndim == 0: return f'{self.data}'
else: return f'TSImage(shape:{self.shape})'

def show(self, **kwargs):
Expand Down

0 comments on commit db55074

Please sign in to comment.