Machine Learning algorithms require tens and thousands of CPU based servers to train a model, which turns out to be an expensive activity. Machine Learning researchers and engineers are often faced with the problem of running their algorithms fast.
Although initially invented for processing graphics in computer games, GPUs today are used in machine learning to perform feature detection from vast amount of unlabeled data. Compared to CPUs, GPUs take far less time to train models that perform classification and prediction.
Characteristics of GPUs that make them ideal for machine learning
- Handle large datasets
- Needs far less data centre infrastructure
- Can be specialized for specific machine learning needs
- Perform vector computations faster than any known processor
- Designed to perform data parallel computation
NVIDIA CUDA GPUs today are used to build deep learning image processing tools for Adobe Creative Cloud. According to NVIDIA blog future Adobe applications might be able to automatically identify font styles from images to help their users choose the right font for their creative projects. For such intense deep learning methods CPUs stand far behind GPUs. According to NVIDIA’s website, GPUs perform more than 33% faster compared to CPUs on recognition tasks.
Major corporations including Baidu, Netflix, Facebook, Google, Bitcoin and many more are using GPUs for machine learning. The recent open source machine learning toolkits such as Theano and Tensorflow provide GPU support. With just few lines of code you can allocate the machine learning algorithm to learn the model on multiple GPUs.
Recently Facebook open sourced its AI hardware design named Big Sur which leverages NVIDIA's Tesla Accelerated Computing Platform. Check out the news.
GPUs are changing the AI scene too fast, and have established themselves as the necessary hardware to build deep learning applications. They might turn out to be the most important component in brain, or the brain itself in the most advanced machines of the future.