DOKK / manpages / debian 12 / pktools / pkregann.1.en
pkregann(1) pkregann(1)

pkregann - regression with artificial neural network (multi-layer perceptron)


pkregann
-i input -t training [-ic col] [-oc col] -o output [options] [advanced options]

pkregann performs a regression based on an artificial neural network. The regression is trained from the input (-ic) and output (-oc) columns in a training text file. Each row in the training file represents one sampling unit. Multi-dimensional input features can be defined with multiple input options (e.g., -ic 0 -ic 1 -ic 2 for three dimensional features).

input ASCII file
training ASCII file (each row represents one sampling unit. Input features should be provided as columns, followed by output)
output ASCII file for result
input columns (e.g., for three dimensional input data in first three columns use: -ic 0 -ic 1 -ic 2
output columns (e.g., for two dimensional output in columns 3 and 4 (starting from 0) use: -oc 3 -oc 4
start from this row in training file (start from 0)
read until this row in training file (start from 0 or set leave 0 as default to read until end of file)
n-fold cross validation mode
number of neurons in hidden layers in neural network (multiple hidden layers are set by defining multiple number of neurons: -n 15 -n 1, default is one hidden layer with 5 neurons)
set to: 0 (results only), 1 (confusion matrix), 2 (debug)

Advanced options

offset value for each spectral band input features: refl[band]=(DN[band]-offset[band])/scale[band]
scale value for each spectral band input features: refl=(DN[band]-offset[band])/scale[band] (use 0 if scale min and max in each band to -1.0 and 1.0)
connection rate (default: 1.0 for a fully connected network)
learning rate (default: 0.7)
number of maximum iterations (epoch) (default: 500)
01 December 2022