emergent 8.2.2 ConSpec_cpp Class Reference
emergent 8.2.2   Home · Wiki Docs For: ConSpec_cpp · Emergent Help Browser 

ConSpec_cpp Class Reference

plain C++ version of ConSpec

See for more info: Wiki Docs For: ConSpec_cpp

 #include <ConSpec_cpp>

defined at: /mnt/ssd/grey/local/include/Emergent/ConSpec_cpp.h :33-41

Inherits From: BaseSpec_cpp, taNBase_cpp, taOBase_cpp, taBase_cpp

Inherited By: ConSpec_cpp*, ConSpec_cpp&, const ConSpec_cpp, BpConSpec_cpp, LeabraConSpec_cpp

Index: SubTypes, Members, Methods, Static Members, Static Methods, Expert Members, Expert Methods

Sub Types


SubType Documentation

enum ConSpec_cpp::ConVars

Connection variables -- must align with Connection obj

ConstantValueDescription
ConSpec_cpp::WT0x00000000the synaptic weight of connection
ConSpec_cpp::DWT0x00000001change in synaptic weight as computed by learning mechanism


Regular (preferred) Member and Method Documentation

Members

Member Category: ConSpec

Methods

Method Category: Access

Method Category: Activation

Method Category: File

Method Category: Learning

Method Category: State


Member Documentation

Member Category: ConSpec

ConSpec_cpp::rnd : Random_cpp

Weight randomization specification. Note that NONE means no value at all, not the mean, and should be used if some other source is setting the weights, e.g., from a projectionspec or loading from a file etc

ConSpec_cpp::wt_limits : WeightLimits_cpp

limits on weight sign, symmetry


Method Documentation

Method Category: Access

char* ConSpec_cpp::ConVarName ( int var_no )

name of given connection variable

Show Source Code

int ConSpec_cpp::FindConVar ( ConState_cpp* cg, char* var_nm )

find index of given connection variable, -1 if not found

Show Source Code

Method Category: Activation

float ConSpec_cpp::Compute_Dist ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

compute net distance for con state (ie. euclidean distance)

Show Source Code

float ConSpec_cpp::Compute_Netin ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

compute net input for weights in this con state

Show Source Code

void ConSpec_cpp::Send_Netin ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

sender-based net input for con state (send net input to receivers) -- always goes into tmp matrix (thread_no >= 0!) and is then integrated into net through Compute_SentNetin function on units -- only for sender-owned connections!

Show Source Code

void ConSpec_cpp::Send_Netin_PerPrjn ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

sender-based net input, keeping projections separate, for con state (send net input to receivers) -- always goes into tmp matrix (thread_no >= 0!) and is then integrated into net through Compute_SentNetin function on units -- only for sender-owned connections!

Show Source Code

Method Category: File

bool ConSpec_cpp::SaveVar ( ConState_cpp* cg, NetworkState_cpp* net, int var_no )

should given variable be saved?

Show Source Code

Method Category: Learning

void ConSpec_cpp::ApplySymmetry_r ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

apply weight symmetrizing between reciprocal units -- recv owns cons version

Show Source Code

void ConSpec_cpp::ApplySymmetry_s ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

apply weight symmetrizing between reciprocal units -- send owns cons version

Show Source Code

void ConSpec_cpp::B_Compute_Weights ( UnitState_cpp* uv, NetworkState_cpp* net, int thr_no )

bias weight: update weights (ie. add delta-wt to wt, zero delta-wt)

Show Source Code

void ConSpec_cpp::B_Compute_dWt ( UnitState_cpp* uv, NetworkState_cpp* net, int thr_no )

bias weight: compute the delta-weight change -- recv owns cons version

Show Source Code

void ConSpec_cpp::B_Init_Weights ( UnitState_cpp* uv, NetworkState_cpp* net, int thr_no )

bias weight: initialize weight state variables (ie. at beginning of training)

Show Source Code

void ConSpec_cpp::B_Init_Weights_post ( UnitState_cpp* uv, NetworkState_cpp* net, int thr_no )

