Data-driven Programming System on Java Code Prediction

I aimed  to use algorithm to refine and eventually achieve automate code writing. The end goal is to develop a tool that can enable users to put in demands and get the code they need without actually writing it. Currently, our system can already predict the function or methods that a user would want to call. I also developed a visualized tool for the core machine learning algorithm, which is a plug-in tool for the editor ATOM so that people can easily access it and use it. During the research, what we did first was to design a RESTful API, which could send contents in the editor to the server and returns the predicted results, and second is that once we got the predicted result from the server, to exhibit a list of suggestions in the editor to help the users. 

Multi-Network Representation Learning

I leveraged Local Sensitive Hashing to scale up representation learning in an attempt to better solve network alignment problems. On top of that, I also implemented and analyzed empirical variants of network alignment algorithms. Currently, I'm modifying the data structures and made the project even more scalable.

Gesture Recognition System under Complicated Background

Develop a gesture recognition system by using a USB camera by using OpenCV and Keras. Apply three different masks from OpenCV to achieve hand segmentation from complicated background and a 16-layer Convolutional Neural Network to classify segmented hands.The system classify hands in real time with accuracy of 98% and response time of 65 mini-seconds per frame.


This is a package which is trying to fetch information needed from IMDb since there's no official API from IMDb right now. This package can easily fetch all important information one may need about any movie. Click here for more information.