|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object tuffy.main.Infer tuffy.learn.Learner tuffy.learn.DNLearner
public class DNLearner
Learner instance using diagonal Newton with dynamic step size. Method used here follows: Lowd, Daniel and Domingos, Pedro (2007). Efficient Weight Learning for Markov Logic Networks.
Field Summary | |
---|---|
double |
alpha
Step size. |
java.util.HashMap<java.lang.String,java.lang.Double> |
currentD
Map from clause ID to current H^(-1)g value. |
java.util.HashMap<java.lang.String,java.lang.Double> |
currentGradient
Map from clause ID to current gradient value. |
double |
lambda
Lambda used to control the step size. |
int |
nCall
Number of invocations of DNLearner#updateWeight(MCSAT) . |
java.util.HashMap<java.lang.String,java.lang.Double> |
oldD
Map from clause ID to H^(-1)g value in last iteration. |
double |
oldDG
D'g value of last iteration. |
double |
oldDHD
D'HD value of last iteration. |
java.util.HashMap<java.lang.String,java.lang.Double> |
oldG
Map from clause ID to gradient value in last iteration. |
java.util.HashMap<java.lang.String,java.lang.Double> |
oldWeight
Map from clause ID to weight in last iteration. |
Fields inherited from class tuffy.learn.Learner |
---|
_oldWeight, backtrackCount_, backtracked, currentWeight, finalWeight, isHardMappings, negativeWeightSatisfication, negativeWeightViolation, odds, oriWeight, positiveWeightSatisfication, positiveWeightViolation, trainingSatisification, trainingViolation |
Fields inherited from class tuffy.main.Infer |
---|
db, dmover, grounding, mln, options |
Constructor Summary | |
---|---|
DNLearner()
|
Method Summary | |
---|---|
void |
getGradientAndD(MRF mcsat)
Calculate the gradient and H^(-1)g by filling in currentD and currentGradient . |
void |
loadingTrainingData(MRF _mcsat)
Load training data's truth value into MRF. |
boolean |
updateWeight(MRF mcsat)
Update Learner.currentWeight using Diagonal
Newton method. |
Methods inherited from class tuffy.learn.Learner |
---|
calcCurrentTrainingViolation, dumpAnswers, fillInCurrentWeight, run |
Methods inherited from class tuffy.main.Infer |
---|
cleanUp, ground, loadMLN, setUp |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public java.util.HashMap<java.lang.String,java.lang.Double> oldG
public java.util.HashMap<java.lang.String,java.lang.Double> oldD
public java.util.HashMap<java.lang.String,java.lang.Double> oldWeight
public java.util.HashMap<java.lang.String,java.lang.Double> currentGradient
DNLearner#getGradientAndD(MCSAT)
.
public java.util.HashMap<java.lang.String,java.lang.Double> currentD
DNLearner#getGradientAndD(MCSAT)
.
public double oldDHD
public double oldDG
public double lambda
public double alpha
public int nCall
DNLearner#updateWeight(MCSAT)
.
Constructor Detail |
---|
public DNLearner()
Method Detail |
---|
public void loadingTrainingData(MRF _mcsat)
loadingTrainingData
in class Learner
_mcsat
- The MCSAT object to be filled in.public void getGradientAndD(MRF mcsat)
currentD
and currentGradient
.
mcsat
- MCSAT instance used to estimate the expectation of violations.public boolean updateWeight(MRF mcsat)
Learner.currentWeight
using Diagonal
Newton method.
updateWeight
in class Learner
mcsat
- MCSAT instance after this iteration.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |