Coder Social home page Coder Social logo

vrajur / kaggle-otto-group-product-classification-challenge Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 9.71 MB

A machine learning classifier built from scratch as an entry for the Otto Group Product Classification Challenge on Kaggle

MATLAB 100.00%

kaggle-otto-group-product-classification-challenge's Introduction

Kaggle-Otto-Group-Product-Classification-Challenge

Authors: Vinay Rajur

Summary:

This is a classifier algorithm built as an entry for the Otto Group Product Classification Challenge hosted on Kaggle.com:

Competition Ended: May 18th, 2015

Number of Submission Attempts: 1

Last Submission Entry: April 24, 2015


Operation Instructions:

Download the repository and open the 'Solution Files' directory. The script 'Run.m' will execute the entire process of loading the test and training data, initializing and training the neural network, and making classification predictions from the test data.


Implementation Overview:

A 1 hidden layer neural network implemented in MATLAB. The data supplied by the competition contains 61,878 examples with 93 features.

Manually preprocessed training examples are loaded to memory, and the neural network is initialized.

Neural network is trained on the example data, and the cost function and its gradient are calculated using backpropagation. Training is done using an adaptive step-size gradient descent algorithm.

Test examples are then run through the trained neural network and classification predictions are generated.


List of Key Files:

checkGradient.m --- Script to compare accuracy of gradient computed through backpropagation against gradient computed through numerical differentiation

computeCost.m --- Function to compute the cost function and its gradient using backpropagation

feedForward.m --- Function to feedforward a set of input data through a given neural network

gradDescent.m --- Function to minimize an input function using adaptive step-size gradient descent

gradDescentTimed.m --- Function to minimize an input function using adaptive step-size gradient descent and outputs a computation time at each step

initializer.m --- Script to load training examples and initialize and train neural network

lambdaValidationCurves.m --- Function to compute and plot the validation curve from various values of the regularization parameter lambda and return the optimal lambda value

learningCurves.m --- Script to plot the learning curves after each iteration of gradient descent

NNPredict.m --- Function to predict classification for given neural network and input data

numericGradient.m --- Function to compute the gradient of the cost function using numerical differention

Run.m --- Script to call initializer and compute classification predictions for test examples

sigmoid.m --- Function to evaluate the sigmoid function for given input values

TestPredicter.m --- Function to compute predictions for test examples on a given neural network

trainNeuralNetwork.m --- Function to train the neural network using gradient descent

Test.mat --- Preprocessed test examples

Train.mat --- Preprocessed training examples

kaggle-otto-group-product-classification-challenge's People

Contributors

vrajur avatar

Stargazers

Mohamamd Eshbeata avatar

Watchers

James Cloos avatar  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.