Package com.googlecode.fannj
Class Fann
java.lang.Object
com.googlecode.fannj.Fann
- Direct Known Subclasses:
FannShortcut,FannSparse
A standard fully connected back-propagation neural network.
Not thread safe.
A Java binding to the Fast Artificial Neural Network (FANN) native library.This class invokes native code. You must call close() to prevent memory leakage.
- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidvoidclose()Frees allocated memory.protected static com.sun.jna.Pointerfann_create_from_file(String configuration_file) protected static com.sun.jna.Pointerfann_create_shortcut_array(int numLayers, int[] layers) protected static com.sun.jna.Pointerfann_create_sparse_array(float connection_rate, int numLayers, int[] layers) protected static com.sun.jna.Pointerfann_create_standard_array(int numLayers, int[] layers) protected static voidfann_destroy(com.sun.jna.Pointer ann) protected static floatfann_get_MSE(com.sun.jna.Pointer ann) protected static com.sun.jna.Pointerfann_get_neuron(com.sun.jna.Pointer ann, int layer, int neuron) protected static intfann_get_num_input(com.sun.jna.Pointer ann) protected static intfann_get_num_output(com.sun.jna.Pointer ann) protected static intfann_get_total_neurons(com.sun.jna.Pointer ann) protected static com.sun.jna.Pointerfann_run(com.sun.jna.Pointer ann, float[] input) protected static intprotected static voidfann_set_activation_function(com.sun.jna.Pointer ann, int activation_function, int layer, int neuron) protected static voidfann_set_activation_steepness(com.sun.jna.Pointer ann, float steepness, int layer, int neuron) voidfinalize()Callclose()on garbage collection to catch memory leaks.intintintfloat[]run(float[] input) Run the ANN on a set of inputs.booleanSave this FANN to a file.
-
Field Details
-
ann
protected com.sun.jna.Pointer ann
-
-
Constructor Details
-
Fann
protected Fann() -
Fann
Load an existing FANN definition from a file- Parameters:
file-
-
Fann
Create a new ANN with the provided layers.- Parameters:
layers-
-
-
Method Details
-
addLayers
-
getNumInputNeurons
public int getNumInputNeurons() -
getNumOutputNeurons
public int getNumOutputNeurons() -
getTotalNumNeurons
public int getTotalNumNeurons() -
save
Save this FANN to a file.- Parameters:
file-- Returns:
- true on success
-
run
public float[] run(float[] input) Run the ANN on a set of inputs.- Parameters:
input- length == numInputNeurons- Returns:
- the output of the ANN. (length = numOutputNeurons)
-
close
public void close()Frees allocated memory.
You must call this method when you are finished to prevent memory leaks. -
finalize
Callclose()on garbage collection to catch memory leaks. -
fann_create_standard_array
protected static com.sun.jna.Pointer fann_create_standard_array(int numLayers, int[] layers) -
fann_create_sparse_array
protected static com.sun.jna.Pointer fann_create_sparse_array(float connection_rate, int numLayers, int[] layers) -
fann_create_shortcut_array
protected static com.sun.jna.Pointer fann_create_shortcut_array(int numLayers, int[] layers) -
fann_get_MSE
protected static float fann_get_MSE(com.sun.jna.Pointer ann) -
fann_run
protected static com.sun.jna.Pointer fann_run(com.sun.jna.Pointer ann, float[] input) -
fann_destroy
protected static void fann_destroy(com.sun.jna.Pointer ann) -
fann_get_num_input
protected static int fann_get_num_input(com.sun.jna.Pointer ann) -
fann_get_num_output
protected static int fann_get_num_output(com.sun.jna.Pointer ann) -
fann_get_total_neurons
protected static int fann_get_total_neurons(com.sun.jna.Pointer ann) -
fann_set_activation_function
protected static void fann_set_activation_function(com.sun.jna.Pointer ann, int activation_function, int layer, int neuron) -
fann_set_activation_steepness
protected static void fann_set_activation_steepness(com.sun.jna.Pointer ann, float steepness, int layer, int neuron) -
fann_get_neuron
protected static com.sun.jna.Pointer fann_get_neuron(com.sun.jna.Pointer ann, int layer, int neuron) -
fann_create_from_file
-
fann_save
-