
Apache Singa, a Distributed Deep Learning Platform - based2
http://singa.incubator.apache.org/
======
vosper
There are so many Apache projects these days (mostly seem to be in the
incubator) - where do they all come from? I had once thought that Apache was a
dumping ground for the technology of failed startups, but a lot of these
projects seem to find new life in the incubator - so they must be doing
something right.

~~~
AlphaSite
The list of big name Apache projects is nuts, look at their project lists and
you can easily pull out dozens of big projects and even incubator has a few
popular projects.

~~~
monksy
It's hard to find whats worthwhile and what isn't.

------
modeless
No GPU support => not interesting. GPUs are an order of magnitude faster. If
you're doing deep learning on CPUs you're wasting your time and/or money.

~~~
glxc
if your data exceeds memory then a GPU is worthless. distributed makes it
scalable

~~~
modeless
This is wrong. Training data can be streamed through GPU memory during
training. It's your parameters that can't exceed GPU memory. You can get GPUs
with 12 GB of memory, and they also support float16 so they can be twice as
memory efficient as CPUs. If your model has more parameters than that, then
you'll be waiting months or years for a single model to train using CPUs, even
distributed.

Furthermore, almost any technique you use to distribute and scale training
will work just as well regardless of whether the computations are happening on
CPUs or GPUs.

~~~
igul222
This is also not quite right. Models whose parameters are too big to fit on
one GPU can be trained by splitting them across multiple GPUs, as was done
here, for example: [http://papers.nips.cc/paper/5346-sequence-to-sequence-
learni...](http://papers.nips.cc/paper/5346-sequence-to-sequence-learning-
with-neural-networks.pdf)

~~~
brianchu
According to the paper, the parameters fit on one GPU (or at least that one
GPU was able to train the model). It was just too slow, so they trained on 8
GPUs in parallel. But those GPUs were still on the same machine (one node,
multiple GPUs).

------
ereyes01
And Cuban hackers everywhere chuckle at the unfortunate slang cuss word chosen
as the name of this project...
[http://www.urbandictionary.com/define.php?term=Singa](http://www.urbandictionary.com/define.php?term=Singa)

~~~
lazycrazyowl
Singh is actually the Indian Sanskrit root word for Lion and is common in
south Indian language of Kannada, Tamil and Malayalam which has Simha, Singham
and Simham as the word for lion respectively. The Sri Lanka's ethnic majority
are called Sinhalese which again is derived from the Indo-Aryan Sinhala
language bearing similar influence, meaning the "lion people" or "people with
lion blood", while a sword-wielding lion is the central figure on the modern
national flag of Sri Lanka.The island nation of Singapore (Singapura) derives
its name from the Malay words singa (lion) and pura (city), which in turn is
from the Tamil-Sanskrit சிங்க singa सिंह siṃha and पुर புர pura.

