量子可编程门阵列项目教程
1. 项目目录结构及介绍
qpga/
├── assets/
├── qpga/
│ ├── callbacks.py
│ ├── circuits.py
│ ├── constants.py
│ ├── fidelity_search.py
│ ├── linalg.py
│ ├── model.py
│ ├── plotting.py
│ ├── state_preparation.py
│ ├── training.py
│ └── utils.py
├── scripts/
│ ├── run_ghz_state_fidelity.py
│ └── run_qft_fidelity_search.py
├── .gitignore
├── LICENSE
├── README.md
└── qpga_figures.ipynb
目录结构说明
- assets/: 存放项目相关的静态资源文件。
- qpga/: 项目核心代码目录,包含多个Python脚本文件。
- callbacks.py: 提供Keras风格的回调函数,用于记录模拟的量子可编程门阵列(QPGA)在训练过程中实现的逻辑操作符和状态。
- circuits.py: 包含在SQUANCH中模拟的量子电路,用于准备训练数据。
- constants.py: 项目中使用的各种常量。
- fidelity_search.py: 训练不同深度的QPGA,以匹配输入输出数据到期望的保真度。
- linalg.py: 线性代数辅助函数。
- model.py: 包含模拟QPGA的主要TensorFlow模型。
- plotting.py: 用于生成论文中使用的图表的辅助函数。
- state_preparation.py: 用于准备量子态向量的辅助函数。
- training.py: 包含实例化和编译QPGA以适应输入/输出数据的辅助函数。
- utils.py: 其他杂项工具函数。
- scripts/: 包含运行特定任务的脚本文件。
- run_ghz_state_fidelity.py: 用于寻找准备GHZ态到期望保真度的QPGA的脚本。
- run_qft_fidelity_search.py: 用于寻找实现量子傅里叶变换到期望保真度的QPGA的脚本。
- .gitignore: Git忽略文件配置。
- LICENSE: 项目许可证文件。
- README.md: 项目说明文档。
- qpga_figures.ipynb: 包含生成论文中使用的图表的Jupyter Notebook文件。
2. 项目启动文件介绍
项目的启动文件主要位于scripts/
目录下,包括以下两个主要脚本:
- run_ghz_state_fidelity.py: 该脚本用于寻找能够准备GHZ态到期望保真度的QPGA。通过运行该脚本,可以训练QPGA以实现特定的量子态准备任务。
- run_qft_fidelity_search.py: 该脚本用于寻找能够实现量子傅里叶变换到期望保真度的QPGA。通过运行该脚本,可以训练QPGA以实现特定的量子电路任务。
启动方式
python scripts/run_ghz_state_fidelity.py
python scripts/run_qft_fidelity_search.py
3. 项目配置文件介绍
项目中没有显式的配置文件,但可以通过修改constants.py
文件中的常量来调整项目的运行参数。例如,可以修改训练的迭代次数、学习率等参数。
constants.py
文件示例
# 训练迭代次数
EPOCHS = 100
# 学习率
LEARNING_RATE = 0.01
# 其他常量定义
...
通过修改这些常量,可以灵活地调整项目的运行行为。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考