【问题标题】:multi_gpu_model : object of type 'NoneType' has no len()multi_gpu_model : 'NoneType' 类型的对象没有 len()
【发布时间】:2019-10-28 02:28:11
【问题描述】:

我在使用 keras multi_gpu_model 时遇到此错误。如果我消除这一行,代码运行良好。此外,使用 CNN 模型它可以正常工作,只是在密集网络时它会产生错误。你能帮我解决这个问题吗?谢谢。

import numpy as np
import numpy as np
import matplotlib.pyplot as plt
import tensorflow as tf
from keras.models import Sequential
from keras.layers import Dense, Dropout
from keras.layers import LSTM, BatchNormalization,Flatten
from keras.utils.vis_utils import model_to_dot
from keras.optimizers import adam
from keras.models import load_model
import pylab
from sklearn.model_selection import train_test_split
from keras.utils import multi_gpu_model 

from scipy.io import wavfile
X=np.ones(10000)
y=np.zeros(100)
x_train=X
y_train=y
x_train=np.array(x_train)
y_train=np.array(y_train)
x_train.shape=(1,10000)
y_train.shape=(1,100)
model = Sequential()
model.add(Dense(500,activation = 'tanh'))
model.add(Dense(450, activation = 'tanh'))
model.add(Dense(412, activation = 'tanh'))
model.add(Dense(100, activation = 'tanh'))
opt = adam(lr=0.002, decay=1e-6)
model = multi_gpu_model(model, gpus=4)
model.compile(loss='mae', optimizer=opt, metrics=['accuracy'])
model.fit(x_train,y_train,epochs=50, batch_size = 40000)
Error: Traceback (most recent call last):
  File "p.py", line 37, in <module>
    model = multi_gpu_model(model, gpus=4)
  File "/home/ENG/benipas1/anaconda3/envs/new/lib/python3.7/site-packages/keras/utils/multi_gpu_utils.py", line 203, in multi_gpu_model
    for i in range(len(model.outputs)):
TypeError: object of type 'NoneType' has no len()

【问题讨论】:

    标签: tensorflow keras deep-learning gpu


    【解决方案1】:

    问题出在这里:

    model = Sequential()
    model.add(Dense(500,activation = 'tanh'))
    

    您没有为第一层提供输入形状,因此模型的输出完全未定义,model.outputs 为无。如果您向第一层提供输入形状,则定义输出并且它应该可以正常工作。您可能正在为您的 CNN 模型提供输入形状,这就是它起作用的原因:

    model.add(Dense(500,activation = 'tanh', input_shape=(something,)))
    

    【讨论】:

      猜你喜欢
      • 2013-03-14
      • 1970-01-01
      • 1970-01-01
      • 2021-03-03
      • 2012-08-02
      • 2015-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多