Извлечение синонимов (похожих слов) из текста с использованием BERT и NMSLIB 🔥
Извлечение синонимов с использованием BERT и NMSLIB
Подход к извлечению похожих или синонимичных слов из нескольких рядов текста с использованием BERT и NMSLIB.

Мы начнем с токенизации текста на отдельные слова, так как нам нужны однословные результаты. Затем мы будем использовать BERT (семантические трансформеры) для встраивания наиболее часто встречающихся слов, а затем мы будем использовать NMBLIB, чтобы получить наиболее близкие совпадения для каждого из них. Мы будем использовать набор данных твитов из Twitter, чтобы найти похожие слова внутри него.
ПРИМЕЧАНИЕ – В этой статье мы ищем похожие слова или синонимы внутри всего набора данных. Поэтому мы возьмем все строки и извлечем наиболее часто встречающиеся существительные и будем работать с ними в целом. Не будет понятия строк. Кроме того, полученные слова не обязательно будут идеально заменяемыми синонимами, а просто похожими словами, которые могут или не могут быть прямыми заменами в предложении. Например, мы получим что-то вроде «превосходство» и «качество» или «soundcloud» и «spotify».
Очистка твитов
Мы начинаем с очистки данных. Я удаляю стоп-слова и числа, а также привожу текст к нижнему регистру.
- Развертывание моделей PyTorch с использованием сервера вывода Nvidia Triton
- Краткое руководство по нормализации для вашей модели NLP
- Как создать водопадные диаграммы с помощью объектов графиков Plotly

Создание списка слов из всех твитов
После того, как мы очистили каждый твит, мы токенизируем каждый твит на слова и создаем из них список.
Уменьшение списка слов
Так как у нас много слов, с которыми нужно работать, не имеет смысла находить похожие слова для всех из них. Поэтому я взял наиболее часто встречающиеся слова (10k) и далее отфильтровал только существительные.
