Vancouver, British Columbia, Canada
My research focuses on developing the most effective techniques to improve the detection and tolerance of ML applications against faulty training data in safety-critical applications such as autonomous vehicles and medical diagnosis. My research has centred on building robust and explainable ensembles. I have also collaborated on research using ML compilers to mitigate effects of transient hardware faults on ML apps and hardware accelerators.
Researched on the reliability of ML applications against faulty training data and hardware faults in AI accelerators • Conduct research on ML resilience against faulty training data for autonomous vehicles and medical diagnosis • Developed a software-implemented fault injection tool (LLTFI) for TensorFlow / PyTorch apps at LLVM IR level • Designed a new error propagation analysis framework using the LLVM compiler (middle-end), achieving 90% coverage of injected software faults and a sharp reduction of false positives compared to existing techniques
Courses TA'ed at UBC: Program Analysis for Reliability and Security (CPEN 400P) (3x) Software Verification and Testing (CPEN 522) (2x) Architectures for Learning Systems (CPEN 502) (1x) Building a Modern Web Application (CPEN 400A) (2x) Error Resilient Computing Systems (EECE 513) (1x)
Developed optimising compilers for GPU (both graphics and compute), AI accelerators, and IoT • Implemented the lowering of Vulkan subgroup operations from SPIR-V into assembly, leading to a 10x speedup • Performed root cause analysis and submit fixes for customer reported LLVM compiler bugs for graphics shaders • Filed a patent: "Systems and methods for extending a live range of a virtual scalar register", US20220066783A1 • Modified the semantics analysis modules of Clang, to support new target chips based on hardware specifications • Developed an algorithm to selectively compile JS modules based on customer code, to compact binaries for IoT • Conducted research on compiler optimizations with runtime accuracy trade-offs (approximate computing)
Developed automated data pipelines for predictive analytics and advise project groups on database design. • Developed a scalable solution for automating real-time data pipelines for text mining on social media, using efficient data structures and caching • Researched and developed text mining tools using heuristics for document frequency, probabilistic models for term retrieval, and text classification techniques through supervised machine learning • Advised project groups on strategies for relational database design and data warehousing • Assisted Master in Management (MMOR) students with application programming in Python and SQL
Ensured quality of the Aquarius software based on functional requirements and stakeholder specifications. • Developed an automated NUnit regression test suite in C# .NET for the REST API Service, increasing system test coverage by approximately 10% • Integrated the new automated test suite with the continuous integration agent TeamCity and issue tracker, JIRA • Designed regression test plans and accompanying test data sets for both manual and automated testing • Verified that individual implemented user stories satisfied customer acceptance criteria