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'

你可能感兴趣的:(numpy.exp函数出现 'Float' object has no attribute 'exp'的情况)