我想使用顺序模型在 TFQ 中训练一个简单的电路,如下所示:
model = tf.keras.Sequential()
model.add(tf.keras.layers.Input(shape=(), dtype=tf.dtypes.string))
model.add(
tfq.layers.PQC(
model_circuit=circuit,
operators=readout_op))
但是,我不想执行读取操作,而是希望模型输出状态向量,以便在将其输入损失函数之前对其进行一些后处理。
原则上,tfq.layers.State 看起来适合这项任务,但从示例中我不清楚我将如何在模型上下文中使用状态层,而不是仅使用它来生成状态向量,如图所示文档:
state_layer = tfq.layers.State()
alphas = tf.reshape(tf.range(0, 1.1, delta=0.5), (3, 1)) # FIXME: #805
state_layer(parametrized_bell_circuit,
symbol_names=[alpha], symbol_values=alphas)
所以我的问题:
- 我可以强制 PQC 层输出状态向量而不是执行读出操作吗?
- 我可以将状态层用作序列模型中的参数化层(或以任何其他方式训练它吗?)
- 或者我的模型是否有任何替代方式输出状态向量?