blob: 54803d0b0c570e26c274136cbccb18a4c36f6838 [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Train AlexNet over ImageNet &mdash; incubator-singa 2.0.0 documentation</title>
<script type="text/javascript" src="../../../../_static/js/modernizr.min.js"></script>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'../../../../',
VERSION:'2.0.0',
LANGUAGE:'None',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="../../../../_static/jquery.js"></script>
<script type="text/javascript" src="../../../../_static/underscore.js"></script>
<script type="text/javascript" src="../../../../_static/doctools.js"></script>
<script type="text/javascript" src="../../../../_static/js/theme.js"></script>
<link rel="stylesheet" href="../../../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../../../_static/pygments.css" type="text/css" />
<link rel="index" title="Index" href="../../../../genindex.html" />
<link rel="search" title="Search" href="../../../../search.html" />
<link rel="next" title="Image Classification using DenseNet" href="../densenet/README.html" />
<link rel="prev" title="Train a RBM model against MNIST dataset" href="../../mnist/README.html" />
<link href="../../../../_static/style.css" rel="stylesheet" type="text/css">
<!--link href="../../../../_static/fontawesome-all.min.css" rel="stylesheet" type="text/css"-->
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
<style>
.fa:hover {
opacity: 0.7;
}
.fab:hover {
opacity: 0.7;
}
</style>
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../../../index.html" class="icon icon-home"> incubator-singa
<img src="../../../../_static/singa.png" class="logo" alt="Logo"/>
</a>
<div class="version">
latest
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1 current"><a class="reference internal" href="../../../index.html">Documentation</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../../../installation.html">Installation</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../../software_stack.html">Software Stack</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../../device.html">Device</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../../tensor.html">Tensor</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../../autograd.html">Autograd in Singa</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../../onnx.html">ONNX</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../../benchmark.html">Benchmark for Distributed training</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../../index.html">Model Zoo</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="../../cifar10/README.html">Train CNN over Cifar-10</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../char-rnn/README.html">Train Char-RNN over plain text</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../mnist/README.html">Train a RBM model against MNIST dataset</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">Train AlexNet over ImageNet</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#instructions">Instructions</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../densenet/README.html">Image Classification using DenseNet</a></li>
<li class="toctree-l3"><a class="reference internal" href="../googlenet/README.html">Image Classification using GoogleNet</a></li>
<li class="toctree-l3"><a class="reference internal" href="../inception/README.html">Image Classification using Inception V4</a></li>
<li class="toctree-l3"><a class="reference internal" href="../resnet/README.html">Image Classification using Residual Networks</a></li>
<li class="toctree-l3"><a class="reference internal" href="../vgg/README.html">Image Classification using VGG</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../../../downloads.html">Download SINGA</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../security.html">Security</a></li>
</ul>
<p class="caption"><span class="caption-text">Development</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../../../develop/contribute-code.html">How to Contribute Code</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../develop/contribute-docs.html">How to Contribute to Documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../develop/how-to-release.html">How to prepare a release</a></li>
</ul>
<p class="caption"><span class="caption-text">Community</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../../../community/source-repository.html">Source Repository</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../community/mail-lists.html">Project Mailing Lists</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../community/issue-tracking.html">Issue Tracking</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../../../community/team-list.html">The SINGA Team</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../../../index.html">incubator-singa</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../../../index.html">Docs</a> &raquo;</li>
<li><a href="../../../index.html">Documentation</a> &raquo;</li>
<li><a href="../../index.html">Model Zoo</a> &raquo;</li>
<li>Train AlexNet over ImageNet</li>
<li class="wy-breadcrumbs-aside">
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
--><div class="section" id="train-alexnet-over-imagenet">
<h1>Train AlexNet over ImageNet<a class="headerlink" href="#train-alexnet-over-imagenet" title="Permalink to this headline"></a></h1>
<p>Convolution neural network (CNN) is a type of feed-forward neural
network widely used for image and video classification. In this example, we will
use a <a class="reference external" href="http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks">deep CNN model</a>
to do image classification against the ImageNet dataset.</p>
<div class="section" id="instructions">
<h2>Instructions<a class="headerlink" href="#instructions" title="Permalink to this headline"></a></h2>
<div class="section" id="compile-singa">
<h3>Compile SINGA<a class="headerlink" href="#compile-singa" title="Permalink to this headline"></a></h3>
<p>Please compile SINGA with CUDA, CUDNN and OpenCV. You can manually turn on the
options in CMakeLists.txt or run <code class="docutils literal"><span class="pre">ccmake</span> <span class="pre">..</span></code> in build/ folder.</p>
<p>We have tested CUDNN V4 and V5 (V5 requires CUDA 7.5)</p>
</div>
<div class="section" id="data-download">
<h3>Data download<a class="headerlink" href="#data-download" title="Permalink to this headline"></a></h3>
<ul class="simple">
<li>Please refer to step1-3 on <a class="reference external" href="https://github.com/amd/OpenCL-caffe/wiki/Instructions-to-create-ImageNet-2012-data">Instructions to create ImageNet 2012 data</a>
to download and decompress the data.</li>
<li>You can download the training and validation list by
<a class="reference external" href="https://github.com/BVLC/caffe/blob/master/data/ilsvrc12/get_ilsvrc_aux.sh">get_ilsvrc_aux.sh</a>
or from <a class="reference external" href="http://www.image-net.org/download-images">Imagenet</a>.</li>
</ul>
</div>
<div class="section" id="data-preprocessing">
<h3>Data preprocessing<a class="headerlink" href="#data-preprocessing" title="Permalink to this headline"></a></h3>
<ul>
<li><p class="first">Assuming you have downloaded the data and the list.
Now we should transform the data into binary files. You can run:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span> <span class="n">sh</span> <span class="n">create_data</span><span class="o">.</span><span class="n">sh</span>
</pre></div>
</div>
<p>The script will generate a test file(<code class="docutils literal"><span class="pre">test.bin</span></code>), a mean file(<code class="docutils literal"><span class="pre">mean.bin</span></code>) and
several training files(<code class="docutils literal"><span class="pre">trainX.bin</span></code>) in the specified output folder.</p>
</li>
<li><p class="first">You can also change the parameters in <code class="docutils literal"><span class="pre">create_data.sh</span></code>.</p>
<ul class="simple">
<li><code class="docutils literal"><span class="pre">-trainlist</span> <span class="pre">&lt;file&gt;</span></code>: the file of training list;</li>
<li><code class="docutils literal"><span class="pre">-trainfolder</span> <span class="pre">&lt;folder&gt;</span></code>: the folder of training images;</li>
<li><code class="docutils literal"><span class="pre">-testlist</span> <span class="pre">&lt;file&gt;</span></code>: the file of test list;</li>
<li><code class="docutils literal"><span class="pre">-testfolder</span> <span class="pre">&lt;floder&gt;</span></code>: the folder of test images;</li>
<li><code class="docutils literal"><span class="pre">-outdata</span> <span class="pre">&lt;folder&gt;</span></code>: the folder to save output files, including mean, training and test files.
The script will generate these files in the specified folder;</li>
<li><code class="docutils literal"><span class="pre">-filesize</span> <span class="pre">&lt;int&gt;</span></code>: number of training images that stores in each binary file.</li>
</ul>
</li>
</ul>
</div>
<div class="section" id="training">
<h3>Training<a class="headerlink" href="#training" title="Permalink to this headline"></a></h3>
<ul>
<li><p class="first">After preparing data, you can run the following command to train the Alexnet model.</p>
<div class="highlight-default"><div class="highlight"><pre><span></span> <span class="n">sh</span> <span class="n">run</span><span class="o">.</span><span class="n">sh</span>
</pre></div>
</div>
</li>
<li><p class="first">You may change the parameters in <code class="docutils literal"><span class="pre">run.sh</span></code>.</p>
<ul class="simple">
<li><code class="docutils literal"><span class="pre">-epoch</span> <span class="pre">&lt;int&gt;</span></code>: number of epoch to be trained, default is 90;</li>
<li><code class="docutils literal"><span class="pre">-lr</span> <span class="pre">&lt;float&gt;</span></code>: base learning rate, the learning rate will decrease each 20 epochs,
more specifically, <code class="docutils literal"><span class="pre">lr</span> <span class="pre">=</span> <span class="pre">lr</span> <span class="pre">*</span> <span class="pre">exp(0.1</span> <span class="pre">*</span> <span class="pre">(epoch</span> <span class="pre">/</span> <span class="pre">20))</span></code>;</li>
<li><code class="docutils literal"><span class="pre">-batchsize</span> <span class="pre">&lt;int&gt;</span></code>: batchsize, it should be changed regarding to your memory;</li>
<li><code class="docutils literal"><span class="pre">-filesize</span> <span class="pre">&lt;int&gt;</span></code>: number of training images that stores in each binary file, it is the
same as the <code class="docutils literal"><span class="pre">filesize</span></code> in data preprocessing;</li>
<li><code class="docutils literal"><span class="pre">-ntrain</span> <span class="pre">&lt;int&gt;</span></code>: number of training images;</li>
<li><code class="docutils literal"><span class="pre">-ntest</span> <span class="pre">&lt;int&gt;</span></code>: number of test images;</li>
<li><code class="docutils literal"><span class="pre">-data</span> <span class="pre">&lt;folder&gt;</span></code>: the folder which stores the binary files, it is exactly the output
folder in data preprocessing step;</li>
<li><code class="docutils literal"><span class="pre">-pfreq</span> <span class="pre">&lt;int&gt;</span></code>: the frequency(in batch) of printing current model status(loss and accuracy);</li>
<li><code class="docutils literal"><span class="pre">-nthreads</span> <span class="pre">&lt;int&gt;</span></code>: the number of threads to load data which feed to the model.</li>
</ul>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../densenet/README.html" class="btn btn-neutral float-right" title="Image Classification using DenseNet" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="../../mnist/README.html" class="btn btn-neutral float-left" title="Train a RBM model against MNIST dataset" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2019 The Apache Software Foundation. All rights reserved. Apache SINGA, Apache, the Apache feather logo, and the Apache SINGA project logos are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions">
<span class="rst-current-version" data-toggle="rst-current-version">
<span class="fa fa-book"> incubator-singa </span>
v: latest
<span class="fa fa-caret-down"></span>
</span>
<div class="rst-other-versions">
<dl>
<dt>Languages</dt>
<dd><a href="../../../.././index.html">English</a></dd>
<dd><a href="../../../.././zh/index.html">中文</a></dd>
</dl>
<dl>
<dt>Versions</dt>
<dd><a href="http://singa.apache.org/v0.3.0/">0.3</a></dd>
<dd><a href="http://singa.apache.org/v1.1.0/">1.1</a></dd>
</dl>
</div>
<a href="http://incubator.apache.org/"> <img src= "../../../../_static/apache.png" style="background-color:white;"> </a>
<a href="http://www.apache.org" style="color:lightblue;padding: 5px; font-size: 10px; text-align: center; text-decoration: none; margin: 5px 2px;">Foundation</a>
<a href="http://www.apache.org/events/current-event" style="color:lightblue;padding: 5px; font-size: 10px; text-align: center; text-decoration: none; margin: 5px 2px;">Events</a>
<a href="http://www.apache.org/foundation/thanks.html" style="color:lightblue;padding: 5px; font-size: 10px; text-align: center; text-decoration: none; margin: 5px 2px;">Thanks</a>
<a href="http://www.apache.org/foundation/sponsorship.html" style="color:lightblue;padding: 5px; font-size: 10px; text-align: center; text-decoration: none; margin: 5px 2px;">Sponsorship</a>
<a href="http://www.apache.org/licenses/" style="color:lightblue;padding: 5px; font-size: 10px; text-align: center; text-decoration: none; margin: 5px 2px;">License</a>
<br>
<a href="https://github.com/apache/incubator-singa" class="fa fa-github" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
<a href="https://aws.amazon.com/marketplace/seller-profile?id=5bcac385-12c4-4802-aec7-351e09b77b4c" class="fab fa-aws" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
<a href="https://hub.docker.com/r/apache/singa/" class="fab fa-docker" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
<a href="https://www.linkedin.com/groups/13550034" class="fa fa-linkedin" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
<a href="https://twitter.com/ApacheSinga" class="fa fa-twitter" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
<a href="https://www.facebook.com/Apache-SINGA-347284219056544/" class="fa fa-facebook" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
<a href="https://www.researchgate.net/project/Apache-SINGA" class="fab fa-researchgate" style="padding: 10px; font-size: 20px; width: 30px; text-align: center; text-decoration: none; margin: 5px 2px;"></a>
</div>
<a href="https://github.com/apache/incubator-singa">
<img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10000;"
src="https://s3.amazonaws.com/github/ribbons/forkme_right_orange_ff7600.png"
alt="Fork me on GitHub">
</a>
</body>
</html>