Using Keras and TensorFlow in Kaggle Competition to Classify Satellite Data

If you’re reading this blog then I am sure you have heard of Kaggle. There is a competition under way for classifying satellite data as icebergs or ships. Additionally, there is a great “starter” kernel available using Keras for applying a convolutional neural network to the satellite data. That kernel even provides some sample images of what the satellite data looks like for an iceberg versus a ship:

My initial inclination is to look at removing some of the “noise” of the water:

import numpy as np

threshold = -15
set_value = -15

test_ship = np.copy(ship)

for item in test_ship:
 threshold_indices = item < threshold
 item[threshold_indices] = set_value

 

I will have to re-train the model and run accuracy tests on the results to see if this made an improvement in the accuracy. What’s next to try? How about:

  • Normalization
  • Change the network architecture – number of layers, number size of the layers
  • Number of epochs
  • Drop-out rate
  • Different optimizer

Anyhow, the list goes on and I will keep posting my findings as I progress through the competition…

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *