[
https://issues.apache.org/jira/browse/MAHOUT-790?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095252#comment-13095252
]
Hudson commented on MAHOUT-790:
-------------------------------
Integrated in Mahout-Quality #1012 (See
[https://builds.apache.org/job/Mahout-Quality/1012/])
MAHOUT-790 - kill the cardinality array and size() for matrices. Use
rowSize() and columnSize() instead.
MAHOUT-792 - Fix RTM to avoid size() and cardinality array.
MAHOUT-790 - More get/view changes
MAHOUT-790 - collapse get{Row,Column} to view{Row,Column}, kill addTo
MAHOUT-790 - Fixed copyright and license on QRDecomposition and SVDDecomposition
MAHOUT-790 - Copyright format cleanup
MAHOUT-790 - Matrix cleanups.
MAHOUT-790 - Add some vector and matrix types to simplify certain manipulations.
MAHOUT-790 - Add view for diagonal of a matrix.
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164016
Files :
*
/mahout/trunk/core/src/main/java/org/apache/mahout/cf/taste/hadoop/als/eval/InMemoryFactorizationEvaluator.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/bayes/InMemoryBayesDatastore.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/discriminative/LinearTrainer.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/naivebayes/NaiveBayesModel.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/naivebayes/training/TrainUtils.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/sequencelearning/hmm/HmmUtils.java
* /mahout/trunk/core/src/main/java/org/apache/mahout/math/MatrixWritable.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/decomposer/EigenVerificationJob.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/UpperTriangular.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJobTest.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/DenseMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/DiagonalMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/Matrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/MatrixView.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/PermutedVectorView.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/PivotedMatrix.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/RandomAccessSparseVector.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/RandomTrinaryMatrix.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/SequentialAccessSparseVector.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/SparseMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/SparseRowMatrix.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/AbstractTestVector.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/TestMatrixView.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/TestSparseColumnMatrix.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/TestSparseMatrix.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/TestSparseRowMatrix.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/TestVectorView.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/als/AlternateLeastSquaresSolverTest.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/decomposer/SolverTest.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164015
Files :
*
/mahout/trunk/core/src/main/java/org/apache/mahout/clustering/lda/LDAInference.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/DiagonalMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/PivotedMatrix.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164014
Files :
*
/mahout/trunk/core/src/main/java/org/apache/mahout/cf/taste/hadoop/als/eval/InMemoryFactorizationEvaluator.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/AbstractVectorClassifier.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/discriminative/LinearTrainer.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/naivebayes/NaiveBayesModel.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/naivebayes/training/WeightsMapper.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/sgd/AbstractOnlineLogisticRegression.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/sgd/GradientMachine.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/classifier/sgd/PassiveAggressive.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/clustering/AbstractCluster.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/clustering/RunningSumsGaussianAccumulator.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/common/mapreduce/VectorSumReducer.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/MatrixMultiplicationJob.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/TimesSquaredJob.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/GivensThinSolver.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/SSVDPrototype.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/UJob.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/UpperTriangular.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/math/hadoop/stochasticsvd/VJob.java
*
/mahout/trunk/core/src/main/java/org/apache/mahout/vectorizer/common/PartialVectorMergeReducer.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/hadoop/als/ParallelALSFactorizationJobTest.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/classifier/discriminative/PerceptronTrainerTest.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/classifier/discriminative/WinnowTrainerTest.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/classifier/sgd/OnlineBaseTest.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/clustering/TestGaussianAccumulators.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/decomposer/TestDistributedLanczosSolverCLI.java
*
/mahout/trunk/core/src/test/java/org/apache/mahout/math/hadoop/stochasticsvd/SSVDPrototypeTest.java
*
/mahout/trunk/examples/src/main/java/org/apache/mahout/clustering/display/DisplayMeanShift.java
*
/mahout/trunk/integration/src/test/java/org/apache/mahout/clustering/TestClusterDumper.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractVector.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/Algebra.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/DenseMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/DenseVector.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/Matrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/MatrixVectorView.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/MatrixView.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/NamedVector.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/RandomAccessSparseVector.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/SparseColumnMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/SparseMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/SparseRowMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/Vector.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/VectorView.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/als/AlternateLeastSquaresSolver.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/HebbianSolver.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/decomposer/hebbian/TrainingState.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/TestMatrixView.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/VectorTest.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/decomposer/SolverTest.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164013
Files :
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/QRDecomposition.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/SingularValueDecomposition.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164012
Files :
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/TestSingularValueDecomposition.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164011
Files :
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/MatrixTest.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164010
Files :
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/ConstantVector.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/DiagonalMatrix.java
*
/mahout/trunk/math/src/main/java/org/apache/mahout/math/PermutedVectorView.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/PivotedMatrix.java
*
/mahout/trunk/math/src/test/java/org/apache/mahout/math/PermutedVectorViewTest.java
* /mahout/trunk/math/src/test/java/org/apache/mahout/math/PivotedMatrixTest.java
tdunning :
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164009
Files :
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/AbstractMatrix.java
* /mahout/trunk/math/src/main/java/org/apache/mahout/math/Matrix.java
> Redundancy in Matrix API, view or get?
> --------------------------------------
>
> Key: MAHOUT-790
> URL: https://issues.apache.org/jira/browse/MAHOUT-790
> Project: Mahout
> Issue Type: Improvement
> Affects Versions: 0.5
> Reporter: Ted Dunning
> Assignee: Ted Dunning
> Fix For: 0.6
>
> Attachments: MAHOUT-790.patch
>
>
> We have a bunch of redundant methods in our matrix interface. These include
> things that return views of parts of the matrix:
> {code}
> Matrix viewPart(int[] offset, int[] size);
> Matrix viewPart(int rowOffset, int rowsRequested, int columnOffset, int
> columnsRequested);
> Vector viewRow(int row);
> Vector viewColumn(int column);
> {code}
> and things that do the same but call refer to getting stuff
> {code}
> Vector getColumn(int column);
> Vector getRow(int row);
> double getQuick(int row, int column);
> int[] getNumNondefaultElements();
> Map<String, Integer> getColumnLabelBindings();
> Map<String, Integer> getRowLabelBindings();
> double get(String rowLabel, String columnLabel);
> {code}
> To my mind, get implies a get-by-value whereas view implies get-by-reference.
> As such, I would suggest that getColumn and getRow should disappear. On the
> other hand, getQuick and get are both correctly named.
> This raises the question of what getNumNondefaultElements really does. I
> certainly can't tell just from the signature. Is it too confusing to keep?
> Additionally, what do people think that getColumnLabelBindings and
> getRowLabelBindings return? A mutable map? Or an immutable one?
> Under the covers, viewRow and viewColumn (and the upcoming viewDiagonal) have
> default implementations that use MatrixVectorView, but AbstractMatrix doesn't
> have an implementation for getRow and getColumn.
> In sum, I suggest that:
> - getRow and getColumn go away
> - the fancy fast implementations fo getRow and getColumn that exist be
> migrated to be over-rides of viewRow and viewColumn
> - there be a constructor for AbstractMatrix that sets the internal size
> things correctly.
> - that the internal cardinality array in AbstractMatrix goes away to be
> replaced by two integers.
> - viewDiagonal() and viewDiagonal(length) and viewDiagonal(row, column) and
> viewDiagonal(int row, column, length) be added.
> I will produce a patch shortly.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira