You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by GitBox <gi...@apache.org> on 2020/03/13 07:36:40 UTC

[GitHub] [incubator-mxnet] Tommliu opened a new pull request #17824: [Numpy] FFI: max/min/amax/amin

Tommliu opened a new pull request #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824
 
 
   ## Description ##
   New FFI imperative invocation for max, min ,amax, amin
   ## Checklist ##
   ### Essentials ###
   Please feel free to remove inapplicable items for your PR.
   - [ ] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant [JIRA issue](https://issues.apache.org/jira/projects/MXNET/issues) created (except PRs with tiny changes)
   - [ ] Changes are complete (i.e. I finished coding on this PR)
   - [ ] All changes have test coverage:
   - Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
   - Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
   - Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
   - [ ] Code is well-documented: 
   - For user-facing API changes, API doc string has been updated. 
   - For new C++ functions in header files, their functionalities and arguments are documented. 
   - For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
   - Check the API doc at https://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
   - [ ] To the best of my knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change
   
   ### Changes ###
   - [ ] Feature1, tests, (and when applicable, API doc)
   - [ ] Feature2, tests, (and when applicable, API doc)
   
   ## Comments ##
   - If this change is a backward incompatible change, why must this change be made.
   - Interesting edge cases to note here
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-603635923
 
 
   Jenkins CI successfully triggered : [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-603602555
 
 
   @mxnet-bot run ci [unix-gpu, windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] haojin2 commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
haojin2 commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-615063945
 
 
   @mxnet-bot run ci [unix-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-603673196
 
 
   Jenkins CI successfully triggered : [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-604193126
 
 
   Jenkins CI successfully triggered : [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-603602590
 
 
   Jenkins CI successfully triggered : [windows-gpu, unix-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-615063972
 
 
   Jenkins CI successfully triggered : [unix-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-610187308
 
 
   @mxnet-bot run ci [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-603673171
 
 
   @mxnet-bot run ci [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-603635902
 
 
   @mxnet-bot run ci [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] haojin2 commented on a change in pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
haojin2 commented on a change in pull request #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#discussion_r392515930
 
 

 ##########
 File path: python/mxnet/numpy/multiarray.py
 ##########
 @@ -6450,6 +6578,132 @@ def argmin(a, axis=None, out=None):
     return _mx_nd_np.argmin(a, axis, out)
 
 
+@set_module('mxnet.numpy')
+def amax(a, axis=None, out=None, keepdims=False):
+    """
+    Return the maximum of an array or maximum along an axis.
+
+    Parameters
+    ----------
+    a : ndarray
+        Input data.
+    axis : int, optional
+        Axis along which to operate.  By default, flattened input is used.
+    out : ndarray, optional
+        Alternative output array in which to place the result.  Must
+        be of the same shape and buffer length as the expected output.
+        See `doc.ufuncs` (Section "Output arguments") for more details.
+    keepdims : bool, optional
+        If this is set to True, the axes which are reduced are left
+        in the result as dimensions with size one. With this option,
+        the result will broadcast correctly against the original `arr`.
+
+    Returns
+    -------
+    max : ndarray
+        Maximum of `a`. If `axis` is None, the result is an array of dimension 1.
+        If `axis` is given, the result is an array of dimension
+        ``a.ndim - 1``.
+
+    See Also
+    --------
+    min :
+        The minimum value of an array along a given axis, ignoring any nan.
+    maximum :
+        Element-wise maximum of two arrays, ignoring any nan.
+    argmax :
+        Return the indices of the maximum values.
+
+    Notes
+    -----
+    NaN in the orginal `numpy` is denoted as nan and will be ignored.
+
+    Don't use `max` for element-wise comparison of 2 arrays; when
+    ``a.shape[0]`` is 2, ``maximum(a[0], a[1])`` is faster than
+    ``max(a, axis=0)``.
+
+    Examples
+    --------
+    >>> a = np.arange(4).reshape((2,2))
+    >>> a
+    array([[0., 1.],
+        [2., 3.]])
+    >>> np.max(a)            # Maximum of the flattened array
+    array(3.)
+    >>> np.max(a, axis=0)    # Maxima along the first axis
+    array([2., 3.])
+    >>> np.max(a, axis=1)    # Maxima along the second axis
+    array([1., 3.])
+
+    >>> b = np.arange(5, dtype=np.float32)
+    >>> b[2] = np.nan
+    >>> np.max(b)
+    array(4.)
+    """
+    return _mx_nd_np.amax(a, axis=axis, out=out, keepdims=keepdims)
+
+
+@set_module('mxnet.numpy')
+def amin(a, axis=None, out=None, keepdims=False):
+    """
+    Return the minimum of an array or minimum along an axis.
+
+    Parameters
+    ----------
+    a : ndarray
+        Input data.
+    axis : int, optional
+        Axis along which to operate.  By default, flattened input is used.
+    out : ndarray, optional
+        Alternative output array in which to place the result.  Must
+        be of the same shape and buffer length as the expected output.
+        See `doc.ufuncs` (Section "Output arguments") for more details.
+    keepdims : bool, optional
+        If this is set to True, the axes which are reduced are left
+        in the result as dimensions with size one. With this option,
+        the result will broadcast correctly against the original `arr`.
+
+    Returns
+    -------
+    min : ndarray
+        Minimum of `a`. If `axis` is None, the result is an array of dimension 1.
+        If `axis` is given, the result is an array of dimension
+        ``a.ndim - 1``.
+
+    See Also
+    --------
+    max :
+        The maximum value of an array along a given axis, ignoring any nan.
+    minimum :
+        Element-wise minimum of two arrays, ignoring any nan.
+
+    Notes
+    -----
+    NaN in the orginal `numpy` is denoted as nan and will be ignored.
+
+    Don't use `min` for element-wise comparison of 2 arrays; when
+    ``a.shape[0]`` is 2, ``minimum(a[0], a[1])`` is faster than
+    ``min(a, axis=0)``.
+
+    Examples
+    --------
+    >>> a = np.arange(4).reshape((2,2))
+    >>> a
+    array([[0., 1.],
+        [2., 3.]])
+    >>> np.min(a)           # Minimum of the flattened array
+    array(0.)
+    >>> np.min(a, axis=0)   # Minima along the first axis
+    array([0., 1.])
+    >>> np.min(a, axis=1)   # Minima along the second axis
+    array([0., 2.])
+    >>> b = np.arange(5, dtype=np.float32)
+    >>> b[2] = np.nan
+    >>> np.min(b)
+    array(0.) # nan will be ignored
+    """
+    return _mx_nd_np.amin(a, axis=axis, out=out, keepdims=keepdims)
+
 
 Review comment:
   one more blank line below.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-604193100
 
 
   @mxnet-bot run ci [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] haojin2 commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
haojin2 commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-614999648
 
 
   @mxnet-bot run ci [unix-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-614999679
 
 
   Jenkins CI successfully triggered : [unix-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-610187340
 
 
   Jenkins CI successfully triggered : [windows-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] haojin2 commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
haojin2 commented on issue #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-615466985
 
 
   @mxnet-bot run ci [unix-gpu]

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] haojin2 commented on a change in pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
haojin2 commented on a change in pull request #17824: [Numpy] FFI: max/min/amax/amin
URL: https://github.com/apache/incubator-mxnet/pull/17824#discussion_r392519458
 
 

 ##########
 File path: python/mxnet/symbol/numpy/_symbol.py
 ##########
 @@ -581,7 +582,7 @@ def argmin(self, axis=None, out=None):  # pylint: disable=arguments-differ
         Refer to `mxnet.numpy.argmax` for full documentation."""
         return argmin(self, axis, out)
 
-    def clip(self, min=None, max=None, out=None):  # pylint: disable=arguments-differ
+    def clip(self, min=None, max=None, out=None):  # pylint: disable=arguments-differ,redefined-outer-name
 
 Review comment:
   add a space before `redefined-outer-name`

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

[GitHub] [incubator-mxnet] Tommliu commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on issue #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-616284062


   @mxnet-bot run ci [unix-gpu]


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-mxnet] mxnet-bot commented on issue #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on issue #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-616284075


   Jenkins CI successfully triggered : [unix-gpu]


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-mxnet] Tommliu commented on pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on pull request #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-621873290


   @haojin2 last FFI Pr to be merged


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-mxnet] yzhliu merged pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
yzhliu merged pull request #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824


   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-mxnet] mxnet-bot commented on pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
mxnet-bot commented on pull request #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-621592604


   Jenkins CI successfully triggered : [website, centos-cpu, unix-gpu, windows-cpu, sanity, unix-cpu]


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-mxnet] Tommliu commented on pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on pull request #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-621592566


   @mxnet-bot run ci [unix-gpu, unix-cpu, centos-cpu, website, windows-cpu, sanity]


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-mxnet] Tommliu commented on pull request #17824: [Numpy] FFI: max/min/amax/amin

Posted by GitBox <gi...@apache.org>.
Tommliu commented on pull request #17824:
URL: https://github.com/apache/incubator-mxnet/pull/17824#issuecomment-625005148


   @haojin2 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org