Nghia Doan

Ph.D. Candidate, McGill University


                                                      

Summary


Welcome to my homepage! I am currently a Ph.D candidate at the Department of Electrical and Computer Engineering of McGill University, Canada. I am a member of ISIP Lab, under the supervision of Professor Warren J. Gross.

Prior to joining McGill I obtained my M.Sc. and B.Sc. degrees at Seoul National University, South Korea and Posts & Telecommunications Institute of Technology, Vietnam in 2017 and 2014, respectively. All of my degrees are in Electrical and Computer Engineering.

My primary research interests include customized deep-learning algorithm design, hardware-aware algorithm optimization, and VLSI implementation for channel coding and digital signal processing applications.

Experience


Research & Development

Graduate Researcher, ISIP Lab, McGill University, Canada Sept 2017 - present

Graduate Researcher, CAPP Lab, Seoul National University, Korea Mar 2015 - Feb 2017

Embedded System Engineer, TOSY, Vietnam Aug 2014 - Jan 2015

Engineering Intern Student, VNPT Technology, Hanoi, Vietnam July 2013 - Dec 2013


Teaching Assistant

ECSE 222: Digital Logic, McGill University, Canada Winter 2021

ECSE 200: Electric Circuits 1, McGill University, Canada Winter 2021

ECSE 324: Computer Organization, McGill University, Canada Fall 2020

ECSE 200: Electric Circuits 1, McGill University, Canada Fall 2020

ECSE 210: Electric Circuits 2, McGill University, Canada Winter 2020

ECSE 324: Computer Organization, McGill University, Canada Fall 2019

ECSE 210: Electric Circuits 2, McGill University, Canada Winter 2019

ECSE 200: Electric Circuits 1, McGill University, Canada Fall 2018

ECSE 426: Microprocessor Systems, McGill University, Canada Winter 2018

ECSE 323: Digital System Design, McGill University, Canada Fall 2017


Journal Reviewer

IEEE Access

IEEE Communications Letters

IEEE Transactions on Vehicular Technology

IEEE Journal on Selected Areas in Communications


Conference Reviewer

IEEE International Workshop on Signal Processing Systems (SiPS)

IEEE International Symposium on Information Theory (ISIT)

IEEE Wireless Communications and Networking Conference Workshops (WCNCW)

IEEE Global Communications Conference (GLOBECOM)

Publications


Book Chapter

[b1] W. J. Gross, N. Doan, E. N. Mambou, and S. A. Hashemi, "Deep Learning Techniques for Decoding Polar Codes" , Wiley, 2019. (online, pdf)


Journal Papers

[j6] N. Doan, S. A. Hashemi, M. Mondelli, W. J. Gross, "Improved Successive-Cancellation Decoding of Reed-Muller Codes". (manuscript under preparation)

[j5] N. Doan, S. A. Hashemi, M. Mondelli, W. J. Gross, "On the Decoding of Reed-Muller Codes with Successive Factor-Graph Permutations". (manuscript under preparation)

[j4] N. Doan, S. A. Hashemi, W. J. Gross, "Fast Successive-Cancellation List Flip Decoding of Polar Codes". (manuscript under preparation)

[j3] N. Doan, S. A. Hashemi, F. Ercan, T. Tonnellier, W. J. Gross, "Neural Successive-Cancellation Flip Decoding of Polar Codes", Journal of Signal Processing Systems, 2020. (pdf)

[j2] N. Doan, T. S. Kim, C. E. Rhee, and H.J. Lee, "A hardware-oriented concurrent TZ search algorithm for High-Efficiency Video Coding", EURASIP Journal on Advances in Signal Processing, 2017(1), pp.78, 2017. (pdf)

[j1] N. Doan, S. Kim, C. V. Le, and H.J. Lee, "Anomalous Trajectory Detection in Surveillance Systems Using Pedestrian and Surrounding Information" , IEIE Transactions on Smart Processing & Computing, 5(4), pp.256-266, 2016. (pdf)


Conference Papers

[c12] T. Tonnellier, M. Hashemipour, N. Doan, W. J. Gross, and A. Balatsoukas-Stimming, "Towards Practical Near-Maximum-Likelihood Decoding of Error-Correcting Codes: An Overview", IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Toronto, Canada, 2021. (to appear)

[c11] N. Doan, S. A. Hashemi, F. Ercan, W. J. Gross, "Fast SC-Flip Decoding of Polar Codes with Reinforcement Learning", IEEE International Conference on Communications (ICC), Montreal, Canada, 2021. (to appear) (pdf, talk)

[c10] N. Doan, S. A. Hashemi, and W. J. Gross, "Decoding of Polar Codes with Reinforcement Learning", IEEE Global Communications Conference (GLOBECOM), Taipei, Taiwan, 2020. (pdf, talk)

[c9] F. Ercan, T. Tonnellier, N. Doan, W. J. Gross, "Simplified Dynamic SC-Flip Polar Decoding", IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Barcelona, Spain, 2020. (pdf)

[c8] S. A. Hashemi, N. Doan, W. J. Gross, "Deep-Learning-Aided Successive-Cancellation Decoding of Polar Codes", Asilomar Conference on Signals, Systems, and Computers, Pacific Grove, USA, 2019. (pdf, talk)

[c7] N. Doan, S. A. Hashemi, F. Ercan, T. Tonnellier, W. J. Gross, "Neural Dynamic Successive Cancellation Flip Decoding of Polar Codes", IEEE International Workshop on Signal Processing Systems (SiPS), Nanjing, China, 2019. (pdf, talk)

