private DenseVector asDense(Vector aVec) { if (aVec instanceof DenseVector) { return (DenseVector) aVec; } else { return new DenseVector(aVec); } }
/** * Creates a new instance of DenseVector * @param internalVector Internal MTJ-based vector that does the heavy lifting */ protected DenseVector( no.uib.cipr.matrix.DenseVector internalVector) { super( internalVector ); this.array = internalVector.getData(); }
/** * Adds ranks and scores obtained from a candidate provider. * * @param docFeats all features * @param resultsAll result entries */ private void addScoresAndRanks(Map<String, DenseVector> docFeats, CandidateEntry[] resultsAll) { for (CandidateEntry e: resultsAll) { DenseVector oldVect = docFeats.get(e.mDocId); int oldSize = oldVect.size(); DenseVector newVect = new DenseVector(oldSize + 2); newVect.set(0, e.mOrigRank); newVect.set(1, e.mOrigScore); for (int vi = 0; vi < oldSize; ++vi) newVect.set(vi + 2, oldVect.get(vi)); docFeats.replace(e.mDocId, newVect); } }
protected DenseVector createPreferenceVector(int tokenSize, double d) { DenseVector biasVector = new DenseVector(tokenSize); double value = 1.0; for (int i = 0; i < biasVector.size(); i++) { biasVector.set(i, value); } return biasVector; }
@Override public DenseVector copy() { double[] data = Arrays.copyOfRange(wrapped.getData(), offset, offset + size); return new DenseVector(data, false); } }
for (int i = 0; i < groupCovariance.length; i++) { if (observations[i].length > 0) { DenseVector weightVector = new DenseVector(weights[i]); weightVector = weightVector.scale(1.0 / weightVector.norm(Vector.Norm.One)); groupMean[i] = weightedMean(observations[i], weightVector); groupCovariance[i] = weightedCovariance(observations[i], weightVector, groupMean[i]); mean = new DenseVector(groupMean[0].size()); for (int i = 0; i < c; i++) { if (observations[i].length > 0) { cov = cov.add(groupWeights[i], groupCovariance[i]); mean = (DenseVector) mean.add(groupWeights[i], groupMean[i]); means[i] = groupMean[i].getData();
public Assignment sample (Randoms r) { // generate from standard normal double[] vals = new double [mean.size ()]; for (int k = 0; k < vals.length; k++) { vals[k] = r.nextGaussian (); } // and transform Vector Z = new DenseVector (vals, false); DenseVector result = new DenseVector (vals.length); variance.mult (Z, result); result = (DenseVector) result.add (mean); return new Assignment (vars.toVariableArray (), result.getData ()); }
double[][] getLayerActivations(double[] input) { final DenseVector iv = new DenseVector(input, false); final DenseVector a1 = sigmoid(w1.multAdd(iv, b1.copy())); final DenseVector a2 = sigmoid(w2.multAdd(a1, b2.copy())); return new double[][] { a1.getData(), a2.getData() }; }
this.direction = (DenseVector) new DenseVector(endPoint).add(-1, new DenseVector(startPoint)); this.origin = new DenseVector(originPoint);
/** * Computes the cosine. */ private static double getFastCosineRelatednessDense(DenseVector vec1, DenseVector vec2) { double score = 0; if (vec1 != null && vec2 != null) { score = vec1.dot(vec2); double norm1 = 0; double norm2 = 0; for (int i = 0; i < vec1.size(); i++) { double v1 = vec1.get(i); double v2 = vec2.get(i); norm1 += v1 * v1; norm2 += v2 * v2; } norm1 = Math.sqrt(norm1); norm2 = Math.sqrt(norm2); score = score / (norm1 * norm2); } if (Double.isNaN(score)) { score = 0; } return score; }
@Override public Double apply(IndependentPair<double[], double[]> in) { double[] first = in.firstObject(); double[] second = in.secondObject(); return new DenseVector(first,false).dot(new DenseVector(second,false)); }
boolean keepRun = true; do { Vector oldScore = new DenseVector(scoreVector.size()); for (int i = 0; i < oldScore.size(); i++) { oldScore.set(i, scoreVector.get(i)); sum = (1.0 - d) * biasVector.get(i) + d * sum; scoreVector.set(i, sum);
/** * Saves features (in the form of a sparse vector) to a file. * * @param vect feature weights to save * @param fileName an output file */ public static void saveFeatureWeights(DenseVector vect, String fileName) throws IOException { BufferedWriter outFile = new BufferedWriter(new FileWriter(new File(fileName))); StringBuffer sb = new StringBuffer(); for (int i = 0; i < vect.size(); ++i) sb.append((i+1) + ":" + vect.get(i) + " "); outFile.write(sb.toString() + System.getProperty("line.separator")); outFile.close(); }
@Override public double get(int index) { check(index); return wrapped.get(offset + index); }
double val = e.getValue().get(i); minVals[i] = Math.min(val, minVals[i]); maxVals[i] = Math.max(val, maxVals[i]); if (diff > Float.MIN_NORMAL) { for (Map.Entry<String, DenseVector> e : docFeats.entrySet()) { double val = e.getValue().get(i); e.getValue().set(i, (val - minVals[i]) / diff); e.getValue().set(i, 0);
float score = (float) feat.dot(mWeights);