public double[][] separateLopExpertWeights(double[] learnedParams) { double[][] learnedWeights = new double[numLopExpert][]; double[][][] learnedWeights2D = separateLopExpertWeights2D(learnedParams); for (int i = 0; i < numLopExpert; i++) { learnedWeights[i] = CRFLogConditionalObjectiveFunction.to1D(learnedWeights2D[i], lopExpertWeights[i].length); } return learnedWeights; }
public CliquePotentialFunction getCliquePotentialFunction(double[] x) { double[] rawScales = separateLopScales(x); double[] scales = ArrayMath.softmax(rawScales); double[][][] learnedLopExpertWeights2D = lopExpertWeights2D; if (backpropTraining) { learnedLopExpertWeights2D = separateLopExpertWeights2D(x); } double[][] combinedWeights2D = combineAndScaleLopWeights2D(numLopExpert, learnedLopExpertWeights2D, scales); return new LinearCliquePotentialFunction(combinedWeights2D); }
double[][][] learnedLopExpertWeights2D = lopExpertWeights2D; if (backpropTraining) { learnedLopExpertWeights2D = separateLopExpertWeights2D(x); logPotential(learnedLopExpertWeights2D);
public double[][] separateLopExpertWeights(double[] learnedParams) { double[][] learnedWeights = new double[numLopExpert][]; double[][][] learnedWeights2D = separateLopExpertWeights2D(learnedParams); for (int i = 0; i < numLopExpert; i++) { learnedWeights[i] = CRFLogConditionalObjectiveFunction.to1D(learnedWeights2D[i], lopExpertWeights[i].length); } return learnedWeights; }
public double[][] separateLopExpertWeights(double[] learnedParams) { double[][] learnedWeights = new double[numLopExpert][]; double[][][] learnedWeights2D = separateLopExpertWeights2D(learnedParams); for (int i = 0; i < numLopExpert; i++) { learnedWeights[i] = CRFLogConditionalObjectiveFunction.to1D(learnedWeights2D[i], lopExpertWeights[i].length); } return learnedWeights; }
public CliquePotentialFunction getCliquePotentialFunction(double[] x) { double[] rawScales = separateLopScales(x); double[] scales = ArrayMath.softmax(rawScales); double[][][] learnedLopExpertWeights2D = lopExpertWeights2D; if (backpropTraining) { learnedLopExpertWeights2D = separateLopExpertWeights2D(x); } double[][] combinedWeights2D = combineAndScaleLopWeights2D(numLopExpert, learnedLopExpertWeights2D, scales); return new LinearCliquePotentialFunction(combinedWeights2D); }
public CliquePotentialFunction getCliquePotentialFunction(double[] x) { double[] rawScales = separateLopScales(x); double[] scales = ArrayMath.softmax(rawScales); double[][][] learnedLopExpertWeights2D = lopExpertWeights2D; if (backpropTraining) { learnedLopExpertWeights2D = separateLopExpertWeights2D(x); } double[][] combinedWeights2D = combineAndScaleLopWeights2D(numLopExpert, learnedLopExpertWeights2D, scales); return new LinearCliquePotentialFunction(combinedWeights2D); }
double[][][] learnedLopExpertWeights2D = lopExpertWeights2D; if (backpropTraining) { learnedLopExpertWeights2D = separateLopExpertWeights2D(x); logPotential(learnedLopExpertWeights2D);
double[][][] learnedLopExpertWeights2D = lopExpertWeights2D; if (backpropTraining) { learnedLopExpertWeights2D = separateLopExpertWeights2D(x); logPotential(learnedLopExpertWeights2D);