6 days ago

Peng et al., ICCV 2016

Poblem Definition

Want to use CAD models to generate synthetic 2D images for training. This paper arms to deal with the lacking cue information, such as texture, pose and background.
Synthetic Images

  • Field: Few-Shot Object Detection

Cue invariance: The ability of the network to extract the equivalent high-level category information despite missing low-level cues.

Contribution and Discussion

This paper roposed a new method for learning object detectors for new categories that avoids the need for costly large-scale image annotation based on findings as follow:

  • Demonstrated that synthetic CAD training of modern deep CNNs object detectors can be successful when real-image training data for novel objects or domains is limited.
  • Show that training on synthetic images with simulated cues lead to similar performance as training on synthetic images without cues.
  • For new categories, adding synthetic variance and fine-tuning the layers proved useful.


Network Architecture

1. Synthetic Generation of Low-Level Cues
Given a set of 3D CAD models for each object, it generates a synthetic 2D image training dataset by simulating various low-level cues.

The chooisen subset of cue information are: object texture, color, 3D pose and 3D shape, as well as background scene texture and color. When learning a detection model for a new category with limited labeled real data, the choice of whether or not to simulate these cues in the synthetic data depends on the invariance of the representation. For example, if the representation is invariant to color, grayscale images can be rendered.

To generating a virtual image:

  1. randomly select a background image from the available background pool
  2. project the selected background image onto the image plane
  3. select a random texture image from the texture pool
  4. map the selected texture image onto the CAD model before rendering the object.

2. Deep Convolutional Neural Network Features
To extract positive and negative patches for each object from the synthetic images (and an optional small number of real images).
Each patch is fed into a deep neural network that computes feature activations, which are used to train the final classifier, as in the deep detection method of RCNN.

3. Analysing Cue Invariance of DCNN Features
Here they create two synthetic training sets, one with and one without a particular cue. They extract deep features from both sets, train two object detectors, and compare their performance on real test data.

  • Hypothesis: If the representation is invariant to the cue, then similar high-level neurons will activate whether or not that cue is present in the input image, leading to similar category-level information at training and thus similar performance.

Here is their results:

6 days ago

Veit at al., CVPR 2017.

Poblem Definition

To learn the mapping between noisy and clean annotations in order to leverage the information cantained n the clean set.

  • Field: Object Classification
  • Assumption: large data with noisy annotations and small cleanly-annotated subset
  • Dataset: OpenImage (~ 9 million data with ~40k cleanly-annotated images)
  • Aspects:
    1. label space is typically highly structured
    2. many classes aan have multiple semantic modes
  • Want: To find dependence of annotation noise on the input image


Network Architecture

There are two supervised classifiers in this approach. One is the label cleaning network which using a residual architecture to learn the difference between the noisy and clean labels. The other one is the image classifier which takes the label predicted by the label cleaning network as the ground truth if the given image doesn't have a clean label.

The label cleaning network has some cool ideas list as follows:
1. Two Separate Input

  • Two separate inputs:
    • the noisy label
    • the visual features (extracted by Inception V3)
  • Goal:
    • To mode the label structure and noisy condition on the image
  • Process:
    • The sparse noisy labels y is treates as a bag of words
    • Both y and the visual features are projected into a low dimensonal embedding that encodes the set of labels
    • The embedding vectors are concatenated, transformed with a hidden layer, than projection back into the high dimensional label space

2. Identity-skip connection
This procedure were inspired by another cool paper written by K He, Deep Residual Learning for Image Recognition, the best paper of CVPR 2016. They reformulated the layers as learning residual functions with reference to the layer inputs, instead of learning unreferenced functions, proved that these residual networks are easier to optimize, and can gain accuracy from considerably increased depth.

This approach adds the noisy labels from the training set to the output of the cleaning module. As a result, the network only needs to learn the difference between the noisy and clean labels instead of regressing the entire label vector.

When no human rated data is available, the label cleaning network defaults to not changing the noisy labels. As more verified groundtruth becomes available, the network gracefully adapts and cleans the labels.

Here is the result:

6 days ago

Weekly Paper Reading List

by Ying Li (R05922016), aMMAI course

Week 01

Week 02 -- not enough labeled data

Week 03 -- sparse coding

  • Mairal et al. Online dictionary learning for sparse coding. ICML 2009