[c6] N. Doan, S. A. Hashemi, E. N. Mambou, T. Tonnellier, W. J. Gross, "Neural Belief Propagation Decoding of CRC-Polar Concatenated Codes", IEEE International Conference on Communications (ICC), Shanghai, China, 2019. (pdf, talk)

[c5] N. Doan, S. A. Hashemi, M. Mondelli, and W. J. Gross, "On the Decoding of Polar Codes on Permuted Factor Graphs", IEEE Global Communications Conference (GLOBECOM), Abu Dhabi, UAE, 2018. (pdf, talk)

[c4] S. A. Hashemi, N. Doan, M. Mondelli, and W. J. Gross, "Decoding Reed-Muller and Polar Codes by Successive Factor Graph Permutations", IEEE International Symposium on Turbo Codes & Iterative Information Processing (ISTC), Hong Kong, China, 2018, pp. 1-5. (pdf, talk)

[c3] N. Doan, S. Ali Hashemi and W. J. Gross, "Neural Successive Cancellation Decoding of Polar Codes", IEEE 19th International Workshop on Signal Processing Advances in Wireless Communications (SPAWC) , Kalamata, Greece, 2018, pp. 1-5. (pdf, poster)

[c2] C. V. Le, Q. N. Hong, T. T. Quang and N. Doan, "Superpixel-based background removal for accuracy salience person re-identification", IEEE International Conference on Consumer Electronics-Asia (ICCE-Asia), Seoul, South Korea, 2016, pp. 1-4. (pdf)

[c1] N. Doan, T. S. Kim, H. J. Lee and S. Chae, "A modified TZ search algorithm for parallel integer motion estimation in high efficiency video coding" , IEEE International SoC Design Conference (ISOCC), Gyungju, South Korea, 2015, pp. 97-98. (pdf)

Awards


GREAT Award, McGill University, Canada Sept 2019

Student Travel Grant, IEEE Signal Processing Society, USA July 2018

McGill Engineering Doctoral Award, McGill University, Canada Sept 2017

Dean Fellowship, University of California, Riverside, USA (declined) Sept 2017

A-san Foundation Scholarship, A-san Group, South Korea Mar 2016

Shin-yang Foundation Scholarship, Shin-yang Group, South Korea (declined) Mar 2016

Samsung Electronics Award, Samsung Group, South Korea Oct 2015

Scholarships for Academic Excellence, Posts & Telecommunications Institute of Technology, Vietnam 2009-2014

Selected Projects

Projects



Joint Neural Belief Propagation Decoder and Channel Equalizer for Polar Codes Decoding
Dec 2018

Polar codes are the first class of codes that was proven to achieve Shannon limit at infinite code length for any binary memoryless channel. In this project, the decoding of polar codes is considered through belief propagation (BP) which can guarantee a high decoding throughput. However, one problem associated with BP decoding is its undesirable performance given a small number of iterations. To address this issue, we propose a neural BP decoder concatenated with a recursive neural network (RNN) based channel noise estimator to impose performance gain compared to some state-of-the-art decoders while maintaining a reasonable decoding latency. At a frame error rate (FER) of 10-5, the experiment results illustrate a gain of about 0.25 dB and 0.5 dB over neural BP and neural offset min-sum decoders, respectively. More information can be found in this poster.

A Baseline VLSI Implementation of CNN
Dec 2017
GitHub

In this project, a baseline VLSI implementation of a convolutional neural network (CNN) model trained on the CIFAR10 dataset is studied. This project allows flexible design choices to exploit the complicate trade-off among CNN model complexity, prediction accuracy, fixed-point hardware model and hardware cost. A comparison of a conventional VLSI implementation using multiplication and accumulation (MAC) units and an implementation based on systolic arrays is also considered. The analysis showed that under specific design choices, the MAC-based architecture always has smaller prediction latency than that of the systolic array architecture, while both achitectures preserve the prediction accuracy of the software CNN model. Further details can be found in the project report.



Abnormal Pedestrians Behaviour Detection
August 2016
GitHub

The amount of data obtained from surveyllance cameras is way beyond human capability to manually annotate abnormal behaviours such as law breaking activities, traffic accidents, etc. Fortunately with the help of deep learning techinques, it is possible to detect such abnormal behaviours in an automated manner. In this project, the abovementioned idea is exploited by incorporating conventional computervision techniques such as super-pixel image segmentation into off-the-shelf deep learning models. First, a human prohibited map is constructed automatically for each camera by an online learning algorithm. This map is used to detect pedestrians who enter the learned restricted regions. Second, another deep learning model is trained to classify abnormal pedestrian behavious by analyzing their trajectories. This model can detect anomalous behaviours regarding the trajactory directions and speeds of the coressponding pedestrians. The experimental results can be found in the following demonstrations: prohibited area detection, abnormal trajectory detection.

Quadcopter
August 2014
GitHub

Building a quadcopter has been one of my dreams for a long time. Just imagine how cool it is to have your own quadcopter, for which you design your customized PCBs, solder the component and connect everything together with thousands of code lines. I have built my quadcopter nearly from scratch and I would say it is more than just satisfactory when you see it touches the sky. Through this project I have learned a great deal of knowledge in both theory and practice. The most challenging part of this project is sensor fusion, where you have to apply digital filters to raw sensor data to obtain the geometry state of the quadcopter i.e. yaw, pich, and roll angles. In addition, this project helps me in mastering a wide range of microprocessors, including the ATMEL ATmega and ARM Cortex M-serie chips. You can find it is quite funny to see my quadcopter's first attempt to fly, and here is the latest version of my quadcopter after almost one year of improvements ☺. Please also refer to the project reposistory and this series of documentary videos for more details.