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 modelQuantumExplainerand subclasses: Explainability methods (SHAP, Gradient, LIME, Perturbation)QuantumXAIVisualizer: Visualization utilitiesQuantumDatasetLoader: Dataset loading and preprocessingQuantumXAIBenchmark: Benchmarking and evaluation toolsQuantumXAIDemo: Complete demo and example workflowssave_model_and_explanations/load_model_and_explanations: Persistence utilitiesQuantumXAIResearch: 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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b3ee5c7325472c4f2f596260218869bb61268d12ad2f1724ce57e37ccef5a40c
|
|
| MD5 |
1f71c281029ae5c9a5f959ff1b7c164a
|
|
| BLAKE2b-256 |
9eff2547e6e4b70c3c8959968e83c04c594b1c53d34ce4bec4655f449cf8b330
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2ec9bbcdecb78a78b045aa726de65bbfd239dec2e6cb637612ec89833f23235
|
|
| MD5 |
e71e8ca69ba00bcc09f94b6efe9222bf
|
|
| BLAKE2b-256 |
a8abe5230f884ea4d96528825e10a7784dcf8a842f32e6adb53e330e24e80f98
|