pkfssvm(1)

πŸ’– NAME πŸ’–

okay so bestie, meet pkfssvm β€” it's literally feature selection for nn classifier. that's the whole vibe, no notes. πŸ’…


✨ SYNOPSIS ✨

pkfssvm -t training -n number [options] [advanced options]

πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the tea, bestie. classification problems that deal with high dimensional input data can be genuinely challenging, and it's all because of the Hughes phenomenon. like, hyperspectral data can have hundreds of spectral bands and needs special attention when you're classifying it. and when you only have limited training data available? classifying that data can be problematic unless you reduce the dimension. it's giving overwhelmed fr. 😭

now, the SVM classifier has been shown to be more robust to this type of problem than others β€” ate that. but ngl, classification accuracy can often still be improved with feature selection methods. and that's where our girl comes in: the utility pkfssvm implements a number of feature selection techniques, and among them is a sequential floating forward search (SFFS). iconic behavior honestly. πŸ‘‘


πŸŽ€ OPTIONS πŸŽ€

  • -t filename, --training filename β€” training vector file. a single vector file contains all training features (must be set as: B0, B1, B2,...) for all classes (class numbers identified by the label option). use multiple training files for bootstrap aggregation (alternative to the bag and bsize options, where a random subset is taken from a single training file). 🫢
  • -n number, --nf number β€” number of features to select (0 to select the optimal number, see also the --ecost option).
  • -i filename, --input filename β€” input test set (leave it empty to perform a cross validation based on training only).
  • -v level, --verbose level β€” set it to: 0 (results only), 1 (confusion matrix), 2 (debug).

πŸ’œ Advanced options πŸ’œ

  • -tln layer, --tln layer β€” training layer name(s).
  • -label attribute, --label attribute β€” identifier for class label in the training vector file. (default: label)
  • -bal size, --balance size β€” balance the input data to this number of samples for each class. (default: 0)
  • -random, --random β€” in case of balance, randomize the input data.
  • -min number, --min number β€” if the number of training pixels is less then min, do not take this class into account.
  • -b band, --band band β€” band index (starting from 0, either use the band option or use start to end).
  • -sband band, --startband band β€” start band sequence number.
  • -eband band, --endband band β€” end band sequence number.
  • -offset value, --offset value β€” offset value for each spectral band input features: refl[band]=(DN[band]-offset[band])/scale[band]
  • -scale value, --scale value β€” 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).
  • -svmt type, --svmtype type β€” type of SVM (C_SVC, nu_SVC, one_class, epsilon_SVR, nu_SVR).
  • -kt type, --kerneltype type β€” type of kernel function (linear, polynomial, radial, sigmoid).
  • -kd value, --kd value β€” degree in kernel function.
  • -g value, --gamma value β€” gamma in kernel function.
  • -c0 value, --coef0 value β€” coef0 in kernel function.
  • -cc value, --ccost value β€” the parameter C of C-SVC, epsilon-SVR, and nu-SVR.
  • -nu value, --nu value β€” the parameter nu of nu-SVC, one-class SVM, and nu-SVR.
  • -eloss value, --eloss value β€” the epsilon in the loss function of epsilon-SVR.
  • -cache number, --cache number β€” cache memory size in MB. (default: 100)
  • -etol value, --etol value β€” the tolerance of the termination criterion. (default: 0.001)
  • -shrink, --shrink β€” whether to use the shrinking heuristics.
  • -sm method, --sm method β€” feature selection method (sffs=sequential floating forward search, sfs=sequential forward search, sbs, sequential backward search, bfs=brute force search).
  • -ecost value, --ecost value β€” epsilon for stopping criterion in the cost function to determine the optimal number of features.
  • -cv value, --cv value β€” n-fold cross validation mode. (default: 0)
  • -c name, --class name β€” list of class names.
  • -r value, --reclass value β€” list of class values (use the same order as in the --class option).

🌈 SEE ALSO 🌈


and that's the whole page, bestie!! this one's from pkfssvm(1) and it's dated 01 January 2025 β€” slay, go select some features, you got this. πŸŽ€βœ¨πŸ¦‹πŸ’–

πŸ“¦ where this page comes from