[ 
https://issues.apache.org/jira/browse/SYSTEMML-1076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mike Dusenberry updated SYSTEMML-1076:
--------------------------------------
    Affects Version/s: SystemML 0.11

> Sparse Max Pooling Unsupported
> ------------------------------
>
>                 Key: SYSTEMML-1076
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-1076
>             Project: SystemML
>          Issue Type: Bug
>    Affects Versions: SystemML 0.11
>            Reporter: Mike Dusenberry
>            Priority: Blocker
>
> Currently, our max pooling built-in operator does not support sparse 
> matrices.  However, sparse matrices are a common possibility in neural nets 
> that make use of ReLU and Dropout layers, and are likely to happen at random 
> depending on exact characteristics of intermediate matrices during training.  
> Therefore, we should accept sparse matrices as input.
> {code}
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: Sparse 
> maxpooling_backward is not supported
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.maxpooling_backward(LibMatrixDNN.java:526)
>       at 
> org.apache.sysml.runtime.instructions.cp.ConvolutionCPInstruction.processInstruction(ConvolutionCPInstruction.java:205)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:305)
>       ... 26 more
> {code}
> Reproducible example (Python):
> {code}
> script = """
> N = 2
> C = 3
> Hin = 10
> Win = 10
> Hout = 5
> Wout = 5
> f = 2
> stride = 2
> X = matrix(0, rows=N, cols=C*Hin*Win)
> dout = matrix(0, rows=N, cols=C*Hout*Wout)
> out = max_pool_backward(X, dout, input_shape=[N,C,Hin,Win], pool_size=[f,f], 
> stride=[stride,stride], padding=[0,0])
> """
> script = dml(script).output("out")
> out = ml.execute(script).get("out")
> l = out.toDF().collect()
> l
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to