Я не думаю, что существует заданный алгоритм, с помощью которого вы можете точно знать, считает ли пользователь SMS спамом (реклама в SMS может быть важна для одних пользователей и спам для других), что вы можете сделать однако, это то, что Google делает для выявления спама
Вы можете позволить пользователю помечать SMS как спам или не спам, а затем, основываясь на том, какой контент был помечен пользователем как спам, вы можете решить, считает ли пользователь это спамом или нет.
Изменить: все еще ближе к тому, что вы ищете, я нашел в этот PDF по контентной фильтрации SMS-спама.
Это не алгоритм, а вещи, которые вы должны иметь в виду.
Цитата из pdf:
Наиболее популярные методы, используемые для уменьшения спама, в настоящее время включают
следующие.
Белый и черный список. Отправители, попавшие в черный список (например, RBL), считаются спамерами, а их сообщения блокируются.
сообщения от отправителей в белый список (например, адресную книгу или
Сам провайдер - Hotmail) считаются законными, а значит
доставляется.
Совместная фильтрация . Когда пользователь помечает сообщение как спам, это считается спамом для пользователей, похожих на него. В качестве альтернативы
поставщик услуг считает, что массовые сообщения являются спамом.
Цифровые подписи . Сообщения без цифровой подписи считаются спамом. Цифровые подписи могут быть предоставлены отправителем или
поставщик услуг.
Контентная фильтрация . Наиболее используемый метод. В каждом сообщении ищутся спам-функции, например, показательные слова (например, «бесплатно»,
«Виагра» и др.), Необычное распределение знаков препинания и прописных
буквы (например, в «КУПИТЬ !!!!!!») и т. д.
Там много полезной информации. Проверьте это.