学习随机多维函数(回归)的Keras
我用Keras来学习随机函数的曲面。基本上,我是采样一堆点作为训练数据。我正在使用以下代码生成网络学习随机多维函数(回归)的Keras,keras,regression,keras-layer,Keras,Regression,Keras Layer,我用Keras来学习随机函数的曲面。基本上,我是采样一堆点作为训练数据。我正在使用以下代码生成网络 def create_model(optimizer='adam'): model = Sequential() units = 100 dim= 6 dropout= 1 ## making the model graph, Stacking layers is done by .add(): model.add(Dense(units=units
def create_model(optimizer='adam'):
model = Sequential()
units = 100
dim= 6
dropout= 1
## making the model graph, Stacking layers is done by .add():
model.add(Dense(units=units, input_dim=dim, activation='sigmoid'))
model.add(Dropout(dropout))
model.add(Dense(units=units, activation='sigmoid'))
model.add(Dropout(dropout))
model.add(Dense(units=units, activation="sigmoid"))
model.add(Dropout(dropout))
model.add(Dense(units=1, activation = 'linear'))
# optmiser = keras.optimizers.RMSprop(lr=0.001, rho=0.9, epsilon=1e-08, decay=0.0)
# optmiser = keras.optimizers.Adam(lr=0.001, beta_1=0.9, beta_2=0.999, epsilon=1e-08, decay=0.0)
# configure the model's learning process; loss and optimisation etc
model.compile(loss='mse',
optimizer=optimizer, metrics=["accuracy"])
return model
我在培训期间收到以下日志
451/667 [===================>..........] - ETA: 0s - loss: nan - acc: 0.0000e+00
我认为我在创建网络或选择不同的参数时犯了错误。感谢您的帮助。
谢谢,要删除的
输入表示要删除的输入单位的分数(请参阅)。因此,通过这样做
model.add(Dropout(dropout))
使用dropout=1
,您基本上可以扔掉所有单元。你需要选择辍学
严格小于1。p=1的辍学意味着网络什么也学不到。是的,这是个问题。谢谢。谢谢你的快速回复。这就解决了问题。我还发现我使用的是metrics=[“accurity”]
,这在本例中是错误的,因为这是一项回归任务。