Goto

Collaborating Authors

 Education


Learning Math For Machine Learning And Artificial Intelligence Programming

#artificialintelligence

Last year, I started writing about my experiences taking courses on machine learning and artificial intelligence. One of the big, unexpected problems I ran into was calculus and linear algebra. I've found that many online courses say you don't need much mathematics fundamentals to be a programmer, but inevitably, even in beginner courses, the underlying math was important to understand what was going on. The need for remedial math seems widespread enough that even a simple Google search for'calculus and artificial intelligence' turns up a bunch of blogs and additional courses on how to understand the math underlying these assignments. After spending a lot of time online trying to sort through this haystack of do-it-yourself calculus blogs, college class PDFs, and other resources, I came away with two websites that were outstanding for teaching basic calculus and linear algebra: Khan Academy and an on-demand tutoring service called Yup.


Practical Deep Learning for Coders, v3

#artificialintelligence

Looking for the older 2018 courses?: This site covers the new 2019 deep learning course. The 2018 courses have been moved to: course18.fast.ai. Note that the 2019 edition of part 2 (Cutting Edge Deep Learning) is not yet available, so you'll need to use the 2018 course for now (the 2019 edition will be available in June 2019). If you're new to all this deep learning stuff, then don't worry--we'll take you through it all step by step. We do however assume that you've been coding for at least a year, and also that (if you haven't used Python before) you'll be putting in the extra time to learn whatever Python you need as you go.


Big Data, Small Machine

#artificialintelligence

I was honored to be invited by DevTO to give a talk at their May meetup. The organizers were keen to have someone speak about high-performance machine learning, and I was happy to oblige. The general thesis of the talk is that, for the purposes of machine learning, setting up large compute clusters is wholly unnecessary. Furthermore, it should generally be considered harmful as those efforts are extremely time consuming and detract from solving the actual machine learning problem at hand. To illustrate the point, I showed an online learning approach to binary classification problems using logistic regression with adaptive learning rates.


5 Ways To Get Smart On AI

#artificialintelligence

Millions of people are using modern AI every day, even if they don't know it. It's saving lives with semi-autonomous drones that help first responders locate survivors of natural disasters. These and many other AI-powered capabilities would've seemed like magic just a few years ago. But with the rapid pace of innovation, how does one "get smart" on where AI is headed next? The GPU Technology Conference is known as the world's premier AI conference for a reason: Over the course of a few days it offers everything described below: research and news, businesses and startups, networking and coursework.


How to Prepare the Next Generation for Jobs in the AI Economy

#artificialintelligence

For tomorrow's workers, AI will be more than a tool; AIs will be their co-workers and a ubiquitous part of their lives. If the next generation is to use AI and big data effectively โ€“ if they're to understand their inherent limitations, and build even better platforms and intelligent systems -- we need to prepare them now. That will mean some adjustments in elementary education and some major, long-overdue upgrades in computer science instruction at the secondary level. The U.S. is woefully behind many of our peer nations, and President Obama's Computer Science for All initiative may flounder amid budget cuts proposed by the Trump administration. Another major hurdle is that our schools face a severe shortage of teachers who are trained in computer science.


What They Don't Teach You in Machine Learning Courses

#artificialintelligence

Data science is an integral part of building an efficient ride-hailing platform. At Taxify, it took us just one year to build a strong and agile data science function which works on state-of-the-art solutions and deals with optimising millions of rides happening in real time. While interviewing hundreds of candidates, we've realised that even those with a strong technical background were very often lacking some essential skills. In this article, we're talking about things that they don't teach you in Machine Learning courses. Tech industry has (more or less) learned how to make engineers and business work together.


Learning Action Representations for Reinforcement Learning

arXiv.org Machine Learning

Most model-free reinforcement learning methods leverage state representations (embeddings) for generalization, but either ignore structure in the space of actions or assume the structure is provided a priori. We show how a policy can be decomposed into a component that acts in a low-dimensional space of action representations and a component that transforms these representations into actual actions. These representations improve generalization over large, finite action sets by allowing the agent to infer the outcomes of actions similar to actions already taken. We provide an algorithm to both learn and use action representations and provide conditions for its convergence. The efficacy of the proposed method is demonstrated on large-scale real-world problems.


Compressing GANs using Knowledge Distillation

arXiv.org Machine Learning

Generative Adversarial Networks (GANs) have been used in several machine learning tasks such as domain transfer, super resolution, and synthetic data generation. State-of-the-art GANs often use tens of millions of parameters, making them expensive to deploy for applications in low SWAP (size, weight, and power) hardware, such as mobile devices, and for applications with real time capabilities. There has been no work found to reduce the number of parameters used in GANs. Therefore, we propose a method to compress GANs using knowledge distillation techniques, in which a smaller "student" GAN learns to mimic a larger "teacher" GAN. We show that the distillation methods used on MNIST, CIFAR-10, and Celeb-A datasets can compress teacher GANs at ratios of 1669:1, 58:1, and 87:1, respectively, while retaining the quality of the generated image. From our experiments, we observe a qualitative limit for GAN's compression. Moreover, we observe that, with a fixed parameter budget, compressed GANs outperform GANs trained using standard training methods. We conjecture that this is partially owing to the optimization landscape of over-parameterized GANs which allows efficient training using alternating gradient descent. Thus, training an over-parameterized GAN followed by our proposed compression scheme provides a high quality generative model with a small number of parameters.


Learning Triggers for Heterogeneous Treatment Effects

arXiv.org Machine Learning

The causal effect of a treatment can vary from person to person based on their individual characteristics and predispositions. Mining for patterns of individual-level effect differences, a problem known as heterogeneous treatment effect estimation, has many important applications, from precision medicine to recommender systems. In this paper we define and study a variant of this problem in which an individual-level threshold in treatment needs to be reached, in order to trigger an effect. One of the main contributions of our work is that we do not only estimate heterogeneous treatment effects with fixed treatments but can also prescribe individualized treatments. We propose a tree-based learning method to find the heterogeneity in the treatment effects. Our experimental results on multiple datasets show that our approach can learn the triggers better than existing approaches.


Network Parameter Learning Using Nonlinear Transforms, Local Representation Goals and Local Propagation Constraints

arXiv.org Machine Learning

In this paper, we introduce a novel concept for learning of the parameters in a neural network. Our idea is grounded on modeling a learning problem that addresses a trade-off between (i) satisfying local objectives at each node and (ii) achieving desired data propagation through the network under (iii) local propagation constraints. We consider two types of nonlinear transforms which describe the network representations. One of the nonlinear transforms serves as activation function. The other one enables a locally adjusted, deviation corrective components to be included in the update of the network weights in order to enable attaining target specific representations at the last network node. Our learning principle not only provides insight into the understanding and the interpretation of the learning dynamics, but it offers theoretical guarantees over decoupled and parallel parameter estimation strategy that enables learning in synchronous and asynchronous mode. Numerical experiments validate the potential of our approach on image recognition task. The preliminary results show advantages in comparison to the state-of-the-art methods, w.r.t. the learning time and the network size while having competitive recognition accuracy.