Goto

Collaborating Authors

 Deep Learning


NI-UDA: Graph Adversarial Domain Adaptation from Non-shared-and-Imbalanced Big Data to Small Imbalanced Applications

arXiv.org Artificial Intelligence

We propose a new general Graph Adversarial Domain Adaptation (GADA) based on semantic knowledge reasoning of class structure for solving the problem of unsupervised domain adaptation (UDA) from the big data with non-shared and imbalanced classes to specified small and imbalanced applications (NI-UDA), where non-shared classes mean the label space out of the target domain. Our goal is to leverage priori hierarchy knowledge to enhance domain adversarial aligned feature representation with graph reasoning. In this paper, to address two challenges in NI-UDA, we equip adversarial domain adaptation with Hierarchy Graph Reasoning (HGR) layer and the Source Classifier Filter (SCF). For sparse classes transfer challenge, our HGR layer can aggregate local feature to hierarchy graph nodes by node prediction and enhance domain adversarial aligned feature with hierarchy graph reasoning for sparse classes. Our HGR contributes to learn direct semantic patterns for sparse classes by hierarchy attention in self-attention, non-linear mapping and graph normalization. our SCF is proposed for the challenge of knowledge sharing from non-shared data without negative transfer effect by filtering low-confidence non-shared data in HGR layer. Experiments on two benchmark datasets show our GADA methods consistently improve the state-of-the-art adversarial UDA algorithms, e.g. GADA(HGR) can greatly improve f1 of the MDD by \textbf{7.19\%} and GVB-GD by \textbf{7.89\%} respectively on imbalanced source task in Meal300 dataset. The code is available at https://gadatransfer.wixsite.com/gada.


Rethinking Coarse-to-Fine Approach in Single Image Deblurring

arXiv.org Artificial Intelligence

Coarse-to-fine strategies have been extensively used for the architecture design of single image deblurring networks. Conventional methods typically stack sub-networks with multi-scale input images and gradually improve sharpness of images from the bottom sub-network to the top sub-network, yielding inevitably high computational costs. Toward a fast and accurate deblurring network design, we revisit the coarse-to-fine strategy and present a multi-input multi-output U-net (MIMO-UNet). The MIMO-UNet has three distinct features. First, the single encoder of the MIMO-UNet takes multi-scale input images to ease the difficulty of training. Second, the single decoder of the MIMO-UNet outputs multiple deblurred images with different scales to mimic multi-cascaded U-nets using a single U-shaped network. Last, asymmetric feature fusion is introduced to merge multi-scale features in an efficient manner. Extensive experiments on the GoPro and RealBlur datasets demonstrate that the proposed network outperforms the state-of-the-art methods in terms of both accuracy and computational complexity. Source code is available for research purposes at https://github.com/chosj95/MIMO-UNet.


Abstract Reasoning via Logic-guided Generation

arXiv.org Artificial Intelligence

Abstract reasoning, i.e., inferring complicated patterns from given observations, is a central building block of artificial general intelligence. While humans find the answer by either eliminating wrong candidates or first constructing the answer, prior deep neural network (DNN)-based methods focus on the former discriminative approach. This paper aims to design a framework for the latter approach and bridge the gap between artificial and human intelligence. To this end, we propose logic-guided generation (LoGe), a novel generative DNN framework that reduces abstract reasoning as an optimization problem in propositional logic. LoGe is composed of three steps: extract propositional variables from images, reason the answer variables with a logic layer, and reconstruct the answer image from the variables. We demonstrate that LoGe outperforms the black box DNN frameworks for generative abstract reasoning under the RAVEN benchmark, i.e., reconstructing answers based on capturing correct rules of various attributes from observations.


Modeling Accurate Human Activity Recognition for Embedded Devices Using Multi-level Distillation

arXiv.org Artificial Intelligence

