K4RRA 2022-10-03 14:28 采纳率: 100%
浏览 18
已结题

使用Python建立ReLU层时遇到的问题

在学习Python建立ReLU层时,看到书上的一串代码,大意是设置一个mask作为判断输入的numpy.array中的值是否大于0的标志,若大于0则mask为False,小于等于0则mask为True,并将所有mask为True的输出值置0。代码如下:

import numpy as np


class ReLU:
    def __init__(self):
        self.mask = None

    def forward(self,  x):
        self.mask = (x <= 0)
        out = x.copy
        out[self.mask] = 0
        return out

    def backward(self, dout):
        dout[self.mask] = 0
        return dout

re = ReLU()
x = np.array([[-1, 1], [3, -2]])
output = re.forward(x)
print(output)

但是运行之后的报错信息如下:

Traceback (most recent call last):
  File "路径", line 20, in <module>
    output = re.forward(x)
  File "路径", line 11, in forward
    out[self.mask] = 0
TypeError: 'builtin_function_or_method' object does not support item assignment

Process finished with exit code 1

请教一下如何解决问题

  • 写回答

1条回答 默认 最新

  • Elwin Wong 2022-10-03 23:48
    关注

    out = x.copy这一句copy后面少了小括号,应该是out = x.copy()

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月13日
  • 已采纳回答 10月5日
  • 修改了问题 10月3日
  • 创建了问题 10月3日

悬赏问题

  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果
  • ¥15 html5+css和javascript有人可以帮吗?图片要怎么插入代码里面啊
  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算