About me

I am a PhD candidate at Cornell University, advised by professor Claire Cardie. Before starting my graduate studies, I worked with professor Bryan Hooi at National University of Singapore (NUS), and professor Hannaneh Hajishirzi and her student Zeqiu Wu at University of Washington. Even before that, I was advised by professor Tat Seng Chua and professor Lizi Liao at NExT++ Research Center. I graduated with a bachelor's degree in Computer Science and Mathematics at NUS.

My research is concentrated on Natural Language Processing (NLP). Currently, I design training algorithms that make Large Language Models (LLMs) more aligned, efficient, and robust. In the past, I have worked on topics such as Retrieval Augmented Generation (RAG), Conversation Disentanglement, and applications of LLMs in phishing detection.

Aside from these, I am excited to explore other NLP topics too.

CV

Please see the attached document for more details.

Publications

  • Chengyu Huang, Zheng Zhang, Hao Fei, and Lizi Liao

    EMNLP Findings

    Conversation Disentanglement with Bi-Level Contrastive Learning

    We propose to formulate Conversation Disentanglement as a global clustering task, in contrast to how it is traditionally solved as a pointing task. We use contrastive learning to pull embeddings of utterances from the same session closer and pull away those from different sessions. K means is then used to cluster the utterances.

    [Paper] [Slides]

  • Chengyu Huang, Zeqiu Wu, Yushi Hu, and Wenya Wang

    ACL

    Training Language Models to Generate Text with Citations via Fine-grained Rewards

    We propose to use fine-grained rewards to train LLMs to generate both supportive and relevant citations in the response, while preserving other qualities, such as answering correctness in the Question Anwering task.

    [Paper]

  • Yuexin Li, Chengyu Huang, Shumin Deng, Mei Lin Lock, Tri Cao, Nay Oo, Hoon Wei Lim, and Bryan Hooi

    USENIX

    KnowPhish: Large Language Models Meet Multimodal Knowledge Graphs for Enhancing Reference-Based Phishing Detection

    We propose to construct an industry-based, multimodal knowledge base construction pipeline that are robust to temporal shift as well as a multimodal phishing detector that leverages HTML text to detect brand and credential-taking intentions.

    [Paper]

  • Chengyu Huang and Tanya Goyal

    EMNLP Findings

    DCRM: A Heuristic to Measure Response Pair Quality in Preference Optimization

    We devise DCRM, a heuristic measure that computes the ratio between desired differences and noisy differences that exist in a pair of positive and negative responses. The DCRM value of a training set positively correlates with DPO training effectiveness. We further use DCRM to select high quality response pairs for more effective training.

    [Paper]

  • Chengyu Huang, Zhengxin Zhang, and Claire Cardie

    AAAI, submitted

    HAPO: Training Language Models to Reason Concisely via History-Aware Policy Optimization

    Reasoning LLMs often produce verbose thinking traces before giving the final answer. To make LLM reason more efficiently, we propose to use LLMs' past responses to the same question to guide future training. In particular, we reward current LLMs' responses positively if they are correct and more concise that any of the past correct responses, and penalize responses that are either incorrect or longer than the historical record.

    [Paper]

