Meanings of words change over time and across domains. Detecting the semantic changes of words is an important task for various NLP applications that must make time-sensitive predictions. We consider the problem of predicting whether a given target word, , changes its meaning between two different text corpora, and . For this purpose, we propose (SSCD), an unsupervised method that randomly swaps contexts between and where occurs. We then look at the distribution of contextualised word embeddings of , obtained from a pretrained masked language model (MLM), representing the meaning of in its occurrence contexts in and . Intuitively, if the meaning of does not change between and , we would expect the distributions of contextualised word embeddings of to remain the same before and after this random swapping process. Despite its simplicity, we demonstrate that even by using pretrained MLMs without any fine-tuning, our proposed context swapping method accurately predicts the semantic changes of words in four languages (English, German, Swedish, and Latin) and across different time spans (over 50 years and about five years). Moreover, our method achieves significant performance improvements compared to strong baselines for the English semantic change prediction task. Source code is available at https://github.com/a1da4/svp-swap .
View on arXiv