Skip to main content

quantum-fisher-view-ml

QUIVER methodology — enriching classical ML features with quantum Fisher information views from variational quantum circuits. Combines quantum geometry with classical ML for enhanced representations without fault-tolerant hardware. Also covers Hamming quantum kernel for scalable quantum SVMs. arXiv: 2606.02785, 2605.31449

跳到安装

来源信息

仓库
hiyenwong/ai_collection
最近来源活动
2026年6月8日 08:11
检测到的 SKILL.md 语言
英语
星标
2
分支
0

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
quantum-fisher-view-ml
description
QUIVER methodology — enriching classical ML features with quantum Fisher information views from variational quantum circuits. Combines quantum geometry with classical ML for enhanced representations without fault-tolerant hardware. Also covers Hamming quantum kernel for scalable quantum SVMs. arXiv: 2606.02785, 2605.31449
tags
["quantum-ml","fisher-information","variational-quantum-circuit","feature-augmentation","quantum-kernel","svm"]
# Quantum Fisher View for ML (QUIVER) ## Background Large machine learning models benefit from multimodal inputs providing complementary views. QUIVER (QUantum-Informed Views for Enhanced Representations) enriches classical data-driven features with a **quantum Fisher view** — a geometrically motivated, basis-independent summary of higher-order correlations captured by a variational quantum circuit (VQC) trained on the same task. The **quantum Fisher information matrix (QFIM)** encodes the intrinsic geometry of the learned quantum state manifold, surfacing statistical structure that additional classical data or model capacity finds difficult to learn. This makes the quantum Fisher view a genuinely complementary modality, not a redundant one. Additionally, the **Hamming quantum kernel** provides a scalable approach for quantum SVMs by using full measurement statistics instead of a single fidelity value, avoiding the exponential concentration problem at larger qubit scales (15+ qubits). ## Core Methodology ### QUIVER Pipeline 1. **Train VQC**: Train a variational quantum circuit on the target task (classification/regression) 2. **Extract QFIM**: Compute the quantum Fisher information matrix from the trained VQC's state manifold 3. **Compute Fisher View**: Derive a basis-independent feature vector from the QFIM eigenstructure 4. **Fuse with Classical**: Concatenate or project the quantum Fisher view with classical features 5. **Train Final Model**: Train the downstream model on the augmented feature space ### Hamming Quantum Kernel Pipeline 1. **Prepare Quantum Circuit**: Design a feature map circuit embedding classical data into quantum states 2. **Execute Measurements**: Run the circuit and collect full measurement outcome statistics (bitstring frequencies) 3. **Compute Hamming Kernel**: Calculate pairwise Hamming distances between measurement outcome distributions 4. **Train SVM**: Use the Hamming kernel matrix as input to a classical SVM solver ## Implementation Steps ### Step 1: VQC Training for QUIVER ```python import pennylane as qml import numpy as np from jax import numpy as jnp n_qubits = 4 n_layers = 2 def vqc_circuit(params, x): """Variational quantum circuit with data encoding.""" for i in range(n_qubits): qml.RY(x[i], wires=i) for layer in range(n_layers): for i in range(n_qubits): qml.Rot(*params[layer, i], wires=i) for i in range(n_qubits - 1): qml.CNOT(wires=[i, i + 1]) return [qml.expval(qml.PauliZ(i)) for i in range(n_qubits)] dev = qml.device("default.qubit", wires=n_qubits) qnode = qml.QNode(vqc_circuit, dev) # Train VQC on target task # ... standard optimization loop ... ``` ### Step 2: Quantum Fisher Information Matrix Extraction ```python def compute_qfim(params, x, eps=1e-4): """Compute QFIM using parameter-shift rule.""" n_params = params.size qfim = np.zeros((n_params, n_params)) for i in range(n_params): for j in range(i, n_params): # Parameter-shift for second derivatives params_pp = params.copy() params_pm = params.copy() params_mp = params.copy() params_mm = params.copy() params_pp[i] += eps; params_pp[j] += eps params_pm[i] += eps; params_pm[j] -= eps params_mp[i] -= eps; params_mp[j] += eps params_mm[i] -= eps; params_mm[j] -= eps f_pp = qnode(params_pp, x) f_pm = qnode(params_pm, x) f_mp = qnode(params_mp, x) f_mm = qnode(params_mm, x) qfim[i, j] = (f_pp - f_pm - f_mp + f_mm) / (4 * eps**2) qfim[j, i] = qfim[i, j] return qfim ``` ### Step 3: Fisher View Feature Extraction ```python def extract_fisher_view(qfim, n_components=4): """Extract basis-independent features from QFIM eigenstructure.""" eigenvalues, eigenvectors = np.linalg.eigh(qfim) # Sort by magnitude idx = np.argsort(np.abs(eigenvalues))[::-1] eigenvalues = eigenvalues[idx] eigenvectors = eigenvectors[:, idx] # Fisher view features: # 1. Top eigenvalues (curvature of quantum state manifold) # 2. Eigenvalue ratios (relative importance of directions) # 3. Condition number (sensitivity) # 4. Spectral entropy (information content) top_eigs = eigenvalues[:n_components] eigen_ratios = top_eigs / (np.sum(np.abs(eigenvalues)) + 1e-10) condition_number = np.abs(eigenvalues[0]) / (np.abs(eigenvalues[-1]) + 1e-10) spectral_entropy = -np.sum(eigen_ratios * np.log(eigen_ratios + 1e-10)) fisher_view = np.concatenate([ top_eigs, eigen_ratios, [condition_number, spectral_entropy] ]) return fisher_view ``` ### Step 4: Feature Fusion ```python def quiver_augment(classical_features, fisher_view): """Fuse quantum Fisher view with classical features.""" # Option 1: Simple concatenation augmented = np.concatenate([classical_features, fisher_view]) # Option 2: Weighted fusion with learned weights # w_classical, w_quantum = learn_weights(classical_features, fisher_view) # augmented = w_classical * classical_features + w_quantum * fisher_view return augmented ``` ### Step 5: Hamming Quantum Kernel ```python def hamming_quantum_kernel(X_train, X_test, n_qubits, circuit_fn): """Compute Hamming quantum kernel from measurement statistics.""" from scipy.spatial.distance import hamming # Get measurement distributions for all data points def get_measurement_distribution(x, n_shots=1000): """Run circuit and collect bitstring frequencies.""" counts = {} for _ in range(n_shots): result = circuit_fn(x) # Returns bitstring counts[result] = counts.get(result, 0) + 1 # Normalize to probability distribution total = sum(counts.values()) return {k: v/total for k, v in counts.items()} train_dists = [get_measurement_distribution(x) for x in X_train] test_dists = [get_measurement_distribution(x) for x in X_test] # Compute Hamming kernel matrix n_train, n_test = len(train_dists), len(test_dists) K = np.zeros((n_test, n_train)) for i in range(n_test): for j in range(n_train): # Hamming distance between measurement distributions all_keys = set(train_dists[j].keys()) | set(test_dists[i].keys()) vec1 = np.array([train_dists[j].get(k, 0) for k in all_keys]) vec2 = np.array([test_dists[i].get(k, 0) for k in all_keys]) K[i, j] = np.exp(-hamming(vec1, vec2)) return K ``` ## Key Findings from Research ### QUIVER Results (arXiv:2606.02785) - Demonstrated on QM9 (molecular properties) and JetClass (LHC jet flavor) - Quantum Fisher view provides genuinely complementary information to classical features - Works before fault-tolerant quantum hardware (simulated VQCs suffice) - Domain-agnostic: applicable to any architecture with targeted modifications - Improves standard performance metrics across very different domains ### Hamming Quantum Kernel Results (arXiv:2605.31449) - Avoids exponential concentration of fidelity quantum kernel - Scales to 27 qubits (tested up to this limit) - Outperforms fidelity kernel at 15+ qubits - Outperforms classical Gaussian kernel on synthetic quantum data - Purely classical post-processing — no additional quantum resources ## When to Use ### Use QUIVER when: - You need to extract higher-order statistical correlations from data - Classical feature augmentation is insufficient - You have access to quantum simulators or hardware - Working on molecular/physics ML tasks - You need basis-independent feature representations ### Use Hamming Quantum Kernel when: - Building quantum SVMs with 15+ qubits - Fidelity quantum kernel suffers from exponential concentration - You need scalable quantum kernel methods - Working with synthetic or quantum-native data ## Pitfalls 1. **QFIM computation cost**: Computing the full QFIM scales as O(n_params²) — use sampling or approximation for large circuits 2. **VQC trainability**: Barren plateaus can make VQC training difficult — use local cost functions or layer-by-layer training 3. **Shot noise**: Finite measurement shots introduce noise in QFIM estimation — use enough shots (>1000) or error mitigation 4. **Exponential concentration**: Traditional fidelity kernels concentrate exponentially — always prefer Hamming kernel at scale 5. **Classical simulability**: For small circuits, classical methods may match performance — quantum advantage emerges at larger scales ## Activation Keywords - quantum fisher view - quiver ml - quantum feature augmentation - quantum Fisher information matrix - QFIM features - hamming quantum kernel - quantum SVM - scalable quantum kernel - 量子费舍尔信息 - 量子核方法 ## Related Skills - quantum-ml-patterns - quantum-neural-architecture - quantum-framework-agnostic-design
在 GitHub 查看