You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sr...@apache.org on 2010/08/17 19:34:19 UTC

svn commit: r986405 [6/6] - in /mahout/trunk: buildtools/ buildtools/src/main/resources/ core/src/main/java/org/apache/mahout/cf/taste/eval/ core/src/main/java/org/apache/mahout/cf/taste/hadoop/ core/src/main/java/org/apache/mahout/cf/taste/hadoop/item...

Modified: mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineAuc.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineAuc.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineAuc.java (original)
+++ mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineAuc.java Tue Aug 17 17:34:14 2010
@@ -1,3 +1,20 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 package org.apache.mahout.math.stats;
 
 import org.apache.mahout.math.DenseMatrix;
@@ -16,7 +33,6 @@ import java.util.Random;
  * on-line.
  */
 public class OnlineAuc {
-  private Random random = new Random();
 
   enum ReplacementPolicy {
     FIFO, FAIR, RANDOM
@@ -25,11 +41,10 @@ public class OnlineAuc {
   public static final int HISTORY = 10;
 
   private ReplacementPolicy policy = ReplacementPolicy.FAIR;
-
-  private Matrix scores;
-  private Vector averages;
-
-  private Vector samples;
+  private Random random = new Random();
+  private final Matrix scores;
+  private final Vector averages;
+  private final Vector samples;
 
   public OnlineAuc() {
     int numCategories = 2;
@@ -40,7 +55,7 @@ public class OnlineAuc {
     samples = new DenseVector(numCategories);
   }
 
-  public double addSample(int category, final double score) {
+  public double addSample(int category, double score) {
     int n = (int) samples.get(category);
     if (n < HISTORY) {
       scores.set(category, n, score);
@@ -50,14 +65,14 @@ public class OnlineAuc {
           scores.set(category, n % HISTORY, score);
           break;
         case FAIR:
-          int j = random.nextInt(n + 1);
-          if (j < HISTORY) {
-            scores.set(category, j, score);
+          int j1 = random.nextInt(n + 1);
+          if (j1 < HISTORY) {
+            scores.set(category, j1, score);
           }
           break;
         case RANDOM:
-          j = random.nextInt(HISTORY);
-          scores.set(category, j, score);
+          int j2 = random.nextInt(HISTORY);
+          scores.set(category, j2, score);
           break;
       }
     }
@@ -67,22 +82,21 @@ public class OnlineAuc {
     if (samples.minValue() >= 1) {
       // compare to previous scores for other category
       Vector row = scores.viewRow(1 - category);
-      double m = 0;
+      double m = 0.0;
       int count = 0;
       for (Vector.Element element : row) {
         double v = element.get();
-        if (!Double.isNaN(v)) {
-          count++;
-          double z = 0.5;
-          if (score > v) {
-            z = 1;
-          } else if (score < v) {
-            z = 0;
-          }
-          m += (z - m) / count;
-        } else {
+        if (Double.isNaN(v)) {
           break;
         }
+        count++;
+        double z = 0.5;
+        if (score > v) {
+          z = 1.0;
+        } else if (score < v) {
+          z = 0.0;
+        }
+        m += (z - m) / count;
       }
       averages.set(category, averages.get(category) + (m - averages.get(category)) / samples.get(category));
     }

Modified: mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineSummarizer.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineSummarizer.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineSummarizer.java (original)
+++ mahout/trunk/math/src/main/java/org/apache/mahout/math/stats/OnlineSummarizer.java Tue Aug 17 17:34:14 2010
@@ -48,11 +48,11 @@ public class OnlineSummarizer {
   private final double[] q = new double[5];
 
   // mean and variance estimates
-  private double mean = 0;
-  private double variance = 0;
+  private double mean;
+  private double variance;
 
   // number of samples seen so far
-  private int n = 0;
+  private int n;
 
   public void add(double sample) {
     sorted = false;

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/AbstractTestVector.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/AbstractTestVector.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/AbstractTestVector.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/AbstractTestVector.java Tue Aug 17 17:34:14 2010
@@ -409,14 +409,14 @@ public abstract class AbstractTestVector
   }
 
   public void testAssignUnaryFunction() {
-    test.assign(negate);
+    test.assign(NEGATE);
     for (int i = 1; i < values.length; i += 2) {
       assertEquals("value[" + i + ']', -values[i], test.getQuick(i+2));
     }
   }
 
   public void testAssignBinaryFunction() throws Exception {
-    test.assign(test, plus);
+    test.assign(test, PLUS);
     for (int i = 0; i < values.length; i++) {
       if (i % 2 == 0) {
         assertEquals("get [" + i + ']', 0.0, test.get(i));

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/MahoutTestCase.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/MahoutTestCase.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/MahoutTestCase.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/MahoutTestCase.java Tue Aug 17 17:34:14 2010
@@ -29,6 +29,7 @@ public abstract class MahoutTestCase ext
 
   @Override
   protected void setUp() throws Exception {
+    super.setUp();
     testTempDir = null;
   }
 
@@ -37,6 +38,7 @@ public abstract class MahoutTestCase ext
     if (testTempDir != null) {
       new DeletingVisitor().accept(testTempDir);
     }
+    super.tearDown();
   }
 
   protected final File getTestTempDir() throws IOException {

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java Tue Aug 17 17:34:14 2010
@@ -195,7 +195,7 @@ public abstract class MatrixTest extends
 
   public void testAssignMatrixBinaryFunction() {
     int[] c = test.size();
-    test.assign(test, plus);
+    test.assign(test, PLUS);
     for (int row = 0; row < c[ROW]; row++) {
       for (int col = 0; col < c[COL]; col++) {
         assertEquals("value[" + row + "][" + col + ']', 2 * values[row][col],
@@ -206,7 +206,7 @@ public abstract class MatrixTest extends
 
   public void testAssignMatrixBinaryFunctionCardinality() {
     try {
-      test.assign(test.transpose(), plus);
+      test.assign(test.transpose(), PLUS);
       fail("exception expected");
     } catch (CardinalityException e) {
     }
@@ -314,7 +314,7 @@ public abstract class MatrixTest extends
   }
 
   public void testAggregate() {
-    double total = test.aggregate(Functions.plus, Functions.identity);
+    double total = test.aggregate(Functions.PLUS, Functions.IDENTITY);
     assertEquals(test.aggregateRows(new VectorFunction() {
       public double apply(Vector v) {
         return v.zSum();

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/QRDecompositionTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/QRDecompositionTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/QRDecompositionTest.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/QRDecompositionTest.java Tue Aug 17 17:34:14 2010
@@ -119,7 +119,7 @@ public class QRDecompositionTest {
   }
 
   private void assertEquals(Matrix ref, Matrix actual, double epsilon) {
-    Assert.assertEquals(0, ref.minus(actual).aggregate(Functions.max, Functions.abs), epsilon);
+    Assert.assertEquals(0, ref.minus(actual).aggregate(Functions.MAX, Functions.ABS), epsilon);
   }
 
   private void printMatrix(String name, Matrix m) {

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/TestMatrixView.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/TestMatrixView.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/TestMatrixView.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/TestMatrixView.java Tue Aug 17 17:34:14 2010
@@ -184,7 +184,7 @@ public class TestMatrixView extends Maho
 
   public void testAssignMatrixBinaryFunction() throws Exception {
     int[] c = test.size();
-    test.assign(test, plus);
+    test.assign(test, PLUS);
     for (int row = 0; row < c[ROW]; row++) {
       for (int col = 0; col < c[COL]; col++) {
         assertEquals("value[" + row + "][" + col + ']',
@@ -195,7 +195,7 @@ public class TestMatrixView extends Maho
 
   public void testAssignMatrixBinaryFunctionCardinality() {
     try {
-      test.assign(test.transpose(), plus);
+      test.assign(test.transpose(), PLUS);
       fail("exception expected");
     } catch (CardinalityException e) {
     }
@@ -223,7 +223,7 @@ public class TestMatrixView extends Maho
 
   public void testAssignUnaryFunction() {
     int[] c = test.size();
-    test.assign(negate);
+    test.assign(NEGATE);
     for (int row = 0; row < c[ROW]; row++) {
       for (int col = 0; col < c[COL]; col++) {
         assertEquals("value[" + row + "][" + col + ']',

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/TestVectorView.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/TestVectorView.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/TestVectorView.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/TestVectorView.java Tue Aug 17 17:34:14 2010
@@ -285,21 +285,21 @@ public class TestVectorView extends Maho
   }
 
   public void testAssignUnaryFunction() {
-    test.assign(negate);
+    test.assign(NEGATE);
     for (int i = 0; i < test.size(); i++) {
       assertEquals("value[" + i + ']', -values[i + 1], test.getQuick(i));
     }
   }
 
   public void testAssignBinaryFunction() throws Exception {
-    test.assign(test, plus);
+    test.assign(test, PLUS);
     for (int i = 0; i < test.size(); i++) {
       assertEquals("value[" + i + ']', 2 * values[i + 1], test.getQuick(i));
     }
   }
 
   public void testAssignBinaryFunction2() throws Exception {
-    test.assign(plus, 4);
+    test.assign(PLUS, 4);
     for (int i = 0; i < test.size(); i++) {
       assertEquals("value[" + i + ']', values[i + 1] + 4, test.getQuick(i));
     }

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/VectorTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/VectorTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/VectorTest.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/VectorTest.java Tue Aug 17 17:34:14 2010
@@ -220,7 +220,7 @@ public class VectorTest extends MahoutTe
     expected = lengthSquaredSlowly(v);
     assertEquals("mutation via assign(double) fails to change lengthSquared", expected, v.getLengthSquared());
 
-    v.assign(Functions.square);
+    v.assign(Functions.SQUARE);
     expected = lengthSquaredSlowly(v);
     assertEquals("mutation via assign(square) fails to change lengthSquared", expected, v.getLengthSquared());
 
@@ -249,11 +249,11 @@ public class VectorTest extends MahoutTe
     expected = lengthSquaredSlowly(v);
     assertEquals("mutation via times(vector) fails to change lengthSquared", expected, v.getLengthSquared());
 
-    v.assign(Functions.pow, 3.0);
+    v.assign(Functions.POW, 3.0);
     expected = lengthSquaredSlowly(v);
     assertEquals("mutation via assign(pow, 3.0) fails to change lengthSquared", expected, v.getLengthSquared());
 
-    v.assign(v, Functions.plus);
+    v.assign(v, Functions.PLUS);
     expected = lengthSquaredSlowly(v);
     assertEquals("mutation via assign(v,plus) fails to change lengthSquared", expected, v.getLengthSquared());
   }
@@ -621,28 +621,28 @@ public class VectorTest extends MahoutTe
   private static void doTestAggregation(Vector v, Vector w) {
     assertEquals("aggregate(plus, pow(2)) not equal to " + v.getLengthSquared(),
         v.getLengthSquared(),
-        v.aggregate(Functions.plus, Functions.pow(2)));
+        v.aggregate(Functions.PLUS, Functions.pow(2)));
     assertEquals("aggregate(plus, abs) not equal to " + v.norm(1),
         v.norm(1),
-        v.aggregate(Functions.plus, Functions.abs));
+        v.aggregate(Functions.PLUS, Functions.ABS));
     assertEquals("aggregate(max, abs) not equal to " + v.norm(Double.POSITIVE_INFINITY),
         v.norm(Double.POSITIVE_INFINITY),
-        v.aggregate(Functions.max, Functions.abs));
+        v.aggregate(Functions.MAX, Functions.ABS));
 
     assertEquals("v.dot(w) != v.aggregate(w, plus, mult)",
         v.dot(w),
-        v.aggregate(w, Functions.plus, Functions.mult));
+        v.aggregate(w, Functions.PLUS, Functions.MULT));
     assertEquals("|(v-w)|^2 != v.aggregate(w, plus, chain(pow(2), minus))",
         v.minus(w).dot(v.minus(w)),
-        v.aggregate(w, Functions.plus, Functions.chain(Functions.pow(2), Functions.minus)));
+        v.aggregate(w, Functions.PLUS, Functions.chain(Functions.pow(2), Functions.MINUS)));
   }
 
   public static void testEmptyAggregate() {
-    assertEquals(1.0, new DenseVector(new double[]{1}).aggregate(Functions.min, Functions.identity));
-    assertEquals(1.0, new DenseVector(new double[]{2, 1}).aggregate(Functions.min, Functions.identity));
+    assertEquals(1.0, new DenseVector(new double[]{1}).aggregate(Functions.MIN, Functions.IDENTITY));
+    assertEquals(1.0, new DenseVector(new double[]{2, 1}).aggregate(Functions.MIN, Functions.IDENTITY));
 
     try {
-      new DenseVector(new double[]{}).aggregate(Functions.min, Functions.identity);
+      new DenseVector(new double[]{}).aggregate(Functions.MIN, Functions.IDENTITY);
       fail("Should have thrown exception with empty vector");
     } catch (IllegalArgumentException e) {
       // as it should be
@@ -651,12 +651,12 @@ public class VectorTest extends MahoutTe
     assertEquals(3.0,
             new DenseVector(new double[]{1}).aggregate(
                     new DenseVector(new double[]{2}),
-                    Functions.min, Functions.plus));
+                    Functions.MIN, Functions.PLUS));
 
     try {
       new DenseVector(new double[]{}).aggregate(
               new DenseVector(new double[]{}),
-              Functions.min, Functions.plus);
+              Functions.MIN, Functions.PLUS);
       
       fail("Should have thrown exception with empty vector");
     } catch (IllegalArgumentException e) {

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/decomposer/SolverTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/decomposer/SolverTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/decomposer/SolverTest.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/decomposer/SolverTest.java Tue Aug 17 17:34:14 2010
@@ -76,12 +76,6 @@ public abstract class SolverTest extends
   /**
    * Builds up a consistently random (same seed every time) sparse matrix, with sometimes
    * repeated rows.
-   * @param numRows
-   * @param nonNullRows
-   * @param numCols
-   * @param entriesPerRow
-   * @param entryMean
-   * @return
    */
   public static Matrix randomSequentialAccessSparseMatrix(int numRows,
                                                           int nonNullRows,

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineAucTest.java Tue Aug 17 17:34:14 2010
@@ -1,3 +1,20 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 package org.apache.mahout.math.stats;
 
 import org.junit.Assert;
@@ -7,7 +24,7 @@ import java.util.Random;
 
 public class OnlineAucTest {
   @Test
-  public void binaryCase() {
+  public void testBinaryCase() {
     OnlineAuc a1 = new OnlineAuc();
     a1.setRandom(new Random(1));
     a1.setPolicy(OnlineAuc.ReplacementPolicy.FAIR);
@@ -20,31 +37,7 @@ public class OnlineAucTest {
     a3.setRandom(new Random(3));
     a3.setPolicy(OnlineAuc.ReplacementPolicy.RANDOM);
 
-    Random gen = new Random(100);
-    for (int i = 0; i < 10000; i++) {
-      double x = gen.nextGaussian();
-
-      a1.addSample(0, x);
-      a2.addSample(0, x);
-      a3.addSample(0, x);
-
-      x = gen.nextGaussian() + 1;
-
-      a1.addSample(1, x);
-      a2.addSample(1, x);
-      a3.addSample(1, x);
-    }
-
-    a1 = new OnlineAuc();
-    a1.setPolicy(OnlineAuc.ReplacementPolicy.FAIR);
-
-    a2 = new OnlineAuc();
-    a2.setPolicy(OnlineAuc.ReplacementPolicy.FIFO);
-
-    a3 = new OnlineAuc();
-    a3.setPolicy(OnlineAuc.ReplacementPolicy.RANDOM);
-
-    gen = new Random(1);
+    Random gen = new Random(1);
     for (int i = 0; i < 10000; i++) {
       double x = gen.nextGaussian();
 

Modified: mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineSummarizerTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineSummarizerTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineSummarizerTest.java (original)
+++ mahout/trunk/math/src/test/java/org/apache/mahout/math/stats/OnlineSummarizerTest.java Tue Aug 17 17:34:14 2010
@@ -19,24 +19,22 @@ package org.apache.mahout.math.stats;
 
 import org.apache.mahout.math.jet.random.Gamma;
 import org.apache.mahout.math.jet.random.engine.MersenneTwister;
+import org.junit.Assert;
 import org.junit.Test;
 
 import java.util.Random;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
-
 public class OnlineSummarizerTest {
   @Test
   public void testCount() {
     OnlineSummarizer x = new OnlineSummarizer();
-    assertEquals(0, x.count());
+    Assert.assertEquals(0, x.count());
     x.add(1);
-    assertEquals(1, x.count());
+    Assert.assertEquals(1, x.count());
 
     for (int i = 2; i < 110; i++) {
       x.add(i);
-      assertEquals(i, x.count());
+      Assert.assertEquals(i, x.count());
     }
   }
 
@@ -80,23 +78,23 @@ public class OnlineSummarizerTest {
 //            8.10277696526878, 12.1426255901507);              // standard dev
   }
 
-  private void check(OnlineSummarizer x, double... values) {
+  private static void check(OnlineSummarizer x, double... values) {
     for (int i = 0; i < 5; i++) {
       checkRange(String.format("quartile %d", i), x.quartile(i), values[2 * i], values[2 * i + 1]);
     }
-    assertEquals(x.quartile(2), x.median(), 0);
+    Assert.assertEquals(x.quartile(2), x.median(), 0);
 
     checkRange("mean", x.mean(), values[10], values[11]);
     checkRange("sd", x.sd(), values[12], values[13]);
   }
 
-  private void checkRange(String msg, double v, double low, double high) {
+  private static void checkRange(String msg, double v, double low, double high) {
     if (v < low || v > high) {
-      fail(String.format("Wanted %s to be in range [%e,%e] but got %e", msg, low, high, v));
+      Assert.fail(String.format("Wanted %s to be in range [%e,%e] but got %e", msg, low, high, v));
     }
   }
 
-  private OnlineSummarizer normal(int n, int seed) {
+  private static OnlineSummarizer normal(int n, int seed) {
     OnlineSummarizer x = new OnlineSummarizer();
     Random gen = new Random(seed);
     for (int i = 0; i < n; i++) {
@@ -105,7 +103,7 @@ public class OnlineSummarizerTest {
     return x;
   }
 
-  private OnlineSummarizer exp(int n, int seed) {
+  private static OnlineSummarizer exp(int n, int seed) {
     OnlineSummarizer x = new OnlineSummarizer();
     Random gen = new Random(seed);
     for (int i = 0; i < n; i++) {
@@ -114,7 +112,7 @@ public class OnlineSummarizerTest {
     return x;
   }
 
-  private OnlineSummarizer gamma(int n, int seed) {
+  private static OnlineSummarizer gamma(int n, int seed) {
     OnlineSummarizer x = new OnlineSummarizer();
     Gamma g = new Gamma(0.01, 100, new MersenneTwister(seed));
     for (int i = 0; i < n; i++) {

Modified: mahout/trunk/maven/src/main/resources/mahout-pmd-ruleset.xml
URL: http://svn.apache.org/viewvc/mahout/trunk/maven/src/main/resources/mahout-pmd-ruleset.xml?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/maven/src/main/resources/mahout-pmd-ruleset.xml (original)
+++ mahout/trunk/maven/src/main/resources/mahout-pmd-ruleset.xml Tue Aug 17 17:34:14 2010
@@ -127,7 +127,7 @@
     <!--<rule ref="rulesets/junit.xml/JUnitStaticSuite"/>-->
     <!--<rule ref="rulesets/junit.xml/JUnitSpelling"/>-->
     <!--<rule ref="rulesets/junit.xml/JUnitAssertionsShouldIncludeMessage"/>-->
-    <rule ref="rulesets/junit.xml/JUnitTestsShouldIncludeAssert"/>
+    <!--<rule ref="rulesets/junit.xml/JUnitTestsShouldIncludeAssert"/>-->
     <!--<rule ref="rulesets/junit.xml/TestClassWithoutTestCases"/>-->
     <!--<rule ref="rulesets/junit.xml/UnnecessaryBooleanAssertion"/>-->
     <!--<rule ref="rulesets/junit.xml/UseAssertEqualsInsteadOfAssertTrue"/>-->
@@ -148,7 +148,7 @@
     <rule ref="rulesets/naming.xml/VariableNamingConventions"/>
     <rule ref="rulesets/naming.xml/MethodNamingConventions"/>
     <rule ref="rulesets/naming.xml/ClassNamingConventions"/>
-    <rule ref="rulesets/naming.xml/AbstractNaming"/>
+    <!--<rule ref="rulesets/naming.xml/AbstractNaming"/>-->
     <!--<rule ref="rulesets/naming.xml/AvoidDollarSigns"/>-->
     <!--<rule ref="rulesets/naming.xml/MethodWithSameNameAsEnclosingClass"/>-->
     <!--<rule ref="rulesets/naming.xml/SuspiciousHashcodeMethodName"/>-->
@@ -179,8 +179,8 @@
     <!-- <rule ref="rulesets/strings.xml/AvoidConcatenatingNonLiteralsInStringBuffer"/>-->
     <rule ref="rulesets/strings.xml/UnnecessaryCaseChange"/>
 
-    <rule ref="rulesets/sunsecure.xml/MethodReturnsInternalArray"/>
-    <rule ref="rulesets/sunsecure.xml/ArrayIsStoredDirectly"/>
+    <!--<rule ref="rulesets/sunsecure.xml/MethodReturnsInternalArray"/>-->
+    <!--<rule ref="rulesets/sunsecure.xml/ArrayIsStoredDirectly"/>-->
 
     <rule ref="rulesets/unusedcode.xml/UnusedLocalVariable"/>
     <rule ref="rulesets/unusedcode.xml/UnusedPrivateField"/>

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/benchmark/VectorBenchmarks.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/benchmark/VectorBenchmarks.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/benchmark/VectorBenchmarks.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/benchmark/VectorBenchmarks.java Tue Aug 17 17:34:14 2010
@@ -94,7 +94,7 @@ public class VectorBenchmarks implements
       while (j < sparsity) {
         double value = r.nextGaussian();
         int index = r.nextInt(cardinality);
-        if (featureSpace.get(index) == false) {
+        if (!featureSpace.get(index)) {
           featureSpace.set(index);
           indexes[j] = index;
           values[j++] = value;
@@ -128,11 +128,11 @@ public class VectorBenchmarks implements
       new Object[] {benchmarkName, implName, content, stats.toString(), opsPerSec, speed});
     String info = stats.toString().replaceAll("\n", "\t") + "\tSpeed = " + opsPerSec + " /sec\tRate = "
                   + speed + " MB/s";
-    if (implType.containsKey(implName) == false) {
+    if (!implType.containsKey(implName)) {
       implType.put(implName, implType.size());
     }
     int implId = implType.get(implName);
-    if (statsMap.containsKey(benchmarkName) == false) {
+    if (!statsMap.containsKey(benchmarkName)) {
       statsMap.put(benchmarkName, new ArrayList<String[]>());
     }
     List<String[]> implStats = statsMap.get(benchmarkName);

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/SequenceFileDumper.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/SequenceFileDumper.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/SequenceFileDumper.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/SequenceFileDumper.java Tue Aug 17 17:34:14 2010
@@ -104,7 +104,7 @@ public final class SequenceFileDumper {
         .append(String.valueOf(value.getClass())).append('\n');
         writer.flush();
         long count = 0;
-        if (countOnly == false) {
+        if (!countOnly) {
           while (reader.next(key, value)) {
             writer.append("Key: ").append(String.valueOf(key));
             String str = value.toString();

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/VectorDumper.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/VectorDumper.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/VectorDumper.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/VectorDumper.java Tue Aug 17 17:34:14 2010
@@ -139,7 +139,7 @@ public final class VectorDumper {
                 writer.write(iterator.key().toString());
                 writer.write("\t");
               }
-              if (sizeOnly == false) {
+              if (!sizeOnly) {
                 String fmtStr = useJSON ? vector.asFormatString() : VectorHelper.vectorToString(vector, dictionary);
                 writer.write(fmtStr);
                 writer.write('\n');

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/arff/ARFFVectorIterable.java Tue Aug 17 17:34:14 2010
@@ -162,7 +162,7 @@ public class ARFFVectorIterable implemen
       try {
         while ((line = buff.readLine()) != null) {
           line = line.trim();
-          if (line.length() > 0 && line.startsWith(ARFFModel.ARFF_COMMENT) == false) {
+          if (line.length() > 0 && !line.startsWith(ARFFModel.ARFF_COMMENT)) {
             break;
           }
         }

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/CachedTermInfo.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/CachedTermInfo.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/CachedTermInfo.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/CachedTermInfo.java Tue Aug 17 17:34:14 2010
@@ -47,7 +47,7 @@ public class CachedTermInfo implements T
     int count = 0;
     do {
       Term term = te.term();
-      if (term == null || term.field().equals(field) == false) {
+      if (term == null || !term.field().equals(field)) {
         break;
       }
       int df = te.docFreq();
@@ -67,7 +67,7 @@ public class CachedTermInfo implements T
   
   @Override
   public TermEntry getTermEntry(String field, String term) {
-    if (this.field.equals(field) == false) {
+    if (!this.field.equals(field)) {
       return null;
     }
     return termEntries.get(term);

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/ClusterLabels.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/ClusterLabels.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/ClusterLabels.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/lucene/ClusterLabels.java Tue Aug 17 17:34:14 2010
@@ -224,7 +224,7 @@ public class ClusterLabels {
     Map<String, TermEntry> termEntryMap = new LinkedHashMap<String, TermEntry>();
     do {
       Term term = te.term();
-      if (term == null || term.field().equals(contentField) == false) {
+      if (term == null || !term.field().equals(contentField)) {
         break;
       }
       OpenBitSet termBitset = new OpenBitSet(reader.maxDoc());

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TFPartialVectorReducer.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TFPartialVectorReducer.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TFPartialVectorReducer.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TFPartialVectorReducer.java Tue Aug 17 17:34:14 2010
@@ -59,7 +59,7 @@ public class TFPartialVectorReducer exte
   @Override
   protected void reduce(Text key, Iterable<StringTuple> values, Context context) throws IOException, InterruptedException {
     Iterator<StringTuple> it = values.iterator();
-    if (it.hasNext() == false) {
+    if (!it.hasNext()) {
       return;
     }
     StringTuple value = it.next();

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TermDocumentCountMapper.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TermDocumentCountMapper.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TermDocumentCountMapper.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/text/term/TermDocumentCountMapper.java Tue Aug 17 17:34:14 2010
@@ -26,7 +26,6 @@ import org.apache.hadoop.io.WritableComp
 import org.apache.hadoop.mapreduce.Mapper;
 import org.apache.mahout.math.Vector;
 import org.apache.mahout.math.VectorWritable;
-import org.apache.mahout.math.Vector.Element;
 
 /**
  * TextVectorizer Document Frequency Count Mapper. Outputs 1 for each feature
@@ -42,10 +41,10 @@ public class TermDocumentCountMapper ext
   protected void map(WritableComparable<?> key, VectorWritable value, Context context)
       throws IOException, InterruptedException {
     Vector vector = value.get();
-    Iterator<Element> it = vector.iterateNonZero();
+    Iterator<Vector.Element> it = vector.iterateNonZero();
 
     while (it.hasNext()) {
-      Element e = it.next();
+      Vector.Element e = it.next();
       context.write(new IntWritable(e.index()), ONE);
     }
     context.write(TOTAL_COUNT, ONE);

Modified: mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/tfidf/TFIDFPartialVectorReducer.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/tfidf/TFIDFPartialVectorReducer.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/tfidf/TFIDFPartialVectorReducer.java (original)
+++ mahout/trunk/utils/src/main/java/org/apache/mahout/utils/vectors/tfidf/TFIDFPartialVectorReducer.java Tue Aug 17 17:34:14 2010
@@ -35,7 +35,6 @@ import org.apache.mahout.math.RandomAcce
 import org.apache.mahout.math.SequentialAccessSparseVector;
 import org.apache.mahout.math.Vector;
 import org.apache.mahout.math.VectorWritable;
-import org.apache.mahout.math.Vector.Element;
 import org.apache.mahout.math.map.OpenIntLongHashMap;
 import org.apache.mahout.utils.vectors.TFIDF;
 import org.apache.mahout.utils.vectors.common.PartialVectorMerger;
@@ -68,10 +67,10 @@ public class TFIDFPartialVectorReducer e
       return;
     }
     Vector value = it.next().get();
-    Iterator<Element> it1 = value.iterateNonZero();
+    Iterator<Vector.Element> it1 = value.iterateNonZero();
     Vector vector = new RandomAccessSparseVector((int) featureCount, value.getNumNondefaultElements());
     while (it1.hasNext()) {
-      Element e = it1.next();
+      Vector.Element e = it1.next();
       if (!dictionary.containsKey(e.index())) {
         continue;
       }

Modified: mahout/trunk/utils/src/test/java/org/apache/mahout/clustering/dirichlet/TestL1ModelClustering.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/test/java/org/apache/mahout/clustering/dirichlet/TestL1ModelClustering.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/test/java/org/apache/mahout/clustering/dirichlet/TestL1ModelClustering.java (original)
+++ mahout/trunk/utils/src/test/java/org/apache/mahout/clustering/dirichlet/TestL1ModelClustering.java Tue Aug 17 17:34:14 2010
@@ -39,7 +39,6 @@ import org.apache.mahout.common.MahoutTe
 import org.apache.mahout.common.RandomUtils;
 import org.apache.mahout.math.Vector;
 import org.apache.mahout.math.VectorWritable;
-import org.apache.mahout.math.Vector.Element;
 import org.apache.mahout.utils.vectors.TFIDF;
 import org.apache.mahout.utils.vectors.TermInfo;
 import org.apache.mahout.utils.vectors.Weight;
@@ -147,7 +146,7 @@ public class TestL1ModelClustering exten
   private static String formatVector(Vector v) {
     StringBuilder buf = new StringBuilder();
     int nzero = 0;
-    Iterator<Element> iterateNonZero = v.iterateNonZero();
+    Iterator<Vector.Element> iterateNonZero = v.iterateNonZero();
     while (iterateNonZero.hasNext()) {
       iterateNonZero.next();
       nzero++;

Modified: mahout/trunk/utils/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java
URL: http://svn.apache.org/viewvc/mahout/trunk/utils/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java?rev=986405&r1=986404&r2=986405&view=diff
==============================================================================
--- mahout/trunk/utils/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java (original)
+++ mahout/trunk/utils/src/test/java/org/apache/mahout/utils/vectors/io/VectorWriterTest.java Tue Aug 17 17:34:14 2010
@@ -17,11 +17,9 @@
 
 package org.apache.mahout.utils.vectors.io;
 
-import java.io.File;
 import java.io.StringWriter;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.List;
 
 import junit.framework.Assert;
 
@@ -38,30 +36,9 @@ import org.apache.mahout.math.VectorWrit
 import org.apache.mahout.utils.vectors.RandomVectorIterable;
 
 public class VectorWriterTest extends MahoutTestCase {
-  
-  private File tmpLoc;
-  private File tmpFile;
-  
-  @Override
-  public void setUp() throws Exception {
-    super.setUp();
-    File tmpDir = new File(System.getProperty("java.io.tmpdir"));
-    tmpLoc = new File(tmpDir, "sfvwt");
-    tmpLoc.deleteOnExit();
-    tmpLoc.mkdirs();
-    tmpFile = File.createTempFile("sfvwt", ".dat", tmpLoc);
-    tmpFile.deleteOnExit();
-  }
-  
-  @Override
-  public void tearDown() throws Exception {
-    tmpFile.delete();
-    tmpLoc.delete();
-    super.tearDown();
-  }
-  
+
   public void testSFVW() throws Exception {
-    Path path = new Path(tmpFile.getAbsolutePath());
+    Path path = getTestTempFilePath("sfvw");
     Configuration conf = new Configuration();
     FileSystem fs = FileSystem.get(conf);
     SequenceFile.Writer seqWriter = new SequenceFile.Writer(fs, conf, path, LongWritable.class, VectorWritable.class);
@@ -88,7 +65,7 @@ public class VectorWriterTest extends Ma
     vectors.add(new DenseVector(new double[]{1.3, 1.5, 3.5}));
     writer.write(vectors);
     writer.close();
-    StringBuffer buffer = strWriter.getBuffer();
+    String buffer = strWriter.toString();
     Assert.assertNotNull(buffer);
     Assert.assertTrue(buffer.length() > 0);