From 03dbeea69850f49e840114e006d7ac3e1cf1be2c Mon Sep 17 00:00:00 2001 From: Magnus Maichle Date: Thu, 24 Oct 2024 18:02:06 +0200 Subject: [PATCH] implemented dummy dataloader --- ddopai/__init__.py | 2 +- ddopai/_modidx.py | 30 ++++- ddopai/dataloaders/base.py | 117 +++++++++++++++- nbs/10_dataloaders/10_base_dataloader.ipynb | 142 ++++++++++++++++++++ settings.ini | 2 +- 5 files changed, 289 insertions(+), 4 deletions(-) diff --git a/ddopai/__init__.py b/ddopai/__init__.py index 034f46c..6526deb 100644 --- a/ddopai/__init__.py +++ b/ddopai/__init__.py @@ -1 +1 @@ -__version__ = "0.0.6" +__version__ = "0.0.7" diff --git a/ddopai/_modidx.py b/ddopai/_modidx.py index c9e7144..9ea6c6f 100644 --- a/ddopai/_modidx.py +++ b/ddopai/_modidx.py @@ -459,7 +459,35 @@ 'ddopai.dataloaders.base.BaseDataLoader.train': ( '10_dataloaders/base_dataloader.html#basedataloader.train', 'ddopai/dataloaders/base.py'), 'ddopai.dataloaders.base.BaseDataLoader.val': ( '10_dataloaders/base_dataloader.html#basedataloader.val', - 'ddopai/dataloaders/base.py')}, + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader': ( '10_dataloaders/base_dataloader.html#dummydataloader', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.X_shape': ( '10_dataloaders/base_dataloader.html#dummydataloader.x_shape', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.Y_shape': ( '10_dataloaders/base_dataloader.html#dummydataloader.y_shape', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.__getitem__': ( '10_dataloaders/base_dataloader.html#dummydataloader.__getitem__', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.__init__': ( '10_dataloaders/base_dataloader.html#dummydataloader.__init__', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.__len__': ( '10_dataloaders/base_dataloader.html#dummydataloader.__len__', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.get_all_X': ( '10_dataloaders/base_dataloader.html#dummydataloader.get_all_x', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.get_all_Y': ( '10_dataloaders/base_dataloader.html#dummydataloader.get_all_y', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.len_test': ( '10_dataloaders/base_dataloader.html#dummydataloader.len_test', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.len_train': ( '10_dataloaders/base_dataloader.html#dummydataloader.len_train', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.len_val': ( '10_dataloaders/base_dataloader.html#dummydataloader.len_val', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.test': ( '10_dataloaders/base_dataloader.html#dummydataloader.test', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.train': ( '10_dataloaders/base_dataloader.html#dummydataloader.train', + 'ddopai/dataloaders/base.py'), + 'ddopai.dataloaders.base.DummyDataLoader.val': ( '10_dataloaders/base_dataloader.html#dummydataloader.val', + 'ddopai/dataloaders/base.py')}, 'ddopai.dataloaders.distribution': { 'ddopai.dataloaders.distribution.BaseDistributionDataLoader': ( '10_dataloaders/distribution_loaders.html#basedistributiondataloader', 'ddopai/dataloaders/distribution.py'), 'ddopai.dataloaders.distribution.BaseDistributionDataLoader.__init__': ( '10_dataloaders/distribution_loaders.html#basedistributiondataloader.__init__', diff --git a/ddopai/dataloaders/base.py b/ddopai/dataloaders/base.py index da13a61..bf6f35f 100644 --- a/ddopai/dataloaders/base.py +++ b/ddopai/dataloaders/base.py @@ -3,7 +3,7 @@ # AUTOGENERATED! DO NOT EDIT! File to edit: ../../nbs/10_dataloaders/10_base_dataloader.ipynb. # %% auto 0 -__all__ = ['BaseDataLoader'] +__all__ = ['BaseDataLoader', 'DummyDataLoader'] # %% ../../nbs/10_dataloaders/10_base_dataloader.ipynb 3 import numpy as np @@ -157,3 +157,118 @@ def test(self): else: self.dataset_type = "test" + +# %% ../../nbs/10_dataloaders/10_base_dataloader.ipynb 19 +class DummyDataLoader(BaseDataLoader): + + """ + Dummy class for data loaders that can be usef for environment that do not require any data. + """ + + def __init__(self): + self.dataset_type = "train" + + def __len__(self): + ''' + + ''' + pass + + def __getitem__(self, idx): + + """ + + """ + pass + + @property + def X_shape(self): + """ + + """ + pass + + @property + def Y_shape(self): + """ + + """ + pass + + def get_all_X(self, + dataset_type: str = 'train' # can be 'train', 'val', 'test', 'all' + ): + + """ + + """ + pass + + + def get_all_Y(self, + dataset_type: str = 'train' # can be 'train', 'val', 'test', 'all' + ): + + """ + + """ + pass + + @property + def len_train(self): + + """ + + """ + + pass + + @property + def len_val(self): + + """ + + """ + + pass + + @property + def len_test(self): + + """ + + """ + + pass + + + def train(self): + + """ + Set the internal state of the dataloader to train + """ + + self.dataset_type = "train" + + def val(self): + + """ + Set the internal state of the dataloader to validation + """ + + if self.val_index_start is None: + raise ValueError('no validation set defined') + else: + self.dataset_type = "val" + + def test(self): + + """ + Set the internal state of the dataloader to test + """ + + if self.test_index_start is None: + raise ValueError('no test set defined') + else: + self.dataset_type = "test" + diff --git a/nbs/10_dataloaders/10_base_dataloader.ipynb b/nbs/10_dataloaders/10_base_dataloader.ipynb index bb39f01..ab60603 100644 --- a/nbs/10_dataloaders/10_base_dataloader.ipynb +++ b/nbs/10_dataloaders/10_base_dataloader.ipynb @@ -783,6 +783,148 @@ "show_doc(BaseDataLoader.test)" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#| export\n", + "class DummyDataLoader(BaseDataLoader):\n", + " \n", + " \"\"\"\n", + " Dummy class for data loaders that can be usef for environment that do not require any data.\n", + " \"\"\"\n", + "\n", + " def __init__(self):\n", + " self.dataset_type = \"train\"\n", + "\n", + " def __len__(self):\n", + " '''\n", + "\n", + " '''\n", + " pass\n", + "\n", + " def __getitem__(self, idx):\n", + "\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + " pass\n", + "\n", + " @property\n", + " def X_shape(self):\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + " pass\n", + "\n", + " @property\n", + " def Y_shape(self):\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + " pass\n", + "\n", + " def get_all_X(self,\n", + " dataset_type: str = 'train' # can be 'train', 'val', 'test', 'all'\n", + " ): \n", + "\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + " pass \n", + "\n", + "\n", + " def get_all_Y(self,\n", + " dataset_type: str = 'train' # can be 'train', 'val', 'test', 'all'\n", + " ): \n", + "\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + " pass \n", + "\n", + " @property\n", + " def len_train(self):\n", + "\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + "\n", + " pass\n", + "\n", + " @property\n", + " def len_val(self):\n", + "\n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + "\n", + " pass\n", + " \n", + " @property\n", + " def len_test(self):\n", + " \n", + " \"\"\"\n", + "\n", + " \"\"\"\n", + "\n", + " pass\n", + "\n", + " \n", + " def train(self):\n", + "\n", + " \"\"\"\n", + " Set the internal state of the dataloader to train\n", + " \"\"\"\n", + "\n", + " self.dataset_type = \"train\"\n", + "\n", + " def val(self):\n", + "\n", + " \"\"\"\n", + " Set the internal state of the dataloader to validation\n", + " \"\"\"\n", + "\n", + " if self.val_index_start is None:\n", + " raise ValueError('no validation set defined')\n", + " else:\n", + " self.dataset_type = \"val\"\n", + "\n", + " def test(self):\n", + "\n", + " \"\"\"\n", + " Set the internal state of the dataloader to test\n", + " \"\"\"\n", + "\n", + " if self.test_index_start is None:\n", + " raise ValueError('no test set defined')\n", + " else:\n", + " self.dataset_type = \"test\"\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": null, diff --git a/settings.ini b/settings.ini index 453d30e..66dc40f 100644 --- a/settings.ini +++ b/settings.ini @@ -5,7 +5,7 @@ ### Python library ### repo = ddopai lib_name = %(repo)s -version = 0.0.6 +version = 0.0.7 min_python = 3.7 license = apache2 black_formatting = False