From 7bffb088553182ff2648947622a4877bf4fcea3a Mon Sep 17 00:00:00 2001 From: Sun Jin Kim <sk2521@ic.ac.uk> Date: Thu, 28 Apr 2022 13:51:16 +0100 Subject: [PATCH] edit docstrings and docs --- autoaug/autoaugment_learners/AaLearner.py | 21 ++++++++++-- autoaug/autoaugment_learners/EvoLearner.py | 24 ++++++++++++++ autoaug/autoaugment_learners/GruLearner.py | 19 +++++++++++ autoaug/autoaugment_learners/RsLearner.py | 18 +++++++++++ autoaug/autoaugment_learners/UcbLearner.py | 30 ++++++++++++++++-- docs/source/_static/logohd.png | Bin 7116 -> 10337 bytes ...autoaug.autoaugment_learners.AaLearner.rst | 7 ++++ ...utoaug.autoaugment_learners.EvoLearner.rst | 7 ++++ ...utoaug.autoaugment_learners.GruLearner.rst | 7 ++++ ...autoaug.autoaugment_learners.RsLearner.rst | 7 ++++ ...utoaug.autoaugment_learners.UcbLearner.rst | 7 ++++ docs/source/autoaug/api_reference.rst | 0 .../autoaug/auto_augmentation_learners.rst | 12 ------- docs/source/autoaug/autoaugment_learners.rst | 12 +++++++ ...autoaug.autoaugment_learners.AaLearner.rst | 24 -------------- ...utoaug.autoaugment_learners.EvoLearner.rst | 24 -------------- ...utoaug.autoaugment_learners.GruLearner.rst | 24 -------------- ...autoaug.autoaugment_learners.RsLearner.rst | 24 -------------- ...utoaug.autoaugment_learners.UcbLearner.rst | 25 --------------- docs/source/index.rst | 15 +++++---- 20 files changed, 163 insertions(+), 144 deletions(-) create mode 100644 docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.AaLearner.rst create mode 100644 docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.EvoLearner.rst create mode 100644 docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.GruLearner.rst create mode 100644 docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.RsLearner.rst create mode 100644 docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.UcbLearner.rst delete mode 100644 docs/source/autoaug/api_reference.rst delete mode 100644 docs/source/autoaug/auto_augmentation_learners.rst create mode 100644 docs/source/autoaug/autoaugment_learners.rst delete mode 100644 docs/source/autoaug/generated/autoaug.autoaugment_learners.AaLearner.rst delete mode 100644 docs/source/autoaug/generated/autoaug.autoaugment_learners.EvoLearner.rst delete mode 100644 docs/source/autoaug/generated/autoaug.autoaugment_learners.GruLearner.rst delete mode 100644 docs/source/autoaug/generated/autoaug.autoaugment_learners.RsLearner.rst delete mode 100644 docs/source/autoaug/generated/autoaug.autoaugment_learners.UcbLearner.rst diff --git a/autoaug/autoaugment_learners/AaLearner.py b/autoaug/autoaugment_learners/AaLearner.py index 94541ffb..f14a107e 100644 --- a/autoaug/autoaugment_learners/AaLearner.py +++ b/autoaug/autoaugment_learners/AaLearner.py @@ -20,6 +20,24 @@ class AaLearner: op_tensor_length (int): what is the dimension of the tensor that represents each 'operation' (which is made up of fun_name, prob, and mag). + + See Also + -------- + + + Notes + ----- + + + References + ---------- + + + Examples + -------- + + + """ def __init__(self, # parameters that define the search space @@ -309,8 +327,7 @@ class AaLearner: Example code: .. code-block:: - :caption: This is an example dummy code which tests out 15 - different policies + :caption: This is how a child class might implement this method: for _ in range(15): policy = self._generate_new_policy() diff --git a/autoaug/autoaugment_learners/EvoLearner.py b/autoaug/autoaugment_learners/EvoLearner.py index 91871cb2..c78d0bb8 100644 --- a/autoaug/autoaugment_learners/EvoLearner.py +++ b/autoaug/autoaugment_learners/EvoLearner.py @@ -10,7 +10,31 @@ import autoaug.controller_networks as cont_n class EvoLearner(AaLearner): + """evo algorithm + + long explanatino here + + Args: + AaLearner (_type_): _description_ + + + See Also + -------- + + + Notes + ----- + + + References + ---------- + + + Examples + -------- + + """ def __init__(self, # search space settings sp_num=5, diff --git a/autoaug/autoaugment_learners/GruLearner.py b/autoaug/autoaugment_learners/GruLearner.py index 28799b65..6db3ba5c 100644 --- a/autoaug/autoaugment_learners/GruLearner.py +++ b/autoaug/autoaugment_learners/GruLearner.py @@ -23,6 +23,25 @@ class GruLearner(AaLearner): network as the LSTM whilst training and testing much faster (https://arxiv.org/abs/1412.3555), which is why we substituted the LSTM for the GRU. + + + See Also + -------- + + + Notes + ----- + + + References + ---------- + + + Examples + -------- + + + """ def __init__(self, diff --git a/autoaug/autoaugment_learners/RsLearner.py b/autoaug/autoaugment_learners/RsLearner.py index eee8eab0..da0f7695 100644 --- a/autoaug/autoaugment_learners/RsLearner.py +++ b/autoaug/autoaugment_learners/RsLearner.py @@ -16,6 +16,24 @@ class RsLearner(AaLearner): """ Tests randomly sampled policies from the search space specified by the AutoAugment paper. Acts as a baseline for other AaLearner's. + + + See Also + -------- + + + Notes + ----- + + + References + ---------- + + + Examples + -------- + + """ def __init__(self, # parameters that define the search space diff --git a/autoaug/autoaugment_learners/UcbLearner.py b/autoaug/autoaugment_learners/UcbLearner.py index 0c84e664..ded7d67a 100644 --- a/autoaug/autoaugment_learners/UcbLearner.py +++ b/autoaug/autoaugment_learners/UcbLearner.py @@ -8,8 +8,32 @@ from .RsLearner import RsLearner class UcbLearner(RsLearner): """ - Tests randomly sampled policies from the search space specified by the AutoAugment - paper. Acts as a baseline for other AaLearner's. + Uses the UCB1 algorithm originally developed for multi-armed bandit problems. + Recommended when + + - Optimal hyperparameters for training the CNN (such as batch size and learning rate) has not been found yet. + + - Using a toy dataset or a toy CNN + + + + See Also + -------- + + + Notes + ----- + + + References + ---------- + + + Examples + -------- + + + """ def __init__(self, # parameters that define the search space @@ -84,7 +108,7 @@ class UcbLearner(RsLearner): child_network_architecture, iterations=15, print_every_epoch=False): - """continue the UCB algorithm for `iterations` number of turns + """continue the UCB algorithm for ``iterations`` number of turns """ diff --git a/docs/source/_static/logohd.png b/docs/source/_static/logohd.png index f3011280f514e3ca5cd3b5bb258d13fd9c083748..0775636e05afbf7f1f8ffca9b2d33d2088bfd3a5 100644 GIT binary patch literal 10337 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 literal 7116 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 Dg*)X* diff --git a/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.AaLearner.rst b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.AaLearner.rst new file mode 100644 index 00000000..ac34fb25 --- /dev/null +++ b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.AaLearner.rst @@ -0,0 +1,7 @@ +:mod:`autoaug.autoaugment_learners`.AaLearner +============================================== + +.. currentmodule:: autoaug.autoaugment_learners + +.. autoclass:: AaLearner + :members: \ No newline at end of file diff --git a/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.EvoLearner.rst b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.EvoLearner.rst new file mode 100644 index 00000000..2d1a8e0c --- /dev/null +++ b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.EvoLearner.rst @@ -0,0 +1,7 @@ +:mod:`autoaug.autoaugment_learners`.EvoLearner +============================================== + +.. currentmodule:: autoaug.autoaugment_learners + +.. autoclass:: EvoLearner + :members: \ No newline at end of file diff --git a/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.GruLearner.rst b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.GruLearner.rst new file mode 100644 index 00000000..842afcc4 --- /dev/null +++ b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.GruLearner.rst @@ -0,0 +1,7 @@ +:mod:`autoaug.autoaugment_learners`.GruLearner +============================================== + +.. currentmodule:: autoaug.autoaugment_learners + +.. autoclass:: GruLearner + :members: \ No newline at end of file diff --git a/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.RsLearner.rst b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.RsLearner.rst new file mode 100644 index 00000000..2693d7fd --- /dev/null +++ b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.RsLearner.rst @@ -0,0 +1,7 @@ +:mod:`autoaug.autoaugment_learners`.RsLearner +============================================== + +.. currentmodule:: autoaug.autoaugment_learners + +.. autoclass:: RsLearner + :members: \ No newline at end of file diff --git a/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.UcbLearner.rst b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.UcbLearner.rst new file mode 100644 index 00000000..6f68b8e0 --- /dev/null +++ b/docs/source/autoaug/aa_learners/autoaug.autoaugment_learners.UcbLearner.rst @@ -0,0 +1,7 @@ +:mod:`autoaug.autoaugment_learners`.UcbLearner +============================================== + +.. currentmodule:: autoaug.autoaugment_learners + +.. autoclass:: UcbLearner + :members: \ No newline at end of file diff --git a/docs/source/autoaug/api_reference.rst b/docs/source/autoaug/api_reference.rst deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/source/autoaug/auto_augmentation_learners.rst b/docs/source/autoaug/auto_augmentation_learners.rst deleted file mode 100644 index 7ac9319a..00000000 --- a/docs/source/autoaug/auto_augmentation_learners.rst +++ /dev/null @@ -1,12 +0,0 @@ -AutoAugment learners --------------------- - - -.. autosummary:: - :toctree: generated - - autoaug.autoaugment_learners.AaLearner - autoaug.autoaugment_learners.EvoLearner - autoaug.autoaugment_learners.GruLearner - autoaug.autoaugment_learners.RsLearner - autoaug.autoaugment_learners.UcbLearner \ No newline at end of file diff --git a/docs/source/autoaug/autoaugment_learners.rst b/docs/source/autoaug/autoaugment_learners.rst new file mode 100644 index 00000000..3cd0dbc2 --- /dev/null +++ b/docs/source/autoaug/autoaugment_learners.rst @@ -0,0 +1,12 @@ +AutoAugment learners +-------------------- + +.. toctree:: + :maxdepth: 3 + :caption: autoaugment_learners + + aa_learners/autoaug.autoaugment_learners.AaLearner + aa_learners/autoaug.autoaugment_learners.EvoLearner + aa_learners/autoaug.autoaugment_learners.GruLearner + aa_learners/autoaug.autoaugment_learners.RsLearner + aa_learners/autoaug.autoaugment_learners.UcbLearner \ No newline at end of file diff --git a/docs/source/autoaug/generated/autoaug.autoaugment_learners.AaLearner.rst b/docs/source/autoaug/generated/autoaug.autoaugment_learners.AaLearner.rst deleted file mode 100644 index 2960b163..00000000 --- a/docs/source/autoaug/generated/autoaug.autoaugment_learners.AaLearner.rst +++ /dev/null @@ -1,24 +0,0 @@ -autoaug.autoaugment\_learners.AaLearner -======================================= - -.. currentmodule:: autoaug.autoaugment_learners - -.. autoclass:: AaLearner - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~AaLearner.__init__ - ~AaLearner.get_mega_policy - ~AaLearner.learn - - - - - - \ No newline at end of file diff --git a/docs/source/autoaug/generated/autoaug.autoaugment_learners.EvoLearner.rst b/docs/source/autoaug/generated/autoaug.autoaugment_learners.EvoLearner.rst deleted file mode 100644 index 68f0d713..00000000 --- a/docs/source/autoaug/generated/autoaug.autoaugment_learners.EvoLearner.rst +++ /dev/null @@ -1,24 +0,0 @@ -autoaug.autoaugment\_learners.EvoLearner -======================================== - -.. currentmodule:: autoaug.autoaugment_learners - -.. autoclass:: EvoLearner - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~EvoLearner.__init__ - ~EvoLearner.get_mega_policy - ~EvoLearner.learn - - - - - - \ No newline at end of file diff --git a/docs/source/autoaug/generated/autoaug.autoaugment_learners.GruLearner.rst b/docs/source/autoaug/generated/autoaug.autoaugment_learners.GruLearner.rst deleted file mode 100644 index 1162183b..00000000 --- a/docs/source/autoaug/generated/autoaug.autoaugment_learners.GruLearner.rst +++ /dev/null @@ -1,24 +0,0 @@ -autoaug.autoaugment\_learners.GruLearner -======================================== - -.. currentmodule:: autoaug.autoaugment_learners - -.. autoclass:: GruLearner - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~GruLearner.__init__ - ~GruLearner.get_mega_policy - ~GruLearner.learn - - - - - - \ No newline at end of file diff --git a/docs/source/autoaug/generated/autoaug.autoaugment_learners.RsLearner.rst b/docs/source/autoaug/generated/autoaug.autoaugment_learners.RsLearner.rst deleted file mode 100644 index 9b099240..00000000 --- a/docs/source/autoaug/generated/autoaug.autoaugment_learners.RsLearner.rst +++ /dev/null @@ -1,24 +0,0 @@ -autoaug.autoaugment\_learners.RsLearner -======================================= - -.. currentmodule:: autoaug.autoaugment_learners - -.. autoclass:: RsLearner - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~RsLearner.__init__ - ~RsLearner.get_mega_policy - ~RsLearner.learn - - - - - - \ No newline at end of file diff --git a/docs/source/autoaug/generated/autoaug.autoaugment_learners.UcbLearner.rst b/docs/source/autoaug/generated/autoaug.autoaugment_learners.UcbLearner.rst deleted file mode 100644 index b20667da..00000000 --- a/docs/source/autoaug/generated/autoaug.autoaugment_learners.UcbLearner.rst +++ /dev/null @@ -1,25 +0,0 @@ -autoaug.autoaugment\_learners.UcbLearner -======================================== - -.. currentmodule:: autoaug.autoaugment_learners - -.. autoclass:: UcbLearner - - - .. automethod:: __init__ - - - .. rubric:: Methods - - .. autosummary:: - - ~UcbLearner.__init__ - ~UcbLearner.get_mega_policy - ~UcbLearner.learn - ~UcbLearner.make_more_policies - - - - - - \ No newline at end of file diff --git a/docs/source/index.rst b/docs/source/index.rst index b210c1e1..05b42d6e 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -1,4 +1,4 @@ -autoaug Documentation +``autoaug`` official documentation ================================== @@ -14,11 +14,14 @@ autoaug Documentation .. toctree:: :maxdepth: 4 - :caption: Library: - - autoaug/auto_augmentation_learners - - + :caption: API Reference: + + autoaug/autoaugment_learners + autoaug/aa_learners/autoaug.autoaugment_learners.AaLearner + autoaug/aa_learners/autoaug.autoaugment_learners.EvoLearner + autoaug/aa_learners/autoaug.autoaugment_learners.GruLearner + autoaug/aa_learners/autoaug.autoaugment_learners.RsLearner + autoaug/aa_learners/autoaug.autoaugment_learners.UcbLearner -- GitLab