Melusine

projects about the living world

Dive in ↓

What is Melusine?

A home for all my bioacoustics, rewilding and environmental projects & ideas. Some are active collaborations, some useful open-source projects, and some exist just out of curiosity.

I think it's important to understand the theory behind the ML code. I also think you gotta get your feet wet and actually see this stuff in the real world.

Deep breath, descend, go on :)

Machine learning code
the theory
AudioMoth recorder set up in the field
the hardware
Scuba diving
existing irl
BEX screenshot 1
manage your bioacoustics data
BEX screenshot 2
label it
BEX screenshot 3
compare model performance
Screenshot of BEX

BEX: Bioacoustics Explorer

Birdsong, whalesong and the sound of fish in a reef; we're recording it in vast amounts, and we're still working out how best to process and understand it.

BEX is a bioacoustics toolkit for exploring, comparing and measuring what animal sound detection models find in your field recordings. It's open-source; use it to upload, label, and compare the performance of different models (from frontier ML like BirdNet, to any algo you cooked up at home) on your datasets. Take the tour via the project github.

The BirdGate pipeline: one second of audio becomes features, a score, an adaptive threshold and a record-or-skip decision

BirdGate

Most acoustic monitoring uses huge numbers of small, cheap recorders, like the AudioMoth, left out on moors and in forests for months. Most of what they capture is wind, rain and silence.

BirdGate is an effort to build and compare various algorithms or tiny ML models, small enough to run on the AudioMoth itself and decide, second to second, whether there’s birdsong worth writing to the card. This sort of insect-level intelligence is not as well-developed as the huge ML/LLM models, but has massive potential at the edge of our technology reach.

WIP; I'm still tweaking the models, and expanding the training corpus, but the custom firmware works on the AudioMoth Dev board already.

Spectrogram with each approach's record-or-skip decisions underneath
can the tiny model detect birdsong?
Map of the AudioMoth's 32 KB of memory and what uses it
will it fit on the chip?
An AudioMoth board with its green LED lit
green light = birdsong detected

the twilight zone 200 m

More projects

Where the light starts to fade, ooh spooky. These are some weird experiments I’m building, some finished, most still growing.

The real next state beside the state the model dreamed from text
dream vs reality
Training charts: loss falling and action accuracy rising
learning to act from text
The oracle, a search agent and the WorldLang model each solving the same 10 by 10 world
performs in higher-complexity worlds
The agent in its grid world beside the model's attention over the sentence describing what it sees

WorldLang

Is language a more compressible, more extensible way to encode a world model than rules and raw perception?

A grid world where an agent fetches a key and carries it to a chest. Instead of the usual world model approach, every step is narrated in plain sentences, like “I face east. The key is directly ahead. I hold nothing.”, followed by the action taken.

A small transformer trained from scratch on nothing but those emergent paragraphs learns to act, and can even dream the next state in words. They extend well to larger, more complex worlds, and compare decently to an optimal search algo.

I'd love to extend this in complexity - the next steps are things like testing novel objects (can it ingest a new noun and use learned action-grammar to choose actions correctly?), etc. I want to see how a language-logic world model compares to e.g. the world models built to reliably dream entire games.

A scene of shapes, the made-up sentence describing it, and the listener's reconstruction

LangGen

Two small neural networks collaborate to invent a language from scratch. One sees a scene of three shapes and can only describe it in a short string of made-up syllables; the other has to rebuild the scene from that message alone.

The languages collapse into silence, get stuck, or settle into something with words and word order. The best reach about 40% of a perfect code. Like most fun ideas, this one has already been done

The emergent lexicon: which made-up words go with which shapes and colours
words emerge...
Heatmap of which sentence positions carry which object's shape and colour
and a word order

the midnight zone 1,000 m

Four search paths an evolved agent took to find rewards on a grid

Neurogenetic search

Tiny neural-network agents search a grid for hidden rewards, seeing only how far away the walls are, with a memory smaller than the world they’re exploring.

Instead of reinforcement learning, effective algorithms are bred. Each generation the best searchers survive, mix their weights and mutate, and evolution is left to find a way to explore. Budding colonies isolate, develop, and then return to war against each other.

It's not as good as gradient descent.

Loss and success rate over 5,000 generations
5,000 generations
Photo of Mara

Hello, I’m Mara

I'm a physicist, bioengineer, ML engineer, and CEO. I'm combining deep science with roll-up-your-sleeves-and-get-shit-done in the bioacoustics, biodiversity and ecology worlds.

I'm always up for a chat with people about ideas, the natural world, projects, and stuff. Feel free to reach out!.