Skip to content

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mdl-fca

tests license status

Learning "good" concept DAGs from binary data by minimum description length — a probabilistic/information-theoretic reworking of Formal Concept Analysis.

Plain FCA maps a binary object×attribute context to a concept lattice, but it is not a probabilistic model: it creates a concept for every random coincidence, so the lattice explodes. This project builds instead the small DAG of concepts that best compresses the data: a concept exists only if it pays for its own description. Concepts can have multiple parents (unlike hierarchical clustering's trees) and are organized hierarchically (unlike flat topic models).

Status: design phase complete, prototype under construction.

  • Read CLAUDE.md for orientation and design commitments.
  • Read docs/ in numeric order for the full design:
    1. background and goal
    2. model and codelength (the core)
    3. algorithm (greedy pair-merge constructor + search framework)
    4. batch vs online
    5. prototype spec (current build target)
    6. roadmap

Quick start (once the prototype exists)

pip install -e ".[test]"
pytest
python examples/run_planted.py

About

Learning compact concept DAGs from binary data by minimum description length — a probabilistic take on Formal Concept Analysis

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages