Tuesday, December 29, 2015

Assignment 1: A Full Hardware Guide to Deep Learning

Based on A Full Hardware Guide to Deep Learning by Tim Dettmers, please come up a draft version of computer system requirements including part
specifications, vendors, pricing, and rationals of choices. Since our application has not been existing yet, we will use this assignment as our learning tool for machine learning computing resource. Please post it onto your blog and we will discuss it after the break.

New Start: Machine Learning Computing Resource

The machine learning is one of the most active and promising research fields in recent years. The new learning algorithms and neural network structures have outperformed the traditional schemes, especially in the image and speech recognition applications. The performance of the new algorithms (especially the deep learning algorithms) has approached or exceeded human performance! It dramatically changed people's view and expectations about Artificial Intelligence (AI). It is not only the academia showing strong interests in this technology, but also the industry giants such as Google, Facebook, and Baidu acquiring most of the dominant players in this space to improve their services. People optimistically predict that machine learning will soon bring broad and deep impacts to our world!

The machine learning algorithms implement artificial neural networks inspired by the biological brains. The research shows that the more neurons have been simulated, the better results we can get. Since simulating more neurons translates into more computing power required, we will need extremely high performance (extremely expansive) computer to execute the algorithms. Some people are aiming to design special hardware (Application-Specific Integrated Circuits, ASICs) to process the simulation. However, since it is a extremely dynamic research field, and the new algorithms and research results are published everyday, using general purpose computer is probably a better way from capital investment's point of view. What we really need to have is a general purpose computer equipped with very powerful Graphical Processing Units (GPUs). GPUs can greatly accelerate the execution of machine learning algorithms.

The mission of this new project is to provide up-to-date technical know-hows about the computing resource required for machine learning. It consists of three major aspects:    
  1. Computer System Requirements: Keep a monthly update on how to build or purchase a computer system for machine learning algorithms. You should consider running the popular deep learning libraries such as Theano, Caffe, Torch, Tensorflow, etc. The system needs to be affordable (< $2,000) in light of our possible applications. If the system is off-the-shelf, you should include the customized configuration information. If the system is self-build, you need to include the bill of materials (HW & SW). In both cases, you will include detailed pricing.
  2. General Purpose Online Computing Resource: Create and keep a list of online computing resources for machine learning, such as Ersatz Labs. Learn the process of using the online tools, and run example projects using the free options. Explore the limitations of the free option, and become the consultant for other students needing the tool.
  3. Special Online Tools: Create and keep a list of useful online machine learning tools, such as ConvNetJS. Learn how to use those tools. Explore their limitations, and become the consultant for other students needing those tools.

Sunday, December 6, 2015

RE: Brainwave-Related Patents

You should summarize the essence of each patent briefly, group them into meaningful categories, identify the trends/evolution of technology, and propose possible areas of innovations.