0:00 / 0:00
Deep Learning with C++ - Peter Goldsborough - Meeting C++ 2017
Meeting Cpp
38K subscribers • 32 videos on Hallway • Conference channel
- One of the most-watched uploads on Meeting C++, a conference or university channel Hallway lists. Nobody has recommended it in the communities yet, so it ranks below community picks.
- Presented by Peter Goldsborough
- Linked in the descriptionpeter-can-talk/meeting-cpp-2017
- May be out of date. The tools, versions or practices it shows have likely moved on.
Intermediate. Assumes working knowledge.
17K views8 years ago
AI and machine learningProgramming languagesC++Neural networks and deep learningTraining and serving models
Peter Goldsborough discusses the role of C++ in deep learning frameworks and how to build and run neural networks in C++.
Code & Slides: github.com/peter-can-talk/meeting-cpp-2017 Deep Learning is a subfield of artificial intelligence that employs deep neural network architectures and novel learning algorithms to achieve state of the art results in image classification, speech recognition, motion planning and other domains. While all machine learning algorithms are initially formulated in mathematical equations (the only programming language where single lettervariable names are encouraged), they must eventually be translated into a computer program. Moreover, because deep neural networks can often be composed of many hundreds of millions of trainable parameters and operate on gigabytes of data, these computer programs have to be fast, lean, often distributed and squeeze every last ounce of performance out of modern CPUs, GPUs and even specialized hardware. This is synonymous with saying machine learning algorithms are usually implemented in C or C++ under the hood, even though libraries like TensorFlow, Torch or Caffe expose APIs in Python or Lua to ease the process of research and speed up iteration. This talk aims to break the single responsibility principle and do three things at once: Give a sweeping introduction to the state of the art in deep learning, Give examples of what it means to implement neural networks in C++, from an implementer's perspective, Give examples of building deep learning models in C++, from a researcher's perspective. Here, the distinction between building and implementing is that the former means stacking together high level modules to achieve some machine learning task, while the latter means actually writing the CPU or GPU kernels that make the magic happen. The goal of the talk is for every attendee to walk away with a general understanding of the state and challenges of the field and hopefully be in a position to implement and build their own deep learning models.Why it's here
A top upload from a listed channelMeeting C++ is on Hallway's list of conference and university channels, and this upload is one of its most-watched talks or lectures. Nobody has recommended it in the communities yet, so it ranks below community picks.