Python 如何为神经网络创建一个最小且可重复的示例?
我想知道如何为堆栈溢出创建一个最小且可复制的深度学习示例。我想确保人们有足够的信息来查明我的代码的确切问题。仅仅提供回溯就足够了吗Python 如何为神经网络创建一个最小且可重复的示例?,python,tensorflow,keras,neural-network,pytorch,Python,Tensorflow,Keras,Neural Network,Pytorch,我想知道如何为堆栈溢出创建一个最小且可复制的深度学习示例。我想确保人们有足够的信息来查明我的代码的确切问题。仅仅提供回溯就足够了吗 c:\users\samuel\appdata\local\programs\python\python35\lib\site packages\keras\engine\training\u utils.py 在标准化中输入数据(数据、名称、形状、检查批处理轴、异常前缀) 135':预期“+名称[i]+”具有形状”+ 136 str(shape)+'但是得到了带有
c:\users\samuel\appdata\local\programs\python\python35\lib\site packages\keras\engine\training\u utils.py
在标准化中输入数据(数据、名称、形状、检查批处理轴、异常前缀)
135':预期“+名称[i]+”具有形状”+
136 str(shape)+'但是得到了带有shape的数组'+
-->137 str(数据_形))
138返回数据
139
还是我应该简单地发布错误消息
值错误:检查输入时出错:预期密集\u 1\u输入具有形状
(4,)但得到了形状为(1,)的数组
以下是制作一个可重复的、最少深度学习示例的一些技巧。无论是对于
Keras
,Pytorch
,还是Tensorflow
,这都是一个很好的建议
- 我们无法使用您的数据,但在大多数情况下,这并不重要。我们需要的只是正确的形状。
- 使用随机生成的正确形状的数字。
- 例如,
100张大小为30x30的彩色图片np.random.randint(0,256,(100,30,30,3)
- 例如,
10类100个样本np.random.choice(np.arange(10),100)
- 例如,
- 使用随机生成的正确形状的数字。
- 我们不需要看到你的整个管道。
- 只提供运行代码的最低要求。
- 充分利用
及其调试功能。Keras
- 包括回溯。它很可能会指出确切的问题
- 神经网络都是关于拟合正确的形状。
- 至少应始终提供输入形状。
- 使其易于测试和复制。
- 发布您的整个神经网络架构。
- 包括库导入。定义所有变量。
我有一个错误。当我运行此代码时,它会给我以下错误: ValueError:检查目标时出错:预期稠密_2具有形状(10),但获得具有形状的数组 “这是我的体系结构,包含生成的数据:”
将numpy导入为np
进口干酪
从keras.models导入顺序
从keras.layers导入稠密、平坦、Conv2D、MaxPoolig2D
xtrain,xtest=np.random.rand(2,1000,30,30,3)
ytrain,ytest=np.random.choice(np.arange(10),2000)。重塑(2100)
模型=顺序([
Conv2D(32,内核大小=(3,3),激活='relu',输入形状=xtrain.shape[1:]),
Conv2D(64,(3,3),activation='relu'),
MaxPoolig2D(池大小=(2,2)),
展平(),
稠密(128,活化='relu'),
密集型(10,激活='softmax'))
model.compile(loss=keras.loss.categorical_交叉熵,
optimizer=keras.optimizers.Adam(),
指标=[‘准确度’])
模型拟合(xtrain、ytrain、,
批次尺寸=16,
纪元=10,
验证_数据=(xtest,ytest))