To explain Deep Learning, you have to explain Neural Networks first.
A Neural Network is a software program designed to learn in ways similar to our brains. More specifically, they are a type of Machine Learning algorithm with an architecture loosely modeled after the branching neuronal structure of our brains. They were conceptualized in the '60s and have seen mixed use so far, perhaps most successfully in bank check handwriting recognition in the late '80s. Remember when all those check scanners in ATMs started appearing in the early '90s? That was neural networks.
By '06, they had largely fallen out of favor and had been supplanted by systems involving Support Vector Machines, Random Forests, and hand-engineered features. But that year, a series of discoveries were made that reignited interest in the field, producing state of the art results in several domains and launching a new stage in the evolution of Neural Networks called Deep Learning.
In roughly '08, '09, Neural Network researchers started using GPUs, powerful number crunchers traditionally used for 3d graphics. Paired with the ongoing algorithmic improvements of Deep Learning, Neural Networks saw an immediate 40x speedup. This has been a game changer for their practical use in industry.
From a usage standpoint, Deep Learning isn't all that different from any other kind of Machine Learning. You prepare a dataset split into training, validation, and test sets. You can visualize high dimensional spaces. You can solve various types of classification or regression problems. You can extract novel, high level features, often better than hand-engineered features.
Successful use cases for Deep Learning already include anything involving images (medical imaging or robotics), sample generation (novel recipes, music, or news articles), and classification domains (algorithmic trading or medical research). Deep Learning powers the voice and image recognition features currently being used in major technology products. Bank fraud detection, energy exploration, and customer churn prediction represent further opportunities.
Ersatz is the first commercial platform that packages state of the art deep learning algorithms with high end GPU number crunchers for a highly performant machine learning environment. We sell it in the cloud or in a box.
But don't take our word for it--you've got data. Sign Up for the Ersatz cloud service and try benchmarking Ersatz against your data. You might be surprised how easy it is.
Upload your data: First define your problem and collect the data you want your software to learn from. The data should be supplied as input/output pairs, as in standard classification problems. Once you have this, you upload the data to our secure servers.
Train a model: Now you're ready to train a model. We have a variety of models to choose from. Models (or layers, more specifically) can be combined to form more complex architectures. We currently support fully connected feed forward nets, randomly connected nets (dropout), convolutional nets w/ pooling, autoencoders, and recurrent neural networks. This lineup essentially represents the current state of the art and is a powerful set of tools from which you can solve machine learning problems from.
Use your models in your software: After training a model, it's ready to be used in your software. You interact with the model via our API. Anything you can do via our web interface, you can do with our API, so you can build a full training feedback loop into your software also.