diff options
author | trevor.cohn <trevor.cohn@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-07-13 18:22:59 +0000 |
---|---|---|
committer | trevor.cohn <trevor.cohn@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-07-13 18:22:59 +0000 |
commit | 3a7d95b3bc27ea07a57f21f26db4e136f5244284 (patch) | |
tree | 7490bfbc5779d7726e9becb327da035eb5c7bff1 /gi/posterior-regularisation/prjava/src/optimization | |
parent | d8d733bd47cb5578b4fa3981c3652ebb6077a927 (diff) |
Cleaning up the PC model.
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@236 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'gi/posterior-regularisation/prjava/src/optimization')
2 files changed, 6 insertions, 5 deletions
diff --git a/gi/posterior-regularisation/prjava/src/optimization/gradientBasedMethods/AbstractGradientBaseMethod.java b/gi/posterior-regularisation/prjava/src/optimization/gradientBasedMethods/AbstractGradientBaseMethod.java index 0a4a5445..2fcb7990 100644 --- a/gi/posterior-regularisation/prjava/src/optimization/gradientBasedMethods/AbstractGradientBaseMethod.java +++ b/gi/posterior-regularisation/prjava/src/optimization/gradientBasedMethods/AbstractGradientBaseMethod.java @@ -56,9 +56,10 @@ public abstract class AbstractGradientBaseMethod implements Optimizer{ stats.collectInitStats(this, o); direction = new double[o.getNumParameters()]; initializeStructures(o, stats, stop); - for (currentProjectionIteration = 1; currentProjectionIteration < maxNumberOfIterations; currentProjectionIteration++){ -// System.out.println("starting iterations: parameters:" ); -// o.printParameters(); + for (currentProjectionIteration = 1; currentProjectionIteration < maxNumberOfIterations; currentProjectionIteration++){ + //System.out.println("\tgradient descent iteration " + currentProjectionIteration); + //System.out.print("\tparameters:" ); + //o.printParameters(); previousValue = currValue; currValue = o.getValue(); gradient = o.getGradient(); @@ -76,7 +77,7 @@ public abstract class AbstractGradientBaseMethod implements Optimizer{ updateStructuresBeforeStep(o, stats, stop); lso.reset(direction); step = lineSearch.getStepSize(lso); -// System.out.println("Leave with step: " + step); + //System.out.println("\t\tLeave with step: " + step); if(step==-1){ System.out.println("Failed to find step"); stats.collectFinalStats(this, o); diff --git a/gi/posterior-regularisation/prjava/src/optimization/projections/SimplexProjection.java b/gi/posterior-regularisation/prjava/src/optimization/projections/SimplexProjection.java index eec11bcf..f22afcaf 100644 --- a/gi/posterior-regularisation/prjava/src/optimization/projections/SimplexProjection.java +++ b/gi/posterior-regularisation/prjava/src/optimization/projections/SimplexProjection.java @@ -40,7 +40,7 @@ public class SimplexProjection extends Projection{ for (int i = 0; i < ds.length; i++) { currentSum+=ds[i]; theta = (currentSum-scale)/(i+1); - if(ds[i]-theta <= 0){ + if(ds[i]-theta < -1e-10){ break; } previousTheta = theta; |