Education
Getting Started with Natural Language Processing in Java
Natural Language Processing (NLP) is used in many applications to provide capabilities that were previously not possible. It involves analyzing text to obtain the intent and meaning, which can then be used to support an application. Using NLP within an application requires a combination of standard Java techniques and often specialized libraries frequently based on models that have been trained. You need to know what is available, how these technologies can be used, and when they should be used. In this course we will cover the essence of NLP using Java.
Applied Text Mining in Python Coursera
This course will introduce the learner to text mining and text manipulation basics. The course begins with an understanding of how text is handled by python, the structure of text both to the machine and to humans, and an overview of the nltk framework for manipulating text. The second week focuses on common manipulation needs, including regular expressions (searching for text), cleaning text, and preparing text for use by machine learning processes. The third week will apply basic natural language processing methods to text, and demonstrate how text classification is accomplished. The final week will explore more advanced methods for detecting the topics in documents and grouping them by similarity (topic modelling).
Programming Today's AI for Tomorrow's Gender Equality
Recent developments in Artificial Intelligence (AI) are showing just how far we have come with the technology. Take for example the recent showcase from Google, where a telephone call is made by Google Assistant to book a haircut. The technology is now able to understand the nuances of conversation and is quite astonishing at first watch. With this ability to save time and cut admin, it is no wonder that adoption rates of AI in businesses have grown 60 percent in the past year alone. However, AI needs to be programmed by a human and in today's working environment, this can be problematic.
AGI Safety Literature Review
Everitt, Tom, Lea, Gary, Hutter, Marcus
The development of Artificial General Intelligence (AGI) promises to be a major event. Along with its many potential benefits, it also raises serious safety concerns (Bostrom, 2014). The intention of this paper is to provide an easily accessible and up-to-date collection of references for the emerging field of AGI safety. A significant number of safety problems for AGI have been identified. We list these, and survey recent research on solving them. We also cover works on how best to think of AGI from the limited knowledge we have today, predictions for when AGI will first be created, and what will happen after its creation. Finally, we review the current public policy on AGI.
Teaching Multiple Concepts to Forgetful Learners
Hunziker, Anette, Chen, Yuxin, Mac Aodha, Oisin, Rodriguez, Manuel Gomez, Krause, Andreas, Perona, Pietro, Yue, Yisong, Singla, Adish
How can we help a forgetful learner learn multiple concepts within a limited time frame? For long-term learning, it is crucial to devise teaching strategies that leverage the underlying forgetting mechanisms of the learners. In this paper, we cast the problem of adaptively teaching a forgetful learner as a novel discrete optimization problem, where we seek to optimize a natural objective function that characterizes the learner's expected performance throughout the teaching session. We then propose a simple greedy teaching strategy and derive strong performance guarantees based on two intuitive data-dependent parameters, which characterize the degree of diminishing returns of teaching each concept. We show that, given some assumptions of the learner's memory model, one can efficiently compute the performance bounds. Furthermore, we identify parameter settings of our memory models where greedy is guaranteed to achieve high performance. We have deployed our approach in two concrete applications, namely (1) an educational app for online vocabulary teaching and (2) an app for teaching novices how to recognize bird species. We demonstrate the effectiveness of our algorithm using simulations along with user studies.
Meta-learning with differentiable closed-form solvers
Bertinetto, Luca, Henriques, Joรฃo F., Torr, Philip H. S., Vedaldi, Andrea
Adapting deep networks to new concepts from few examples is extremely challenging, due to the high computational and data requirements of standard fine-tuning procedures. Most works on meta-learning and few-shot learning have thus focused on simple learning techniques for adaptation, such as nearest neighbors or gradient descent. Nonetheless, the machine learning literature contains a wealth of methods that learn non-deep models very efficiently. In this work we propose to use these fast convergent methods as the main adaptation mechanism for few-shot learning. The main idea is to teach a deep network to use standard machine learning tools, such as logistic regression, as part of its own internal model, enabling it to quickly adapt to novel tasks. This requires back-propagating errors through the solver steps. While normally the matrix operations involved would be costly, the small number of examples works to our advantage, by making use of the Woodbury identity. We propose both iterative and closed-form solvers, based on logistic regression and ridge regression components. Our methods achieve excellent performance on three few-shot learning benchmarks, showing competitive performance on Omniglot and surpassing all state-of-the-art alternatives on miniImageNet and CIFAR-100.
Online Learning in Kernelized Markov Decision Processes
Chowdhury, Sayak Ray, Gopalan, Aditya
We consider online learning for minimizing regret in unknown, episodic Markov decision processes (MDPs) with continuous states and actions. We develop variants of the UCRL and posterior sampling algorithms that employ nonparametric Gaussian process priors to generalize across the state and action spaces. When the transition and reward functions of the true MDP are either sampled from Gaussian process priors (fully Bayesian setting) or are members of the associated Reproducing Kernel Hilbert Spaces of functions induced by symmetric psd kernels (frequentist setting), we show that the algorithms enjoy sublinear regret bounds. The bounds are in terms of explicit structural parameters of the kernels, namely a novel generalization of the information gain metric from kernelized bandit, and highlight the influence of transition and reward function structure on the learning performance. Our results are applicable to multi-dimensional state and action spaces with composite kernel structures, and generalize results from the literature on kernelized bandits, and the adaptive control of parametric linear dynamical systems with quadratic costs.
GANE: A Generative Adversarial Network Embedding
Hong, Huiting, Li, Xin, Wang, Mingzhong
Network embedding has become a hot research topic recently which can provide low-dimensional feature representations for many machine learning applications. Current work focuses on either (1) whether the embedding is designed as an unsupervised learning task by explicitly preserving the structural connectivity in the network, or (2) whether the embedding is a by-product during the supervised learning of a specific discriminative task in a deep neural network. In this paper, we focus on bridging the gap of the two lines of the research. We propose to adapt the Generative Adversarial model to perform network embedding, in which the generator is trying to generate vertex pairs, while the discriminator tries to distinguish the generated vertex pairs from real connections (edges) in the network. Wasserstein-1 distance is adopted to train the generator to gain better stability. We develop three variations of models, including GANE which applies cosine similarity, GANE-O1 which preserves the first-order proximity, and GANE-O2 which tries to preserves the second-order proximity of the network in the low-dimensional embedded vector space. We later prove that GANE-O2 has the same objective function as GANE-O1 when negative sampling is applied to simplify the training process in GANE-O2. Experiments with real-world network datasets demonstrate that our models constantly outperform state-of-the-art solutions with significant improvements on precision in link prediction, as well as on visualizations and accuracy in clustering tasks.
Python: Solved Interview Ques on Algorithms, Data Structures
Welcome to the course "Python: Solved Interview Questions on Algorithms and Data structures". We would have observed the fact that though most of us are developers, only few would get a chance to work on certain advanced programming stuff like Data Structures, Linked Lists, Trees. The rest of us get to spend time in Bug fixing, resolving Maintenance issues during our work hours. Though this work doesn't help us much in improving our learning curve, it certainly feeds us and our families. So, Keeping this in mind, at the work place, We don't have any option but to work honestly.
Sequence Models Coursera
About this course: This course will teach you how to build models for natural language, audio, and other sequence data. Thanks to deep learning, sequence algorithms are working far better than just two years ago, and this is enabling numerous exciting applications in speech recognition, music synthesis, chatbots, machine translation, natural language understanding, and many others. You will: - Understand how to build and train Recurrent Neural Networks (RNNs), and commonly-used variants such as GRUs and LSTMs. This is the fifth and final course of the Deep Learning Specialization. You will have the opportunity to build a deep learning project with cutting-edge, industry-relevant content.