bias weight: post-weight init

Show Source Code

void ConSpec_cpp::B_Init_dWt ( UnitState_cpp* uv, NetworkState_cpp* net, int thr_no )

bias weight: initialize weight-change variables for all cons

Show Source Code

void ConSpec_cpp::C_Init_Weight_AddRndVar ( float& wt, int thr_no )

initialize the weight by adding number according to the random number specs, and apply weight limits (not symmetry)

Show Source Code

void ConSpec_cpp::C_Init_Weight_Rnd ( float& wt, int thr_no )

initialize the weight according to the random number specs, and apply weight limits (not symmetry)

Show Source Code

void ConSpec_cpp::C_Init_dWt ( float& dwt )

initialize weight-change variable to 0

Show Source Code

void ConSpec_cpp::Compute_Weights ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

update weights (ie. add delta-wt to wt, zero delta-wt)

Show Source Code

void ConSpec_cpp::Compute_dWt ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

compute the delta-weight change -- recv owns cons version

Show Source Code

void ConSpec_cpp::Init_Weights ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

initialize connection weights based on random parameter settings (ie. at beginning of training)

Show Source Code

void ConSpec_cpp::Init_Weights_scale ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no, float init_wt_val = 1.0f )

only for Leabra: initialize connection weights by setting scale multiplier values to random values, and setting adaptive weights to given constant initial value (weights end up as product of scale * weight)

Show Source Code

void ConSpec_cpp::Init_dWt ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

initialize weight-change variables for all cons

Show Source Code

void ConSpec_cpp::SetConScale ( float scale, ConState_cpp* cg, int cidx, NetworkState_cpp* net, int thr_no )

set the connection scale parameter, for given connection index, for algorithms that support connection scale parameters (Leabra)

Show Source Code

Method Category: State

int ConSpec_cpp::GetStateSpecType ( )

derived classes MUST override this and pass correct global type id

Show Source Code

void ConSpec_cpp::Init_Weights_post ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

// post-initialize state variables (ie. for scaling symmetrical weights, other wt state keyed off of weights, etc)

Show Source Code

void ConSpec_cpp::Init_Weights_sym_r ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

apply symmetry after weight init, recv based

Show Source Code

void ConSpec_cpp::Init_Weights_sym_s ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no )

apply symmetry after weight init, sender based

Show Source Code

void ConSpec_cpp::LoadWeightVal ( float wtval, ConState_cpp* cg, int cidx, NetworkState_cpp* net )

set loaded weight value for given connection index

Show Source Code

void ConSpec_cpp::RenormScales ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no, bool mult_norm, float avg_wt )

renormalize the connection scale values using either multiplicative (for positive-only weight values such as Leabra) or subtractive normalization (for pos/neg weight values, such as backprop) to hit the given average weight value -- only affects scale value -- only for algorithms that support scale (Leabra) -- need to call Init_Weights_post afterward at appropriate level! -- receiver based but uses generic, slow interace so can be called either way

Show Source Code

void ConSpec_cpp::RenormWeights ( ConState_cpp* cg, NetworkState_cpp* net, int thr_no, bool mult_norm, float avg_wt )

renormalize the weight values using either multiplicative (for positive-only weight values such as Leabra) or subtractive normalization (for pos/neg weight values, such as backprop) to hit the given average weight value -- only affects wt value -- need to call Init_Weights_post afterward at appropriate level! -- receiver based but uses generic, slow interace so can be called either way

Show Source Code

Static Member and Method Documentation

Static Members

Static Methods


Static Method Documentation


Expert Member and Method Documentation

Expert Members

Expert Member Category: _NoCategory

Expert Methods


Expert Member Documentation

Expert Member Category: _NoCategory

ConSpec_cpp::spec_idx : int

index of this spec in list of specs


Expert Method Documentation


Copyright © 2017Regents of the University of Colorado, Carnegie Mellon University, Princeton University.
emergent 8.2.2