<div dir="ltr">You cannot use sensitivity banalysis with KNN because kNN is not using or producing any feature weights. <br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 31, 2016 at 5:39 PM, marco tettamanti <span dir="ltr"><<a href="mailto:mrctttmnt@gmail.com" target="_blank">mrctttmnt@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dear all,<br>
since kNN performs best on a particular dataset, I am trying to obtain a sensitivity map based on the code that I have used for other classifiers. However, I receive an error message, and I am not able to proceed further.<br>
I have been struggling with the documentation, but I still cannot find any solutions for this problem.<br>
Can somebody please help?<br>
Thank you and best wishes,<br>
Marco<br>
<br>
<br>
<br>
This is the relevant snippet:<br>
<br>
{fds == fmri dataset}<br>
clf = kNN(k=2, dfx=one_minus_correlation, voting='majority')<br>
partitioner = HalfPartitioner()<br>
fraction=1<br>
fselaov = SensitivityBasedFeatureSelection(OneWayAnova(), FractionTailSelector(fraction, mode='select', tail='upper'))<br>
fclf = FeatureSelectionClassifier(clf, fselaov)<br>
fselcvte = CrossValidation(fclf, partitioner, errorfx=lambda p, t: np.mean(p == t), postproc=mean_sample(), enable_ca=['confusion', 'stats'])<br>
res_fsel = fselcvte(fds)<br>
sensana = fclf.get_sensitivity_analyzer(postproc=maxofabs_sample())<br>
<br>
<br>
<br>
<br>
This is the error message:<br>
<br>
---------------------------------------------------------------------------<br>
NotImplementedError                        Traceback (most recent call last)<br>
<ipython-input-32-2e8317c1b278>  in<module>() ----> 1sensana = fclf.get_sensitivity_analyzer(postproc=maxofabs_sample())<br>
2  #sensana = fclf.get_sensitivity_analyzer(postproc=absolute_features())<br>
3  #sensana = fclf.get_sensitivity_analyzer(postproc=mean_sample())<br>
4  cv_sensana=  RepeatedMeasure(sensana,  ChainNode((partitioner,  Splitter('partitions',  attr_values=(1,)))))<br>
5  sens=  cv_sensana(fds)<br>
<br>
/usr/lib/python2.7/dist-packages/mvpa2/misc/args.pyc  indo_group_kwargs(self, *args_, **kwargs_) 73 if passthrough:    kwargs__[k]  =  skwargs<br>
74                  if  assign:  setattr(self,  '_%s'  %  k,  skwargs)<br>
---> 75return method(self,  *args_,  **kwargs__)<br>
76          do_group_kwargs.func_name=  method.func_name<br>
77          return  do_group_kwargs<br>
<br>
/usr/lib/python2.7/dist-packages/mvpa2/clfs/meta.pyc  inget_sensitivity_analyzer(self, slave_kwargs, **kwargs) 329 return self.__sa_class__( 330 self,<br>
--> 331analyzer=self.__clf.get_sensitivity_analyzer(**slave_kwargs),<br>
332                  **kwargs)<br>
333  <br>
/usr/lib/python2.7/dist-packages/mvpa2/clfs/base.pyc  inget_sensitivity_analyzer(self, **kwargs) 492 """Factory method to return an appropriate sensitivity analyzer for 493 the respective classifier.""" --> 494raise NotImplementedError<br>
495  496  <br>
NotImplementedError:<br>
<br>
<br>
<br>
<br>
This are the code and OS versions:<br>
<br>
Current date:   2016-05-31 17:22<br>
PyMVPA:<br>
 Version:       2.5.0<br>
 Hash:          6a9d4060ad863f99170801854c272b61af51f015<br>
 Path:          /usr/lib/python2.7/dist-packages/mvpa2/__init__.pyc<br>
 Version control (GIT):<br>
 GIT information could not be obtained due "/usr/lib/python2.7/dist-packages/mvpa2/.. is not under GIT"<br>
SYSTEM:<br>
 OS:            posix Linux 4.3.0-1-amd64 #1 SMP Debian 4.3.3-7 (2016-01-19)<br>
 Distribution:  debian/stretch/sid<br>
EXTERNALS:<br>
 Present:       atlas_fsl, cPickle, ctypes, good scipy.stats.rv_continuous._reduce_func(floc,fscale), good scipy.stats.rv_discrete.ppf, griddata, gzip, h5py, hdf5, ipython, joblib, liblapack.so, libsvm, libsvm verbosity control, lxml, matplotlib, mdp, mdp ge 2.4, mock, nibabel, nipy, nose, numpy, numpy_correct_unique, pprocess, pylab, pylab plottable, pywt, pywt wp reconstruct, reportlab, running ipython env, scipy, scipy.weave, sg ge 0.6.4, sg ge 0.6.5, sg_fixedcachesize, shogun, shogun.mpd, shogun.svmocas, skl, statsmodels<br>
 Absent:        atlas_pymvpa, cran-energy, datalad, elasticnet, glmnet, good scipy.stats.rdist, hcluster, lars, mass, nipy.neurospin, numpydoc, openopt, pywt wp reconstruct fixed, rpy2, shogun.krr, shogun.lightsvm, shogun.svrlight, weave<br>
 Versions of critical externals:<br>
  ctypes      : 1.1.0<br>
  h5py        : 2.5.0<br>
  hdf5        : 1.8.13<br>
  ipython     : 2.3.0<br>
  joblib      : 0.9.4<br>
  lxml        : 3.4.4<br>
  matplotlib  : 1.4.2<br>
  mdp         : 3.5<br>
  mock        : 1.3.0<br>
  nibabel     : 2.0.2<br>
  nipy        : 0.4.0.dev<br>
  numpy       : 1.8.2<br>
  pprocess    : 0.5<br>
  reportlab   : 3.2.0<br>
  scipy       : 0.14.1<br>
  shogun      : 3.2.0<br>
  shogun:full : 3.2.0_2014-2-17_18:46<br>
  shogun:rev  : 197120<br>
  skl         : 0.17.1<br>
 Matplotlib backend: module://IPython.kernel.zmq.pylab.backend_inline<br>
<br>
<br>
-- <br>
Marco Tettamanti, Ph.D.<br>
Nuclear Medicine Department & Division of Neuroscience<br>
San Raffaele Scientific Institute<br>
Via Olgettina 58<br>
I-20132 Milano, Italy<br>
Phone <a href="tel:%2B%2B39-02-26434888" value="+390226434888" target="_blank">++39-02-26434888</a><br>
Fax <a href="tel:%2B%2B39-02-26434892" value="+390226434892" target="_blank">++39-02-26434892</a><br>
Email: <a href="mailto:tettamanti.marco@hsr.it" target="_blank">tettamanti.marco@hsr.it</a><br>
Skype: mtettamanti<br>
<br>
<br>
_______________________________________________<br>
Pkg-ExpPsy-PyMVPA mailing list<br>
<a href="mailto:Pkg-ExpPsy-PyMVPA@lists.alioth.debian.org" target="_blank">Pkg-ExpPsy-PyMVPA@lists.alioth.debian.org</a><br>
<a href="http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa" rel="noreferrer" target="_blank">http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-exppsy-pymvpa</a><br>
</blockquote></div><br></div>