DeprecationWarning:应该使用 'shape' 参数而不是 'dims'

DeprecationWarning: 'shape' argument should be used instead of 'dims'

在我的梯度下降实践中,要在 3d 图形中绘制 MSE,使用以下代码:

ij_min = np.unravel_index(indices=plot_cost.argmin(), dims=plot_cost.shape)

ij_min 是线性回归中的 theta0 和 theta1 值,而 plot_cost 是 MSE 数组。

虽然 运行 上述命令,但我收到以下弃用警告:

:2:弃用警告:应使用 'shape' 参数而不是 'dims'

我很困惑应该用什么来代替 dims=plot_cost.shape。

有人可以帮忙吗?

您已经粘贴了两次代码。您收到的警告与标题相同吗? = DeprecationWarning:应该使用 'shape' 参数而不是 'dims'

DeprecationWarning 表示关键字参数 dims 可用,但不鼓励使用它,因为它将在未来的版本中删除。应该使用 shape 而不是 dims。可以这样做:

ij_min = np.unravel_index(indices=plot_cost.argmin(), shape=plot_cost.shape)

help 函数是检查 Python 函数和 类.

的 public 文档的有用工具
help(np.unravel_index)
Help on function unravel_index in module numpy:

unravel_index(...)
    unravel_index(indices, shape, order='C')

    Converts a flat index or array of flat indices into a tuple
    of coordinate arrays.

    Parameters
    ----------
    indices : array_like
        An integer array whose elements are indices into the flattened
        version of an array of dimensions ``shape``. Before version 1.6.0,
        this function accepted just one index value.
    shape : tuple of ints
        The shape of the array to use for unraveling ``indices``.

        .. versionchanged:: 1.16.0
            Renamed from ``dims`` to ``shape``.

    order : {'C', 'F'}, optional
        Determines whether the indices should be viewed as indexing in
        row-major (C-style) or column-major (Fortran-style) order.

        .. versionadded:: 1.6.0

    Returns
    -------
    unraveled_coords : tuple of ndarray
        Each array in the tuple has the same shape as the ``indices``
        array.

    See Also
    --------
    ravel_multi_index

    Examples
    --------
    >>> np.unravel_index([22, 41, 37], (7,6))
    (array([3, 6, 6]), array([4, 5, 1]))
    >>> np.unravel_index([31, 41, 13], (7,6), order='F')
    (array([3, 6, 6]), array([4, 5, 1]))

    >>> np.unravel_index(1621, (6,7,8,9))
    (3, 1, 4, 1)

您会注意到 dims 在我的 numpy 1.18.1 版本中不可用。 help 输出表明 dims 在版本 1.16.0 中被删除。