no.uio.labmed.linalg
Class AbstractMatrise.Faktorer

java.lang.Object
  |
  +--no.uio.labmed.linalg.AbstractMatrise.Faktorer
Enclosing class:
AbstractMatrise

public class AbstractMatrise.Faktorer
extends java.lang.Object

Faktoriseringsobjekt for aa dekomponere matrisen. Brukes til aa dekomponere matrisen som et produkt av faktorer der det er ett sett med faktorer per dimensjon (summerer til 1 per dimensjon) pluss en total (fn):

m[i0,i1,...i(n-1)]=f0[i0]*...*f(n-1)[i(n-i)]*fn*vekt[i0,...,i(n-1)]

Beregningsmetoden er iterativ og brukeren har mulighet til aa bestemme hvor mange iterasjoner som skal kjores ad gangen og til aa endre parametere og fortsette iterasjonen uten aa miste mellomregningen.


Field Summary
 double[][] faktorer
          Faktorene: en array per dimensjon samt en total
 
Constructor Summary
AbstractMatrise.Faktorer(AbstractMatrise vekt, AbstractMatrise[] overganger)
          Konstruktor som lager et faktoriseringsobjekt med gitte vekter.
 
Method Summary
 double[][] faktoriser()
           
 double[][] faktoriser(double maxChangeSS)
           
 double[][] faktoriser(int maxIter)
           
 double[][] faktoriser(int maxIter, double maxChangeSS)
          Faktoriserer matrisen.
 double[] lambda(int[] pos)
          Regner ut estimatoren for en gitt posisjon med og uten overganger: dvs. produktet av faktorene og vekten.
 double[] lambda0(int[] pos)
          Regner ut den uvektede estimatoren med og uten overganger til en gitt posisjon:
protected  void oppdaterSummer()
          Mellomregning: regner ut marginalsummene til matrisen.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

faktorer

public double[][] faktorer
Faktorene: en array per dimensjon samt en total

Constructor Detail

AbstractMatrise.Faktorer

public AbstractMatrise.Faktorer(AbstractMatrise vekt,
                                AbstractMatrise[] overganger)
Konstruktor som lager et faktoriseringsobjekt med gitte vekter.

Parameters:
vekt - vekter
Method Detail

oppdaterSummer

protected void oppdaterSummer()
Mellomregning: regner ut marginalsummene til matrisen. Hvis matrisen endres, maa denne kjores paa ny.


faktoriser

public double[][] faktoriser(int maxIter,
                             double maxChangeSS)
Faktoriserer matrisen.

Parameters:
maxIter - maks antall iterasjoner (default=1000)
maxChangeSS - konvergenskriterie (default=1e-9)
Returns:
faktorene som array av arrayer

faktoriser

public double[][] faktoriser(int maxIter)

faktoriser

public double[][] faktoriser(double maxChangeSS)

faktoriser

public double[][] faktoriser()

lambda

public double[] lambda(int[] pos)
Regner ut estimatoren for en gitt posisjon med og uten overganger: dvs. produktet av faktorene og vekten.

Returns:
estimatorene (uten overganger, med overganger)

lambda0

public double[] lambda0(int[] pos)
Regner ut den uvektede estimatoren med og uten overganger til en gitt posisjon:

Returns:
de uvektede estimatorene (uten overganger, med overganger)