
Funkcje wewnetrzne indeksu i funkcje transferu sieci:
	f_sigm.m         sigmoidalna
	f_bicentral.m    bicentralna
	f_x4.m           1/(1+x^4)
	f_bisigm.m       sigm(x-a) - sigm(x-b)
   f_triangular.m   trojkatna

Indeks QPC:
	qpctrain.m          skladanie kierunkow QPC (uczenie kierunkow za pomoca: qpc_1d() 
   qpc_1d.m            optymalizacja QPC jeden kierunek, spadek gradientu, multistart
	qpc_config          parser opcji dla qpctrain i qpc_1d
	qpcfunction.m       wartosc indeksu, funkcja dziala na calych danych (zlozonosc O(n^2)) lub dane + pototypy  (zlozonosc O(nk)) (poprzednio ppifunction.m)
   qpcfunction_dt.m    wartosc indeksu z prototypami, funkcja zwraca takze gradnient po pozycji prototypow
   ppigmaxfunction2.m  wartosc indeksu dla pojedynczego wektora (ppi=\sum_i{clusterfunction(i)} )
	ppi2wfunction2.m    funckja dla dwoch kierunkow (ppi2w([w1 w2]) = ppi(w1) + ppi(w2))  + czlon ortogonalizacyjny
   ppi2woptimize.m     optymalizacja kierunkow funkcji ppi2wfunction()
   ortof.m             kara za brak ortonormalnosci orto(w1,w2) = \lambda * |w1*w2'|^2

Siec QPC NN
   qpcnet.m				  tworzenie sieci NN z okienkwymi f. transferu w oparciu o indeks QPC (poprzednio ppinetwork.m)
   ppinetwork.m        
	ppi2woptimize.m     optymalizacja dwuch kierunkow
   clusteroptimize.m  optymalizacja pojedynczego klastra
	clusterfunction.m   ??? wartosc indeksu (?) z pojedynczym klastrem   


Siec QPC LVQ (PCA)
   llvqtrain2.m   - uczenie LVQ polaczone z przyciaganiem do prostej (wymaga llvqtrain.m)
   llvqtrain.m    - bazowy plik do uczenia LVQ z linearyzacja

   linearization_qpc.m - dopasowanie do prostej za pomoca QPC (na calych danych lub na prototypach)
   linearization_pca.m - dopasowanie prostej do puntow za pomoca pierwszej skladowej PCA
   linerror.m   - suma odleglosci punktow od dopasowanej prostej (blad dopasowania)

   llvqnetwork.m    - buduje siec uczona za pomoca llvqoptimize4
   llvqoptimize4.m  - uczenie LVQ + QPC (PCA)
   llvqnettest.m    - test sieci llvqnetwork


   removeprototypes.m   - usuwanie prototypw ktore nie maja wplywu na klasyfikacje (CNN na prototypach + mechanizy douczania)
   lvqcreatenewprototype.m
   
	lvqnetwork.m     - siec LVQ
   lvqnettest.m     - f. obliczajaca poprawnosc klasyfikacji sieci LVQ
   
	lintest.m       - plik testowy, do usuniecia
   llvqpctrain.m   -  GLVQ + QPC (prawdopodobnie niepotrzebny plik)

   llvqoptimize2.m  - stare wersje llvqoptimize
   llvqoptimize3.m
   llvqoptimize.m

Wykresy:
	bgraph.m - gestosc roskladu na jednym wymiarze wzgledem klas 
	scaterplot.m - scatterplot, dwu lub wiecej wymiarowy
  
   (do usuniecia) bgraph3, bgraph4, bgrapg5 - stare wersje bgraph.m, tylko na potrzeby zgodnosci

Testy:
   runtest2.m          optymalizacja indeksu z roznymi parametrami dla wielu danych
   runtest3.m          optymalizacja 2 kieronkow (ppi2woptimice)
   runmultitest.m		  = runtest2 + runtest3
   multitest.m         test CV sieci 

Siec MLP:
   nettest.m           test sieci, wyznacza dokladnosc (accuracy) nauczonej sieci
   mlpnet.m            skrypt ulatwiajacy tworzenie sieci MLP (korzysta z NN Tolbox) 
   mlptest.m           
   mlptest_reg.m
   mlptrain.m
   mlptrain_reg.m

   qpcmlptrain.m      transformacja QPC + uczenie MLP trening     
   qpcmlptest.m       transformacja QPC + uczenie MLP test


LVQ 
   lvqtrain.m          algorytm LVQ  (!!! llvqtrain z opcja 'linear'='no' robi to samo, ktory jest lepszy??)
   lvq1                szukanie zwycieskiego prototypu
   lvqerror.m          blad klasyfikacji LVQ (czyli 1NN)
   glvqtrain.m         Growing LVQ (rozrastajacy sie LVQ)

Inne przydatne narzedzia:
	timetest.m          skrypt do porownywania wydajnosci funkcji
	gen_cirlcles.m      skrypt sluzacy do generowania sztucznych zbiorow danych
	savedata.m          zapisywanie tablic matlabowych w (czytelnej) postaci tekstowej 
   classstat.m         podstawowe statystyki cechy z kategoriami (np. etykiety klas)
   dEuclid.m           odleglosc euklidesowa
   wilcoxon.m          test stat. Wilcoxona
   knn_reg.m           regresja 1NN
   mseerr.m            blad MSE
   datap.m             separacja na dane i etykiety
   corr_feat_sel.m     ranking/selekcja cech za pomoca CC

Transformacje danych:
   normalize.m         normalizacja danych
   standardize.m

Inne nieuzywane skrypty:
	plotKsep.m
	runtest4.m
	runtest.m

Info
   ChangeLog
   FILES               ten plik
   TODO

Skrypty powloki:
   dist.sh
   findbest.sh
   segregate.sh


Testy:

   multitest.m   CV XTest (ogolny skrypt)

   runcvtest_LLVQ.m    % testy Linear LVQ, tzn. QPCLVQ  lub PCALVQ
   runcvtest_LVQ.m    % testy LVQ1 ze zmienna iloscia wezow 
   runcvtest_MLP.m
   runcvtest5.m
   runcvtest_QPC_MLP.m    % test CV QPC + MLP (qpcmlptrain)  ze zmienna iloscia neuronow

   runcvtesticann09comp.m
   runcvtesticann09compMLP.m

   runtest2.m  (qpctrain)
   runtest3.m  ppi2woptimize (dwa kierunki QPC na raz)
   runtest4.m  badanie wplywu szerokosci funkcji G() na wyniki QPC
   runtest5.m  qpctrain (poprawiony runtest2)
   runtest7.m  llvqoptimize2 (stara wersja llvqnwtwork?)
   runtest8.m  llvqnetwork, llvqoptimize4 (poprawiony runtest6 i runtest7)

Do poprawienia:
	ppinetwork.m
	ujednolicic z qpcnet.m

Do sprawdzenia:

f_bicentral2.m
icann09compMLP.m
profile1.m

