Skip to main contentIBM Quantum Documentation
You are viewing the API reference for an old version of Qiskit SDK. Switch to latest version

NaturalGradient

class qiskit.opflow.gradients.NaturalGradient(grad_method='lin_comb', qfi_method='lin_comb_full', regularization=None, **kwargs)

GitHub(opens in a new tab)

Bases: GradientBase

Deprecated: Convert an operator expression to the first-order gradient.

Given an ill-posed inverse problem

x = arg min{||Ax-C||^2} (1)

one can use regularization schemes can be used to stabilize the system and find a numerical solution

x_lambda = arg min{||Ax-C||^2 + lambda*R(x)} (2)

where R(x) represents the penalization term.

Deprecated since version 0.24.0

The class qiskit.opflow.gradients.natural_gradient.NaturalGradient is deprecated as of qiskit-terra 0.24.0. It will be removed no earlier than 3 months after the release date. For code migration guidelines, visit https://qisk.it/opflow_migration(opens in a new tab).

Parameters

  • grad_method (str(opens in a new tab) |CircuitGradient) – The method used to compute the state gradient. Can be either 'param_shift' or 'lin_comb' or 'fin_diff'.
  • qfi_method (str(opens in a new tab) |CircuitQFI) – The method used to compute the QFI. Can be either 'lin_comb_full' or 'overlap_block_diag' or 'overlap_diag'.
  • regularization (str(opens in a new tab) | None) – Use the following regularization with a least square method to solve the underlying system of linear equations Can be either None or 'ridge' or 'lasso' or 'perturb_diag' 'ridge' and 'lasso' use an automatic optimal parameter search If regularization is None but the metric is ill-conditioned or singular then a least square solver is used without regularization
  • kwargs (dict(opens in a new tab)) – Optional parameters for a CircuitGradient

Attributes

grad_method

Returns CircuitGradient.

Returns

CircuitGradient.

qfi_method

Returns CircuitQFI.

Returns: CircuitQFI.

regularization

Returns the regularization option.

Returns: the regularization option.


Methods

convert

convert(operator, params=None)

Parameters

Returns

An operator whose evaluation yields the NaturalGradient.

Raises

Return type

OperatorBase

nat_grad_combo_fn

static nat_grad_combo_fn(x, regularization=None)

Natural Gradient Function Implementation.

Parameters

Returns

Natural Gradient.

Raises

ValueError(opens in a new tab) – If the gradient has imaginary components that are non-negligible.

Return type

ndarray(opens in a new tab)

Was this page helpful?
Report a bug or request content on GitHub.