# FREUD

> Open-source codebase for training sparse autoencoders on Whisper audio model activations and inspecting features in an interactive GUI.

FREUD (Feature Retrieval, Editing and Understanding for Developers) is an open-source Python codebase by ksadov for mechanistic interpretability research on audio models. It trains sparse autoencoders on intermediate activations and provides a GUI for inspecting both base model activations and learned autoencoder features. It is currently compatible with OpenAI's Whisper family of models.

## What It Is

FREUD is a research toolkit for discovering and analyzing intermediate activations in audio models. Users collect activations from speech or sound datasets, train sparse autoencoder dictionaries, and then browse the resulting features. The README links checkpoints and training run logs hosted on Hugging Face.

## Workflow and Outputs

The workflow is script-driven and configured through JSON files. Activations are collected from datasets such as LibriSpeech, AudioSet and ESC-50, and a sparse autoencoder is then trained using either an L1-regularized architecture or a TopK autoencoder with AuxK loss. Training logs and checkpoints are written to a runs directory. A local GUI server then serves activation search results.

In the GUI, users can enter a neuron or feature index and see mel spectrograms of audio that strongly activates it, with activation values overlaid. They can also record or upload a short clip and see which features it activates most strongly. A public demo is available.

## Supported Experiments

The README documents several setups: single-neuron interpretability of Whisper Tiny MLP activations, L1 and TopK sparse autoencoders on Whisper Tiny block 2, an L1 autoencoder on Whisper Large V3 block 16, and a TopK autoencoder on Whisper Large activations for sound effects.

## Setup Path

Setup uses a Python 3.10 virtual environment with PyTorch and pip requirements, plus NodeJS for the GUI and ffmpeg. Configs default to CUDA but can be switched to CPU. Options exist to limit saved activations or searched files to save disk space or time.

## Features
- Sparse autoencoder training on Whisper activations
- L1-regularized and TopK (AuxK loss) autoencoders
- Interactive GUI for activation and feature inspection
- Mel spectrogram views with activation overlays
- Record or upload audio clips to find top-activating features
- Activation collection from LibriSpeech, AudioSet and ESC-50
- Single-neuron MLP interpretability experiments
- Pretrained checkpoints and logs on Hugging Face

## Integrations
OpenAI Whisper, Hugging Face, PyTorch, TensorBoard, LibriSpeech, AudioSet, ESC-50, ffmpeg, NodeJS

## Platforms
WEB, API, CLI

## Pricing
Open Source

## Links
- Website: https://github.com/ksadov/FREUD
- Repository: https://github.com/ksadov/FREUD
- EveryDev.ai: https://www.everydev.ai/tools/freud
