【问题标题】:Getting error (numpy.ndarray not callable) in Finding derivative of Sigmoid function在查找 Sigmoid 函数的导数时出现错误(numpy.ndarray 不可调用)
【发布时间】:2023-03-26 22:36:01
【问题描述】:

我是中性网络的新手,正在尝试寻找 sigmoid 函数的导数。请帮我解决这个错误。 我的代码是这样的;

将 numpy 导入为 np

def sigmoid_derivative(x):

a=1/np.exp(x) +1

s=1/a

ds=s(1-s) 

return ds  

x = np.array([1, 2, 3])

print ("sigmoid_derivative(x) = " + str(sigmoid_derivative(x)))

输出:错误,numpy.ndarray 不可调用。

【问题讨论】:

    标签: python numpy


    【解决方案1】:

    首先,你弄错了 sigmoid 函数。

    我的建议是这样的:

    def sigmoid(x):
        return 1.0 / (1.0 + np.exp(-x))
    
    
    def sigmoid_derivative(x):
        return sigmoid(x) * (1 - sigmoid(x))
    

    这里有一个链接可以帮助您更好地理解:Derivative of the Sigmoid function

    【讨论】:

      【解决方案2】:

      在线ds=s(1-s) 你正在调用参数为1-s 的numpy.ndarray s,我认为你需要ds=s * (1-s)

      【讨论】:

        【解决方案3】:

        您缺少乘法运算符:

        ds= s * (1-s) 
        

        【讨论】:

          猜你喜欢
          • 2017-10-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-09-04
          • 2021-06-11
          • 2020-12-14
          • 1970-01-01
          • 2011-01-08
          相关资源
          最近更新 更多