![]() |
GeNN
2.2.3
GPU enhanced Neuronal Networks (GeNN)
|
This class cpontains the methods for running the Schmuker_2014_classifier example model. More...
#include <Schmuker2014_classifier.h>
Public Types | |
enum | data_type { data_type_int, data_type_uint, data_type_float, data_type_double } |
Public Member Functions | |
Schmuker2014_classifier () | |
~Schmuker2014_classifier () | |
void | allocateHostAndDeviceMemory () |
void | populateDeviceMemory () |
void | update_input_data_on_device () |
void | clearDownDevice () |
void | run (float runtime, string filename_rasterPlot, bool usePlasticity) |
void | getSpikesFromGPU () |
void | getSpikeNumbersFromGPU () |
void | outputSpikes (FILE *, string delim) |
void | initialiseWeights_SPARSE_RN_PN () |
void | initialiseWeights_WTA_PN_PN () |
void | initialiseWeights_DENSE_PN_AN () |
void | initialiseWeights_WTA_AN_AN () |
void | createWTAConnectivity (float *synapse, UINT populationSize, UINT clusterSize, float synapseWeight, float probability) |
bool | randomEventOccurred (float probability) |
void | updateWeights_PN_AN_on_device () |
void | generate_or_load_inputrates_dataset (unsigned int recordingIdx) |
void | generate_inputrates_dataset (unsigned int recordingIdx) |
FILE * | openRecordingFile (UINT recordingIndex) |
void | applyLearningRuleSynapses (float *synapsesPNAN) |
void | initialiseInputData () |
void | load_VR_data () |
void | setCorrectClass (UINT recordingIdx) |
UINT | getClassCluster (UINT anIdx) |
void | loadClassLabels () |
void | addInputRate (float *samplePoint, UINT timeStep) |
uint64_t | convertToRateCode (float inputRateHz) |
float | calculateVrResponse (float *samplePoint, float *vrPoint) |
void | setMaxMinSampleDistances () |
void | findMaxMinSampleDistances (float *samples, UINT startAt, UINT totalSamples) |
float | getSampleDistance (UINT max0_min1) |
float | getManhattanDistance (float *pointA, float *pointB, UINT numElements) |
float | getRand0to1 () |
UINT | calculateOverallWinner () |
UINT | calculateWinner (unsigned int *clusterSpikeCount) |
UINT | calculateCurrentWindowWinner () |
void | updateIndividualSpikeCountPN () |
void | resetIndividualSpikeCountPN () |
void | updateClusterSpikeCountAN () |
void | resetClusterSpikeCountAN () |
void | resetOverallWinner () |
void | updateWeights_PN_AN () |
UINT | getClusterIndex (UINT neuronIndex, UINT clusterSize) |
void | generateSimulatedTimeSeriesData () |
string | getRecordingFilename (UINT recordingIdx) |
bool | loadArrayFromTextFile (string path, void *array, string delim, UINT arrayLen, data_type dataType) |
void | checkContents (string title, void *array, UINT howMany, UINT displayPerLine, data_type dataType, UINT decimalPoints) |
void | checkContents (string title, void *array, UINT howMany, UINT displayPerLine, data_type dataType, UINT decimalPoints, string delim) |
void | printSeparator () |
void | resetDevice () |
void | startLog () |
Static Public Attributes | |
static const unsigned int | timestepsPerRecording = RECORDING_TIME_MS / DT |
This class cpontains the methods for running the Schmuker_2014_classifier example model.
Schmuker2014_classifier::Schmuker2014_classifier | ( | ) |
Schmuker2014_classifier::~Schmuker2014_classifier | ( | ) |
void Schmuker2014_classifier::addInputRate | ( | float * | samplePoint, |
UINT | timeStep | ||
) |
void Schmuker2014_classifier::allocateHostAndDeviceMemory | ( | ) |
void Schmuker2014_classifier::applyLearningRuleSynapses | ( | float * | synapsesPNAN | ) |
UINT Schmuker2014_classifier::calculateCurrentWindowWinner | ( | ) |
UINT Schmuker2014_classifier::calculateOverallWinner | ( | ) |
float Schmuker2014_classifier::calculateVrResponse | ( | float * | samplePoint, |
float * | vrPoint | ||
) |
UINT Schmuker2014_classifier::calculateWinner | ( | unsigned int * | clusterSpikeCount | ) |
void Schmuker2014_classifier::checkContents | ( | string | title, |
void * | array, | ||
UINT | howMany, | ||
UINT | displayPerLine, | ||
data_type | dataType, | ||
UINT | decimalPoints | ||
) |
void Schmuker2014_classifier::checkContents | ( | string | title, |
void * | array, | ||
UINT | howMany, | ||
UINT | displayPerLine, | ||
data_type | dataType, | ||
UINT | decimalPoints, | ||
string | delim | ||
) |
void Schmuker2014_classifier::clearDownDevice | ( | ) |
uint64_t Schmuker2014_classifier::convertToRateCode | ( | float | inputRateHz | ) |
void Schmuker2014_classifier::createWTAConnectivity | ( | float * | synapse, |
UINT | populationSize, | ||
UINT | clusterSize, | ||
float | synapseWeight, | ||
float | probability | ||
) |
void Schmuker2014_classifier::findMaxMinSampleDistances | ( | float * | samples, |
UINT | startAt, | ||
UINT | totalSamples | ||
) |
void Schmuker2014_classifier::generate_inputrates_dataset | ( | unsigned int | recordingIdx | ) |
void Schmuker2014_classifier::generate_or_load_inputrates_dataset | ( | unsigned int | recordingIdx | ) |
void Schmuker2014_classifier::generateSimulatedTimeSeriesData | ( | ) |
float Schmuker2014_classifier::getManhattanDistance | ( | float * | pointA, |
float * | pointB, | ||
UINT | numElements | ||
) |
float Schmuker2014_classifier::getRand0to1 | ( | ) |
string Schmuker2014_classifier::getRecordingFilename | ( | UINT | recordingIdx | ) |
float Schmuker2014_classifier::getSampleDistance | ( | UINT | max0_min1 | ) |
void Schmuker2014_classifier::getSpikeNumbersFromGPU | ( | ) |
void Schmuker2014_classifier::getSpikesFromGPU | ( | ) |
void Schmuker2014_classifier::initialiseInputData | ( | ) |
void Schmuker2014_classifier::initialiseWeights_DENSE_PN_AN | ( | ) |
void Schmuker2014_classifier::initialiseWeights_SPARSE_RN_PN | ( | ) |
void Schmuker2014_classifier::initialiseWeights_WTA_AN_AN | ( | ) |
void Schmuker2014_classifier::initialiseWeights_WTA_PN_PN | ( | ) |
void Schmuker2014_classifier::load_VR_data | ( | ) |
bool Schmuker2014_classifier::loadArrayFromTextFile | ( | string | path, |
void * | array, | ||
string | delim, | ||
UINT | arrayLen, | ||
data_type | dataType | ||
) |
void Schmuker2014_classifier::loadClassLabels | ( | ) |
FILE * Schmuker2014_classifier::openRecordingFile | ( | UINT | recordingIndex | ) |
void Schmuker2014_classifier::outputSpikes | ( | FILE * | f, |
string | delim | ||
) |
void Schmuker2014_classifier::populateDeviceMemory | ( | ) |
void Schmuker2014_classifier::printSeparator | ( | ) |
bool Schmuker2014_classifier::randomEventOccurred | ( | float | probability | ) |
void Schmuker2014_classifier::resetClusterSpikeCountAN | ( | ) |
void Schmuker2014_classifier::resetDevice | ( | ) |
void Schmuker2014_classifier::resetIndividualSpikeCountPN | ( | ) |
void Schmuker2014_classifier::resetOverallWinner | ( | ) |
void Schmuker2014_classifier::run | ( | float | runtime, |
string | filename_rasterPlot, | ||
bool | usePlasticity | ||
) |
void Schmuker2014_classifier::setCorrectClass | ( | UINT | recordingIdx | ) |
void Schmuker2014_classifier::setMaxMinSampleDistances | ( | ) |
void Schmuker2014_classifier::startLog | ( | ) |
void Schmuker2014_classifier::update_input_data_on_device | ( | ) |
void Schmuker2014_classifier::updateClusterSpikeCountAN | ( | ) |
void Schmuker2014_classifier::updateIndividualSpikeCountPN | ( | ) |
void Schmuker2014_classifier::updateWeights_PN_AN | ( | ) |
void Schmuker2014_classifier::updateWeights_PN_AN_on_device | ( | ) |
string Schmuker2014_classifier::cacheDir |
unsigned int* Schmuker2014_classifier::classLabel |
bool Schmuker2014_classifier::clearedDownDevice |
unsigned int* Schmuker2014_classifier::clusterSpikeCountAN |
UINT Schmuker2014_classifier::correctClass |
unsigned int Schmuker2014_classifier::countAN |
unsigned int Schmuker2014_classifier::countPN |
unsigned int Schmuker2014_classifier::countPNAN |
unsigned int Schmuker2014_classifier::countRN |
uint64_t* Schmuker2014_classifier::d_inputRates |
double Schmuker2014_classifier::d_maxRandomNumber |
string Schmuker2014_classifier::datasetName |
unsigned int* Schmuker2014_classifier::individualSpikeCountPN |
uint64_t* Schmuker2014_classifier::inputRates |
unsigned int Schmuker2014_classifier::inputRatesSize |
FILE* Schmuker2014_classifier::log |
NNmodel Schmuker2014_classifier::model |
string Schmuker2014_classifier::outputDir |
unsigned int* Schmuker2014_classifier::overallWinnerSpikeCountAN |
float Schmuker2014_classifier::param_CONNECTIVITY_AN_AN |
float Schmuker2014_classifier::param_CONNECTIVITY_PN_AN |
float Schmuker2014_classifier::param_CONNECTIVITY_PN_PN |
float Schmuker2014_classifier::param_CONNECTIVITY_RN_PN |
float Schmuker2014_classifier::param_GLOBAL_WEIGHT_SCALING |
UINT Schmuker2014_classifier::param_MAX_FIRING_RATE_HZ |
float Schmuker2014_classifier::param_MAX_WEIGHT_PN_AN |
UINT Schmuker2014_classifier::param_MIN_FIRING_RATE_HZ |
float Schmuker2014_classifier::param_MIN_WEIGHT_PN_AN |
float Schmuker2014_classifier::param_PLASTICITY_INTERVAL_MS |
UINT Schmuker2014_classifier::param_SPIKING_ACTIVITY_THRESHOLD_HZ |
float Schmuker2014_classifier::param_WEIGHT_DELTA_PN_AN |
float Schmuker2014_classifier::param_WEIGHT_RN_PN |
float Schmuker2014_classifier::param_WEIGHT_WTA_AN_AN |
float Schmuker2014_classifier::param_WEIGHT_WTA_PN_PN |
float* Schmuker2014_classifier::plasticWeights |
string Schmuker2014_classifier::recordingsDir |
float* Schmuker2014_classifier::sampleDistance |
|
static |
string Schmuker2014_classifier::uniqueRunId |
float* Schmuker2014_classifier::vrData |
int Schmuker2014_classifier::winningClass |