Skip to main content

Explainable Quantum Machine Learning Library for interpretable quantum models

Project description

Quantum-XAI Library

Quantum-XAI is a comprehensive explainable quantum machine learning library designed to provide interpretability and transparency for quantum neural network models. Inspired by classical explainability tools like SHAP and LIME, Quantum-XAI adapts these concepts to the quantum domain, enabling users to understand and trust quantum model predictions.

Features

  • Variational Quantum Classifier (VQC) implementation with flexible encoding schemes.
  • Multiple quantum explainability methods including Quantum SHAP, Gradient, LIME, and Perturbation explainers.
  • Visualization tools for feature importance and quantum circuit explanations.
  • Dataset loaders for popular datasets prepared for quantum machine learning.
  • Benchmarking and evaluation utilities for explanation quality and consistency.
  • Comprehensive documentation, examples, and community standards.

Installation

Install via pip from PyPI:

pip install quantum_xai

Or clone the repository and install dependencies:

git clone https://github.com/Harsha2318/QUANTUM-XAI-library.git
cd QUANTUM-XAI-library
pip install -r requirements.txt

Usage

Quick Start Example

from quantum_xai import QuantumXAIDemo

demo = QuantumXAIDemo()
results = demo.run_complete_demo(dataset='iris', n_samples=80)

Custom Model Training

from quantum_xai import QuantumNeuralNetwork, QuantumSHAPExplainer, QuantumGradientExplainer, QuantumXAIVisualizer
from sklearn.model_selection import train_test_split
from quantum_xai import QuantumDatasetLoader

# Load data
X, y, feature_names = QuantumDatasetLoader.load_iris_quantum(n_samples=100)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# Create and train model
model = QuantumNeuralNetwork(n_features=X.shape[1], n_qubits=4, n_layers=2)
model.train(X_train, y_train, epochs=100, lr=0.1)

# Create explainers
shap_explainer = QuantumSHAPExplainer(model, X_train)
gradient_explainer = QuantumGradientExplainer(model)

# Generate explanation for a sample
explanation = shap_explainer.explain(X_test, 0)

# Visualize explanation
visualizer = QuantumXAIVisualizer()
fig = visualizer.plot_feature_importance(explanation, feature_names)
fig.show()

Research Applications

  • Benchmark quantum vs classical explainability methods
  • Analyze quantum Fisher information and entanglement effects
  • Extend to other quantum platforms (Qiskit, Cirq)
  • Develop advanced quantum-specific explanation metrics
  • Apply to real quantum datasets in chemistry, finance, and more

Project Structure

  • QuantumNeuralNetwork: Variational quantum classifier model
  • QuantumExplainer and subclasses: Explainability methods (SHAP, Gradient, LIME, Perturbation)
  • QuantumXAIVisualizer: Visualization utilities
  • QuantumDatasetLoader: Dataset loading and preprocessing
  • QuantumXAIBenchmark: Benchmarking and evaluation tools
  • QuantumXAIDemo: Complete demo and example workflows
  • save_model_and_explanations / load_model_and_explanations: Persistence utilities
  • QuantumXAIResearch: Advanced research features

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Developed by Quantum-XAI Contributors.

Contact

For questions or support, please open an issue on GitHub.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quantum_xai-0.1.3.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

quantum_xai-0.1.3-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file quantum_xai-0.1.3.tar.gz.

File metadata

  • Download URL: quantum_xai-0.1.3.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for quantum_xai-0.1.3.tar.gz
Algorithm Hash digest
SHA256 b3ee5c7325472c4f2f596260218869bb61268d12ad2f1724ce57e37ccef5a40c
MD5 1f71c281029ae5c9a5f959ff1b7c164a
BLAKE2b-256 9eff2547e6e4b70c3c8959968e83c04c594b1c53d34ce4bec4655f449cf8b330

See more details on using hashes here.

File details

Details for the file quantum_xai-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: quantum_xai-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for quantum_xai-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a2ec9bbcdecb78a78b045aa726de65bbfd239dec2e6cb637612ec89833f23235
MD5 e71e8ca69ba00bcc09f94b6efe9222bf
BLAKE2b-256 a8abe5230f884ea4d96528825e10a7784dcf8a842f32e6adb53e330e24e80f98

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page