Package org.apache.mahout.math

Examples of org.apache.mahout.math.Vector.iterateNonZero()


    Queue<RecommendedItem> topItems = new PriorityQueue<RecommendedItem>(
        recommendationsPerUser + 1,
        Collections.reverseOrder(ByValueRecommendedItemComparator
            .getInstance()));

    Iterator<Vector.Element> recommendationVectorIterator = recommendationVector
        .iterateNonZero();
    while (recommendationVectorIterator.hasNext()) {
      Vector.Element element = recommendationVectorIterator.next();
      int index = element.index();
      float value = (float) element.get();
View Full Code Here


  public void map(VarLongWritable key, VectorWritable value, Context context)
      throws IOException, InterruptedException {
    long userID = key.get();
    Vector userVector = value.get();
    Iterator<Vector.Element> it = userVector.iterateNonZero();
    IntWritable itemIndexWritable = new IntWritable();
    while (it.hasNext()) {
      Vector.Element e = it.next();
      int itemIndex = e.index();
      float preferenceValue = (float) e.get();
View Full Code Here

                    Reporter reporter) throws IOException {
      boolean firstIsOutFrag =  ((VectorWritable)v.get(0)).get().size() == outCardinality;
      Vector outFrag = firstIsOutFrag ? ((VectorWritable)v.get(0)).get() : ((VectorWritable)v.get(1)).get();
      Vector multiplier = firstIsOutFrag ? ((VectorWritable)v.get(1)).get() : ((VectorWritable)v.get(0)).get();

      Iterator<Vector.Element> it = multiplier.iterateNonZero();
      while(it.hasNext()) {
        Vector.Element e = it.next();
        row.set(e.index());
        outVector.set(outFrag.times(e.get()));
        out.collect(row, outVector);
View Full Code Here

  protected void update(double label, Vector dataPoint, LinearModel model) {
    if (label > 0) {
      // case one
      Vector updateVector = dataPoint.times(1 / this.promotionStep);
      log.info("Winnow update positive: {}", updateVector);
      Iterator<Element> iter = updateVector.iterateNonZero();
      while (iter.hasNext()) {
        Element element = iter.next();
        model.timesDelta(element.index(), element.get());
      }
    } else {
View Full Code Here

      }
    } else {
      // case two
      Vector updateVector = dataPoint.times(1 / this.promotionStep);
      log.info("Winnow update negative: {}", updateVector);
      Iterator<Element> iter = updateVector.iterateNonZero();
      while (iter.hasNext()) {
        Element element = iter.next();
        model.timesDelta(element.index(), element.get());
      }
    }
View Full Code Here

    if (v1.size() != v2.size()) {
      throw new CardinalityException();
    }
    double result = 0;
    Vector vector = v1.minus(v2);
    Iterator<Vector.Element> iter = vector.iterateNonZero();
    // this contains all non zero elements between the two
    while (iter.hasNext()) {
      Vector.Element e = iter.next();
      result += Math.abs(e.get());
    }
View Full Code Here

  public void map(WritableComparable<?> key,
                  VectorWritable value,
                  OutputCollector<IntWritable,LongWritable> output,
                  Reporter reporter) throws IOException {
    Vector vector = value.get();
    Iterator<Element> it = vector.iterateNonZero();
   
    while (it.hasNext()) {
      Element e = it.next();
      output.collect(new IntWritable(e.index()), ONE);
    }
View Full Code Here

      Vector v = generateRandomDoc(numWords, sparsity);
      LDAInference.InferredDocument doc = lda.infer(v);
     
      assertEquals("wordCounts", doc.getWordCounts(), v);
      assertNotNull("gamma", doc.getGamma());
      for (Iterator<Vector.Element> iter = v.iterateNonZero(); iter.hasNext();) {
        int w = iter.next().index();
        for (int k = 0; k < NUM_TOPICS; ++k) {
          double logProb = doc.phi(k, w);
          assertTrue(k + " " + w + " logProb " + logProb, logProb <= 0.0);
        }
View Full Code Here

   
    if ((usersToRecommendFor != null) && !usersToRecommendFor.contains(userID.get())) {
      return;
    }
    Vector userVector = vectorWritable.get();
    Iterator<Vector.Element> userVectorIterator = userVector.iterateNonZero();
    Vector recommendationVector = new RandomAccessSparseVector(Integer.MAX_VALUE, 1000);
    while (userVectorIterator.hasNext()) {
      Vector.Element element = userVectorIterator.next();
      int index = element.index();
      double value = element.get();
View Full Code Here

                     Reporter reporter) throws IOException {
    if (!values.hasNext()) {
      return;
    }
    Vector value = values.next().get();
    Iterator<Element> it = value.iterateNonZero();
    Vector vector = new RandomAccessSparseVector(key.toString(), (int) featureCount, value
        .getNumNondefaultElements());
    while (it.hasNext()) {
      Element e = it.next();
      if (!dictionary.containsKey(e.index())) {
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.