15

Shoe Classification

Multi-class CNN for shoe image classification. Error analysis and visualization of the features learned by the network.

Accuracy: 66%

Stack

PythonTensorFlowCNNKaggle

What happened?

  1. 01

    The question

    Can a CNN distinguish shoe types — beyond the simple “it's a shoe”?

  2. 02

    The problem

    Multi-class is another world: close classes (boots vs high-top sneakers) and a real risk of overfitting.

  3. 03

    The hypothesis

    A multi-class CNN with learned-feature visualization will reveal what the network is actually looking at.

  4. 04

    The build

    Multi-class CNN for shoe classification: training, error analysis, and visualization of learned features.

  5. 05

    The failure

    66% accuracy over several classes: the errors showed the network focusing on color and background rather than shape.

  6. 06

    The discovery

    Visualizing learned features is opening the black box. The network was looking at the wrong things, and data augmentation helped it look at the shoe.

  7. 07

    The result

    A 66%-accuracy multi-class CNN, with error analysis and learned-feature visualization.

  8. 08

    The next frontier

    Transfer learning, more varied data, and segmentation to isolate the shoe from the background.

Spider-Verse · homage