Hello, community! First of all, apologies for the months of absence. We’ve been fully immersed in developing Auren, our platform for early cancer detection .
Now, let’s get straight to the point:
Some time ago, we realized we needed better data to train our tabular models. We experimented with GANs, which are powerful, but encountered issues like mode collapse (where the generator gets stuck creating less diverse data) and instability during training. We then tried GENs, which are more stable, but the generated data didn’t improve loss reduction or increase training accuracy with Torch.
Finally, we discovered quantum randomness simulations. These allow us to generate high-quality synthetic data, particularly for omic tabular datasets. We use Cirq to design quantum circuits, as it works well on Metal. However, if you prefer CUDA, Qiskit might be a better option.
The Circuit We Use
Our circuit generates synthetic data through quantum randomness simulations by combining superposition, entanglement and controlled rotations to achieve a structured randomness pattern. Here’s an overview:
0: ───H───@───Rz(0.123π)───M(‘m0’)────────────────
│
1: ───H───X───@────────────Rx(0.456π)───M(‘m1’)───
│
2: ───H───────@────────────Ry(0.789π)───M(‘m2’)───
Step-by-Step Breakdown
- Initialization of Qubits:
• Each of the three qubits (0, 1, and 2) starts in the |0⟩ state, the default state in quantum systems.
- Hadamard Gate (H):
• Applied to each qubit at the start, this creates a quantum superposition, placing each qubit in a mixed state between |0⟩ and |1⟩. This introduces essential randomness into the circuit.
- Controlled Gates (@):
• These controlled gates (also known as CNOT) introduce entanglement:
• Qubit 0 controls Qubit 1.
• Qubit 1 controls Qubit 2.
• This means the qubits’ states become correlated, enabling the generation of complex patterns.
- Rotations (Rz, Rx, Ry):
• Each qubit is rotated in a specific way on the Bloch sphere:
• Qubit 0: Rz rotation around the z-axis.
• Qubit 1: Rx rotation around the x-axis.
• Qubit 2: Ry rotation around the y-axis.
• These rotations fine-tune the final quantum state probabilities, adding diversity and complexity.
- Measurements (M):
• Each qubit is measured in the computational basis (|0⟩ or |1⟩), producing outputs labeled as m0, m1, and m2.
Why This Circuit?
This design combines the best of quantum principles to generate tabular data with a complex and rich random structure, making it ideal for training machine learning models.
“Quantum Synthetic Data API for AWG”
We’ve created an API to let you generate quantum synthetic data without programming. Just upload a file to Swagger, execute the process, and you’re done. Here are the details:
• URL: https://www.gaiahealthai.com:9000/docs#/
• Platform: Deployed on a VM with 8 CPU cores, 8GB RAM, and SSD storage.
• Response Time: Each inference takes about 2 minute, processing the CSV and applying quantum randomness to return a new CSV with synthetic data.
• Limitations: Each response is capped at 250 rows and 4 columns of the input sample due to the high computational demand of quantum simulations. Each simulation takes approximately 2 minutes to complete, so please be patient.
If you have any questions, feel free to send us a direct message or email at joan@totemhealthlab.org.
Note: The API is completely free and public for the AWG community. We hope you can use it, experiment with it, and make the most of it. Naturally, the API still has room for improvement, and we’ll share updates and enhancements with each new version.
We would also be delighted to assist with interesting projects. Please don’t hesitate to reach out to me with confidence.