DeepGraphLearning / GearNet

GearNet and Geometric Pretraining Methods for Protein Structure Representation Learning, ICLR'2023 (https://arxiv.org/abs/2203.06125)
MIT License
253 stars 28 forks source link

Node classification tasks #51

Open mpedraza98 opened 9 months ago

mpedraza98 commented 9 months ago

Hi! First of all great job! I have been trying to do node classification in residue view, using my own node labels. However, I haven't been able to configure the NodePropertyPrediction task to use those labels instead of predicting the residue features. Do you have any guidance on how I can proceed to do this? Any help is appreciated

Oxer11 commented 8 months ago

Hi! The NodePropertyPrediction task is orginally defined for sequence-based models. To adapt it to structure-based models, maybe you just need to add a graph_construction_model part following what we do in task.PropertyPrediction.

mpedraza98 commented 8 months ago

Thank you for your answer. I have a couple more questions, I have been trying to modify the AttributeMasking task for my node classification problem, however it is not clear to me how is the relation between the nodes id and the amino acids in the sequence. The only clue I've found so far is this note in the data/protein.py file "Nodes may have a different order with residues." Can you guide me on how to proceed?

Oxer11 commented 7 months ago

Sorry for the late response. In data.Protein, we usually use node and atom interchangably, while residue corresponds to the real residue in proteins. You can use data.Protein.atom2residue to learn which residue an atom belongs to.