Non-canonical amino acid sequence seen
sungyounjoo opened this issue · 1 comments
I used conditional sequence generation via evodiff.ipynb with my own MSA file.
However it came with a amino acid sequence containing un-natural amino acid codes such as "Z" and "B"
And i would like to ask if it is fine and the un-natural amino acid means something or my own MSA is problem.
Thank you.
Since our model is trained over additional amino acid codes (JOUBZX), it's possible to observe them at inference in your generations.
These are;
U = selenocysteine
O = pyrrolysine
B = D or N
J = I or L
Z = E or Q
X = unknown
It could be due to many reasons, it's not clear that the MSA would be the problem.
To prevent the model from predicting these amino acids at inference you can change line 257 and 259
evodiff/evodiff/generate_msa.py
Line 257 in 683b08d
to:
p = preds[:, random_x, random_y, :20]
this will force the model to only generate seqeunces using the first 20 amino acids in MSA_ALPHABET: ACDEFGHIKLMNPQRSTVWY