GPUMLib  0.2.2
GPU Machine Learning Library
Functions
Radial Basis Functions Network kernels

Functions

void KernelAdjustWidths (cudafloat *Distance, int distance_height, int distance_width, int rneighbours, float *widths)
 
void KernelCalculateDistance (cudafloat *d_C, cudafloat *d_A, cudafloat *d_B, int uiWA, int uiWB, int uiWC, int uiHC)
 
void KernelActivationMatrix (cudafloat *d_C, cudafloat *d_A, cudafloat *d_B, int uiWA, int uiWB, int uiWC, int uiHC, float scalingfactor, float *c_width)
 
void KernelSigmaInverse (float *Output, int output_width, int output_height, cudafloat *S)
 

Detailed Description

Function Documentation

void KernelActivationMatrix ( cudafloat d_C,
cudafloat d_A,
cudafloat d_B,
int  uiWA,
int  uiWB,
int  uiWC,
int  uiHC,
float  scalingfactor,
float *  c_width 
)

Kernel to calculates the activation of the hidden layer, every row in matrix A (inputs) in relation to all rows in matrix B (hidden layer neurons).

Parameters
[out]d_CFinal matrix with the activation values.
[in]d_AMatrix A with the training inputs.
[in]d_BMatrix B with the center values of the hidden layer neurons.
[in]uiWAWidth of matrix A.
[in]uiWBWidth of matrix B.
[in]uiWCWidth of matrix C.
[in]uiHCHeight of matrix C.
[in]scalingfactorScaling factor applied to the widths.
[in]c_widthWidths of the gaussian function applied by the hidden layer neurons.

Definition at line 314 of file RBFKernels.cu.

void KernelAdjustWidths ( cudafloat Distance,
int  distance_height,
int  distance_width,
int  rneighbours,
float *  widths 
)

Kernel that estimates the widths for each neuron in the hidden layer.

Parameters
[in]DistanceMatrix with the distance between all centers.
[in]distance_heightHeight of the distance matrix.
[in]distance_widthWidth of the distance matrix.
[in]rneighboursNumber of neighbours to use in width estimation.
[out]widthsArray with the widths calculated for each neuron.

Definition at line 59 of file RBFKernels.cu.

void KernelCalculateDistance ( cudafloat d_C,
cudafloat d_A,
cudafloat d_B,
int  uiWA,
int  uiWB,
int  uiWC,
int  uiHC 
)

Kernel that calculates the distance between all rows of matrix A in relation to all rows of matrix B, the result is stored in matrix C. Index (i,j) in matrix C is equivalent to the distance between row i in matrix A and row j in matrix B.

Parameters
[out]d_CFinal matrix with the calculated distances.
[in]d_AMatrix A.
[in]d_BMatrix B.
[in]uiWAWidth of matrix A.
[in]uiWBWidth of matrix B.
[in]uiWCWidth of matrix C.
[in]uiHCHeight of matrix C.

Definition at line 203 of file RBFKernels.cu.

void KernelSigmaInverse ( float *  Output,
int  output_width,
int  output_height,
cudafloat S 
)

Kernel that calculates the inverse of the values in array S and stores the result as diagonal matrix in Output.

Parameters
[out]OutputDiagonal matrix with the inverse of the values in S.
[in]output_heightHeight of the output matrix.
[in]output_widthWidth of the output matrix.
[in]SArray with the singular values of the matrix decomposition, obtained via SVD.

Definition at line 217 of file RANKernels.cu.