Git Product home page Git Product logo

whale's Introduction

Humpback Whale Identification Competition Starter Pack

The code in this repo is all you need to make a first submission to the Humpback Whale Identification Competition. It uses the FastAi library release 1.0.36.post1 for anything up to point 7 in the Navigating through the repository list below (this is important - you are likely to encounter an error if you use any other version of the library). Subsequently I switch to 1.0.39.

For additional information please refer to discussion threads on Kaggle forums: classification, feature learning, detection.

Some people reported issues with running the first_submission notebook. If you encounter the issue, you should be okay to skip to the subsequent notebooks. The one that scores 0.760 on the LB is only_known_train.ipynb.

Making first submission

  1. Install the fastai library, specifically version 1.0.36.post1. The easiest way to do it is to follow the developer install as outlined in the README of the fastai repository. Once you perform the installation, navigate to the fastai directory and execute git checkout 1.0.36.post1. You can verify that this worked by executing the following inside jupyter notebook or a Python REPL:
import fastai
fastai.__version__
  1. Clone this repository. cd into data. Download competition data by running kaggle competitions download -c humpback-whale-identification. You might need to agree to competition rules on competition website if you get a 403.
  2. Create the train directory and extract files via running mkdir train && unzip train.zip -d train
  3. Do the same for test: mkdir test && unzip test.zip -d test
  4. Open first_submission.ipynb in jupyter notebook and run all cells.

Navigating through the repository

Here is the order in which I worked on the notebooks:

  1. first_submission - getting all the basics in place
  2. new_whale_detector - binary classifer known_whale / new_whale
  3. oversample - addressing class imbalance
  4. only_known_research - how to modify the architecture and what hyperparams to use
  5. only_known_train - training on full dataset
  6. resize - resize the images before training to free up CPU
  7. siamese network - a fully working prototype of a siamese network
  8. !!! Important !!! - to make use of some of the new functionality available in fast.ai at this point I switch to 1.0.39.
  9. fluke detection - train a model to draw bounding boxes surrounding flukes
  10. !!! Important !!! - here I switch to fastai master to incorporate a bug fix, will annotate with version once a new release comes out
  11. fluke detection redux - better results, less code, works with current fastai master
  12. extract bboxes - predicted bounding box extraction in images of specified size
  13. classification and metric learning - training the for predicting whale ids, places in top 7% of the competition

whale's People

Contributors

radekosmulski avatar ducha-aiki avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.