gpt4 book ai didi

python - Numpy AttributeError : 'float' object has no attribute 'exp'

转载 作者:IT老高 更新时间:2023-10-28 20:22:38 33 4
gpt4 key购买 nike

这是我的代码:

def sigmoid(X, T): 
return (1.0 / (1.0 + np.exp(-1.0*np.dot(X, T))))

这行给了我错误

"AttributeError: 'float' object has no attribute 'exp'". X, t are Numpy ndarray.

最佳答案

X 和/或 T 的输入值可能有问题。问题中的函数工作正常:

import numpy as np
from math import e

def sigmoid(X, T):
return 1.0 / (1.0 + np.exp(-1.0 * np.dot(X, T)))

X = np.array([[1, 2, 3], [5, 0, 0]])
T = np.array([[1, 2], [1, 1], [4, 4]])

print(X.dot(T))
# Just to see if values are ok
print([1. / (1. + e ** el) for el in [-5, -10, -15, -16]])
print()
print(sigmoid(X, T))

结果:

[[15 16]
[ 5 10]]

[0.9933071490757153, 0.9999546021312976, 0.999999694097773, 0.9999998874648379]

[[ 0.99999969 0.99999989]
[ 0.99330715 0.9999546 ]]

可能是输入数组的 dtype。将 X 更改为:

X = np.array([[1, 2, 3], [5, 0, 0]], dtype=object)

给予:

Traceback (most recent call last):
File "/[...]/stackoverflow_sigmoid.py", line 24, in <module>
print sigmoid(X, T)
File "/[...]/stackoverflow_sigmoid.py", line 14, in sigmoid
return 1.0 / (1.0 + np.exp(-1.0 * np.dot(X, T)))
AttributeError: exp

关于python - Numpy AttributeError : 'float' object has no attribute 'exp' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18557337/

33 4 0
文章推荐: java - AES/CBC 和 AES/ECB 加密后的数据大小
文章推荐: java - 在 Maven 中仅编译选定的文件
文章推荐: java - 如何处理 Selenium 中的打印对话框?
文章推荐: python - Django:使用