mirror of
https://github.com/wassname/pytorch-lightning.git
synced 2026-08-24 12:19:51 +08:00
* remove deprecated args to learning rate step function * step based scheduler * mixing models for testing * fix styling * tests * update documentation * smaller fix * update to dict structure * updated test * update documentation * update CHANGELOG.md * fix styling * fix problems with trainer io * fix tests * simplification of code * fix styling * change from batch to step * update to tests * fix styling * fixed some logic * Update pytorch_lightning/core/lightning.py * duplicated test * fix test on amp * small update to tests * added monitor key for ReduceLROnPlateau * Update trainer.py * Update training_loop.py * fix test after introducing monitor keyword Co-authored-by: Jirka Borovec <Borda@users.noreply.github.com> Co-authored-by: William Falcon <waf2107@columbia.edu>
54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
"""Models for testing."""
|
|
|
|
import torch
|
|
|
|
from .base import TestModelBase, DictHparamsModel
|
|
from .mixins import (
|
|
LightEmptyTestStep,
|
|
LightValidationStepMixin,
|
|
LightValidationMixin,
|
|
LightValidationStepMultipleDataloadersMixin,
|
|
LightValidationMultipleDataloadersMixin,
|
|
LightTestStepMixin,
|
|
LightTestMixin,
|
|
LightTestStepMultipleDataloadersMixin,
|
|
LightTestMultipleDataloadersMixin,
|
|
LightTestFitSingleTestDataloadersMixin,
|
|
LightTestFitMultipleTestDataloadersMixin,
|
|
LightValStepFitSingleDataloaderMixin,
|
|
LightValStepFitMultipleDataloadersMixin,
|
|
LightTrainDataloader,
|
|
LightTestDataloader,
|
|
LightTestOptimizerWithSchedulingMixin,
|
|
LightTestMultipleOptimizersWithSchedulingMixin,
|
|
LightTestOptimizersWithMixedSchedulingMixin
|
|
)
|
|
|
|
|
|
class LightningTestModel(LightTrainDataloader,
|
|
LightValidationMixin,
|
|
LightTestMixin,
|
|
TestModelBase):
|
|
"""Most common test case. Validation and test dataloaders."""
|
|
|
|
def on_training_metrics(self, logs):
|
|
logs['some_tensor_to_test'] = torch.rand(1)
|
|
|
|
|
|
class LightningTestModelWithoutHyperparametersArg(LightningTestModel):
|
|
""" without hparams argument in constructor """
|
|
|
|
def __init__(self):
|
|
import tests.models.utils as tutils
|
|
|
|
# the user loads the hparams in some other way
|
|
hparams = tutils.get_hparams()
|
|
super().__init__(hparams)
|
|
|
|
|
|
class LightningTestModelWithUnusedHyperparametersArg(LightningTestModelWithoutHyperparametersArg):
|
|
""" has hparams argument in constructor but is not used """
|
|
|
|
def __init__(self, hparams):
|
|
super().__init__()
|