[][src]Struct radiate::models::neat::layers::gru::GRU

pub struct GRU {
    pub input_size: u32,
    pub memory_size: u32,
    pub output_size: u32,
    pub current_memory: Vec<f32>,
    pub current_output: Vec<f32>,
    pub f_gate: Dense,
    pub e_gate: Dense,
    pub o_gate: Dense,
}

Fields

input_size: u32memory_size: u32output_size: u32current_memory: Vec<f32>current_output: Vec<f32>f_gate: Densee_gate: Denseo_gate: Dense

Implementations

impl GRU[src]

implement a simple GRU layer that can be added to the neat network

pub fn new(
    input_size: u32,
    memory_size: u32,
    output_size: u32,
    act: Activation
) -> Self
[src]

Trait Implementations

impl Clone for GRU[src]

Implement clone for the neat neural network in order to facilitate proper crossover and mutation for the network

impl Debug for GRU[src]

impl<'de> Deserialize<'de> for GRU[src]

impl Display for GRU[src]

implement display for the GRU layer of the network

impl Genome<GRU, NeatEnvironment> for GRU where
    GRU: Layer
[src]

in order for the GRU layer to be evolved along with the rest of the network, Genome must be implemented so that the layer can be crossed over and measured along with other GRU layers

fn crossover(
    child: &GRU,
    parent_two: &GRU,
    env: Arc<RwLock<NeatEnvironment>>,
    crossover_rate: f32
) -> Option<GRU>
[src]

implement how to crossover two GRU layers

fn distance(one: &GRU, two: &GRU, env: Arc<RwLock<NeatEnvironment>>) -> f32[src]

get the distance between two GRU layers of the network

impl Layer for GRU[src]

implement the layer trait for the GRU so it can be stored in the neat network

fn forward(&mut self, inputs: &Vec<f32>) -> Option<Vec<f32>>[src]

implement the propagation function for the GRU layer

impl Serialize for GRU[src]

Auto Trait Implementations

impl RefUnwindSafe for GRU

impl Send for GRU

impl Sync for GRU

impl Unpin for GRU

impl UnwindSafe for GRU

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<L> LayerClone for L where
    L: 'static + Layer + Clone
[src]

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<T> Serialize for T where
    T: Serialize + ?Sized
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,