Deep Learning
TensorFlow 101: Introduction to Deep Learning - Udemy
Serengil received his MSc in Computer Science from Galatasaray University in 2011. He has been working as a software developer for a fintech company since 2010. Currently, he is a member of AI and Machine Learning team as a Data Scientist. His current research interests are Machine Learning and Cryptography. He has published several research papers about these motivations.
http://start.activestate.com/tensorflow-webinar/
Thanks to deep learning, we have very accurate speech recognition in our phones, self-driving cars, and filters that show us the news that is most interesting to us. Tensorflow, developed by Google, has become the most popular framework for deep learning, and now operates on a variety of devices such as multicore CPUs, general purpose GPUs, mobile devices, and custom ASICs. In this webinar, you will get a general introduction to working with Tensorflow and its surrounding ecosystem, general problem classes, where you can get big acceleration, and why run on a CPU. We will highlight some of the ideal use cases for TensorFlow on CPUs, including which models and types of operations benefit most from these optimizations, along with proposed benchmarks, projected accelerations, and how to tune performance for your systems. We will touch on advanced topics like using multiple nodes to train on large data sets.
Deep Learning Coursera
If you want to break into AI, this Specialization will help you do so. Deep Learning is one of the most highly sought after skills in tech. We will help you become good at Deep Learning. In five courses, you will learn the foundations of Deep Learning, understand how to build neural networks, and learn how to lead successful machine learning projects. You will learn about Convolutional networks, RNNs, LSTM, Adam, Dropout, BatchNorm, Xavier/He initialization, and more.
New Optimizations Improve Deep Learning Frameworks For CPUs
Since most of us need more than a "machine learning only" server, I'll focus on the reality of how Intel Xeon SP Platinum processors remain the best choice for servers, including servers needing to do machine learning as part of their workload. Here is a partial run down of key software for accelerating deep learning on Intel Xeon Platinum processor versions enough that the best performance advantage of GPUs is closer to 2X than to 100X. There is also a good article in Parallel Universe Magazine, Issue 28, starting on page 26, titled Solving Real-World Machine Learning Problems with Intel Data Analytics Acceleration Library. High-core count CPUs (the Intel Xeon Phi processors โ in particular the upcoming "Knights Mill" version), and FPGAs (Intel Xeon processors coupled with Intel/Altera FPGAs), offer highly flexible options excellent price/performance and power efficiencies.
New Optimizations Improve Deep Learning Frameworks For CPUs
Today, most machine learning is done on processors. Some would say that acceleration of learning has to be done on GPUs, but for most users that is not good advice for several reasons. The biggest reason is now the Intel Xeon SP processor, formerly codenamed "Skylake." Up until recently, the software for machine learning has been often more optimized for GPUs than anything else. A series of efforts by Intel have changed that โ and when coupled with Platinum version of the Intel Xeon SP family, the top performance gap is closer to 2X than it is to 100X. This may stun some, but it is well documented and not all that surprising when we understand the underlying architectures.
Learning Infinite RBMs with Frank-Wolfe
Ping, Wei, Liu, Qiang, Ihler, Alexander
In this work, we propose an infinite restricted Boltzmann machine (RBM), whose maximum likelihood estimation (MLE) corresponds to a constrained convex optimization. We consider the Frank-Wolfe algorithm to solve the program, which provides a sparse solution that can be interpreted as inserting a hidden unit at each iteration, so that the optimization process takes the form of a sequence of finite models of increasing complexity. As a side benefit, this can be used to easily and efficiently identify an appropriate number of hidden units during the optimization. The resulting model can also be used as an initialization for typical state-of-the-art RBM training algorithms such as contrastive divergence, leading to models with consistently higher test likelihood than random initialization.
SuperSpike: Supervised learning in multi-layer spiking neural networks
Zenke, Friedemann, Ganguli, Surya
A vast majority of computation in the brain is performed by spiking neural networks. Despite the ubiquity of such spiking, we currently lack an understanding of how biological spiking neural circuits learn and compute in-vivo, as well as how we can instantiate such capabilities in artificial spiking circuits in-silico. Here we revisit the problem of supervised learning in temporally coding multi-layer spiking neural networks. First, by using a surrogate gradient approach, we derive SuperSpike, a nonlinear voltage-based three factor learning rule capable of training multi-layer networks of deterministic integrate-and-fire neurons to perform nonlinear computations on spatiotemporal spike patterns. Second, inspired by recent results on feedback alignment, we compare the performance of our learning rule under different credit assignment strategies for propagating output errors to hidden units. Specifically, we test uniform, symmetric and random feedback, finding that simpler tasks can be solved with any type of feedback, while more complex tasks require symmetric feedback. In summary, our results open the door to obtaining a better scientific understanding of learning and computation in spiking neural networks by advancing our ability to train them to solve nonlinear problems involving transformations between different spatiotemporal spike-time patterns.
On better training the infinite restricted Boltzmann machines
Peng, Xuan, Gao, Xunzhang, Li, Xiang
The infinite restricted Boltzmann machine (iRBM) is an extension of the classic RBM. It enjoys a good property of automatically deciding the size of the hidden layer according to specific training data. With sufficient training, the iRBM can achieve a competitive performance with that of the classic RBM. However, the convergence of learning the iRBM is slow, due to the fact that the iRBM is sensitive to the ordering of its hidden units, the learned filters change slowly from the left-most hidden unit to right. To break this dependency between neighboring hidden units and speed up the convergence of training, a novel training strategy is proposed. The key idea of the proposed training strategy is randomly regrouping the hidden units before each gradient descent step. Potentially, a mixing of infinite many iRBMs with different permutations of the hidden units can be achieved by this learning method, which has a similar effect of preventing the model from over-fitting as the dropout. The original iRBM is also modified to be capable of carrying out discriminative training. To evaluate the impact of our method on convergence speed of learning and the model's generalization ability, several experiments have been performed on the binarized MNIST and CalTech101 Silhouettes datasets. Experimental results indicate that the proposed training strategy can greatly accelerate learning and enhance generalization ability of iRBMs.
Humanizing Artificial Intelligence (AI) with Deep Learning โ The Microsoft India Blog
Emotions run deep in every conversation we humans have. Deciphering these underlying emotions is the key to making machine interactions more human. Detecting emotions in text is difficult enough for human beings, let alone artificially created machines, as many of our emotions are conveyed through expressions and tone of voice. At Microsoft, we are working to create human-like AI, Ruuh and on this journey detecting user emotions is a critical piece. So, I teamed up with Microsoft researchers Umang Gupta and Radhakrishnan Srikanth to take on this challenge.
Data Science Talks Machine-Learning and Artificial Intelligence
We start out by covering the topic of clustering. Clustering is essentially grouping pieces of information by similarity. For instance, imagine a large set of images that you want to group based on their similarities; clustering would be our primary choice for such a process. The chapter also covers high dimensionality and features, which are essential for understanding later chapters. We also cover kmeans and DBSCAN clustering algorithms in some depth to help show the reader how they work under the hood.