这个问题通常出现在使用Autokeras StructuredDataClassifier时,当输入数据中存在空值时,会导致Graph执行错误。为了解决这个问题,可以通过以下代码示例中的方式,将空值替换成其他值(如0),以确保输入数据中不存在空值。
import autokeras as ak
import pandas as pd
import numpy as np
# 加载数据
train_data = pd.read_csv("train.csv", delimiter=",")
test_data = pd.read_csv("test.csv", delimiter=",")
# 将空值替换为0
train_data = train_data.fillna(0)
test_data = test_data.fillna(0)
# 用Autokeras进行模型训练
clf = ak.StructuredDataClassifier()
clf.fit(x=train_data.drop("target", axis=1).to_numpy(),
y=train_data["target"].to_numpy(),
epochs=10,
validation_split=0.2)
在上面的代码示例中,fillna()方法被使用来将所有空值替换为0。然后,使用Autokeras进行模型训练时,训练集中不再包含任何空值,因此就不会触发Graph执行错误了。