가 지정한입니다 오류가 무엇입니까 (?) "에 ValueError를 : 텐서에 부분적으로 알려진 TensorShape을 변환 할 수 없습니다 : (?)" 난 그냥 원하는 예상 결과를 얻으려면 부적합한 메소드를 실행할 수 없습니다. (estimator.fit(input_fn=get_input_fn_train(), steps=10000
)이 코드를 실행하는 동안 오류가 발생합니다. 나는 10000 개의 행과 8 개의 int 컬럼을 가지고있다. 나는 현재 문자열 컬럼을 삭제했다. (x_train.shape)
-> (8000, 8). y_train.shape
-> (8000,). 어떤 종류의 도형에 대해 이야기하고 있습니까? 나는 유용한 것들을 찾을 수 없다 부다. 내가 뭘하는거야? 내가 뭘 놓치고 있니? 아래 모든 코드. 감사. 당신이에 ValueError가 : 텐서에 부분적으로 알려진 TensorShape을 변환 할 수 없습니다 :
import pandas as pd
import tensorflow as tf
import numpy as np
import tempfile
from sklearn.model_selection import train_test_split
def split_data(data, rate, label):
data = data.dropna()
train_data, test_data = train_test_split(data, test_size=rate)
train_label = train_data[label]
train_data = train_data.drop(label, 1)
test_label = test_data[label]
test_data = test_data.drop(label, 1)
return train_data, train_label, test_data, test_label
LABEL="Exited"
data = pd.read_csv("Churn_Modelling.csv", skipinitialspace=True, header=0)
data.drop("Surname", axis=1, inplace=True)
data.drop("RowNumber", axis=1, inplace=True)
data.drop("CustomerId", axis=1, inplace=True)
data.drop("Geography", axis=1, inplace=True)
data.drop("Gender", axis=1, inplace=True)
x_train, y_train, x_test, y_test = split_data(data, 0.20, LABEL)
def get_input_fn_train():
input_fn = tf.estimator.inputs.pandas_input_fn(
x=x_train.astype('float64'),
y=y_train.astype('float32'),
shuffle=False
)
return input_fn
def get_input_fn_test():
input_fn = tf.estimator.inputs.pandas_input_fn(
x=x_test.astype('float64'),
y=y_test.astype('float32'),
shuffle=False
)
return input_fn
feature_columns = tf.contrib.learn.infer_real_valued_columns_from_input_fn(
get_input_fn_train())
model_dir = tempfile.mkdtemp()
estimator = tf.contrib.learn.SVM(
example_id_column=tf.constant(np.arange(len(y_train))),
feature_columns=feature_columns, l2_regularization=10.0,model_dir=model_dir)
estimator.fit(input_fn=get_input_fn_train(), steps=10000)
#(I am getting error this line)
results=estimator.evaluate(input_fn=get_input_fn_test(), steps=1)
for key in sorted(results):
print("%s: %s" % (key, results[key]))
pred=list(estimator.predict(input_fn=get_input_fn_test()))