Classes | Functions

MCPN Namespace Reference

Main namespace of Multi-Core Optimized Perceptron Network library. More...

Classes

class  Activation_Functions
 Activation functions applied to neurons of the whole layer. Per-neuron activation function setting is not supported. More...
class  Binary_Stream_To_Text
 This class provides methods to operate with configuration stream containing textual data as if it was binary data stream. More...
class  Configuration_Stream_Converter
 Class is used to convert streams containing network configuration from text to binary and vice-versa. More...
class  File_Stream
 A template class to work with files using Simple_Stream interface. Please note that class works in 2 modes: read and append (in latter case creates file if non-existent). Mode of operation is determined based on first method called: if Read() was called first then mode is set to read, in case of Write() call, append mode is selected. More...
struct  Range
 Structure representing a range of numbers. More...
class  Raw_Data_Reader
 Reads binary data from a stream into std::vector<double>, stops when there is no more data in the stream. More...
class  Data_Set_Interpreter
 Turns vector<double> into a collection of training samples, this is only a base class, no relevant implementation. More...
class  Sequential_Diffs_Interpreter
 Interprets dataset as a continuous sequence of result values of a certain function y = f(x,..). Each sample is created by a sliding window of size = number of inputs + number of outputs. Window is shifting 1 value towards the end of the set at a time. Example: network has 3 inputs and 2 outputs, set contains 7 values which totals in 3 available samples. More...
class  Sequential_Diffs_No_Repeat_Interpreter
 Interprets dataset as a continuous sequence of result values of a certain function y = f(x,..). Each sample is created by a sliding window of size = number of inputs + number of outputs. Window is shifting "size" values towards the end of the set at a time. Example: network has 3 inputs and 2 outputs, set contains 10 values which totals in 2 available samples. More...
class  Layers_Processor
 The main processing class of a neural network. Performs calculations for all layers. More...
class  Memory_Stream
 Provides possibility to work with memory buffer through a Simple_Stream interface. Please note that Read and Write operations both increment internal pointer (in the same way as file operations). If the end of buffer is reached operations will not fail - only return less bytes (or zero) than required by Read or Write. More...
class  Mutex
 A synchronization primitive for multithreaded applications. Multiple Get() method calls from one process will not lead to deadlock, in other words the mutex is reentrant. More...
class  Neural_Net
 The core class of MCPN library, neural network itself. More...
class  Semaphore
 A synchronization primitive for multithreaded applications. Multiple Get() method calls from one process will deadlock the calling process, this is the main difference from Mutex. More...
class  Self_Lock
 An artificial thread deadlock at user disposal. Using Seal(int key_count) method caller causes calling thread to deadlock and wait until the deadlock situation is resolved by other process(es) calling Release() method key_count number of times. More...
class  Simple_Stream
 Template based Stream interface that provides only most necessary methods. More...
class  Spin_Lock
 A synchronization primitive for multithreaded applications. Multiple Get() method calls from one process will lead to deadlock, in other words the Spin_Lock is non-reentrant. Thread will not suspend waiting for resource but will "spin". More...
class  Spin_Mutex
 A synchronization primitive for multithreaded applications. Multiple Get() method calls from one process will not lead to deadlock, in other words the Spin_Mutex is reentrant. Thread will not suspend waiting for resource but will "spin". More...
class  Trainer
 Class that makes training a network easier. It uses a special stop strategy object to decide when training is complete. Trainer class creates a network configuration that is optimal according to the used stop training strategy. More...
class  Stop_Training_Strategy
 Sole purpose of this class is to determine when the training should be stopped. This is only a base with a pure virtual method should_stop to be implemented in child classes. Stop strategies are friends of Trainer class. More...
class  Epoch_Based_Stop_Strategy
 Training will stop after N epochs (specified on construction) are passed. More...
class  MSE_Based_Stop_Strategy
 Training will stop when Mean Squared Error will stop decreasing. More...
class  Weights_Initializer
 Implements the following algorithm: "Improving the Learning Speed of 2-Layer Neural Networks by Choosing Initial Values of the Adaptive Weights" by Derrick Nguyen and Bernard Widrow. More...

Functions

double fast_exp (const double arg)
 High performance exponent function implementation according to "A Fast, Compact Approximation of the Exponential Function" by Nicol N. Schraudolph, Technical Report IDSIA-07-98.
bool float_equal (double x, double y, double precision=0.0001)
 Checking floating point values for equity with "==" usually gives incorrect results. This function will take values you want to check and a precision value that shows what maximum difference between those values is allowed for them to still be considered equal.
bool convert_value (double &value, const Range &from, const Range &to)
 Converts value from source range into value from destination range.
bool text_to_int (const char *buf, const size_t len, int *out)
 Converts text buffer (0-terminator not needed) of given size to int.
bool text_to_double (const char *buf, const size_t len, double *out)
 Converts text buffer (0-terminator not needed) of given size to double.
bool is_text (const char *buf, const size_t len)
 Performs a check if all chars in the buffer are printable (result is false if even 1 char is not printable).
int trace (const char *format,...)
 Outputs trace (output destination depends on implementation), supports formatted output printf() style.

Detailed Description

Main namespace of Multi-Core Optimized Perceptron Network library.

MCPN Logo
kr0st © 2010