Transfer Learning
Network Compression
The trained network is typically too large to run efficiently on mobile device. For example, VGG16 used for image classification has more 130 Million parameter (about 600 MB on model size) and requires about 31 billion operations to classify an image, which is way to expensive to be done on mobile.
Different Types of Convolutions in Deep Learning
Besides the convolution operator we already found in AlexNet or VGG16, there are few variations, which will be introduced below. The content of this article is based on reading of An Introduction to different Types of Convolutions in Deep Learning
Object Detections
Here is the comparison of the most popular object detection frameworks.
Image Segmentation
There are two types of image segmentation:
- semantic segmentation: assign labels to each pixel
- instance segmentation: extract the bounary/mask for each instance in the image
Speed up Android OpenGL ES glReadPixels by using PBO
Recently, I am working on a prototype which requires to use OpenGL to process the streams from Camere and save the processed results to a Video. Thus the overall pipeline is that:
Keeping user data safe
Patrick Toomey has posted a document on some low-friction ways to reduce risk in your software projects. Those methods are based on his 5 years of experience in application security, many security issues and associated data disclosures are the result of technically unsophisticated attacks.
Revisiting Deep Learning on CPU, New Optimizations Made to TensorFlow and Caffe
Intel has been working hard to optimizing the popular deep learning frameworks, e.g., TensorFlow and Caffe, on (Intel) CPUs. Their work has reduced the performance gaps between CPU and GPU from about 80x
to 2x
.
Neural Task Programming, Learning to Generalize Across Hierarchical Tasks
Feifei Li has published their work on how to have the robot learn to pick and place the objects by itself. The paper is available at arxiv.