tflearn线性回归ValueError:无法提供形状值

时间:2017-11-14 19:40:44

标签: python-3.x pandas tensorflow linear-regression tflearn

我有以下data变量......

        A   B   C   D
    0  75  38  81  58
    1  36  92  80  79
    2  22  40  19  3
       ...    ...

...我使用以下内容生成...

data = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))

然后我拆分数据......

X = data.drop(['A'], axis=1).values
y = data['A'].values

...然后我用tflearn创建了一个线性回归模型......

input_ = tflearn.input_data(shape=[None])
linear = tflearn.single_unit(input_)
regression = tflearn.regression(
    linear, 
    optimizer='sgd', 
    loss='mean_square', 
    metric='R2', 
    learning_rate=0.01
)

# Define model.
model = tflearn.DNN(regression)
model.fit(X, y, n_epoch=100, show_metric=True, snapshot_epoch=False)

我根据我遵循的教程创建了模型,但是,我收到以下错误......

  

ValueError:无法为Tensor'TargetsData / Y:0'提供形状值(64,3),其形状为'(?,)'

我尝试更改input_data的形状来解决此问题。我试过......

input_ = tflearn.input_data(shape=[None, 3])

...这给了我另一个错误......

  

ValueError:无法为Tensor'TargetsData / Y:0'提供形状值(64,),其形状为'(3,)'

我不确定他们要求的形状。我尝试分批喂养模型,但我仍然有错误。我该如何解决这个问题?

0 个答案:

没有答案