Week 04

Week 05

Week 06

Week 07

Week 08

Week 09

Week 10

9 days ago

Iterative Quantization: A Procrustean Approach to Learning Binary Codes

Yunchao Gong and S. Lazebnik. CVPR 2011

Poblem Definition

learning similarity-preserving binary codes for efficient retival in large-scale image collections

1. An effective scheme for learning binary codes should have properties as following,

  • The codes should be short. (For storing in memory effectively)
  • The codes should map the similarity of images.
  • The algorithms should be efficient for learning the parameters of the binary code and ecoding a new test image.

2. Goal

  • To learn good binary codes without any supervisory information in the form of class labels.

3. Problem formulation

  • To directly minimize the quantization error of mapping this data to vertices of binary hypercube.

Contribution and Discussion

1. Contribution

  • To show that rotate the projected data could improve the performance of PCA-based binary coding schemes.
  • To demonstrate an iterative quantization method for refining this rotation.

2. Limitation

  • Data-Dependent:
    • ITQ (Iterative Quantization) uses one bit per projected data dimension.


Step 1. Dimensionality Reduction
To yields PCA projections, this step follows the maximum variance formulation from the two papers, Spectral hashing (Y. Weiss et al. In NIPS 2008) and Semi-supervised hashing for large-scale image retrieval (J. Wang et al. In CVPR 2010).
Here, they want to produce an efficient code in which*the variance of each bit is maximized* and the bits are pairwise uncorrelated. The variance is maximized by encoding functions that produce exactly balanced bits. This could be get through the following continuous objective function:

Step 2. Binary Quantization
To preaerve the locality structure of the projected data by rotating it so as to minimize the discretization error. The ideal is illustrated in the Figure 1.

First, the quantization loss is defined in Equation 2:

This step is beginning with the random initialization of R, then adopt a k-means-like iterative quantization (ITQ) procedure to find a local minimum of the quantization loss.
In each iteration:

  1. Fix R and update B: Each dat point is assigned to the nearest vertex of the binary hypercube
  2. Fix B and update R: R is updated to minimize the quantization loss
  3. Alternate between steps 1 and 2 to find a locally optimal solution.

Here is one sample to use ITQ to encode the images and than retrieve images using 32 bits:

almost 3 years ago

---參加 Modern Web Conference 2015 後感

這句話現在是FB社團Front-End Developers Taiwan新的Group Photo.



一場一場的演講,一次又一次的衝擊,我看見當紅的技術轉化成了一個一個的關鍵字迎面像我砸來;我幾乎招架不住,手中的鋼筆迅速地在紙面滑過,努力地想要留住每一個可以回去google的關鍵字,以及每一瞬間的感動。我著迷於Webduino用webComponent將IOT的coding模組化的神奇想法,沉浸於讓mobile web變得更好用的眉眉角角,對於各種用web所呈現、視覺化的資料目不轉睛......恨不得我能夠左右開弓,多一隻手來記錄捕捉。




Rough, 粗略的共識。要求精確就變成了粗暴的共識。



RTFM --- 去看該死的說明書

1. 不要害怕提問
2. 不要拒絕向我提問的人,要認真回應。



老師曾經很嚴肅的告訴我們,如果問一些她已經講過的內容她會生氣。也曾經當我在課堂上或課後發問的時候板下臉告訴我,她稍後就會教到這哩,讓我不要急。我知道老師是不希望為了一再向不專心的同學重複已經講過的內容而影響到上課的進度,然而很多時候,做為學生的我們其實很難分辨哪些問題是可以問的。「萬一老師已經講過了怎麼辦?」、「萬一老師等等就要講怎麼辦?」、「萬一大家都會只有我不會怎麼辦?」、「萬一這是一個笨問題怎麼辦?」‧‧‧ ‧‧‧ 。




或者在朋友間,在彼此的專業領域間慨慨而談;或者在遇到外國講者時,也能用流利的應為彼此交流意見;或者直接站在講台上,和同好分享自己的心得... ...




感謝我的老師 薛幼苓幫我寫推薦信,讓我能夠參加這次conference。
感謝舉辦Modern Web 2015的每一個人,謝謝你們讓這次conference成功舉辦;更謝謝你們提供免費的名額給學生,讓我有參加這次conference的機會。