numpy.exp函数出现 'Float' object has no attribute 'exp'的情况

问题描述:

在python是使用自定义sigmoid函数的时候,输入X为matrix,会出现'Float' object has no attribute 'exp'的情况。

def sigmoid(inp):
    return 1.0/(1 + np.exp(-inp))

发现用手动生成matrix数据带入这个函数也没问题,然后通过查找numpy.mat函数发现

numpy.mat(data, dtype=None)[source]

Interpret the input as a matrix.

Unlike matrix, asmatrix does not make a copy if the input is already a matrix or an ndarray. Equivalent to matrix(data, copy=False).

Parameters:

data : array_like

Input data.

dtype : data-type

Data-type of the output matrix.

Returns:

mat : matrix

data interpreted as a matrix.

默认的dtype是None,所以在生成matrix的时候将dtype加上类型,问题决解。比如  Xmat = numpy.mat(_x, dtype=float),然后将Xmat带入sigmoid函数,没有发现问题。

AttributeError: 'Float' object has no attribute 'exp'
发布了10 篇原创文章 · 获赞 11 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/u013323018/article/details/90711888