Giter Site home page Giter Site logo

point-transformers's Introduction

Pytorch Implementation of Various Point Transformers

Recently, various methods applied transformers to point clouds: PCT: Point Cloud Transformer (Meng-Hao Guo et al.), Point Transformer (Nico Engel et al.), Point Transformer (Hengshuang Zhao et al.). This repo is a pytorch implementation for these methods and aims to compare them under a fair setting. Currently, all three methods are implemented, while tuning their hyperparameters.

Classification

Data Preparation

Download alignment ModelNet here and save in modelnet40_normal_resampled.

Run

Change which method to use in config/cls.yaml and run

python train_cls.py

Results

Using Adam with learning rate decay 0.3 for every 50 epochs, train for 200 epochs; data augmentation follows this repo. For Hengshuang and Nico, initial LR is 1e-3 (I would appreciate if someone could fine-tune these hyper-paramters); for Menghao, initial LR is 1e-4, as suggested by the author. ModelNet40 classification results (instance average) are listed below:

Model Accuracy
Hengshuang 91.7
Menghao 92.6
Nico 85.5

Part Segmentation

Data Preparation

Download alignment ShapeNet here and save in data/shapenetcore_partanno_segmentation_benchmark_v0_normal.

Run

Change which method to use in config/partseg.yaml and run

python train_partseg.py

Results

Currently only Hengshuang's method is implemented.

Miscellaneous

Some code and training settings are borrowed from https://github.com/yanx27/Pointnet_Pointnet2_pytorch. Code for PCT: Point Cloud Transformer (Meng-Hao Guo et al.) is adapted from the author's Jittor implementation https://github.com/MenghaoGuo/PCT.

point-transformers's People

Contributors

exx8 avatar hotthoughts avatar qq456cvb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

point-transformers's Issues

omegaconf.errors.ConfigAttributeError: Missing key pretty

Sorry to cause you trouble, follow your issue 7 "pip install hydra-core" to install, also tried "pip install hydara-core==1.0.1", but there will still be problems, as follows:
"

D:\Anaconda\lib\site-packages\hydra\core\utils.py:143: UserWarning: register_resolver() is deprecated.
See omry/omegaconf#426 for migration instructions.

OmegaConf.register_resolver(name, f)
Traceback (most recent call last):
File "train_cls.py", line 52, in main
print(args.pretty())
omegaconf.errors.ConfigAttributeError: Missing key pretty
full_key: pretty
object_type=dict

Set the environment variable HYDRA_FULL_ERROR=1 for a complete stack trace.

"
Please help me solve this problem, thank you very much.

gradient disappears

The batchsize is set to 32. On the 1x4090 machine, the accuracy reaches 80% for 22 epochs, and then the accuracy drops sharply to 10%.

