|
1 | 1 | # ml-quantum-readout
|
2 | 2 |
|
3 |
| -This project uses hls4ml to create the firmware implementation of machine learning algorithms for single and mult-qubit readout. |
4 |
| - |
5 |
| -## Setup |
6 |
| - |
7 |
| -Clone repository |
8 |
| - |
9 |
| -```bash |
10 |
| -git clone https://github.com/jicampos/ml-quantum-readout.git |
11 |
| -``` |
12 |
| - |
13 |
| -Create conda environment |
14 |
| - |
15 |
| -```bash |
16 |
| -conda env create -f environment.yml |
17 |
| -conda activate ml4qick-env |
18 |
| -``` |
| 3 | +This project uses hls4ml to create the firmware implementation of machine learning algorithms for single qubit readout on the QICK system. |
19 | 4 |
|
20 | 5 | ## Data
|
21 | 6 |
|
22 |
| -Single qubit data can be found [here](https://purdue0-my.sharepoint.com/personal/du245_purdue_edu/_layouts/15/onedrive.aspx?id=%2Fpersonal%2Fdu245%5Fpurdue%5Fedu%2FDocuments%2FShared%2FQSC%20ML%20for%20readout%2FFinal%5Fraw%5Fdata%5Ffor%5Fpaper%2Fdata%5F0528%5Fnpy). |
23 |
| -Previous versions exist, which can be found in [data dir](data/README.md). |
| 7 | +Data is directly from the ADC units of the ZCU216, prepared into npy files and can be found on Zenodo [here](https://zenodo.org/records/14427490). |
24 | 8 |
|
25 | 9 | ## Training & Notebooks
|
26 | 10 |
|
27 |
| -Several notebooks for training exist, the simpliest are the 'workflow*.ipynb' notebooks. These notebooks start with training in (Q)Keras down to hls4ml IP generation. The scanning notebooks are useful for design space exploration, comparing traditional methods (match filtering and thresholding) with NNs of varying sizes. |
28 |
| - |
29 |
| -### Model Summary |
30 |
| - |
31 |
| -```text |
32 |
| -Model: "sequential" |
33 |
| -_________________________________________________________________ |
34 |
| - Layer (type) Output Shape Param # |
35 |
| -================================================================= |
36 |
| - fc1 (QDense) (None, 14) 11214 |
37 |
| - |
38 |
| - batchnorm1 (QBatchNormaliza (None, 14) 56 |
39 |
| - tion) |
40 |
| - |
41 |
| - fc2 (QDense) (None, 2) 30 |
42 |
| - |
43 |
| -================================================================= |
44 |
| -Total params: 11,300 |
45 |
| -Trainable params: 11,272 |
46 |
| -Non-trainable params: 28 |
47 |
| -``` |
| 11 | +There are several examples for training, the simpliest are the workflow notebooks. These notebooks start with training in (Q)Keras down to hls4ml IP generation. The scanning notebooks are useful for design space exploration, comparing traditional methods (match filtering and thresholding) with NNs of varying sizes. |
48 | 12 |
|
49 | 13 | ## Inference and Synthesis
|
50 | 14 |
|
|
0 commit comments