pub struct QuantumAttention { /* private fields */ }
Expand description
Quantum attention mechanism for NLP
Implementations§
Source§impl QuantumAttention
impl QuantumAttention
Sourcepub fn attention_gates(&self) -> QuantRS2Result<Vec<Box<dyn GateOp>>>
pub fn attention_gates(&self) -> QuantRS2Result<Vec<Box<dyn GateOp>>>
Generate attention gates for a sequence
Trait Implementations§
Source§impl QMLLayer for QuantumAttention
impl QMLLayer for QuantumAttention
Source§fn num_qubits(&self) -> usize
fn num_qubits(&self) -> usize
Get the number of qubits this layer acts on
Source§fn parameters(&self) -> &[Parameter]
fn parameters(&self) -> &[Parameter]
Get the parameters of this layer
Source§fn parameters_mut(&mut self) -> &mut [Parameter]
fn parameters_mut(&mut self) -> &mut [Parameter]
Get mutable access to parameters
Source§fn compute_gradients(
&self,
_state: &Array1<Complex64>,
_loss_gradient: &Array1<Complex64>,
) -> QuantRS2Result<Vec<f64>>
fn compute_gradients( &self, _state: &Array1<Complex64>, _loss_gradient: &Array1<Complex64>, ) -> QuantRS2Result<Vec<f64>>
Compute gradients with respect to parameters
Source§fn set_parameters(&mut self, values: &[f64]) -> QuantRS2Result<()>
fn set_parameters(&mut self, values: &[f64]) -> QuantRS2Result<()>
Set parameter values
Auto Trait Implementations§
impl Freeze for QuantumAttention
impl RefUnwindSafe for QuantumAttention
impl Send for QuantumAttention
impl Sync for QuantumAttention
impl Unpin for QuantumAttention
impl UnwindSafe for QuantumAttention
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more