broses
Concretely: we learn a medium sized model that takes a partial tokenization and outputs a probability distribution over the endpoints of the next token (say we let the token lengths range from 1 to 64 bytes, the model outputs 64 logits). Then we do a beam search to find the, say, 4 most likely tokenizations. Then we run the transformer on all four tokenizations, and we take the expected value of the loss to be the final loss.
If we train this on prompt-response pairs, so that it only has to learn what to say and doesn't have to predict the context, then it could learn to skim boring stuff by patching it into ~64 byte tokens. Or more if we want.
And ofc we'd use a short context byte level transformer to encode/decode tokens to vectors. Idk this idea is kinda half baked.
What's cool about this game is that most of it was written by Claude.ai. I had a working, nearly complete prototype in two minutes without writing any code. Really mind-blowing stuff. I did spend a few hours polishing it though.
The other cool thing is that the simple algorithm I came up with to generate random melodies for the game sometimes generates surprisingly good melodies. I have to take credit for that part so that people know the AI didn't come up with it.
And here's a similar game with a similar story: https://aaron.kriegman.net/pitch
I'm looking for some work this month (July) before I start my PhD (math at UCLA). I may also be open to part time work after I start. Here's some highlights from my resume:
Aaron Kriegman
github.com/akriegman
___Experience___
Symbolic Capital Partners -- Software Developer Intern
Designed Ethereum trading infrastructure, using Rust with Tokio and PostgreSQL.
DreamsAI --
Software Developer Intern___Projects___
Liquid Go -- WebRTC, WASM, Rust, Websockets, React -- liquidgo.xyz
Real time multiplayer browser game based on the board game Go.
Metrica --
Unity, HLSL --
youtu.be/MtrgYVnKpGE A video game set in spherical space, i.e. the surface of a four dimensional ball.
___Technologies___C++ | Rust | Bash | Julia | Python | Javascript | PostgreSQL | Tokio | WebRTC | WASM | binutils | LLVM-IR | Linux | systemd | Graphics | Algorithms | Data Structures | Autodiff | Ethereum | Processing | Fourier Analysis
I made an ear training app using ChatGPT
Run – a solution to a problem that every build system solves differently
Run
On a similar note, when doing quantum physics, I like to introduce h dot, which is i × h bar. There are tons of formulas where you either get i × h bar or -i / h bar, but these are just h dot and 1 / h dot, so this removes a little sign confusion and saves a little handwriting.
People will argue that real constants are more natural, but maybe they're not. Maybe radians are naturally imaginary, so if h bar is meant to have dimensions of energy time per radian, then it's better to use the imaginary h dot.
Dexter Chua was a Cambridge math student who started in 2014, TeXed all his notes and shared them on his website [0]. More people have followed in his footsteps, and you can find most of them by googling `Cambridge math notes site:srcf.net`. Many professors also put notes up on their websites, which can also be found by googling `Cambridge math notes`. I find that for many courses the notes are just as good as lectures, even notes written by students, and sometimes they're even better. They're certainly a lot faster.
You'll probably want to start with our first year courses, which are designed to take bright highschoolers and teach them how to think like mathematicians. If you're interested in the math of machine learning, you'll probably want to look at our courses on linear algebra, probability, optimization, and statistics.
Show HN: Liquid Go – A Game Combining Liquid Wars and Go
I imagine Hacker News is one of the few places on the internet where I'll find people who've played Liquid Wars, which was a major inspiration for this game. For those who don't know, Go is an East Asian board game about controlling territory by taking turns placing stones on a grid. Liquid Go is like Go except your stones are a liquid and there's no turns.
I also sometimes write `2>1` instead of `2>&1` and get a mysterious file named `1` in my current directory. Luckily it I figured that one out pretty quick.