In [2]:
import tensorflow as tf

from sklearn.datasets import fetch_mldata
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import accuracy_score

scaler = StandardScaler()

tf.logging.set_verbosity(tf.logging.ERROR)

In [6]:
mnist = fetch_mldata('MNIST original')
X= scaler.fit_transform(mnist['data'].astype(float))
y= mnist['target'].astype(int)

In [7]:
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.33, random_state=42)

feature_cols = tf.contrib.learn.infer_real_valued_columns_from_input(X_train) 
dnn_clf = tf.contrib.learn.DNNClassifier( hidden_units =[ 300,100], n_classes = 10, feature_columns = feature_cols) 
dnn_clf = tf.contrib.learn.SKCompat( dnn_clf) 
dnn_clf.fit( X_train, y_train, batch_size = 50, steps = 40000)


Out[7]:
SKCompat()

In [8]:
y_pred = dnn_clf.predict(X_test)
accuracy_score(y_test,y_pred['classes'])


Out[8]:
0.97558441558441555