Issue
I have this code for trying to train a dataset using the classification technique ->
CSV_COLUMN_NAMES = ['SepalLength', 'SepalWidth', 'PetalLength', 'PetalWidth', 'Species']
SPECIES = ['Setosa', 'Versicolor', 'Virginica'] # Lets define some constants to help us later on
train_path = tf.keras.utils.get_file(
"iris_training.csv",
"https://storage.googleapis.com/download.tensorflow.org/data/iris_training.csv")
test_path = tf.keras.utils.get_file(
"iris_test.csv",
"https://storage.googleapis.com/download.tensorflow.org/data/iris_test.csv")
# Here we use keras (a module inside of TensorFlow) to grab our datasets and
# read them into a pandas dataframe
train = pd.read_csv(train_path, names=CSV_COLUMN_NAMES, header=0)
test = pd.read_csv(test_path, names=CSV_COLUMN_NAMES, header=0)
train.rename(columns={'120': 'SepalLength', '4': 'SepalWidth',
'setosa': 'PetalLength', 'versicolor': 'PetalWidth',
'virginica': 'Species'}, inplace=True)
test.rename(columns={'30': 'SepalLength', '4': 'SepalWidth',
'setosa': 'PetalLength', 'versicolor': 'PetalWidth',
'virginica': 'Species'}, inplace=True)
train_y = train.pop('Species')
test_y = test.pop('Species')
train.head() # the species column should now be gone
def input_fn(features, labels, training=True, batch_size=256):
# Convert the inputs to a Dataset.
dataset = tf.data.Dataset.from_tensor_slices((dict(features), labels))
# Shuffle and repeat if you are in training mode.
if training:
dataset = dataset.shuffle(1000).repeat()
return dataset.batch(batch_size)
# Feature columns describe how to use the input.
my_feature_columns = []
for key in train.keys():
my_feature_columns.append(tf.feature_column.numeric_column(key=key))
print(my_feature_columns)
# Build a DNN with 2 hidden layers with 30 and 10 hidden nodes each.
classifier = tf.estimator.DNNClassifier(
feature_columns=my_feature_columns,
hidden_units=[30, 10], # Two hidden layers of 30 and 10 nodes respectively.
n_classes=3) # The model must choose between 3 classes.
classifier.train(
input_fn=lambda: input_fn(train, train_y, training=True),
steps=5000) # defines the set amount of instructions, or things looked at
# we include a lambda to avoid creating an inner function previously
# TODO: print loss and steps
I am trying to follow the Freecodecamp machine learning course, and after running the train method, there is information printed to the console information like so ->
However, this doesn't happen when I run this in a google colab notebook. How do I print the loss and steps when moving through the loss function? Thanks for the help
Solution
Add the following line to your code, after importing tensorflow and before training the model.
tf.get_logger().setLevel('INFO')
Answered By - Michael Hodel
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.