🚀 New talk!
"Automated ML-guided lead optimization: surpassing human-level performance at protein engineering"
▶️ www.youtube.com/watch?v=mEhB...
✨🧪 This was a talk I gave at the recent AIxBIO conference in Cambridge UK. A 10-minute pitch for what we do at Cradle!
Posts by Patrick Kidger
A reminder that there is now *1 week* left until the MLSB deadline on October 1st!
Send in your 🧪bio+🤖ML papers, for either
🇺🇸San Diego,
🇩🇰Copenhagen, or
✨both✨!
💥 We are *also* organizing Machine Learning for Structural Biology @ EurIPS, Copenhagen!!
Topics include anything in the ML+bio intersection.
Submit your ML+bio short papers! Authors can even present in both locations if they have people in both locations 🚀
🚀 So `tinyio` hit the front page of Hacker News. Now we're at 487 GitHub stars :D
I've also just done a ✨v0.2 release✨. Now comes batteries-included with common operations (locks, yield-as-available, etc.) and with a major performance improvement.
GitHub: github.com/patrick-kidg...
✨v0.1 release of typst_pyimage!✨
Do you:
- write scientific papers in Typst (boo hiss LaTeX)?
- have many matplotlib figures?
Would you like the code for those images inlined directly into your Typst file, and autogenerated when you compile it?🔥
github.com/patrick-kidg...
This would run a tick of our event loop each time the asyncio loop gives control to it.
2/2
Thanks! I was also particularly happy landing on the list syntax.
Indeed it doesn't work with asyncio atm, but... I reckon doing so might just be as simple as adding an `await asyncio.sleep(0)` inside our `run` function (right before it calls `self._step`).
1/2
Also I really needer error propagation to/from threads running sync code, which trio doesn't support. I could have added it with a custom to_thread.run_sync wrapper but it was another reason to try my hand at my own minimal thing.
Yup, trio is excellent. I even recommend it in the README! 😄 For anything big and serious that is definitely the way to go.
This is one part hobby project to learn something, and one part building the simplest possible thing to support the use case I had in mind.
1/2
✨Announcing: tinyio!
A tiny barebones event loop library for Python. Born out of my frustration with asyncio...
GitHub: github.com/patrick-kidg...
It's nothing too fancy, just a little library that does one thing well. 🔥
✨Cradle is hiring protein+ML researchers!✨
We operate ML for lab-in-the-loop lead optimization across all industries (pharma, synbio, ...), modalities (antibodies, enzymes, ...), properties (binding, activity, ...)
We're a scaleup and already relied upon by 4 of the top 20 big pharma.
Apply here!
We added Boltz-2 to our protein design package! Under the hood this relies on a JAX translation, which, thanks to @jeremywohlwend.bsky.social and @gcorso.bsky.social ’s clean code, was fairly easy to write. We’ve been getting great results -- and we have yet to explore the most exciting new features
...like `pdb`, but with a snappier interface, fewer commands overall, with a focus on a clean REPL/TUI experience to navigate the stack.
Now used by me... and adopted by a host of my coworkers at Cradle! 3/3
This library brought to you originally by my need to debug re-raised exceptions in some of the libraries I'm using. Then in my usual fashion I kept adding features, and now we have a whole library 😄
If like me your debugging experience has been a lot of `pdb`, then this library is for you... 2/3
A snapshot of the top of the GitHub README, describing its features.
A snapshot of the debugger's interface, showing an error and a view of the stack.
🚀 Announcing: ✨`patdb`✨!
A fast, pretty, TUI/REPL debugger for Python. (Not a database!😄) Think stdlib pdb, but with...
- Syntax highlighting
- re-raised+grouped exceptions
- robust to async/threading/multiprocessing
- ... !
> pip install patdb
GitHub: github.com/patrick-kidg...
1/3
Me please! :) I work on bioML. Google scholar mostly reflecting past work in broader sciML:
scholar.google.co.uk/citations?us...
Agreed! I have no idea how that works. Is it a thing I submit to or a thing they pick up?
Hehe! I originally intended to include the rest of bioML and was then like 'this post is becoming way too long' 😄
A huge thanks to Owl, Johanna Haffner, and Jonathan Ziegler for their feedback on the article! I think we ended up with something great. (If a little intimidating.)
Also as timing would have it, also check out @ncfrey.bsky.social's post from yesterday!
ncfrey.substack.com/p/getting-st...
2/2
A screenshot of the start of the blog post. Entirely text.
🔥 Time for my first bioML blog post! This one is for all the folks getting into ML-for-protein-design.
✨ "Just know stuff, proteinML edition"
kidger.site/thoughts/jus...
This is intended as a curriculum-with-context, as a starting point for the field.
1/2
At CERN the next couple of days for a workshop. Send me a DM if you're around too 🚀
And merged! 😃
Oh this is pretty cool 😃 ESM-C protein language model in JAX+Equinox!
This is half tech-demo, half neural network library. Equinox in brief The design goals for Equinox were that it must be: - as minimal as possible, and use no behind-the-scenes magic; - of functional style, working with existing JAX operations like jax.jit without difficulty; - offer a PyTorch-like class-based syntax to build models. Equinox is a library, not a framework. It is not a wrapper around JAX, like many neural network libraries are.
I also went back and took at look at one of the very early READMEs. I think we've stayed true to these goals!
(Also included: Equinox started out as a 'tech demo'. I had to procrastinate from real work somehow, after all. 😄)
Used by: 1k Contributers: 59
🚀 I just spotted that we passed a really cool milestone: Equinox is now used by over 1k projects on GitHub.
*And* we actually also just passed 1k commits as well.🎉
(github.com/patrick-kidg...)
...the results are now back, and it turns out that *all* of them would have the won the competition!
+ now with bonus analysis on expression, immunogenicity/humanness! 🎉
[2/2]
✨ We previously took 1st place on the Adaptyv protein binding competition.
🚀 In this update, we now take all of *top 12*!
Just one of our entries into the competion was tested at the time. Our prize for winning was to have our other designs be tested...
Post: www.cradle.bio/blog/adaptyv2
[1/2]