Human Activity Recognition (HAR) based on IMU sensors is a crucial area in ubiquitous computing. Because of the trend of deploying AI on IoT devices or smartphones, more researchers are designing different HAR models for embedded devices. Deployment of models in embedded devices can help enhance the efficiency of HAR. We propose a multi-level HAR modeling pipeline called Stage-Logits-Memory Distillation (SMLDist) for constructing deep convolutional HAR models with embedded hardware support. SMLDist includes stage distillation, memory distillation, and logits distillation. Stage distillation constrains the learning direction of the intermediate features. The teacher model teaches the student models how to explain and store the inner relationship among high-dimensional features based on Hopfield networks in memory distillation. Logits distillation builds logits distilled by a smoothed conditional rule to preserve the probability distribution and enhance the softer target accuracy. We compare the accuracy, F1 macro score, and energy cost on embedded platforms of a MobileNet V3 model built by SMLDist with various state-of-the-art HAR frameworks. The product model has a good balance with robustness and efficiency. SMLDist can also compress models with a minor performance loss at an equal compression ratio to other advanced knowledge distillation methods on seven public datasets.


Codex by OpenAI, in Action

#artificialintelligence

Imagine using this in schools -- playing around with Codex, kids will fall in love with code. And I can assure you, they won't transform themselves into those lazy folks from WALL-E, they will research and encounter. Codex enables people who don't code to dive in, try things out, and implement their ideas. Artists, teachers, many other people whose profession doesn't involve coding languages will create their approaches and fulfill their visions. It also will help coders with short try&break brainstorming experiments without investing hours into programming "just to try out".


Intro to PyTorch: Training your first neural network using PyTorch - PyImageSearch

#artificialintelligence

In this tutorial, you will learn how to train your first neural network using the PyTorch deep learning library. To learn how to train your first neural network with PyTorch, just keep reading. We'll start by reviewing our project directory structure and then configuring our development environment. From there, we'll implement two Python scripts: With our two Python scripts implemented, we'll move on to training our network. To follow this guide, you need to have the PyTorch deep learning library and the scikit-machine learning package installed on your system.


Audit finds gender and age bias in OpenAI's CLIP model

#artificialintelligence

All the sessions from Transform 2021 are available on-demand now. In January, OpenAI released Contrastive Language-Image Pre-training (CLIP), an AI model trained to recognize a range of visual concepts in images and associate them with their names. CLIP performs quite well on classification tasks -- for instance, it can caption an image of a dog "a photo of a dog." But according to an OpenAI audit conducted with Jack Clark, OpenAI's former policy director, CLIP is susceptible to biases that could have implications for people who use -- and interact -- with the model. Prejudices often make their way into the data used to train AI systems, amplifying stereotypes and leading to harmful consequences.


OpenAI upgrades its natural language AI coder Codex and kicks off private beta – TechCrunch

#artificialintelligence

OpenAI has already made some big changes to Codex, the AI-powered coding assistant the company announced last month. The system now accepts commands in plain English and outputs live, working code, letting someone build a game or web app without so much as naming a variable. A few lucky coders (and, one assumes, non-coders) will be able to kick the tires on this new Codex API in a free private beta. Codex is best thought of as OpenAI's versatile language engine, GPT-3, but trained only on code instead of ordinary written material. That lets it do things like complete lines of code or entire sections, but when it was announced it wasn't really something a non-coder would be able to easily interact with.


How open-source software shapes AI policy

#artificialintelligence

Open-source software quietly affects nearly every issue in AI policy, but it is largely absent from discussions around AI policy--policymakers need to more actively consider OSS's role in AI. Open-source software (OSS), software that is free to access, use, and change without restrictions, plays a central role in the development and use of artificial intelligence (AI). Across open-source programming languages such as Python, R, C, Java, Scala, Javascript, Julia, and others, there are thousands of implementations of machine learning algorithms. OSS frameworks for machine learning, including tidymodels in R and Scikit-learn in Python, have helped consolidate many diverse algorithms into a consistent machine learning process and enabled far easier use for the everyday data scientist. There are also OSS tools specific to the especially important subfield of deep learning, which is dominated by Google's Tensorflow and Facebook's PyTorch.


UNET Implementation in PyTorch - Idiot Developer

#artificialintelligence

This tutorial focus on the implementation of the image segmentation architecture called UNET in the PyTorch framework. It's a simple encoder-decoder architecture developed by Olaf Ronneberger et al. for Biomedical Image Segmentation in 2015 at the University of Freiburg, Germany. An image consists of multiple objects inside it, such as people, cars, animals, or any other object. To classify the image, we use image classification, where the task is to predict the label or class of the input image. Now imagine, we need to find the exact location of the object, i.e, which pixel belongs to the which object.