{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/global-selector-a-new-benchmark-dataset-and","title":"Uni-Encoder: A Fast and Accurate Response Selection Paradigm for Generation-Based Dialogue Systems","arxiv_id":"2106.01263","date":"2021-06-02","proceeding":null,"authors":["Chiyu Song","Hongliang He","Haofei Yu","Pengfei Fang","Leyang Cui","Zhenzhong Lan"],"abstract":"Sample-and-rank is a key decoding strategy for modern generation-based dialogue systems. It helps achieve diverse and high-quality responses by selecting an answer from a small pool of generated candidates. The current state-of-the-art ranking methods mainly use an encoding paradigm called Cross-Encoder, which separately encodes each context-candidate pair and ranks the candidates according to their fitness scores. However, Cross-Encoder repeatedly encodes the same lengthy context for each candidate, resulting in high computational costs. Poly-Encoder addresses the above problems by reducing the interaction between context and candidates, but with a price of performance drop. In this work, we develop a new paradigm called Uni-Encoder, that keeps the full attention over each pair as in Cross-Encoder while only encoding the context once, as in Poly-Encoder. Uni-Encoder encodes all the candidates with the context in one forward pass. We use the same positional embedding for all candidates to ensure they are treated equally and design a new attention mechanism to avoid confusion. Our Uni-Encoder can simulate other ranking paradigms using different attention and response concatenation methods. Extensive experiments show that our proposed paradigm achieves new state-of-the-art results on four benchmark datasets with high computational efficiency. For instance, it improves R10@1 by 2.9% with an approximately 4X faster inference speed on the Ubuntu V2 dataset.","url_abs":"https://arxiv.org/abs/2106.01263v5","url_pdf":"https://arxiv.org/pdf/2106.01263v5.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"global-selector-a-new-benchmark-dataset-and","repo_url":"https://github.com/dll-wu/uni-encoder","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"computational-efficiency","task_name":"Computational Efficiency"},{"task_slug":"conversational-response-selection","task_name":"Conversational Response Selection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/conversational-response-selection-on-douban-1","task":"Conversational Response Selection","dataset":"Douban","model":"Uni-Enc+BERT-FP","rank_in_archive_order":2,"of":16,"metrics":{"MAP":"0.648","MRR":"0.688","P@1":"0.518","R10@1":"0.327","R10@2":"0.557","R10@5":"0.865"},"uses_additional_data":false},{"leaderboard":"/sota/conversational-response-selection-on-douban-1","task":"Conversational Response Selection","dataset":"Douban","model":"Uni-Encoder","rank_in_archive_order":7,"of":16,"metrics":{"MAP":"0.622","MRR":"0.662","P@1":"0.481","R10@1":"0.303","R10@2":"0.514","R10@5":"0.852"},"uses_additional_data":false},{"leaderboard":"/sota/conversational-response-selection-on-persona","task":"Conversational Response Selection","dataset":"Persona-Chat","model":"Uni-Encoder","rank_in_archive_order":1,"of":2,"metrics":{"MRR":"0.922","R20@1":"0.869"},"uses_additional_data":false},{"leaderboard":"/sota/conversational-response-selection-on-ubuntu-1","task":"Conversational Response Selection","dataset":"Ubuntu Dialogue (v1, Ranking)","model":"Uni-Enc+BERT-FP","rank_in_archive_order":3,"of":25,"metrics":{"R10@1":"0.916","R10@2":"0.965","R10@5":"0.994"},"uses_additional_data":false},{"leaderboard":"/sota/conversational-response-selection-on-ubuntu-1","task":"Conversational Response Selection","dataset":"Ubuntu Dialogue (v1, Ranking)","model":"Uni-Encoder","rank_in_archive_order":6,"of":25,"metrics":{"R10@1":"0.886","R10@2":"0.946","R10@5":"0.989"},"uses_additional_data":false},{"leaderboard":"/sota/conversational-response-selection-on-ubuntu-2","task":"Conversational Response Selection","dataset":"Ubuntu Dialogue (v2, Ranking)","model":"Uni-Encoder","rank_in_archive_order":1,"of":1,"metrics":{"R10@1":"0.859","R10@2":"0.938","R10@5":"0.990"},"uses_additional_data":false}],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}