This is the circuit
dev = qml.device("default.qubit", wires = n_qubits)
@qml.qnode(dev, diff_method='adjoint')
def circuit(weights, inputs=None):
''' Quantum QVC Circuit'''
# print(weights)
weights_each_layer = tf.split(weights, num_or_size_splits=num_layers, axis=0)
inputs_1 = inputs / np.sqrt(max(np.sum(inputs ** 2, axis=-1), 0.001))
for i, W in enumerate(weights):
if i % 2 == 0:
MottonenStatePreparation(inputs_1, wires = range(n_qubits))
StronglyEntanglingLayers(weights_each_layer[i], wires=range(n_qubits))
return [qml.expval(qml.PauliZ(i)) for i in range(n_qubits)]