2024-05-15 14:29:15,914][main][INFO] - Train Instance Accuracy: 0.758549
[2024-05-15 14:29:32,168][main][INFO] - Test Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:29:32,168][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:29:32,168][main][INFO] - Save model...
[2024-05-15 14:29:32,168][main][INFO] - Saving at best_model.pth
[2024-05-15 14:29:32,203][main][INFO] - Epoch 22 (22/200):
[2024-05-15 14:30:32,547][main][INFO] - Train Instance Accuracy: 0.760876
[2024-05-15 14:30:48,515][main][INFO] - Test Instance Accuracy: 0.722756, Class Accuracy: 0.663108
[2024-05-15 14:30:48,515][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:30:48,515][main][INFO] - Epoch 23 (23/200):
[2024-05-15 14:31:48,781][main][INFO] - Train Instance Accuracy: 0.749724
[2024-05-15 14:32:04,739][main][INFO] - Test Instance Accuracy: 0.141426, Class Accuracy: 0.103739
[2024-05-15 14:32:04,739][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:32:04,740][main][INFO] - Epoch 24 (24/200):
[2024-05-15 14:33:04,951][main][INFO] - Train Instance Accuracy: 0.735230
[2024-05-15 14:33:20,807][main][INFO] - Test Instance Accuracy: 0.326522, Class Accuracy: 0.314507
[2024-05-15 14:33:20,807][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:33:20,807][main][INFO] - Epoch 25 (25/200):
[2024-05-15 14:34:20,965][main][INFO] - Train Instance Accuracy: 0.728553
[2024-05-15 14:34:37,029][main][INFO] - Test Instance Accuracy: 0.294471, Class Accuracy: 0.286097
[2024-05-15 14:34:37,029][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:34:37,029][main][INFO] - Epoch 26 (26/200):
[2024-05-15 14:35:37,281][main][INFO] - Train Instance Accuracy: 0.717668
[2024-05-15 14:35:53,427][main][INFO] - Test Instance Accuracy: 0.190705, Class Accuracy: 0.181524
[2024-05-15 14:35:53,427][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:35:53,427][main][INFO] - Epoch 27 (27/200):
[2024-05-15 14:36:53,845][main][INFO] - Train Instance Accuracy: 0.711399
[2024-05-15 14:37:09,817][main][INFO] - Test Instance Accuracy: 0.379808, Class Accuracy: 0.343976
[2024-05-15 14:37:09,817][main][INFO] - Best Instance Accuracy: 0.860176, Class Accuracy: 0.819621
[2024-05-15 14:37:09,817][main][INFO] - Epoch 28 (28/200):

Hengshuang new result

batch_size: 32
epoch: 500
learning_rate: 0.0005
gpu: 0
num_point: 1024
optimizer: Adam
weight_decay: 0.0001
normal: true
model:
  nneighbor: 16
  nblocks: 4
  transformer_dim: 512
  name: Hengshuang

Best Instance Accuracy: 0.917067, Class Accuracy: 0.893971

The bottleneck dim

Thanks for your owesome work!

Thanks for your opened code, it's very helpful for me!!

Add license possible?

Hi, I wonder if you possibly could add an MIT license so that I can re-use your code for my publication?

All the best,
Ludvig

The issue of “Transition up” in Partseg

