From 4f329b22477cd0309be0cc78cb2196be0ad70c84 Mon Sep 17 00:00:00 2001 From: tomrink <rink@ssec.wisc.edu> Date: Fri, 30 Apr 2021 12:42:11 -0500 Subject: [PATCH] snapshot... --- modules/deeplearning/icing_cnn.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/modules/deeplearning/icing_cnn.py b/modules/deeplearning/icing_cnn.py index 98f27613..57bc98b0 100644 --- a/modules/deeplearning/icing_cnn.py +++ b/modules/deeplearning/icing_cnn.py @@ -145,6 +145,10 @@ class IcingIntensityNN: self.test_auc = None self.test_recall = None self.test_precision = None + self.test_confusion_matrix = None + + self.test_labels = [] + self.test_preds = [] self.learningRateSchedule = None self.num_data_samples = None @@ -370,7 +374,7 @@ class IcingIntensityNN: fc = tf.keras.layers.BatchNormalization()(fc) print(fc.shape) - # activation = tf.nn.softmax + # activation = tf.nn.softmax # For multi-class activation = tf.nn.sigmoid # For binary logits = tf.keras.layers.Dense(NumLabels, activation=activation)(fc) @@ -459,6 +463,9 @@ class IcingIntensityNN: pred = self.model(inputs, training=False) t_loss = self.loss(labels, pred) + self.test_labels.append(labels) + self.test_preds.append(pred.result().numpy()) + self.test_loss(t_loss) self.test_accuracy(labels, pred) self.test_auc(labels, pred) @@ -517,6 +524,9 @@ class IcingIntensityNN: with self.writer_valid.as_default(): tf.summary.scalar('loss_val', self.test_loss.result(), step=step) tf.summary.scalar('acc_val', self.test_accuracy.result(), step=step) + tf.summary.scalar('auc_val', self.test_auc.result(), step=step) + tf.summary.scalar('recall_val', self.test_recall.result(), step=step) + tf.summary.scalar('prec_val', self.test_precision.result(), step=step) tf.summary.scalar('num_train_steps', step, step=step) tf.summary.scalar('num_epochs', epoch, step=step) @@ -584,6 +594,9 @@ class IcingIntensityNN: for mini_batch_test in ds: self.predict(mini_batch_test) print('loss, acc: ', self.test_loss.result(), self.test_accuracy.result()) + cm = tf.math.confusion_matrix(np.concatenate(self.test_labels), np.concatenate(self.test_preds), num_classes=2) + cm = cm.result().numpy() + print(cm) def run(self, filename, filename_l1b=None): with tf.device('/device:GPU:'+str(self.gpu_device)): -- GitLab