You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/03/26 04:35:42 UTC
[jira] [Commented] (MAHOUT-1960) Flipped sign in the
SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
[ https://issues.apache.org/jira/browse/MAHOUT-1960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15942134#comment-15942134 ]
ASF GitHub Bot commented on MAHOUT-1960:
----------------------------------------
GitHub user andrewpalumbo opened a pull request:
https://github.com/apache/mahout/pull/298
MAHOUT-1960 fix flipped sign in example.
Fix flipped sign.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/andrewpalumbo/mahout MAHOUT-1960
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/mahout/pull/298.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #298
----
commit 8429fa9fdad89f8c99e4fa176a182df3cf8b5f42
Author: Andrew Palumbo <ap...@apache.org>
Date: 2017-03-26T04:23:38Z
fix flipped sign in example.
----
> Flipped sign in the SparseSparseDrmTimer.mscala causes Desnse Matrix multiplication
> -----------------------------------------------------------------------------------
>
> Key: MAHOUT-1960
> URL: https://issues.apache.org/jira/browse/MAHOUT-1960
> Project: Mahout
> Issue Type: Bug
> Affects Versions: 0.13.0
> Reporter: Andrew Palumbo
> Assignee: Andrew Palumbo
> Priority: Blocker
> Fix For: 0.13.0
>
>
> In {{SparseSparseDrmTimer.mscala}} with the signature:
> def timeSparseDRMMMul(m: Int, n: Int, s: Int, para: Int, pctDense: Double = .20, seed: Long = 1234L): Long = {
> the {{pctDense}} argument indicates the percent of nonZero elements in the matrix.
> As is the code to produce a random DRM for testing is as follows:
> {code}
> val drmA = drmParallelizeEmpty(m , s, para).mapBlock(){
> case (keys,block:Matrix) =>
> val R = scala.util.Random
> R.setSeed(seed)
> val blockB = new SparseRowMatrix(block.nrow, block.ncol)
> blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
> (keys -> blockB)
> }
> {code}
> The greater than sign in line:
> blockB := {x => if (R.nextDouble > pctDense) R.nextDouble else x }
> should be a less than sign; i.e.:
> blockB := {x => if (R.nextDouble < pctDense) R.nextDouble else x }
> This incorrect sign produces matrices of Incorrect density and can cause OOM errors.
>
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)