doraadong / UNIFAN

Unsupervised cell functional annotation for single-cell RNA-Seq
MIT License
22 stars 3 forks source link

problems encountered when running on a GPU #1

Closed poseidonchan closed 2 years ago

poseidonchan commented 2 years ago

Hi, I noticed that in trainer.py, when you write the code to return a numpy array from a tensor, you use tensor.detach().numpy() about five times without specifying the tensor.cpu().detach().numpy(). Please fix them. Thanks!

By the way, what should I do when the model selects zero gene sets?

poseidonchan commented 2 years ago

Well, it seems that there are some other problems. When dealing with the annotator training step, some tensors are not on the same device, and I am not familiar with your code, so, can you also help me fix them?

poseidonchan commented 2 years ago

hello, I tried different alpha values, but the model did not select any gene sets... Is it possible caused by some wrong input format? Could you please specify the requirements of input h5ad data?

doraadong commented 2 years ago

Hi, thanks for reporting this. We've been mainly tested the method on CPU before and we are now investigating the problems when running it on a GPU. We will keep you posted.

As for the input data format, you may take a look at the example data (see section "Download and Preprocess the Input Data" for details). Briefly, we use gene symbols to match the input gene expression data with the known gene sets so it is desirable that your input .h5ad file is indexed with gene symbols (i.e. your h5ad file.var.index should be gene symbols). Let us know if you still have problems in selecting gene sets.

poseidonchan commented 2 years ago

Oh, yes, I forget to use the gene symbols, thank you for your tips!

doraadong commented 2 years ago

Hi, sorry for taking so long but we finally fixed the errors having tensors on different devices when running with GPU. Thanks for your feedback again!

poseidonchan commented 2 years ago

Thank you!