skfeature.function.similarity_based.fisher_score

 
Modules
       
scipy.sparse.base
scipy.sparse.bsr
scipy.sparse.compressed
scipy.sparse.construct
scipy.sparse.coo
scipy.sparse.csc
scipy.sparse.csgraph
scipy.sparse.csr
scipy.sparse.data
scipy.sparse.dia
scipy.sparse.dok
scipy.sparse.extract
scipy.sparse.lil
numpy
scipy.sparse.sputils

 
Functions
       
feature_ranking(score)
Rank features in descending order according to fisher score, the larger the fisher score, the more important the
feature is
fisher_score(X, y)
This function implements the fisher score feature selection, steps are as follows:
1. Construct the affinity matrix W in fisher score way
2. For the r-th feature, we define fr = X(:,r), D = diag(W*ones), ones = [1,...,1]', L = D - W
3. Let fr_hat = fr - (fr'*D*ones)*ones/(ones'*D*ones)
4. Fisher score for the r-th feature is score = (fr_hat'*D*fr_hat)/(fr_hat'*L*fr_hat)-1
 
Input
-----
X: {numpy array}, shape (n_samples, n_features)
    input data
y: {numpy array}, shape (n_samples,)
    input class labels
 
Output
------
score: {numpy array}, shape (n_features,)
    fisher score for each feature
 
Reference
---------
He, Xiaofei et al. "Laplacian Score for Feature Selection." NIPS 2005.
Duda, Richard et al. "Pattern classification." John Wiley & Sons, 2012.