Train RandLANet from Readme does not seem to work
- Dominant language
- Python
- Stars
- 2.3k
- Forks
- 365
- Avg merge
- 4h 6m
- Merged PRs (30d)
- 1
Description
### Checklist
- [X] I have searched for [similar issues](https://github.com/isl-org/Open3D-ML/issues).
- [X] I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [X] I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `main` branch).
### Describe the issue
trying the code from the readme:
```
import ml3d
from ml3d.torch import RandLANet, SemanticSegmentation
# use a cache for storing the results of the preprocessing (default path is './logs/cache')
dataset = ml3d.datasets.SemanticKITTI(dataset_path='/path/to/SemanticKITTI/', use_cache=True)
# create the model with random initialization.
model = RandLANet()
pipeline = SemanticSegmentation(model=model, dataset=dataset, max_epoch=100)
# prints training progress in the console.
pipeline.run_train()
```
(after adding the imports, would be amazing if they were also included in the example code)
results in:
```
Traceback (most recent call last):
File "open3d-ml/train_semseg_pipeline.py", line 15, in
pipeline.run_train()
File "open3d-ml/ml3d/torch/pipelines/semantic_segmentation.py", line 376, in run_train
self.optimizer, self.scheduler = model.get_optimizer(cfg)
File "open3d-ml/ml3d/torch/models/randlanet.py", line 354, in get_optimizer
**cfg_pipeline.optimizer)
File "open3d-ml/ml3d/utils/config.py", line 244, in __getattr__
return getattr(self._cfg_dict, name)
File "open3d-ml/ml3d/utils/config.py", line 27, in __getattr__
raise ex
AttributeError: 'ConfigDict' object has no attribute 'optimizer'
```
Am I doing something wrong here?
### Steps to reproduce the bug
```python
see above
```
### Error message
```
Traceback (most recent call last):
File "open3d-ml/train_semseg_pipeline.py", line 15, in
pipeline.run_train()
File "open3d-ml/ml3d/torch/pipelines/semantic_segmentation.py", line 376, in run_train
self.optimizer, self.scheduler = model.get_optimizer(cfg)
File "open3d-ml/ml3d/torch/models/randlanet.py", line 354, in get_optimizer
**cfg_pipeline.optimizer)
File "open3d-ml/ml3d/utils/config.py", line 244, in __getattr__
return getattr(self._cfg_dict, name)
File "open3d-ml/ml3d/utils/config.py", line 27, in __getattr__
raise ex
AttributeError: 'ConfigDict' object has no attribute 'optimizer'
```
### Expected behavior
_No response_
### Open3D, Python and System information
```markdown
- Operating system: ubuntu
```
### Additional information
_No response_
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the README training example and reproduce the traceback using ml3d/torch/pipelines/semantic_segmentation.py, ml3d/torch/models/randlanet.py, and ml3d/utils/config.py. Check how the pipeline configuration reaches RandLANet.get_optimizer and update the example or configuration so training starts without the reported AttributeError, including the missing imports noted in the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, pytorch
- Domain
- machine-learning
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100