Skip to content

Application of Henry Gas Solubility Optimization (HGSO) in the feature selection tasks.

License

Notifications You must be signed in to change notification settings

JingweiToo/Henry-Gas-Solubility-Optimization-for-Feature-Selection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Henry Gas Solubility Optimization for Feature Selection

View Henry Gas Solubility Optimization for Feature Selection on File Exchange License GitHub release

Wheel

Introduction

  • This toolbox offers a Henry Gas Solubility Optimization ( HGSO ) method
  • The Main file illustrates the example of how HGSO can solve the feature selection problem using benchmark data-set.

Input

  • feat : feature vector ( Instances x Features )
  • label : label vector ( Instances x 1 )
  • N : number of gas
  • max_Iter : maximum number of iterations
  • num_clus : Number of gas types
  • K : Constant
  • alpha : Influence of other gas
  • beta : Constant
  • L1 : Initial parameter
  • L2 : Initial parameter
  • L3 : Initial parameter

Output

  • sFeat : selected features
  • Sf : selected feature index
  • Nf : number of selected features
  • curve : convergence curve

Example

% Benchmark data set 
load ionosphere.mat; 

% Set 20% data as validation set
ho = 0.2; 
% Hold-out method
HO = cvpartition(label,'HoldOut',ho);

% Parameter setting
N        = 10; 
max_Iter = 100; 
num_clus = 2;      % number of gas types / cluster
K        = 1;      % constant
alpha    = 1;      % influence of other gas
beta     = 1;      % constant 
L1       = 5E-3; 
L2       = 100; 
L3       = 1E-2;

% Henry Gas Solubility Optimization
[sFeat,Sf,Nf,curve] = jHGSO(feat,label,N,max_Iter,num_clus,K,alpha,beta,L1,L2,L3,HO);

% Plot convergence curve
plot(1:max_Iter,curve);
xlabel('Number of iterations');
ylabel('Fitness Value'); 
title('HGSO'); grid on;

Requirement

  • MATLAB 2014 or above
  • Statistics and Machine Learning Toolbox