In the original paper on Point Transformer v1, the Transition Up module maps the features of the downsampled point set P1​ to its superset P2​, and then fuses the features of P2​ with those of P1​ (the paper describes this as summation, while your code implements it as concatenation).
However, in the code implementation, you actually did not perform the fusion(from the fact that one parameter of 'self.fp' is 'None'). Could this be a reason why Partseg’s accuracy is lower than what is advertised in the paper (see #29)?"

    def forward(self, xyz1, points1, xyz2, points2):
        feats1 = self.fc1(points1)
        feats2 = self.fc2(points2)
        feats1 = self.fp(xyz2.transpose(1, 2), xyz1.transpose(1, 2), None, feats1.transpose(1, 2)).transpose(1, 2)
        return feats1 + feats2
        if points1 is not None:
            points1 = points1.permute(0, 2, 1)
            # new_points = torch.cat([points1, interpolated_points], dim=-1)
            new_points = points1 + interpolated_points   # This line is my addition
        else:
            new_points = interpolated_points

There was an issue importing the hydra package

Hi, I made the following error while import hydra:

Traceback (most recent call last):
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\train_cls.py", line 18, in
import hydra
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra_init_.py", line 5, in
from hydra import utils
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra\utils.py", line 8, in
import hydra._internal.instantiate._instantiate2
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra_internal\instantiate_instantiate2.py", line 12, in
from hydra.internal.utils import locate
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra_internal\utils.py", line 18, in
from hydra.core.utils import get_valid_filename, validate_config_path
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra\core\utils.py", line 20, in
from hydra.core.hydra_config import HydraConfig
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra\core\hydra_config.py", line 6, in
from hydra.conf import HydraConf
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra\conf_init
.py", line 46, in
class JobConf:
File "D:\code_zip\Point-Transformers-master\Point-Transformers-master\venv\Lib\site-packages\hydra\conf_init
.py", line 75, in JobConf
@DataClass
^^^^^^^^^
File "D:\Python\Python311\Lib\dataclasses.py", line 1223, in dataclass
return wrap(cls)
^^^^^^^^^
File "D:\Python\Python311\Lib\dataclasses.py", line 1213, in wrap
return _process_class(cls, init, repr, eq, order, unsafe_hash,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python\Python311\Lib\dataclasses.py", line 958, in _process_class
cls_fields.append(_get_field(cls, name, type, kw_only))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\Python\Python311\Lib\dataclasses.py", line 815, in _get_field
raise ValueError(f'mutable default {type(f.default)} for field '
ValueError: mutable default <class 'hydra.conf.JobConf.JobConfig.OverrideDirname'> for field override_dirname is not allowed: use default_factory

part_seg problem

RuntimeError: CUDA error: CUBLAS_STATUS_NOT_INITIALIZED when calling cublasCreate(handle)

Point clouds size

Hengshuang et al mention in their work "we apply selfattention locally, which enables scalability to large scenes with millions of points". But this implementation could be hardly trained for num_point>8k (nvidia rtx 3090).
Any suggestions on how to train/apply this implementation for large point clouds?

different point cloud shapes

I am having a real world data which is sometimes with (xyz) , (xyz, norm), and (xyz, norm, RGB)
i don't know how to solve this problem.

would be possiblt to make the netowrk only tkae (xyz) values and ignore the other values??

another thing that i have also some data which have less than 1024 points how can i fix this issue too ?

Thanks in advance

GPU 使用率低

Hello,很感谢您实现的 3 个 Transformer。
我想提个小小的建议:您这里实现的 HengShuang 的 PointTransformer,内存占用率很高,但是 GPU 使用率太低了,每个 iteration 也很慢。请问可以提高吗?
image

Hardware requirement

Thank you for your great work ! I wonder the hardware requirements for the all three versions of Point Transformer. It seems that Hengshuang's method needs 4 24GB GPUs (TITAN RTX),how about the another two versions? Can several RTX 2080 Ti GPUs work? Looking forward to your reply!

pointcloud with 7 features

hello, my pointcloud data has 7 features (x,y,z,nx,ny,nz, A) where the first 3 are classical coordinates, the second chunck from 3 represents the normals and the last element is the triangle area associated with the point. to make the model defined by Menghao work, what should i change? i simply camped imput_dims = 7 but the model doesn't work very well in perfromances

AttributeError: module 'hydra' has no attribute 'main'

Hi. Thanks for sharing the code.

When I run

python train.py

there's an error

Traceback (most recent call last):
  File "train.py", line 44, in <module>
    @hydra.main(config_path='config', config_name='config')
AttributeError: module 'hydra' has no attribute 'main'

How can I solve this?

About part segmentation performance

I have trained the part segmentation part following your train_partseg.py. And the performance is not well.Is there anything I need to pay attention to ?
Best accuracy is: 0.64983, Best class avg mIOU is: 0.36181, Best inctance avg mIOU is: 0.50138

Part segmentation problem

I've installed hydra and omegaconf
I ran the part segmentation and the dataset was shapenet, but I have a problem.

AttributeError:module 'hydra' has no attribute'main'

Can you help me?
Thanks!

A question about initial learning rate.

Thanks for your attention to PCT !
In our experiments, I find the PCT is sensitive to initial lr. 1e-3 is too large to make pct converge. I change the initial lr from 1e-3 to 1e-4 and get following results.

batch_size: 16
epoch: 200
gpu: 1
learning_rate: 0.0001
model:
name: Menghao
name: Menghao
normal: true
num_point: 1024
optimizer: Adam
weight_decay: 0.0001

[2021-01-13 11:59:39,205][main][INFO] - Load dataset ...
The size of train data is 9843
The size of test data is 2468
[2021-01-13 11:59:42,420][main][INFO] - No existing model, starting training from scratch...
[2021-01-13 11:59:42,421][main][INFO] - Start training...
[2021-01-13 11:59:42,421][main][INFO] - Epoch 1 (1/200):
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 616/616 [03:09<00:00, 3.25it/s]
[2021-01-13 12:02:51,857][main][INFO] - Train Instance Accuracy: 0.387277
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 155/155 [00:48<00:00, 3.20it/s]
[2021-01-13 12:03:40,472][main][INFO] - Test Instance Accuracy: 0.511694, Class Accuracy: 0.345986
[2021-01-13 12:03:40,472][main][INFO] - Best Instance Accuracy: 0.511694, Class Accuracy: 0.345986
[2021-01-13 12:03:40,472][main][INFO] - Save model...
[2021-01-13 12:03:40,472][main][INFO] - Saving at best_model.pth
[2021-01-13 12:03:40,559][main][INFO] - Epoch 2 (2/200):
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 616/616 [03:13<00:00, 3.18it/s]
[2021-01-13 12:06:54,418][main][INFO] - Train Instance Accuracy: 0.488636
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 155/155 [00:48<00:00, 3.16it/s]
[2021-01-13 12:07:43,537][main][INFO] - Test Instance Accuracy: 0.663710, Class Accuracy: 0.506854
[2021-01-13 12:07:43,538][main][INFO] - Best Instance Accuracy: 0.663710, Class Accuracy: 0.506854
[2021-01-13 12:07:43,538][main][INFO] - Save model...
[2021-01-13 12:07:43,538][main][INFO] - Saving at best_model.pth
[2021-01-13 12:07:43,680][main][INFO] - Epoch 3 (3/200):
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 616/616 [03:09<00:00, 3.25it/s]
[2021-01-13 12:10:53,202][main][INFO] - Train Instance Accuracy: 0.549682
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 155/155 [00:49<00:00, 3.11it/s]
[2021-01-13 12:11:43,145][main][INFO] - Test Instance Accuracy: 0.747581, Class Accuracy: 0.612702
[2021-01-13 12:11:43,146][main][INFO] - Best Instance Accuracy: 0.747581, Class Accuracy: 0.612702
[2021-01-13 12:11:43,146][main][INFO] - Save model...
[2021-01-13 12:11:43,146][main][INFO] - Saving at best_model.pth
[2021-01-13 12:11:43,239][main][INFO] - Epoch 4 (4/200):
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 616/616 [03:11<00:00, 3.22it/s]
[2021-01-13 12:14:54,499][main][INFO] - Train Instance Accuracy: 0.592549
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 155/155 [00:49<00:00, 3.16it/s]
[2021-01-13 12:15:43,646][main][INFO] - Test Instance Accuracy: 0.799597, Class Accuracy: 0.684245
[2021-01-13 12:15:43,647][main][INFO] - Best Instance Accuracy: 0.799597, Class Accuracy: 0.684245
[2021-01-13 12:15:43,647][main][INFO] - Save model...
[2021-01-13 12:15:43,647][main][INFO] - Saving at best_model.pth
[2021-01-13 12:15:43,773][main][INFO] - Epoch 5 (5/200):
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 616/616 [03:10<00:00, 3.23it/s]
[2021-01-13 12:18:54,845][main][INFO] - Train Instance Accuracy: 0.625095
100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 155/155 [00:48<00:00, 3.19it/s]
[2021-01-13 12:19:43,585][main][INFO] - Test Instance Accuracy: 0.813306, Class Accuracy: 0.711771
[2021-01-13 12:19:43,586][main][INFO] - Best Instance Accuracy: 0.813306, Class Accuracy: 0.711771
[2021-01-13 12:19:43,586][main][INFO] - Save model...
[2021-01-13 12:19:43,586][main][INFO] - Saving at best_model.pth
[2021-01-13 12:19:43,692][main][INFO] - Epoch 6 (6/200):
7%|██████████▏ | 44/616 [00:15<02:27, 3.89it/s]

Best Regards,
Menghao

The question on PointNetFeaturePropagation class

class PointNetFeaturePropagation(nn.Module):

In this class, there is one line code as following:

interpolated_points = torch.sum(index_points(points2, idx) * weight.view(B, N, 3, 1), dim=2)

I think points2 should be replaced by points1.

The variable "idx" refers to the top3 index of points1 whose distance is short to points2, and the “index_points” function is to find k(k=3) nearest neighbor of each point in points2 , which is found in points1.

Are there any questions in my understanding? I really sincerely want to get your answer, thanks !

Why the test accuracy can be higher than train accuracy?

Hello,

When I used ModelNet 40 and other dataset to train Point Transformer(Hengshuang), I found after the 3rd epoch, the test accuracy would be higher than train accuracy. It makes no sense a model could perform better when processing unseen data, right? Do you also meet this phenomenon?

Question about modelnet40_normal_resampled

Hi @qq456cvb,

I've had experience working with the ModelNet40 data which usually comes in the format of .OFF https://segeval.cs.princeton.edu/public/off_format.html with x, y, z listed in each file. However, the dataset provided on this repo is from the shapenet website and seems to be in a different format.

Digging through the files, I find that there are 3 extra values following the x, y, z. What do these 3 additional values represent? What are the differences between the two mentioned datsets?

Thanks!

Resolved- Prepare Environment + omegaconf: Missing key pretty + No CUDA GPUs are available

Hardware Requirements with GPU

OS: Linux (Instead of installing the latest version try with a slightly older one. Because, the latest version might not have support for CUDA. I worked with- Ubuntu 22.04)

GPU: 7GB+ for training classification model, 13GB+ for training segmentation model

Prepare Environment

Pre-requisites: Conda, CUDA

Run following commands:

// download the repo from github
wget https://github.com/qq456cvb/Point-Transformers/archive/refs/heads/master.zip
unzip master.zip
rm master.zip
cd Point-Transformers-master

// download the classification dataset
wget https://shapenet.cs.stanford.edu/media/modelnet40_normal_resampled.zip --no-check-certificate
unzip modelnet40_normal_resampled.zip
rm modelnet40_normal_resampled.zip

// download the segmentation dataset
mkdir data
cd data
wget https://shapenet.cs.stanford.edu/media/shapenetcore_partanno_segmentation_benchmark_v0_normal.zip --no-check-certificate
unzip shapenetcore_partanno_segmentation_benchmark_v0_normal.zip
rm shapenetcore_partanno_segmentation_benchmark_v0_normal.zip

// create new environment in conda 
conda create --name pt 
conda activate pt

// install dependency packages
conda install hydra-core
conda install tqdm
// get version info ‘nvcc --version’, ‘hostnamectl’, ‘nvidia-smi’ and generate installation command on- https://pytorch.org/ and run. The command might look like- conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

omegaconf.errors.ConfigAttributeError: Missing key pretty:

Inside the main() function of train_cls.py (line- 52), edit print(args.pretty()) to print(omegaconf.OmegaConf.to_yaml(args)).

pretty() is no longer supported in the newer version of omegaconf. That is why, we use to_yaml().

RuntimeError: No CUDA GPUs are available

Inside config/cls.yaml, edit gpu: 1 to gpu: 0.

Or, Inside the main() function of both train_cls.py (line- 49) and train_partseg.py (line- 50), comment out the line- os.environ["CUDA_VISIBLE_DEVICES"] = str(args.gpu).

This issue might happen because you do not have a second GPU (you might ask ChatGPT for details). If your system has one GPU, then you do not need this line of code anyways.

AttributeError: module 'numpy' has no attribute 'float'

Inside train_partseg.py (line- 203), change dtype=np.float to dtype=float.

np.float is removed by the latest version of numpy.

Run code

python train_cls.py
// watch GPU usage with- watch -n 1 nvidia-smi

If you are using Putty to remotely train the models, then you can use Screen to run commands in the background.

question about output feature dimension

Hi, @qq456cvb ,

According to the Fig. 3 in Hengshuang's Point Transformer model, the output feature dimension of each transformer block should be different . e.g. [32, 64, 128, 256, 512]. But your implementation uses a unqiue one, e.g. 512. Any comment on this?

Thanks!

Point Transformer (Engel et al)

Hello,

thank you for your implementation. I'm the author of one of the point transformer methods. I'm wondering why your results differ that much from the reported results in our paper.

One thing that I immediately noticed, is that in your implementation you initialize one Sortnet and copy it M times https://github.com/qq456cvb/Point-Transformers/blob/master/models/Nico/model.py#L48. This also copies the weights. However, we employ M separate SortNets

Therefore,

self.sortnets = nn.ModuleList([SortNet(d_model, k=k)] * m)

should be replaced with

self.sortnets = nn.ModuleList([SortNet(d_model, k=k) for _ in range(m)])

I will keep investigating what else could cause the performance difference. Also, we plan on publishing the original code ourselves in the near future.

Again, thank you for your code contribution.
Best regards,
Nico Engel

The problem about model test

Hi.I tried to use the test_part of pointnet2 to test Hengshuang's model,but I failed. Can you provide the test file?
thx

which version of hydra do you recommend to work with CUDA?

Hello. I am getting this error everytime I run the code

/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/_internal/defaults_list.py:251: UserWarning: In 'cls': Defaults list is missing _self_. See https://hydra.cc/docs/upgrades/1.0_to_1.1/default_composition_order for more information
warnings.warn(msg, UserWarning)
/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/core/default_element.py:126: UserWarning: In 'model/Menghao': Usage of deprecated keyword in package header '# @Package group'.
See https://hydra.cc/docs/next/upgrades/1.0_to_1.1/changes_to_package_header for more information
See {url} for more information"""
{'model': {'name': 'Menghao'}, 'batch_size': 16, 'epoch': 200, 'learning_rate': 0.001, 'gpu': 1, 'num_point': 1024, 'optimizer': 'Adam', 'weight_decay': 0.0001, 'normal': True}
[2022-09-17 13:35:42,215][main][INFO] - Load dataset ...
The size of train data is 9843
The size of test data is 2468
Error executing job with overrides: []
Traceback (most recent call last):
File "train_cls.py", line 162, in
main()
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/main.py", line 52, in decorated_main
config_name=config_name,
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/_internal/utils.py", line 378, in _run_hydra
lambda: hydra.run(
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/_internal/utils.py", line 214, in run_and_report
raise ex
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/_internal/utils.py", line 211, in run_and_report
return func()
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/_internal/utils.py", line 381, in
overrides=args.overrides,
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/_internal/hydra.py", line 111, in run
_ = ret.return_value
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/core/utils.py", line 233, in return_value
raise self._return_value
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/hydra/core/utils.py", line 160, in run_job
ret.return_value = task_function(task_cfg)
File "train_cls.py", line 68, in main
classifier = getattr(importlib.import_module('models.{}.model'.format(args.model.name)), 'PointTransformerCls')(args).cuda()
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/torch/nn/modules/module.py", line 689, in cuda
return self._apply(lambda t: t.cuda(device))
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/torch/nn/modules/module.py", line 579, in _apply
module._apply(fn)
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/torch/nn/modules/module.py", line 602, in _apply
param_applied = fn(param)
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/torch/nn/modules/module.py", line 689, in
return self._apply(lambda t: t.cuda(device))
File "/home/myuser/anaconda3/envs/myenv/lib/python3.7/site-packages/torch/cuda/init.py", line 217, in _lazy_init
torch._C._cuda_init()
RuntimeError: No CUDA GPUs are available

If I dont run it through hydra, it compiles easily. Any specific versions of Hydra that you are using?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.