0

代码:

train_X, val_X, train_y, val_y 
train_X = np.array(train_X)
train_y = np.array(train_y)
val_X  = np.array(val_X)
val_y  = np.array(val_y)

k = 5
num_val_samples = len(train_X) // k
num_epochs = 100
all_scores = []
for i in range(k):
    print(f"Processing fold #{i}")
    val_data = train_X[i * num_val_samples: (i + 1) * num_val_samples]
    val_targets = val_X[i * num_val_samples: (i + 1) * num_val_samples]
    partial_train_X = np.concatenate(
        [train_X[:i * num_val_samples],
         train_X[(i + 1) * num_val_samples:]],
        axis=0)
    partial_val_X = np.concatenate(
        [val_X[:i * num_val_samples],
         val_X[(i + 1) * num_val_samples:]],
        axis=0)
    model = build_model()
   
    model.fit(partial_train_X, partial_val_X,
              epochs=num_epochs, batch_size=16, verbose=0)   
    val_mse, val_mae = model.evaluate(val_data, val_targets, verbose=0)
    all_scores.append(val_mae)

错误:

> ...  model.fit(partial_train_X, partial_val_X,
> 
> --- 26               epochs=num_epochs, batch_size=16, verbose=0)   ....
> 
> ValueError: Data cardinality is ambiguous:   x sizes: 876   y sizes:
> 146 
> Make sure all arrays contain the same number of samples.

我尝试了之前谈到的解决方案。(比如,np.array(train_X)。但我还是无法修复它。一直以来,我也无法配置批量大小。你能帮帮我吗?

4

0 回答 0