Home | Trees | Indices | Help |
|
---|
|
1 # emacs: -*- mode: python; py-indent-offset: 4; indent-tabs-mode: nil -*- 2 # vi: set ft=python sts=4 ts=4 sw=4 et: 3 ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ## 4 # 5 # See COPYING file distributed along with the PyMVPA package for the 6 # copyright and license terms. 7 # 8 ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ## 9 """Unit tests for PyMVPA ICA mapper""" 10 11 12 import unittest 13 from mvpa.support.copy import deepcopy 14 import numpy as N 15 from mvpa.mappers.ica import ICAMapper 16 17 from mvpa.datasets import Dataset 182051 52 53 # def testAutoOptimzeICA(self): 54 # # train 55 # self.pm.train(self.largefeat) 56 # 57 # self.failUnlessEqual(self.pm.proj.shape, (50, 40)) 58 # 59 # # now project data into ICA space 60 ## p = self.pm.forward(self.largefeat.samples) 61 # 62 # self.failUnless(p.shape[1] == 40) 63 # print self.pm.proj 64 # print self.pm.recon 65 # print p 66 67 # P.scatter(p[:20,0], p[:20,1],color='green') 68 # P.scatter(p[20:,0], p[20:,1], color='red') 69 # P.show() 70 # self.failUnless(N.abs(self.pm.reverse(p) - self.largefeat.samples).mean() \ 71 # < 0.0001) 7222 # data: 40 sample feature line in 2d space (40x2; samples x features) 23 samples = N.vstack([N.arange(40.) for i in range(2)]).T 24 samples -= samples.mean() 25 samples += N.random.normal(size=samples.shape, scale=0.1) 26 self.ndlin = Dataset(samples=samples, labels=1, chunks=1) 27 28 # data: 40 sample feature line in 50d space (40x50; samples x features) 29 samples = N.vstack([N.arange(40.) for i in range(50)]).T 30 samples -= samples.mean() 31 samples += N.random.normal(size=samples.shape, scale=0.1) 32 self.largefeat = Dataset(samples=samples, labels=1, chunks=1) 33 34 self.pm = ICAMapper()35 3638 # train 39 self.pm.train(self.ndlin) 40 41 self.failUnlessEqual(self.pm.proj.shape, (2, 2)) 42 43 # now project data into ICA space 44 p = self.pm.forward(self.ndlin.samples) 45 46 self.failUnlessEqual(p.shape, (40, 2)) 47 48 # check that the mapped data can be fully recovered by 'reverse()' 49 self.failUnless(N.abs(self.pm.reverse(p) - self.ndlin.samples).mean() \ 50 < 0.0001)74 return unittest.makeSuite(ICAMapperTests)75 76 77 if __name__ == '__main__': 78 import runner 79
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Mon Apr 23 23:09:42 2012 | http://epydoc.sourceforge.net |