mirror of
https://github.com/facebookresearch/pytorch3d.git
synced 2025-08-02 03:42:50 +08:00
IT readme updates
Summary: Updates for recent replaceables. Reviewed By: kjchalup Differential Revision: D38437370 fbshipit-source-id: 00d600aa451e5849ba48107cd7a4319e9fc8549f
This commit is contained in:
parent
a39cad40f4
commit
af48430ec0
@ -203,14 +203,29 @@ to replace the implementation and potentially override the parameters.
|
|||||||
|
|
||||||
# Code and config structure
|
# Code and config structure
|
||||||
|
|
||||||
As per above, the config structure is parsed automatically from the module hierarchy.
|
The main object for this trainer loop is `Experiment`. It has four top-level replaceable components.
|
||||||
In particular, model parameters are contained in `generic_model_args` node, and dataset parameters in `data_source_args` node.
|
|
||||||
|
|
||||||
Here is the class structure (single-line edges show aggregation, while double lines show available implementations):
|
* `data_source`: This is a `DataSourceBase` which defaults to `ImplicitronDataSource`.
|
||||||
|
It constructs the data sets and dataloaders.
|
||||||
|
* `model_factory`: This is a `ModelFactoryBase` which defaults to `ImplicitronModelFactory`.
|
||||||
|
It constructs the model, which is usually an instance of implicitron's main `GenericModel` class, and can load its weights from a checkpoint.
|
||||||
|
* `optimizer_factory`: This is an `OptimizerFactoryBase` which defaults to `ImplicitronOptimizerFactory`.
|
||||||
|
It constructs the optimizer and can load its weights from a checkpoint.
|
||||||
|
* `training_loop`: This is a `TrainingLoopBase` which defaults to `ImplicitronTrainingLoop` and defines the main training loop.
|
||||||
|
|
||||||
|
As per above, the config structure is parsed automatically from the module hierarchy.
|
||||||
|
In particular, for ImplicitronModelFactory with generic model, model parameters are contained in the `model_factory_ImplicitronModelFactory_args.model_GenericModel_args` node, and dataset parameters in `data_source_ImplicitronDataSource_args` node.
|
||||||
|
|
||||||
|
Here is the class structure of GenericModel (single-line edges show aggregation, while double lines show available implementations):
|
||||||
```
|
```
|
||||||
generic_model_args: GenericModel
|
model_GenericModel_args: GenericModel
|
||||||
└-- sequence_autodecoder_args: Autodecoder
|
└-- global_encoder_*_args: GlobalEncoderBase
|
||||||
└-- raysampler_args: RaySampler
|
╘== SequenceAutodecoder
|
||||||
|
└-- autodecoder_args: Autodecoder
|
||||||
|
╘== HarmonicTimeEncoder
|
||||||
|
└-- raysampler_*_args: RaySampler
|
||||||
|
╘== AdaptiveRaysampler
|
||||||
|
╘== NearFarRaysampler
|
||||||
└-- renderer_*_args: BaseRenderer
|
└-- renderer_*_args: BaseRenderer
|
||||||
╘== MultiPassEmissionAbsorptionRenderer
|
╘== MultiPassEmissionAbsorptionRenderer
|
||||||
╘== LSTMRenderer
|
╘== LSTMRenderer
|
||||||
@ -228,19 +243,16 @@ generic_model_args: GenericModel
|
|||||||
╘== IdrFeatureField
|
╘== IdrFeatureField
|
||||||
└-- image_feature_extractor_*_args: FeatureExtractorBase
|
└-- image_feature_extractor_*_args: FeatureExtractorBase
|
||||||
╘== ResNetFeatureExtractor
|
╘== ResNetFeatureExtractor
|
||||||
└-- view_sampler_args: ViewSampler
|
└-- view_pooler_args: ViewPooler
|
||||||
└-- feature_aggregator_*_args: FeatureAggregatorBase
|
└-- view_sampler_args: ViewSampler
|
||||||
╘== IdentityFeatureAggregator
|
└-- feature_aggregator_*_args: FeatureAggregatorBase
|
||||||
╘== AngleWeightedIdentityFeatureAggregator
|
╘== IdentityFeatureAggregator
|
||||||
╘== AngleWeightedReductionFeatureAggregator
|
╘== AngleWeightedIdentityFeatureAggregator
|
||||||
╘== ReductionFeatureAggregator
|
╘== AngleWeightedReductionFeatureAggregator
|
||||||
solver_args: init_optimizer
|
╘== ReductionFeatureAggregator
|
||||||
data_source_args: ImplicitronDataSource
|
|
||||||
└-- dataset_map_provider_*_args
|
|
||||||
└-- data_loader_map_provider_*_args
|
|
||||||
```
|
```
|
||||||
|
|
||||||
Please look at the annotations of the respective classes or functions for the lists of hyperparameters.
|
Please look at the annotations of the respective classes or functions for the lists of hyperparameters. `tests/experiment.yaml` shows every possible option if you have no user-defined classes.
|
||||||
|
|
||||||
# Reproducing CO3D experiments
|
# Reproducing CO3D experiments
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user