Skip to content
/ TKBA Public

An advanced clustering algorithm that combines Adaptive Resonance Theory (ART) with Correntropy-Induced Metric (CIM), kernel methods, and topological structures for robust clustering tasks.

License

Notifications You must be signed in to change notification settings

BLShaw/TKBA

Repository files navigation

Topological Kernel Bayesian Adaptive Resonance Theory (TKBA)

TKBA is an advanced clustering algorithm that combines Adaptive Resonance Theory (ART) with kernel methods and topological structures for robust clustering tasks. The algorithm dynamically builds a network of clusters while maintaining topological relationships between them.

Overview

The TKBA algorithm is a neural network-based clustering method that:

  • Dynamically creates clusters based on data patterns
  • Maintains topological relationships between clusters using an edge matrix
  • Uses Correntropy Induced Metric (CIM) for similarity measurement
  • Applies Kernel Bayes Rule for probabilistic clustering decisions
  • Performs topology reconstruction and cleanup during learning
  • Figure_1

Features

  • Adaptive Clustering: Automatically determines the number of clusters based on data structure
  • Topological Preservation: Maintains meaningful connections between clusters
  • Robust Learning: Implements vigilance testing to control cluster sensitivity
  • Dynamic Network: Grows and refines the network topology during the learning process
  • Visualization: Provides visual representation of clustering results

Dependencies

  • Python 3.7+
  • NumPy
  • SciPy
  • Matplotlib
  • TensorFlow (optional, currently included but not used)

Install dependencies using:

pip install -r requirements.txt

Usage

  1. Place your data in a .mat file format or modify the loading function in main.py

  2. Configure the algorithm parameters:

    • cim_sig: Kernel bandwidth for CIM (default: 0.05)
    • kbr_sig: Kernel bandwidth for Kernel Bayes Rule (default: 1.0)
    • max_cim: Vigilance parameter for cluster acceptance (default: 0.2)
    • lambda_param: Interval for topology reconstruction (default: 400)
  3. Run the main script:

    python main.py

Algorithm Parameters

  • cim_sig: Controls the sensitivity of the Correntropy Induced Metric
  • kbr_sig: Kernel bandwidth for the Kernel Bayes Rule component
  • max_cim: Maximum CIM distance for accepting a cluster (vigilance parameter)
  • lambda_param: Frequency of topology reconstruction operations

File Structure

TKBA/
├── __init__.py
├── main.py                   # Main algorithm
├── tkba.py                   # Core TKBA algorithm implementation
├── utils.py                  # Utility functions
├── visualization.py          # Visualization functions
├── requirements.txt          # Project dependencies
└── 2D_ClusteringDATASET.mat  # Example dataset

How It Works

  1. Initialization: The algorithm starts with an empty network
  2. Pattern Presentation: Each data point is processed sequentially
  3. Winner Selection: Finds the best matching cluster using CIM
  4. Vigilance Testing: Determines if the pattern fits an existing cluster
  5. Learning: Updates cluster weights or creates new clusters
  6. Topological Connections: Connects similar clusters in the network
  7. Topology Reconstruction: Periodically cleans up the network by removing poor clusters

Applications

The TKBA algorithm is particularly well-suited for:

  • 2D clustering tasks
  • Dynamic data streams where the number of clusters is unknown
  • Tasks requiring preservation of topological relationships
  • Noisy data clustering with adaptive thresholding

Example Output

The main script generates a visualization showing:

  • Data points in cyan
  • Cluster centers with distinct colors
  • Connections between related clusters as white lines

Algorithm Details

TKBA combines three key concepts:

  1. Adaptive Resonance Theory: Ensures stable learning without catastrophic forgetting
  2. Kernel Methods: Provides non-linear similarity measures using Gaussian kernels
  3. Topological Networks: Maintains relationships between clusters for better understanding of data structure

About

An advanced clustering algorithm that combines Adaptive Resonance Theory (ART) with Correntropy-Induced Metric (CIM), kernel methods, and topological structures for robust clustering tasks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages