def main():
    # If the training and test sets aren't stored locally, download them.
    if not os.path.exists(IRIS_TRAINING):
        raw = urlopen(IRIS_TRAINING_URL).read()
        with open(IRIS_TRAINING, "wb") as f:
            f.write(raw)

    if not os.path.exists(IRIS_TEST):
        raw = urlopen(IRIS_TEST_URL).read()
        with open(IRIS_TEST, "wb") as f:
            f.write(raw)

    # Load datasets.
    training_set = load_csv_with_header(filename=IRIS_TRAINING,
                                        target_dtype=np.int,
                                        features_dtype=np.float32)
    test_set = load_csv_with_header(filename=IRIS_TEST,
                                    target_dtype=np.int,
                                    features_dtype=np.float32)

    # Specify that all features have real-value data
    feature_columns = [real_valued_column("", dimension=4)]

    # Build 3 layer DNN with 10, 20, 10 units respectively.
    classifier = DNNClassifier(feature_columns=feature_columns,
                               hidden_units=[10, 20, 10],
                               n_classes=3,
                               model_dir="/tmp/iris_model")

    # Define the training inputs
    def get_train_inputs():
        x = tf.constant(training_set.data)
        y = tf.constant(training_set.target)

        return x, y

    # Fit model.
    classifier.fit(input_fn=get_train_inputs, steps=2000)

    # Define the test inputs
    def get_test_inputs():
        x = tf.constant(test_set.data)
        y = tf.constant(test_set.target)

        return x, y

    # Evaluate accuracy.
    accuracy_score = classifier.evaluate(input_fn=get_test_inputs,
                                         steps=1)["accuracy"]

    print("\nTest Accuracy: {0:f}\n".format(accuracy_score))

    # Classify two new flower samples.
    def new_samples():
        return np.array([[6.4, 3.2, 4.5, 1.5], [5.8, 3.1, 5.0, 1.7]],
                        dtype=np.float32)

    predictions = list(classifier.predict(input_fn=new_samples))

    print("New Samples, Class Predictions:    {}\n".format(predictions))
Exemple #2
0
        def deep_learning_tensor_flow_iris():
            import tensorflow as tf
            import numpy as np

            print(tf.__version__)

            from tensorflow.contrib.learn.python.learn.datasets import base

            # Data files
            IRIS_TRAINING = "data-science-modules/data-sets/Wine.csv"
            IRIS_TEST = "data-science-modules/data-sets/Wine.csv"

            # Load datasets.
            training_set = base.load_csv_with_header(filename=IRIS_TRAINING,
                                                     features_dtype=np.float32,
                                                     target_dtype=np.int)
            test_set = base.load_csv_with_header(filename=IRIS_TEST,
                                                 features_dtype=np.float32,
                                                 target_dtype=np.int)

            # Specify that all features have real-value data
            feature_name = "flower_features"
            feature_columns = [
                tf.feature_column.numeric_column(feature_name, shape=[13])
            ]
            classifier = tf.estimator.LinearClassifier(
                feature_columns=feature_columns,
                n_classes=3,
                model_dir="/tmp/iris_model")

            def input_fn(dataset):
                def _fn():
                    features = {feature_name: tf.constant(dataset.data)}
                    label = tf.constant(dataset.target)
                    return features, label

                return _fn

            # Fit model.
            classifier.train(input_fn=input_fn(training_set), steps=1000)
            print('fit done')

            # Evaluate accuracy.
            accuracy_score = classifier.evaluate(input_fn=input_fn(test_set),
                                                 steps=100)["accuracy"]
            print('\nAccuracy: {0:f}'.format(accuracy_score))

            # Export the model for serving
            feature_spec = {
                'flower_features': tf.FixedLenFeature(shape=[4],
                                                      dtype=np.float32)
            }

            serving_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(
                feature_spec)

            classifier.export_savedmodel(export_dir_base='/tmp/iris_model' +
                                         '/export',
                                         serving_input_receiver_fn=serving_fn)
Exemple #3
0
def load_data():
    trainset = base.load_csv_with_header(TRAIN_FILE,
                                         target_dtype=np.float32,
                                         features_dtype=np.float32)
    testset = base.load_csv_with_header(TEST_FILE,
                                        target_dtype=np.float32,
                                        features_dtype=np.float32)
    trainset = change_data(trainset)
    testset = change_data(testset)
    return (trainset, testset)
from __future__ import print_function

import numpy as np

import tensorflow as tf
from tensorflow.contrib.learn.python.learn.datasets import base

tf.logging.set_verbosity(tf.logging.INFO)

# Data sets
IRIS_TRAINING = "iris_training.csv"
IRIS_TEST = "iris_test.csv"

# Load datasets.
training_set = base.load_csv_with_header(filename=IRIS_TRAINING,
                                         features_dtype=np.float64,
                                         target_dtype=np.int)
test_set = base.load_csv_with_header(filename=IRIS_TEST,
                                     features_dtype=np.float64,
                                     target_dtype=np.int)

# Specify that all features have real-value data
feature_columns = [tf.contrib.layers.real_valued_column("flower_features", dimension=4)]

# Build 3 layer DNN with 10, 20, 10 units respectively.
model_dir="/tmp/iris_model"
classifier = tf.contrib.learn.DNNClassifier(feature_columns=feature_columns,
                                            hidden_units=[10, 20, 10],
                                            n_classes=3,
                                            model_dir=model_dir)
import tensorflow as tf
from tensorflow.contrib.learn.python.learn.datasets import base
import numpy as np

# Load datasets.
#Data Scource
#http://download.tensorflow.org/data/iris_training.csv
#http://download.tensorflow.org/data/iris_test.csv

training_set = base.load_csv_with_header(filename="iris_training.csv",
                                         features_dtype=np.float32,
                                         target_dtype=np.int)

test_set = base.load_csv_with_header(filename="iris_test.csv",
                                     features_dtype=np.float32,
                                     target_dtype=np.int)

# Model creation

# Specifying features (real-value data)
feature_name = "flower_features"
feature_columns = [tf.feature_column.numeric_column(feature_name, shape=[4])]

#Using/Inheriting Linear Classifier from Estimator

classifier = tf.estimator.LinearClassifier(feature_columns=feature_columns,
                                           n_classes=3,
                                           model_dir="/Users/iris_model")


#Defining Input function
import tensorflow as tf
import numpy as np

from tensorflow.contrib.learn.python.learn.datasets import base
#from tf.data import base

# import tensorflow_datasets as tfds

#from tensorflow.data import base

IRIS_TRAIN = 'iris_training.csv'
IRIS_TEST = 'iris_test.csv'

base.load_csv_with_header(filename=IRIS_TRAIN,
                          features_dtype=np.float32,
                          target_dtype=np.int)
train_set = base.load_csv_with_header(filename=IRIS_TRAIN,
                                      features_dtype=np.float32,
                                      target_dtype=np.int)

test_set = base.load_csv_with_header(filename=IRIS_TEST,
                                     features_dtype=np.float32,
                                     target_dtype=np.int)