The first implementation of HSIC-based feature selection assumed continuous variables. Therefore, it used RBF kernels only. We want to extend the feature selection to cases when either features or target are discrete (or both). This requires the implementation of gram matrices with delta kernels.
This PR introduces the enum KernelType = {RBF, DELTA}, and generalises the computation of gram matrices.
The API for the feature selection is also extended, giving the user the ability to specify the type of variables on which the selection should be performed. This extension is based on the enum FeatureType = {CONT, DISCR}.
Context
The first implementation of HSIC-based feature selection assumed continuous variables. Therefore, it used RBF kernels only. We want to extend the feature selection to cases when either features or target are discrete (or both). This requires the implementation of gram matrices with delta kernels.
This PR introduces the enum
KernelType = {RBF, DELTA}
, and generalises the computation of gram matrices. The API for the feature selection is also extended, giving the user the ability to specify the type of variables on which the selection should be performed. This extension is based on the enumFeatureType = {CONT, DISCR}
.Checklist