Deep Learning
GNN Explainer: A Tool for Post-hoc Explanation of Graph Neural Networks
Ying, Rex, Bourgeois, Dylan, You, Jiaxuan, Zitnik, Marinka, Leskovec, Jure
Graph Neural Networks (GNNs) are a powerful tool for machine learning on graphs. GNNs combine node feature information with the graph structure by using neural networks to pass messages through edges in the graph. However, incorporating both graph structure and feature information leads to complex non-linear models and explaining predictions made by GNNs remains to be a challenging task. Here we propose GnnExplainer, a general model-agnostic approach for providing interpretable explanations for predictions of any GNN-based model on any graph-based machine learning task (node and graph classification, link prediction). In order to explain a given node's predicted label, GnnExplainer provides a local interpretation by highlighting relevant features as well as an important subgraph structure by identifying the edges that are most relevant to the prediction. Additionally, the model provides single-instance explanations when given a single prediction as well as multi-instance explanations that aim to explain predictions for an entire class of instances/nodes. We formalize GnnExplainer as an optimization task that maximizes the mutual information between the prediction of the full model and the prediction of simplified explainer model. We experiment on synthetic as well as real-world data. On synthetic data we demonstrate that our approach is able to highlight relevant topological structures from noisy graphs. We also demonstrate GnnExplainer to provide a better understanding of pre-trained models on real-world tasks. GnnExplainer provides a variety of benefits, from the identification of semantically relevant structures to explain predictions to providing guidance when debugging faulty graph neural network models.
Learning Graph Pooling and Hybrid Convolutional Operations for Text Representations
Gao, Hongyang, Chen, Yongjun, Ji, Shuiwang
With the development of graph convolutional networks (GCN), deep learning methods have started to be used on graph data. In additional to convolutional layers, pooling layers are another important components of deep learning. However, no effective pooling methods have been developed for graphs currently. In this work, we propose the graph pooling (gPool) layer, which employs a trainable projection vector to measure the importance of nodes in graphs. By selecting the k-most important nodes to form the new graph, gPool achieves the same objective as regular max pooling layers operating on images. Another limitation of GCN when used on graph-based text representation tasks is that, GCNs do not consider the order information of nodes in graph. To address this limitation, we propose the hybrid convolutional (hConv) layer that combines GCN and regular convolutional operations. The hConv layer is capable of increasing receptive fields quickly and computing features automatically. Based on the proposed gPool and hConv layers, we develop new deep networks for text categorization tasks. Our results show that the networks based on gPool and hConv layers achieves new state-of-the-art performance as compared to baseline methods.
That's not how any of this works: Optimistic tech reporting isn't going to ruin AI
Winter is coming, but fear not. According to the experts, we won't need Jon Snow to save us -- it's only coming for our machines. It basically serves as a list of reasons why he thinks deep learning is shit and the community should abandon it and start over. Which is something he and others seem to firmly believe: In his recently published work Marcus posits (at number 5 on his list of hits against the field) that optimists in the media may be to blame for an impending AI winter (a period in which development is shuttered due to lack of interest): By the numbers, this is 10 percent of the reason this guy thinks we should all reconsider the idea of deep learning. He goes on: And boy-howdy is he right.
Microsoft Updates New Machine Learning Platform for Apache Spark -- Pure AI
This week Microsoft Announced that is has released version 0.16 of its new deep learning data science tool for Spark, Microsoft Machine Learning for Apache Spark, (MMLSpark) on Github. MMLSpark requires Scala, Spark and Python, and works with Microsoft Cognitive Services and Azure Databricks. It was originally released two years ago, with the most recent version before this -- .015 New features and improvements in version 0.16 include support for Spark deep learning pipelines, a new "ranking train validation splitter," better integration with Azure Search, support for name entry recognition cognitive service on Spark (for analytical text extraction), improved boosting capabilities with the gradient boosting tool for tree-based algorithms LightGBM, as well as many other changes. More information on MMLSpark can be found on the Microsoft product page here.
No, Machine Learning is not just glorified Statistics
This meme has been all over social media lately, producing appreciative chuckles across the internet as the hype around deep learning begins to subside. The sentiment that machine learning is really nothing to get excited about, or that it's just a redressing of age-old statistical techniques, is growing increasingly ubiquitous; the trouble is it isn't true. I get it -- it's not fashionable to be part of the overly enthusiastic, hype-drunk crowd of deep learning evangelists. ML experts who in 2013 preached deep learning from the rooftops now use the term only with a hint of chagrin, preferring instead to downplay the power of modern neural networks lest they be associated with the scores of people that still seem to think that import keras is the leap for every hurdle, and that they, in knowing it, have some tremendous advantage over their competition. While it's true that deep learning has outlived its usefulness as a buzzword, as Yann LeCun put it, this overcorrection of attitudes has yielded an unhealthy skepticism about the progress, future, and usefulness of artificial intelligence.
The Data Insider
We are not "there" yet! What we currently call AI is nothing of the sort and limited to very specific applications. And still, this is already enough to start a new technology revolution as Kai Fu Lee explains. THE TERM'ARTIFICIAL INTELLIGENCE" was coined in 1956, at a historic conference at Dartmouth, but it has been only in the past 10 years, for the most part, that we've seen the first truly substantive glimpses of its power and application. A.I., as it's now universally called, is the pursuit of performing tasks usually reserved for human cognition: recognizing patterns, predicting outcomes clouded by uncertainty, and making complex decisions.
Intelligence in the Data Era
Artificial Intelligence (AI) is the most talked about agenda among large and small companies in the world of date today. The promises artificial intelligence as technology, plans to deliver is un-paralleled. One would be able to solve answers to some problems which have been beyond reach for want of huge computing power. If one keenly observes the Gartner hype cycle 2018, Deep Learning with neural networks is right at its peak. As we all know, it's the Deep Neural Networks which has been the key driver of the artificial intelligence technologies.
Udacity, Google Launch Free Artificial Intelligence Course for TensorFlow
Want to build skills in artificial intelligence (A.I.) and deep learning? Udacity and Google are launching a free introductory course on the subject, which naturally leans into TensorFlow, the open-source library for deep learning software developed by Google. "Intro to TensorFlow for Deep Learning" is a two-month course, and now open to enrollment. Its goal is to help developers build A.I. applications that can scale (using TensorFlow, of course). It's the second TensorFlow-based collaboration between the two firms; in 2016, Udacity and Google launched a TesnorFlow course that taught students the basics of the platform.
Deep Learning based Edge Detection in OpenCV - CV-Tricks.com
In this post, we will learn how to use deep learning based edge detection in OpenCV which is more accurate than the widely popular canny edge detector. Edge detection is useful in many use-cases such as visual saliency detection, object detection, tracking and motion analysis, structure from motion, 3D reconstruction, autonomous driving, image to text analysis and many more. Edge detection is a very old problem in computer vision which involves detecting the edges in an image to determine object boundary and thus separate the object of interest. One of the most popular technique for edge detection has been Canny Edge detection which has been the go-to method for most of the computer vision researchers and practitioners. Let's have a quick look at Canny Edge Detection.
AI Startup Invents Trick For Robots To More Efficiently Teach Themselves Complex Tasks
Google-owned DeepMind uses sophisticated computer simulations for computers to teach themselves how to accomplish certain tasks. The simulated training, known as reinforcement learning, involves the computer trying out thousands (or millions) of different things until it manages to figure out what to do. Using this approach combined with deep learning, the London-based artificial intelligence research unit is teaching computers how to beat the world's best Go players and training robots how to move around in the world. A tiny Berkeley, California-based AI startup, Bonsai, has invented a trick to beat DeepMind in this game. The trick -- the company is calling it "concept networks" -- massively increases the efficiency of reinforcement learning.