# S3M: Siamese Stack (Trace) Similarity Measure

arXiv: https://arxiv.org/abs/2103.10526 · HTML: https://mlsanity.com/paper/2103.10526/

## Key facts

- Cited by 3 papers in the map (data through 14 Oct 2026).
- Builds on 4 of its 28 references that are in the map.
- First posted on arXiv 18 Mar 2021.

## Builds on (most cited first, 4 of 4)

- [Adam: A Method for Stochastic Optimization](https://mlsanity.com/paper/1412.6980/) (2014)
- [DeepTriage: Exploring the Effectiveness of Deep Learning for Bug Triaging](https://mlsanity.com/paper/1801.01275/) (2018)
- [TraceSim: A Method for Calculating Stack Trace Similarity](https://mlsanity.com/paper/2009.12590/) (2020)
- [Train One Get One Free: Partially Supervised Neural Network for Bug Report Duplicate Detection and Clustering](https://mlsanity.com/paper/1903.12431/) (2019)

## Built on by (most cited first, 3 of 3)

- [Stack Trace Deduplication: Faster, More Accurately, and in More Realistic Scenarios](https://mlsanity.com/paper/2412.14802/) (2024)
- [DapStep: Deep Assignee Prediction for Stack Trace Error rePresentation](https://mlsanity.com/paper/2201.05256/) (2022)
- [Stack Trace-Based Crash Deduplication with Transformer Adaptation](https://mlsanity.com/paper/2508.19449/) (2025)

## Abstract (arXiv)

Automatic crash reporting systems have become a de-facto standard in software development. These systems monitor target software, and if a crash occurs they send details to a backend application. Later on, these reports are aggregated and used in the development process to 1) understand whether it is a new or an existing issue, 2) assign these bugs to appropriate developers, and 3) gain a general overview of the application's bug landscape. The efficiency of report aggregation and subsequent operations heavily depends on the quality of the report similarity metric. However, a distinctive feature of this kind of report is that no textual input from the user (i.e., bug description) is available: it contains only stack trace information. In this paper, we present S3M ("extreme") -- the first approach to computing stack trace similarity based on deep learning. It is based on a siamese architecture that uses a biLSTM encoder and a fully-connected classifier to compute similarity. Our experiments demonstrate the superiority of our approach over the state-of-the-art on both open-sourced data and a private JetBrains dataset. Additionally, we review the impact of stack trace trimming on the quality of the results.
