edu.stanford.nlp.optimization
Class QNMinimizer.QNInfo
java.lang.Object
edu.stanford.nlp.optimization.QNMinimizer.QNInfo
- Enclosing class:
- QNMinimizer
public class QNMinimizer.QNInfo
- extends java.lang.Object
The QNInfo class is used to store information about the Quasi Newton
update. it holds all the s,y pairs, updates the diagonal and scales
everything as needed.
Method Summary |
double[] |
applyInitialHessian(double[] x)
|
void |
clear()
|
void |
free()
|
double |
getRho(int ind)
|
double[] |
getS(int ind)
|
double[] |
getY(int ind)
|
void |
setHistory(java.util.List<double[]> sList,
java.util.List<double[]> yList)
|
int |
size()
|
int |
update(double[] newX,
double[] x,
double[] newGrad,
double[] grad,
double step)
|
int |
update(double[] newS,
double[] newY,
double yy,
double sy,
double sg,
double step)
|
void |
useDiagonalScaling()
|
void |
useScalarScaling()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
d
public double[] d
scaleOpt
public QNMinimizer.eScaling scaleOpt
QNMinimizer.QNInfo
public QNMinimizer.QNInfo(int size)
QNMinimizer.QNInfo
public QNMinimizer.QNInfo()
QNMinimizer.QNInfo
public QNMinimizer.QNInfo(java.util.List<double[]> sList,
java.util.List<double[]> yList)
size
public int size()
getRho
public double getRho(int ind)
getS
public double[] getS(int ind)
getY
public double[] getY(int ind)
useDiagonalScaling
public void useDiagonalScaling()
useScalarScaling
public void useScalarScaling()
free
public void free()
clear
public void clear()
setHistory
public void setHistory(java.util.List<double[]> sList,
java.util.List<double[]> yList)
applyInitialHessian
public double[] applyInitialHessian(double[] x)
update
public int update(double[] newX,
double[] x,
double[] newGrad,
double[] grad,
double step)
throws QNMinimizer.SurpriseConvergence
- Throws:
QNMinimizer.SurpriseConvergence
update
public int update(double[] newS,
double[] newY,
double yy,
double sy,
double sg,
double step)
Stanford NLP Group