From ebd0c2a715a5751832440e76b1f7c64b6d6c681a Mon Sep 17 00:00:00 2001 From: xingyan <544568643@qq.com> Date: Sun, 22 Oct 2023 13:29:50 +0800 Subject: [PATCH 1/4] filter-edges-of-scnet; add advices on hidden size --- README.md | 4 ++ README_CH.md | 4 ++ came/__init__.py | 2 +- came/model/_utils.py | 11 ++++-- came/utils/train.py | 35 +++++++++++------- setup.py | 2 +- ...1\347\232\204\346\226\207\344\273\266.zip" | Bin 0 -> 13176 bytes 7 files changed, 40 insertions(+), 18 deletions(-) create mode 100644 "\344\277\256\346\224\271\347\232\204\346\226\207\344\273\266.zip" diff --git a/README.md b/README.md index 6e33950..2e3d969 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,10 @@ second contains the corresponding query homologous genes. > for code testing. The resulting annotation accuracy may not be as good as > using the full dataset as the reference. +> **Suggestions** +> +> If you have enough GPU memory, setting `h_dim=512` in "PARAMETERS.py" may result in a more accurate cell-type transfer. + ### Test CAME's pipeline (optional) To test the package, run the python file `test_pipeline.py`: diff --git a/README_CH.md b/README_CH.md index 23867f5..40fd8a6 100644 --- a/README_CH.md +++ b/README_CH.md @@ -73,6 +73,10 @@ python setup.py install > 数据文件 “raw-Baron_human.h5ad” 仅用于代码测试,是原始数据的子样本 (20%), > 因此结果的注释精度可能不如使用完整数据集作为参考。 +### **建议** + +如果你有足够的显存,我们建议在PARAMETERS.py中设置`h_dim=512` 来获得更好的结果。 + ### 测试 CAME 的分析流程 (非必要) 可以直接运行 `test_pipeline.py` 来测试 CAME 的分析流程: diff --git a/came/__init__.py b/came/__init__.py index 4d14572..b068af7 100644 --- a/came/__init__.py +++ b/came/__init__.py @@ -49,4 +49,4 @@ from .pipeline import KET_CLUSTER, __test1__, __test2__ -__version__ = "0.1.10" +__version__ = "0.1.11" diff --git a/came/model/_utils.py b/came/model/_utils.py index a391669..fff3c2a 100644 --- a/came/model/_utils.py +++ b/came/model/_utils.py @@ -21,12 +21,17 @@ from .cgc import CGCNet # from ._minibatch import create_blocks, create_batch +try: + from dgl.dataloading import NodeDataLoader +except ImportError: + from dgl.dataloading import DataLoader as NodeDataLoader + def idx_hetero(feat_dict, id_dict): sub_feat_dict = {} for k, ids in id_dict.items(): if k in feat_dict: - sub_feat_dict[k] = feat_dict[k][ids] + sub_feat_dict[k] = feat_dict[k][ids.cpu()] else: # logging.warning(f'key "{k}" does not exist in {feat_dict.keys()}') pass @@ -158,7 +163,7 @@ def get_all_hidden_states( sampler = dgl.dataloading.MultiLayerNeighborSampler( sampler.fanouts[:-1]) - dataloader = dgl.dataloading.NodeDataLoader( + dataloader = NodeDataLoader( g, {'cell': g.nodes('cell'), 'gene': g.nodes('gene')}, sampler, device=device, batch_size=batch_size, shuffle=False, drop_last=False, num_workers=0 @@ -301,7 +306,7 @@ def get_model_outputs( ###################################### if sampler is None: sampler = model.get_sampler(g.canonical_etypes, 50) - dataloader = dgl.dataloading.NodeDataLoader( + dataloader = NodeDataLoader( g, {'cell': g.nodes('cell')}, sampler, device=device, batch_size=batch_size, diff --git a/came/utils/train.py b/came/utils/train.py index 1b2cb61..7a8db65 100644 --- a/came/utils/train.py +++ b/came/utils/train.py @@ -32,6 +32,11 @@ from .plot import plot_records_for_trainer from ._base_trainer import BaseTrainer, SUBDIR_MODEL +try: + from dgl.dataloading import NodeDataLoader +except ImportError: + from dgl.dataloading import DataLoader as NodeDataLoader + def seed_everything(seed=123): """ not works well """ @@ -52,7 +57,7 @@ def make_class_weights(labels, astensor=True, foo=np.sqrt, n_add=0): counts = value_counts(labels).sort_index() # sort for alignment n_cls = len(counts) + n_add - w = counts.apply(lambda x: 1 / foo(x + 1) if x > 0 else 0) + w = counts.apply(lambda x: 1 / foo(x + 1) if x > 0 else 0) w = (w / w.sum() * (1 - n_add / n_cls)).values w = np.array(list(w) + [1 / n_cls] * int(n_add)) @@ -117,7 +122,7 @@ def prepare4train( test_idx = LongTensor(test_idx) g = dpair.get_whole_net(rebuild=False, ) - g.nodes[node_cls_type].data[key_label] = labels # date: 211113 + g.nodes[node_cls_type].data[key_label] = labels # date: 211113 ENV_VARs = dict( classes=classes, @@ -134,8 +139,8 @@ def prepare4train( class Trainer(BaseTrainer): """ - - + + """ def __init__(self, @@ -309,7 +314,7 @@ def train(self, n_epochs=350, **params_lossfunc ) - # prediction + # prediction _, y_pred = torch.max(logits, dim=1) # ========== evaluation (Acc.) ========== @@ -367,22 +372,24 @@ def train_minibatch(self, n_epochs=100, if sampler is None: sampler = model.get_sampler(g.canonical_etypes, 50) - train_dataloader = dgl.dataloading.NodeDataLoader( + train_dataloader = NodeDataLoader( # The following arguments are specific to NodeDataLoader. - g, {'cell': train_idx}, # The node IDs to iterate over in minibatches - sampler, device=device, # Put the sampled MFGs on CPU or GPU + g, {'cell': train_idx}, + # The node IDs to iterate over in minibatches + sampler, device='cpu', # Put the sampled MFGs on CPU or GPU # The following arguments are inherited from PyTorch DataLoader. batch_size=batch_size, shuffle=True, drop_last=False, num_workers=0 ) - test_dataloader = dgl.dataloading.NodeDataLoader( - g, {'cell': test_idx}, sampler, device=device, batch_size=batch_size, + test_dataloader = NodeDataLoader( + g, {'cell': test_idx}, sampler, device='cpu', batch_size=batch_size, shuffle=False, drop_last=False, num_workers=0 ) print(f" start training (device='{device}') ".center(60, '=')) + rcd = {} for epoch in range(n_epochs): model.train() self._cur_epoch += 1 - + t0 = time.time() all_train_preds = [] train_labels = [] @@ -443,6 +450,7 @@ def train_minibatch(self, n_epochs=100, **rcd, print_info=self._cur_epoch % info_stride == 0 or backup) self.log_info(**rcd, print_info=True) self._cur_epoch_adopted = self._cur_epoch + self.save_checkpoint_record() def get_current_outputs(self, feat_dict=None, @@ -526,7 +534,8 @@ def evaluate_metrics( ) return metrics - def log_info(self, train_acc, test_acc, ami=None, print_info=True, # dur=0., + def log_info(self, train_acc, test_acc, ami=None, print_info=True, + # dur=0., **kwargs): dur_avg = np.average(self.dur) ami = kwargs.get('AMI', 'NaN') if ami is None else ami @@ -575,7 +584,7 @@ def infer_for_nodes( if reorder: return order_by_ids(all_test_preds, orig_ids) return all_test_preds - + def order_by_ids(x, ids): """reorder by the original ids""" diff --git a/setup.py b/setup.py index 3b893e6..ba3a043 100644 --- a/setup.py +++ b/setup.py @@ -20,7 +20,7 @@ EMAIL = '544568643@qq.com' AUTHOR = 'Xingyan Liu' REQUIRES_PYTHON = '>=3.8.0' -VERSION = '0.1.10' +VERSION = '0.1.11' REQUIRED = [ 'scanpy', diff --git "a/\344\277\256\346\224\271\347\232\204\346\226\207\344\273\266.zip" "b/\344\277\256\346\224\271\347\232\204\346\226\207\344\273\266.zip" new file mode 100644 index 0000000000000000000000000000000000000000..d446c33bfb6de64e9f1de740b439b60d87b7c13a GIT binary patch literal 13176 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 literal 0 HcmV?d00001 From 4a6650e8825da285b3aa80f5cfa559494792ead8 Mon Sep 17 00:00:00 2001 From: xingyan <544568643@qq.com> Date: Sun, 22 Oct 2023 13:31:45 +0800 Subject: [PATCH 2/4] filter-edges-of-scnet; add advices on hidden size --- ...271\347\232\204\346\226\207\344\273\266.zip" | Bin 13176 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 "\344\277\256\346\224\271\347\232\204\346\226\207\344\273\266.zip" diff --git "a/\344\277\256\346\224\271\347\232\204\346\226\207\344\273\266.zip" "b/\344\277\256\346\224\271\347\232\204\346\226\207\344\273\266.zip" deleted file mode 100644 index d446c33bfb6de64e9f1de740b439b60d87b7c13a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13176 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 From 5b76ae3bed1fc2a928562f61f9d62d29834c3671 Mon Sep 17 00:00:00 2001 From: xingyan <544568643@qq.com> Date: Sun, 22 Oct 2023 14:27:53 +0800 Subject: [PATCH 3/4] release-pypi-0.1.12 --- came/__init__.py | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/came/__init__.py b/came/__init__.py index b068af7..82cf95e 100644 --- a/came/__init__.py +++ b/came/__init__.py @@ -49,4 +49,4 @@ from .pipeline import KET_CLUSTER, __test1__, __test2__ -__version__ = "0.1.11" +__version__ = "0.1.12" diff --git a/setup.py b/setup.py index ba3a043..b8bfcac 100644 --- a/setup.py +++ b/setup.py @@ -20,7 +20,7 @@ EMAIL = '544568643@qq.com' AUTHOR = 'Xingyan Liu' REQUIRES_PYTHON = '>=3.8.0' -VERSION = '0.1.11' +VERSION = '0.1.12' REQUIRED = [ 'scanpy', From 3cb04cfe79f20df674d4e53543f860697be7b147 Mon Sep 17 00:00:00 2001 From: xingyan <544568643@qq.com> Date: Sun, 22 Oct 2023 15:45:42 +0800 Subject: [PATCH 4/4] update-readme --- README.md | 7 ++++--- README_CH.md | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 2e3d969..b1f4bf2 100644 --- a/README.md +++ b/README.md @@ -86,9 +86,10 @@ second contains the corresponding query homologous genes. > for code testing. The resulting annotation accuracy may not be as good as > using the full dataset as the reference. -> **Suggestions** +**Suggestions** > -> If you have enough GPU memory, setting `h_dim=512` in "PARAMETERS.py" may result in a more accurate cell-type transfer. +> If you have sufficient GPU memory, setting the hidden-size `h_dim=512` +in "came/PARAMETERS.py" may result in a more accurate cell-type transfer. ### Test CAME's pipeline (optional) @@ -124,7 +125,7 @@ If you are having issues, please let us know. We have a mailing list located at: ### Citation -If CAME is useful for your research, consider citing our preprint: +If CAME is useful for your research, consider citing our work: > Liu X, Shen Q, Zhang S. Cross-species cell-type assignment of single-cell RNA-seq by a heterogeneous graph neural network[J]. Genome Research, 2022: gr. 276868.122. diff --git a/README_CH.md b/README_CH.md index 40fd8a6..e79eb98 100644 --- a/README_CH.md +++ b/README_CH.md @@ -75,7 +75,7 @@ python setup.py install ### **建议** -如果你有足够的显存,我们建议在PARAMETERS.py中设置`h_dim=512` 来获得更好的结果。 +如果你有足够的GPU显存,我们建议在``came/PARAMETERS.py``中设置`h_dim=512` 来获得更好的结果。 ### 测试 CAME 的分析流程 (非必要)