小编use*_*467的帖子

如何在python中实现Leaky Relu的派生词?

如何在不使用Tensorflow的情况下在Python中实现Leaky ReLU的派生类?

有没有比这更好的方法了?我希望函数返回一个numpy数组

def dlrelu(x, alpha=.01):
     # return alpha if x < 0 else 1

     return np.array ([1 if i >= 0 else alpha for i in x])
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的帮助

python neural-network activation-function

6
推荐指数
1
解决办法
3969
查看次数

Keras MNIST目标向量自动转换为one-hot?

mnist当我从 Keras加载数据集时,我得到 4 个变量 -

(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()
Run Code Online (Sandbox Code Playgroud)

的形状x_train(60000, 28, 28),这是有道理的,因为它包含 60,000 张 28x28 图片

的形状y_train正好(60000,)表明它是一个包含数字目标标签(0-9)的一维向量。

为了进行数字分类,神经网络通常输出一个具有十个维度的单热编码向量。我认为我需要使用to_categorical将 y 目标从数值转换为分类,以便使神经网络的形状输出与训练样本相匹配,这可能是(60000, 10)

但在我在网上找到的一些示例中,to_categorical从未用于重塑训练向量。当神经网络的输出层y_train.shape保持不变时(60000,)

 model.add(Dense(10, activation="softmax"))
Run Code Online (Sandbox Code Playgroud)

它输出一个 10-D one-hot 向量。

然后他们简单地训练模型就y_train没有问题

model.fit(x_train, y_train, epochs=2, validation_data=(x_test, y_test))
Run Code Online (Sandbox Code Playgroud)

这怎么可能?神经网络的输出形状是否会与 不(60000, 10)兼容(60000,)?或者 Keras 是否自动将分类输出转换为数字?

编辑:更清楚地说,我知道如何对其进行一次性编码,但我的问题是为什么他们不这样做。在该示例中,网络在没有对目标类进行 one-hot 编码的情况下工作,而网络的输出显然是 one-hot 编码的。

编辑:罗辛是对的。这只是使用sparse_crossentropy损失的效果,而不是分类损失。

python neural-network keras tensorflow

5
推荐指数
1
解决办法
5652
查看次数

Pygame AttributeError:'module'对象没有属性'copy'

我有一个问题 - 当我运行我的pygame程序时,它有一个我在代码中找不到的错误.Error: 'module' object has no attribute 'copy'.我发现代码没有任何问题.有人可以帮我修复错误/错误吗?

pygame module python-2.5 attributeerror traceback

4
推荐指数
1
解决办法
5139
查看次数