<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>