You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mahout.apache.org by sm...@apache.org on 2017/01/16 21:48:37 UTC
mahout git commit: MAHOUT-1900: Add a getter to DenseMatrix for the
double[][] values field, this closes apache/mahout#267
Repository: mahout
Updated Branches:
refs/heads/master 3e2d63c10 -> b289f4657
MAHOUT-1900: Add a getter to DenseMatrix for the double[][] values field, this closes apache/mahout#267
Project: http://git-wip-us.apache.org/repos/asf/mahout/repo
Commit: http://git-wip-us.apache.org/repos/asf/mahout/commit/b289f465
Tree: http://git-wip-us.apache.org/repos/asf/mahout/tree/b289f465
Diff: http://git-wip-us.apache.org/repos/asf/mahout/diff/b289f465
Branch: refs/heads/master
Commit: b289f4657fb8fe16f60f806ef2b2dee86f666e74
Parents: 3e2d63c
Author: smarthi <sm...@apache.org>
Authored: Mon Jan 16 16:47:55 2017 -0500
Committer: smarthi <sm...@apache.org>
Committed: Mon Jan 16 16:47:55 2017 -0500
----------------------------------------------------------------------
.../org/apache/mahout/math/AbstractMatrix.java | 17 ++++++++++-------
.../java/org/apache/mahout/math/DenseMatrix.java | 9 ++++++++-
.../java/org/apache/mahout/math/MatrixTest.java | 19 +++++++++----------
.../org/apache/mahout/math/TestDenseMatrix.java | 18 ++++++++++++++++++
.../mahout/vectorizer/encoders/Dictionary.java | 9 ++++-----
.../cf/taste/hadoop/item/IDReaderTest.java | 10 +++++-----
.../cf/taste/impl/common/FastByIDMapTest.java | 6 +++---
.../vectorizer/collocations/llr/GramTest.java | 11 +++++------
8 files changed, 62 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java b/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
index dc9ccd9..eaaa397 100644
--- a/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
+++ b/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
@@ -1,4 +1,4 @@
-/**
+/*
* 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.
@@ -19,11 +19,14 @@ package org.apache.mahout.math;
import com.google.common.collect.AbstractIterator;
import com.google.common.collect.Maps;
-import org.apache.mahout.math.flavor.BackEnum;
import org.apache.mahout.math.flavor.MatrixFlavor;
-import org.apache.mahout.math.flavor.TraversingStructureEnum;
-import org.apache.mahout.math.function.*;
+import org.apache.mahout.math.function.DoubleDoubleFunction;
+import org.apache.mahout.math.function.DoubleFunction;
+import org.apache.mahout.math.function.Functions;
+import org.apache.mahout.math.function.PlusMult;
+import org.apache.mahout.math.function.VectorFunction;
+import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
@@ -127,7 +130,7 @@ public abstract class AbstractMatrix implements Matrix {
@Override
public void set(String rowLabel, int row, double[] rowData) {
if (rowLabelBindings == null) {
- rowLabelBindings = Maps.newHashMap();
+ rowLabelBindings = new HashMap<>();
}
rowLabelBindings.put(rowLabel, row);
set(row, rowData);
@@ -149,11 +152,11 @@ public abstract class AbstractMatrix implements Matrix {
@Override
public void set(String rowLabel, String columnLabel, int row, int column, double value) {
if (rowLabelBindings == null) {
- rowLabelBindings = Maps.newHashMap();
+ rowLabelBindings = new HashMap<>();
}
rowLabelBindings.put(rowLabel, row);
if (columnLabelBindings == null) {
- columnLabelBindings = Maps.newHashMap();
+ columnLabelBindings = new HashMap<>();
}
columnLabelBindings.put(columnLabel, column);
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/math/src/main/java/org/apache/mahout/math/DenseMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/main/java/org/apache/mahout/math/DenseMatrix.java b/math/src/main/java/org/apache/mahout/math/DenseMatrix.java
index 5c1ee12..eac449a 100644
--- a/math/src/main/java/org/apache/mahout/math/DenseMatrix.java
+++ b/math/src/main/java/org/apache/mahout/math/DenseMatrix.java
@@ -18,7 +18,6 @@
package org.apache.mahout.math;
import org.apache.mahout.math.flavor.MatrixFlavor;
-import org.apache.mahout.math.flavor.TraversingStructureEnum;
import java.util.Arrays;
@@ -66,6 +65,14 @@ public class DenseMatrix extends AbstractMatrix {
this.values = new double[rows][columns];
}
+ /**
+ * Returns the backing array
+ * @return double[][]
+ */
+ public double[][] getBackingStructure() {
+ return this.values;
+ }
+
@Override
public Matrix clone() {
DenseMatrix clone = (DenseMatrix) super.clone();
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/math/src/test/java/org/apache/mahout/math/MatrixTest.java
----------------------------------------------------------------------
diff --git a/math/src/test/java/org/apache/mahout/math/MatrixTest.java b/math/src/test/java/org/apache/mahout/math/MatrixTest.java
index 2fbc6b0..fe8ace2 100644
--- a/math/src/test/java/org/apache/mahout/math/MatrixTest.java
+++ b/math/src/test/java/org/apache/mahout/math/MatrixTest.java
@@ -1,4 +1,4 @@
-/**
+/*
* 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.
@@ -17,17 +17,16 @@
package org.apache.mahout.math;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Random;
-
import org.apache.mahout.common.RandomUtils;
import org.apache.mahout.math.function.Functions;
import org.apache.mahout.math.function.VectorFunction;
import org.junit.Before;
import org.junit.Test;
-import com.google.common.collect.Maps;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Random;
public abstract class MatrixTest extends MahoutTestCase {
@@ -590,13 +589,13 @@ public abstract class MatrixTest extends MahoutTestCase {
{1, 4, 2}});
assertNull("row bindings", m.getRowLabelBindings());
assertNull("col bindings", m.getColumnLabelBindings());
- Map<String, Integer> rowBindings = Maps.newHashMap();
+ Map<String, Integer> rowBindings = new HashMap<>();
rowBindings.put("Fee", 0);
rowBindings.put("Fie", 1);
rowBindings.put("Foe", 2);
m.setRowLabelBindings(rowBindings);
assertEquals("row", rowBindings, m.getRowLabelBindings());
- Map<String, Integer> colBindings = Maps.newHashMap();
+ Map<String, Integer> colBindings = new HashMap<>();
colBindings.put("Foo", 0);
colBindings.put("Bar", 1);
colBindings.put("Baz", 2);
@@ -630,13 +629,13 @@ public abstract class MatrixTest extends MahoutTestCase {
{1, 4, 2}});
assertNull("row bindings", m.getRowLabelBindings());
assertNull("col bindings", m.getColumnLabelBindings());
- Map<String, Integer> rowBindings = Maps.newHashMap();
+ Map<String, Integer> rowBindings = new HashMap<>();
rowBindings.put("Fee", 0);
rowBindings.put("Fie", 1);
rowBindings.put("Foe", 2);
m.setRowLabelBindings(rowBindings);
assertEquals("row", rowBindings, m.getRowLabelBindings());
- Map<String, Integer> colBindings = Maps.newHashMap();
+ Map<String, Integer> colBindings = new HashMap<>();
colBindings.put("Foo", 0);
colBindings.put("Bar", 1);
colBindings.put("Baz", 2);
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/math/src/test/java/org/apache/mahout/math/TestDenseMatrix.java
----------------------------------------------------------------------
diff --git a/math/src/test/java/org/apache/mahout/math/TestDenseMatrix.java b/math/src/test/java/org/apache/mahout/math/TestDenseMatrix.java
index ed2a65d..2b950e3 100644
--- a/math/src/test/java/org/apache/mahout/math/TestDenseMatrix.java
+++ b/math/src/test/java/org/apache/mahout/math/TestDenseMatrix.java
@@ -17,6 +17,9 @@
package org.apache.mahout.math;
+import org.junit.Assert;
+import org.junit.Test;
+
public final class TestDenseMatrix extends MatrixTest {
@Override
@@ -24,4 +27,19 @@ public final class TestDenseMatrix extends MatrixTest {
return new DenseMatrix(values);
}
+ @Test
+ public void testGetValues() {
+ DenseMatrix m = new DenseMatrix(10, 10);
+ for (int i = 0; i < 10; i++) {
+ for (int j = 0; j < 10; j++) {
+ m.set(i, j, 10 * i + j);
+ }
+ }
+
+ double[][] values = m.getBackingStructure();
+ Assert.assertEquals(values.length, 10);
+ Assert.assertEquals(values[0].length, 10);
+ Assert.assertEquals(values[9][9], 99.0, 0.0);
+ }
+
}
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/mr/src/main/java/org/apache/mahout/vectorizer/encoders/Dictionary.java
----------------------------------------------------------------------
diff --git a/mr/src/main/java/org/apache/mahout/vectorizer/encoders/Dictionary.java b/mr/src/main/java/org/apache/mahout/vectorizer/encoders/Dictionary.java
index 2ea9b1b..60c89f7 100644
--- a/mr/src/main/java/org/apache/mahout/vectorizer/encoders/Dictionary.java
+++ b/mr/src/main/java/org/apache/mahout/vectorizer/encoders/Dictionary.java
@@ -17,9 +17,8 @@
package org.apache.mahout.vectorizer.encoders;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@@ -27,7 +26,7 @@ import java.util.Map;
* Assigns integer codes to strings as they appear.
*/
public class Dictionary {
- private final Map<String, Integer> dict = Maps.newLinkedHashMap();
+ private final Map<String, Integer> dict = new LinkedHashMap<>();
public int intern(String s) {
if (!dict.containsKey(s)) {
@@ -38,7 +37,7 @@ public class Dictionary {
public List<String> values() {
// order of keySet is guaranteed to be insertion order
- return Lists.newArrayList(dict.keySet());
+ return new ArrayList<>(dict.keySet());
}
public int size() {
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/mr/src/test/java/org/apache/mahout/cf/taste/hadoop/item/IDReaderTest.java
----------------------------------------------------------------------
diff --git a/mr/src/test/java/org/apache/mahout/cf/taste/hadoop/item/IDReaderTest.java b/mr/src/test/java/org/apache/mahout/cf/taste/hadoop/item/IDReaderTest.java
index 650ca98..a1cc648 100644
--- a/mr/src/test/java/org/apache/mahout/cf/taste/hadoop/item/IDReaderTest.java
+++ b/mr/src/test/java/org/apache/mahout/cf/taste/hadoop/item/IDReaderTest.java
@@ -17,13 +17,13 @@
package org.apache.mahout.cf.taste.hadoop.item;
-import java.util.Map;
-
-import com.google.common.collect.Maps;
import org.apache.hadoop.conf.Configuration;
import org.apache.mahout.cf.taste.impl.TasteTestCase;
-import org.junit.Test;
import org.apache.mahout.cf.taste.impl.common.FastIDSet;
+import org.junit.Test;
+
+import java.util.HashMap;
+import java.util.Map;
public class IDReaderTest extends TasteTestCase {
@@ -33,7 +33,7 @@ public class IDReaderTest extends TasteTestCase {
public void testUserItemFilter() throws Exception {
Configuration conf = getConfiguration();
IDReader idReader = new IDReader(conf);
- Map<Long, FastIDSet> userItemFilter = Maps.newHashMap();
+ Map<Long, FastIDSet> userItemFilter = new HashMap<>();
long user1 = 1;
long user2 = 2;
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/mr/src/test/java/org/apache/mahout/cf/taste/impl/common/FastByIDMapTest.java
----------------------------------------------------------------------
diff --git a/mr/src/test/java/org/apache/mahout/cf/taste/impl/common/FastByIDMapTest.java b/mr/src/test/java/org/apache/mahout/cf/taste/impl/common/FastByIDMapTest.java
index 8a4eed6..8195a90 100644
--- a/mr/src/test/java/org/apache/mahout/cf/taste/impl/common/FastByIDMapTest.java
+++ b/mr/src/test/java/org/apache/mahout/cf/taste/impl/common/FastByIDMapTest.java
@@ -1,4 +1,4 @@
-/**
+/*
* 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.
@@ -17,11 +17,11 @@
package org.apache.mahout.cf.taste.impl.common;
-import com.google.common.collect.Maps;
import org.apache.mahout.cf.taste.impl.TasteTestCase;
import org.apache.mahout.common.RandomUtils;
import org.junit.Test;
+import java.util.HashMap;
import java.util.Map;
import java.util.Random;
@@ -103,7 +103,7 @@ public final class FastByIDMapTest extends TasteTestCase {
@Test
public void testVersusHashMap() {
FastByIDMap<String> actual = new FastByIDMap<>();
- Map<Long, String> expected = Maps.newHashMapWithExpectedSize(1000000);
+ Map<Long, String> expected = new HashMap<>(1000000);
Random r = RandomUtils.getRandom();
for (int i = 0; i < 1000000; i++) {
double d = r.nextDouble();
http://git-wip-us.apache.org/repos/asf/mahout/blob/b289f465/mr/src/test/java/org/apache/mahout/vectorizer/collocations/llr/GramTest.java
----------------------------------------------------------------------
diff --git a/mr/src/test/java/org/apache/mahout/vectorizer/collocations/llr/GramTest.java b/mr/src/test/java/org/apache/mahout/vectorizer/collocations/llr/GramTest.java
index 5b0c681..f04d5c6 100644
--- a/mr/src/test/java/org/apache/mahout/vectorizer/collocations/llr/GramTest.java
+++ b/mr/src/test/java/org/apache/mahout/vectorizer/collocations/llr/GramTest.java
@@ -1,4 +1,4 @@
-/**
+/*
* 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.
@@ -17,6 +17,9 @@
package org.apache.mahout.vectorizer.collocations.llr;
+import org.apache.mahout.common.MahoutTestCase;
+import org.junit.Test;
+
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInput;
@@ -26,10 +29,6 @@ import java.io.DataOutputStream;
import java.util.Arrays;
import java.util.HashMap;
-import com.google.common.collect.Maps;
-import org.apache.mahout.common.MahoutTestCase;
-import org.junit.Test;
-
public final class GramTest extends MahoutTestCase {
@Test
@@ -113,7 +112,7 @@ public final class GramTest extends MahoutTestCase {
new Gram("bar", Gram.Type.UNIGRAM)
};
- HashMap<Gram,Gram> map = Maps.newHashMap();
+ HashMap<Gram,Gram> map = new HashMap<>();
for (Gram n : input) {
Gram val = map.get(n);
if (val != null) {