Open source speech/voice to text tool running on our own computer. We have all the control of our privacy.

VIeW is an ASR system generating book summaries.


Pain Point Poll is a third-party website aimed at getting customers' voice heard by manufacturers. We know what we want.


Fedora Card is a QRCode and MMS/iMessage based VCard sharing widget on iOS. It makes contact sharing as simple as five clicks, in which screen unlocking is included. In addition to convenience, Fedora Card also brings us more privacy since no personal information is recorded or analyzed by any organization during the contact sharing process.


This is the PPT file of my presentation on An Overview of Residual Networks. It covers Deep Residual Network, Wide Residual Network, and Wide Residual Network used in Robust Speech Recognition. These networks all represent the state-of-the-art architectures on the corresponding corpora.


This is the PPT file of my presentation on Very Deep Convolutional Neural Networks (VDCNN) for Noise Robust Speech Recognition. Very Deep Convolutional Neural Network is the state-of-art model on Aurora4 corpus (among all published results, until 2016.9.9), showing the potential of Convolutional Neural Networks on de-noising.


Martian is a collection of ideas. Martian is a series of applications. Martian is a team. I founded Martian in 2015 for a Self-Organized Social Network application at the beginning. Currently we are focusing on "GOing: A Status Application Built on Ionic Framework". I cannot provide our source code here, the link below points to my Github profile.

This is a command line tool notifying the user via email when a program completes. The email contains the original command and the tail of the output (both stdout and stderr). It is useful when running a time-consuming program like DNN training.


This is the PPT file of my presentation on Automatic Speech Recognition (ASR) and Robust ASR. It can serve as a good entry-level reading material of the DNN-HMM based ASR system and one of the Front-End models of Robust ASR.


I participated in a Kaggle competition called "BNP Paribas Cardif Claims Management" and got 436th among 2947 teams (top 15%). I tested DNN, Random Forest, Extremely Randomized Trees and Gradient Boosting. The best performance was yielded using Extremely Randomized Trees.

I took "Machine Learning" in the Spring 2016 semester. This package contains the projects in this course, which mainly cover Bayesian optimizers, SVM, clustering and trees.


This Github repository is created to store basic speech enhancement programs. Currently it contains a correlogram based pitch detection program written in MATLAB.


This Github repository contains the implementations of algorithms that may worth sharing. Most of the implementations are about machine learning and parallel computing.


This Github repository contains the Lisp Interpreter I implemented in my Programming Languages course. It supports both Lisp built-in functions and user-defined functions.


I took "Survey of Artificial Intelligence II: Advanced Techniques" in the Fall 2015 semester. This section contains the final project, a research paper on "Electrocardiogram Abnormality Detection Based On Multiple Models".


I took "Advanced Operating Systems" in the Fall 2015 semester. This package contains the final project, a Java multi-thread application modeling the dispatch of a restaurant.


I took "Introduction to Neural Networks" in the Fall 2015 semester. This package contains three projects I conducted in my Neural Networks course. They are about Neural Networks, Radical Bases Functions (RBFs) and Support Vector Machines (SVMs).


This was a project in the Design Innovation Course conducted by USTC, Stanford University and China Academy of Art. The topic of my team was Smart Gadget and Technologies for Personal Security. We designed a system consisting of a smart wristband and an APP. Then we applied for an invention patent based on this project. Here I provide the final summary and a video of our APP.

Deep Q Network was the major topic of my undergraduate thesis. Deep Q Network belongs to Deep Reinforcement Learning, a combination of Deep Neural Network and Reinforcement Learning. I think Deep Reinforcement Learning is a promising direction in machine learning.


This package contains the MATLAB implementation of some common algorithms in statistical data modeling, including single multivariate Gaussian model, maximum likelihood (ML) estimation, Gaussian mixture model (GMM), k-means clustering, expectation maximization (EM) algorithm, minimum classification error (MCE) algorithm, gradient probabilistic descent (GPD) algorithm.



This package contains the MATLAB implementation of some common speech signal processing algorithms, including short-time fourier transform (STFT), cepstrum analysis, homomorphic filtering, LPC analysis using Levinson-Durbin algorithm.



This package contains my implementation of JPEG Compression in C. A guidance named "Peidong_Wang_README.txt" will help you to use it.



This is a summary of one of my subjects in NEL-SLIP. It is about using Sum-Product Network to promote the accuracy and reduce training complexity of deep neural networks.


This is a summary of one of my subjects in NEL-SLIP. It is about some ideas on how to grant the ability of memorization to neural networks.


This is a PPT I made while applying for Guo Moruo scholarship, one of the highest honors for undergraduate students at USTC. Only the top 5% students are eligible to apply for this scholarship. This PPT briefly summarizes my three-year study in USTC, thus can be a great material to help you know me better.


This will probably be my most proud project this semester. It is a paper management system which can serve as your private paper managing tool, or, as it is designed, serve as the paper management system in your lab. I've devoted a lot. Hope you can enjoy it. BTW, due to the limited time, this version is a Chinese version. I will change its language if time permits.



Wanna know how much memory is used in your computer? Tired of space-taking big software? Want some precise numbers rather than purely percentage? Here you are. Small, green and free. And you can alter autorun settings by yourself!

This is an application called FIR filter designer. I used two kinds of algorithms: Remez algorithm and max-wave method. You can easily choose your favorable algorithm, watch the figure of the filter, and export time domain responses. Be sure to read the instruction book and set up the prerequisite environment first. The environmet setup package can be found at



This dynamic electronic lock was designed and prototyped by my team in our third semester of college. I was in charge of the overall design, half of the coding task, the final modification and the solution of the communication between main chip (AVR ATmega16) and timer (DS1302). The presentation of our work is on Youku: Dynamic Electronic Lock. I was the guy wearing a green T-shirt. This video was edited and subtitled by me. Perhaps the tedious work of subtitling contributed to my decision of studying speech recognition. :)