Text this: Surprisal-based algorithm for detecting anomalies in categorical data