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…