aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/examples/skflow/hdf5_classification.py
diff options
context:
space:
mode:
authorGravatar A. Unique TensorFlower <gardener@tensorflow.org>2016-07-08 09:06:54 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2016-07-08 10:17:45 -0700
commitc00c073f52c2fc7b6672022c75d0b2abb9d9af3a (patch)
treed5aad86afbf6697bcb6eaffc50c1c1f6f48cd0d0 /tensorflow/examples/skflow/hdf5_classification.py
parent9a9219be3531d12c804f671e3e236a0d05c01d70 (diff)
Begin removing feature column inference from linear and dnn estimators. Currently, the fit operation of each of them will infer feature columns from the passed in features. But it only works for dense float inputs.
Also, fixed some lint warnings. Change: 126921818
Diffstat (limited to 'tensorflow/examples/skflow/hdf5_classification.py')
-rw-r--r--tensorflow/examples/skflow/hdf5_classification.py33
1 files changed, 20 insertions, 13 deletions
diff --git a/tensorflow/examples/skflow/hdf5_classification.py b/tensorflow/examples/skflow/hdf5_classification.py
index 0a4a7fd731..edcce6fe6f 100644
--- a/tensorflow/examples/skflow/hdf5_classification.py
+++ b/tensorflow/examples/skflow/hdf5_classification.py
@@ -11,39 +11,46 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
+
+"""Example of DNNClassifier for Iris plant dataset, h5 format."""
+
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
-from sklearn import metrics, cross_validation
+from sklearn import cross_validation
+from sklearn import metrics
from tensorflow.contrib import learn
-import h5py
+import h5py # pylint: disable=g-bad-import-order
# Load dataset.
iris = learn.datasets.load_dataset('iris')
-X_train, X_test, y_train, y_test = cross_validation.train_test_split(iris.data, iris.target,
- test_size=0.2, random_state=42)
+x_train, x_test, y_train, y_test = cross_validation.train_test_split(
+ iris.data, iris.target, test_size=0.2, random_state=42)
-# Note that we are saving and load iris data as h5 format as a simple demonstration here.
+# Note that we are saving and load iris data as h5 format as a simple
+# demonstration here.
h5f = h5py.File('test_hdf5.h5', 'w')
-h5f.create_dataset('X_train', data=X_train)
-h5f.create_dataset('X_test', data=X_test)
+h5f.create_dataset('X_train', data=x_train)
+h5f.create_dataset('X_test', data=x_test)
h5f.create_dataset('y_train', data=y_train)
h5f.create_dataset('y_test', data=y_test)
h5f.close()
h5f = h5py.File('test_hdf5.h5', 'r')
-X_train = h5f['X_train']
-X_test = h5f['X_test']
+x_train = h5f['X_train']
+x_test = h5f['X_test']
y_train = h5f['y_train']
y_test = h5f['y_test']
# Build 3 layer DNN with 10, 20, 10 units respectively.
-classifier = learn.TensorFlowDNNClassifier(hidden_units=[10, 20, 10],
- n_classes=3, steps=200)
+feature_columns = learn.infer_real_valued_columns_from_input(x_train)
+classifier = learn.TensorFlowDNNClassifier(
+ feature_columns=feature_columns, hidden_units=[10, 20, 10], n_classes=3,
+ steps=200)
# Fit and predict.
-classifier.fit(X_train, y_train)
-score = metrics.accuracy_score(y_test, classifier.predict(X_test))
+classifier.fit(x_train, y_train)
+score = metrics.accuracy_score(y_test, classifier.predict(x_test))
print('Accuracy: {0:f}'.format(score))