La proteina’s autoencoder can be thought of as a inverse folder to some degree 🤔
Wonder if just giving Ca, along with a random partial latent acts as a inverse folder (true we get the all atom structure as well)
Posts by Ramith Hettiarachchi
Consider submitting your work to the GenBio workshop at ICML 2026!
We have an amazing set of speakers whose work spans generative and agentic AI.
Deadline: May 1, 2026
genbio-workshop.github.io/2026/
❤️
👌agree.. We might be overfitting (selecting checkpoints) for structured ones. The paper is very insightful!
Should search for more grounded methods for eval..
My observation of SDE giving “better” results could be due to noise in motion correcting the trajectory towards actual data manifold.
regarding the SDE vs ODE point, it was discussed in proteina and la-proteina papers..
the excerpts are from this quoted paper and Genie2 (regarding the 42% designability reference)
bsky.app/profile/maxf...
noticing that backbone design models trained on AFDB 588K, when sampled through ODE results in poor designability (~25%). But through a proper noise schedule in SDE it goes to 90% (as reported in lit.)
this felt counterintuitive, wonder if the reason is, AFDB being just 42% designable to begin with
this [1] is nice, easier than having to type the passphrase of a ssh key all the time.. made a simpler guide [2] inspired by it
[1] - gist.github.com/arianvp/5f59...
[2] - gist.github.com/ramithuh/a7b...
Yeah thats pretty interesting.. maybe it’ll be a means of aligning brain signals and langauge somewhat in a data efficient way?
The closest I’ve seen in this domain is brain signal to perceived image reconstruction..
arxiv.org/pdf/2505.14556
In 10 years we might have an EEG headset that decodes thoughts, and routes to claude 😆
Would be a true brain computer interface 😅
youtu.be/e1mOmdykmwI
it always amazes me..
intra residue params
inter residue params
training a flow matching model for protein backbone design (N, Ca, C)
intra residue geometry is somewhat easy to learn, but inter-residue (peptide bond length, Ca-C-N and C-N-Ca angles) doesn't consistently match ideal stereochemical params [1]
[1] www.ebi.ac.uk/thornton-srv...
it always amazes me that after a mac update there's more free storage than what was before updating
going to add this to CLAUDE.md
Hard bugs: When stuck, write a detailed prompt and delegate to an agent rather than debugging directly. Crafting the prompt forces you to organize the evidence, which often matters more than who solves it.
sometimes asking claude to start an agent to figure out a bug is more effective than asking claude directly.
The reason being, the prompt i give is not as descriptive as the prompt it generates for the agent
today the cause was dynamic RoPE cache buffers varied across DDP ranks
its always satisfying to figure out what causes a DDP training job to get suck
its interesting how MSA is very important for protein structure prediction to extract co-evolution signals, but in the small molecule design/conformer generation scenarios with the scale we are working, the model can "learn physics"
Agree, writing code on own definitely gives the idea of real issues we’d encounter..
and we might not get that picture if we fully relied on coding agents.. like less failures, less learning 😅 it’s hard to balance this
im reorganizing one of my old repo coded in JAX, I'm starting to question whether in the age of claude code, how important is knowing syntax, etc.. 😅
feels like ideas matter more than the implementation at this time, where coding is straightforward if you ask the right fundemental questions
Haha true!
today i learnt that you can filter runs on @weightsbiases.bsky.social using the git commit id
note that the mol* slider is not related to the point i wanted to make.. its just the change of example id runs all cells affected by it
starting to love the @marimo.io notebook's reactive cell execution. all the nodes in the DAG are on the same page!
ok nvm, i'm so stupid.. sometime back I restricted sshd to use only core 0 🤦♂️🤦♂️🤦♂️🤦♂️🤦♂️🤦♂️🤦♂️🤦♂️
bsky.app/profile/rami...
this is kinda stupid.. need to figure out why numpy codes only restrict to one core
python -c "import numpy; import os; print(f'Allowed Cores: {len(os.sched_getaffinity(0))}')"