8000 GitHub - ckinateder/tmu-kd: Tsetlin Machine with Knowledge Distillation
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
forked from cair/tmu

Tsetlin Machine with Knowledge Distillation

License

Notifications You must be signed in to change notification settings

ckinateder/tmu-kd

 
 

Repository files navigation

Tsetlin Machine Unified (TMU) - One Codebase to Rule Them All

License Python Version Maintenance

TMU is a comprehensive repository that encompasses several Tsetlin Machine implementations. Offering a rich set of features and extensions, it serves as a central resource for enthusiasts and researchers alike.

Features

Guides and Tutorials

📦 Installation

Prerequisites for Windows

Before installing TMU on Windows, ensure you have the MSVC build tools. Follow these steps:

  1. Download MSVC build tools
  2. Install the Workloads → Desktop development with C++ package. (Note: The package size is about 6-7GB.)

Dependencies

Ubuntu: sudo apt install libffi-dev

Installing TMU

To get started with TMU, run the following command:

# Installing Stable Branch
pip install git+https://github.com/cair/tmu.git

# Installing Development Branch
pip install git+https://github.com/cair/tmu.git@dev

Docker Setup

Prerequisites

You will have to have CUDA version 12.4 or higher installed on your system.

Building the Docker Image

Build the docker environment with (replace THREADS with the number of threads you want to use):

docker build -f docker/ubuntu.Dockerfile --build-arg THREADS=8 -t tmu-kd:ubuntu .

Then, run the image with

docker run -it --gpus=all --name tmu-kd -v $(pwd):$(pwd) -w $(pwd) tmu-kd:ubuntu /bin/bash

This is built for CUDA. If for some reason you can't use CUDA, use the `docker/alpine.Dockerfile image.

This will enter you into the container. If you exit, you can reenter (while it's still running) with

docker exec -it tmu-kd /bin/bash

Experiments

I created a script to run our baseline:

./baseline.sh

This will run

  • MNIST
  • FashionMNIST
  • CIFAR-10 with different configurations.

🛠 Development

If you're looking to contribute or experiment with the codebase, follow these steps:

  1. Clone the Repository:

    git clone -b dev git@github.com:ckinateder/tmu-kd.git && cd tmu
  2. Set Up Development Environment: Navigate to the project directory and compile the C library:

    # Install TMU
    pip install .
    
    # (Alternative): Install TMU in Development Mode
    pip install -e .
    
    # Install TMU-Composite
    pip install .[composite]
    
    # Install TMU-Composite in Development Mode
    pip install -e .[composite]
  3. Starting a New Project: For your projects, simply create a new branch and then within the 'examples' folder, create a new project and initiate your development.


About

Tsetlin Machine with Knowledge Distillation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 41.4%
  • C 27.8%
  • Jupyter Notebook 17.9%
  • C++ 9.1%
  • Cuda 2.9%
  • CMake 0.6%
  • Other 0.3%
0