Projects

  • orizon

    Multi-party Response Generation with Conversation Disentanglement

    Supervisor: Professor Tat Seng Chua, Professor Lizi Liao

    This work aims to provide a standard solution for multi-party response generation, and eventually enable dialogue agents to converse properly in multi-party conversations. There has been initial exploration on this task. However, the reliance of existing models on dialogue structure labels restricts their usefulness.

    A natural and more robust solution is to first disentangle the conversation, so that the context can be filtered and reorganized for response generation. While there has been substantial work that focuses on conversation disentanglement and response generation as standalone tasks, very few has explored the option of combining them together.

    To achieve the goal, we consider 2 integration options.

    • Integration with hard disentanglement: Directly filter the dialogue context with a disentanglement model and then input the resulting dialogue into a response generation system, pointing to this project and this project.

    • Integration with soft disentanglement: Use a soft Relational Disentanglement to infer a relation graph and get the distilled context embedding, and then input the embedding into a decoder for response generation, pointing to this project and this project.

    We evaluate both types of pipelines against the existing methods, and demonstrate their effectivness.

    Toolstack: Python, PyTorch

    [Honour Year Project Thesis]

  • orizon

    Disentangle Multi-party Conversations as Reordering with Curriculum [Hard Disentanglement]

    Supervisor: Professor Tat Seng Chua, Professor Lizi Liao

    We observed existing conversation disentanglement models' heavy reliance on handcrafted features and their dependence on Ubuntu IRC. This necessaites the development of a more generalizable techniques that can make the model disentangle as effectively in other settings.

    We propose to use reordering as a generalizable strategy to make conversation disentanglement more effective. Reordering has 2 roles. In training, it is used to generate new dialogues and augment the dataset. In inference, it is used recursively to correct the model's prediction.

    Toolstack: Python, PyTorch

    [Paper]

  • orizon

    Conversation Disentanglement with Bi-Level Contrastive Learning [Hard Disentanglement]

    Supervisor: Professor Tat Seng Chua, Professor Lizi Liao

    We observed that many existing conversation disentanglement models do not pay sufficient attention to the dialogue context, while context is crucial in cases where the query utterance is ambiguous but the surrounding utterances indicate its belonging.

    We propose to formulate Conversation Disentanglement as a global clustering task, in contrast to how it is traditionally solved as a pointing task. We use contrastive learning to pull embeddings of utterances from the same session closer and pull away those from different sessions. K means is then used to cluster the utterances.

    Toolstack: Python, PyTorch

    [Paper] [Slides]

  • orizon

    Multi-party Response Generation with Relation Disentanglement [Soft Disentanglement]

    Supervisor: Professor Tat Seng Chua, Professor Lizi Liao

    While there have been works on multi-party response generation, they mostly require the dialogue structure ground truth to be given in advance, which undermines their usefulness when such ground truth is not present.

    As a continuation of the previous work, in this project, we investigate how to automatically infer the relations via relational thinking on subtle clues inside the conversation context without any human label, and leverage these relations to guide the neural response generation.

    Toolstack: Python, PyTorch

    [Paper]

  • orizon

    Relational Thinking-based Response Generation [Soft Disentanglement]

    Supervisor: Professor Tat Seng Chua, Professor Lizi Liao

    Relational Thinking is a process where people spontaneously perceive complex relationships among objects or concepts. It was originated and developed in cognitive neuroscience and has remained under-explored in the NLP community.

    In this project, we work on the task of multi-party response generation, and we make use of Relational Thinking to infer a reply-to relation graph to filter the context in a multi-party conversation. This context is then used by the decoder for effective response generation.

    Toolstack: Python, PyTorch

    [Paper]

  • finance

    Bank Code Center

    I developed a service to store bank records for the Global Payment team in ByteDance. Its functionalities include

    • Submission of bank record CRUD requests through the user interface for internal enginners, capable of batch submission
    • Audition and execution of the CRUD requests
    • Cached reading of bank records from real time transcations

    Toolstack: Go, Kite, MongoDB

  • orizon

    RepoSense

    RepoSense is an open source contribution analysis tool for Git repositories. It is particularly useful for those who want a chronological visualisation of the code contributions and commits made to a group of repositories.

    As a project developer and mentor, I personally

    • Implemented highlighting of selected single entry or merged group on the summary panel
    • Implemented binary file support in authorship contribution panel
    • Wrote developer tutorial and release guide for RepoSense
    • Reviewed close to 100 pull requests and made 5 product releases

    Toolstack: JavaScript, Vue, Java

    [Product Site] [Repository]

  • orizon

    Transcation monitoring bot

    I developed a monitoring bot to monitor the customer transcations for the Global Payment team in ByteDance. It is capable of

    • Receiving alerts from an internal platform that monitors a Time Series Database (TSDB) storeing metrics emitted by the payment system
    • Sending messages to engineers in charge and help them handle the alerts
    • CRUD of alert trigger rules that are used by the internal monitoring platform

    Toolstack: Go, Ginex, Kite, MongoDB, Lark Open Platform

  • orizon

    UWave Mobile Application

    UWave is a mobile application that has more than 10000 users on campus. It provides various utilities to help people on campus connect with each other, learn about campus life, and manage their studies.

    I collaborated with other members in the development team of UWave and

    • Implemented part of the module calendar page
    • Implemented features on several other pages such as the but timing page, library access page, community page, and settings page
    • Supported its user growth especially in the NUS community

    Toolstack: Dart, Flutter

    [Android] [IOS]

  • Teaching

    Teaching Activities

    1. CS 3780, Introduction to Machine Learning, Cornell

      Jan 2025 — May 2025

      Set assignment questions; Mark the assignments and submissions

    2. CS3230, Design and Analysis of Algorithms, NUS

      Aug 2021 — Nov 2021

      Conduct weekly tutorials and consultation sessions; Serve as proctor; Mark the assignments and submissions

    3. CS2100, Computer Organization, NUS

      Jan 2021 — April 2021

      Conduct weekly lab sessions; Mark the lab reports

    4. CS1231S, Discrete Structures, NUS

      Aug 2020 - Nov 2020

      Conduct weekly tutorials and consultation sessions; Serve as proctor; Mark the assignments and submissions

    5. CS1101S, Programming Methodology, NUS

      Aug 2020 - Nov 2020

      Conduct weekly tutorials and consultation sessions; Mark the assignments

    Awards

    Honors and Awards

    1. Sterling Prize Fellowship

      29 Jan 2024

      A fellowship of $7000 from the PhD program in the Computer Science Department at Yale University (Declined)

    2. IMDA Exellence in Computing Price

      5 June 2023

      A cash prize of $3500 awarded to the Most Outstanding Graduate in the Bachelor of Computing programme from the Infocomm Media Development Authority in Singapore; Awarded to 1/759 student in School of Computing

    3. Dean's List, School of Computing, NUS

      Jan - May 2023; Jan - May 2021; Aug - Dec 2020

      Awarded to the top 5 percent of students in the cohort in School of Computing in the corresponding semester

    4. Senior Middle 2 Scholarship

      Aug 2018 - May 2023

      A 5-year scholarship that covers the tuition and living costs of the 1-year bridging course and 4-year undergraduate study in Singapore