Python 在DNNClassifier中正确执行丢失功能

Python 在DNNClassifier中正确执行丢失功能,python,tensorflow,Python,Tensorflow,我是tensorflow的新手,目前我正在尝试实现损失函数以提高分类器的准确性。我想应用的损失函数是均方误差、交叉熵和条件熵 xval = df.drop('CLASS',axis=1) yval = df.CLASS X_train, X_test, y_train, y_test = train_test_split(xval, yval,test_size=0.5) def get_train_inputs(): x = X_train.to_dict() y = [0,1] retu

我是tensorflow的新手,目前我正在尝试实现损失函数以提高分类器的准确性。我想应用的损失函数是均方误差、交叉熵和条件熵

xval = df.drop('CLASS',axis=1)
yval = df.CLASS

X_train, X_test, y_train, y_test = train_test_split(xval, yval,test_size=0.5)

def get_train_inputs():
x = X_train.to_dict()
y = [0,1]
return x, y

# Define the test inputs
def get_test_inputs():
x = tf.constant(X_test)
y = tf.constant(y_test)

return x, y

feature_columns = [tf.contrib.layers.real_valued_column("", dimension=6)]

# Build 3 layer DNN with 512, 256, 128 units respectively.

classifier = tf.estimator.DNNClassifier(
feature_columns=feature_columns,
n_classes=2,
hidden_units=[1024, 512, 256],
batch_norm=True,
optimizer=tf.train.ProximalAdagradOptimizer(
  learning_rate=0.1,
  l1_regularization_strength=0.001
))


classifier.train(input_fn=get_train_inputs, steps=1200)
accuracy_score = classifier.evaluate(input_fn=get_test_inputs, steps=1)["accuracy"]
print("Test Accuracy: {0:f}".format(accuracy_score))
我的准确度大约是0.51分。希望对此有任何评论或建议