Logo name
Personal tools

Block

From Piki

  • Currently0.00/5
Jump to: navigation, search

A block in Synapse is an information processing element in a topology. It consists of a forward propagator, a backwards propagator, a forward update rule and a backwards update rule. Blocks can be linked together to form a topology.

Contents

Anatomy of a block


Propagators

The central element in the block is the forward propagator. It is a processing element that maps one or more inputs on to one or more outputs. It is activated in the forward pass of a control system. In the Function layer block for instance the forward propagator takes one input signal, applies a function to it and returns an output signal while a Weight layer block takes an input signal, multiplies it with a weight matrix and outputs the product.

A forward propagator usually has a closely related back propagator. Usually the back propagator mirrors the action of the forward version in order to support systems based on error correction, but can in principle support completely independent operation. A forward propagator can be compatible with multiple back propagators. All forward propagators are compatible with the Blocking propagator that simply stops a signal flow.

Forward propagators are in context often referred to as "components" while back propagators are often called just "propagator".

Update rules

Main article: Update rule

A block can have two different update rules attached to it. Update rules are adaptation algorithms. The forward update rule must be compatible directly with the forward propagator while the back update rule must be compatible with the back propagator. The two update rules are activated in the forward and back passes of the control system.

The "No update" update rule is compatible with all propagators and does as the name implies nothing. It is used if no other compatible update rule is found.


Signals and ports

A three input port merger block taking independent signals and joining them.
A three input port merger block taking independent signals and joining them.

The basic object of communication between blocks is the signal object. It is in principle a generic object containing a data package and associated meta-data. The sources and destinations of signals are called ports. A signal travels from one port to another. Most blocks in Synapse are single port blocks, meaning that they have one input and one output port.

There are however also several multi port blocks where the block has several independent input ports. When connecting to or from a multi port block, its GUI will change to allow the user to select from/to which port the link should go. The start and end of the links are color coded to indicate source and destination ports. The block themselves have ports indicated on their GUI: on the left side are color coded input ports while on the right side are the color coded output ports.

When multiple signals are connected to the same port their signals are superimposed (i.e. added).


Base and GUI levels

Blocks as most other Synapse components consist of two separate levels: a base level that performs the actual calculations and a GUI level that shows a presentable interface to the user. This is in order to make deployed systems lean, small, fast and compatible with the .NET compact framework. Typically the block GUI level contains a graphical interface which can basically be anything that Windows Forms support and a setting object displayed in the settings browser. When a block is selected in design mode or training mode the settings that are shown are a merge of general block settings and the specific settings for the forward and back propagators as well as the update rules.

Settings

The common block settings are merged with the settings of the propagators and the update rules and can be modified using the settings browser.


Block settings


  • (General)
  • Name: The name of the block.
  • Type: The type of the block (read only).


  • (Learning Forward)
  • Forward Rule: The forward update rule to be used.
  • <Forward rule settings>: The settings from the selected forward rule GUI level.


  • (<Settings defined by the forward propagator>)


  • (Learning Backpass)- only shown if compatible update rules exist
  • Back Rule: The back update rule to be used.
  • Propagator: The back propagator to be used.


  • (User Defaults)- Saves/Resets combination of update rules and propagators to the user config file.
  • Set as Default: Sets the current combination as default.
  • Reset: Reset to system default


See also

This page was last modified 04:03, 13 March 2008.  This page has been accessed 7,865 times.  Disclaimers