Использование BERTopic для определения наиболее важных тем ML

Тематическое моделирование стало популярным методом в области машинного обучения (ML), особенно в области обработки естественного языка (NLP). В этой статье показано, как использовать тематическое моделирование для выявления популярных тем машинного обучения в науке.

Поскольку 2022 год только что прошел, давайте воспользуемся этой возможностью, чтобы применить тематическое моделирование к метаданным публикаций за 2022 год, чтобы увидеть, насколько хорошо можно определить популярные темы ML в науке. Чтобы проверить, являются ли результаты обоснованными, 4 основные выявленные темы сравниваются с темами, упомянутыми в цикле шумихи Gartner для искусственного интеллекта 2022.

tl;dr

  • Метаданные о статьях, связанных с ОД (44 502 статьи) в 2022 году, были использованы для определения 4 самых важных тем ОД в 2022 году.
  • BERTopic использовался для применения тематического моделирования.
  • Основываясь на использованном наборе данных 2022 года, 4 основные темы машинного обучения, выявленные в науке, включали: обучение с подкреплением, федеративное обучение, распознавание речи и объяснимое машинное обучение.
  • Все темы можно прямо или косвенно найти в отчете Gartner AI Hype Cycle за 2022 год.
  • Прокрутите вниз до «💠Результаты», чтобы увидеть более подробную информацию.
  • Ссылку на блокнот можно найти здесь.

📑 Набор данных

Данные, которые используются для этого анализа, предоставлены arXiv.

arXiv — это служба бесплатного распространения и архив с открытым доступом для 2 185 179 научных статей в области физики, математики, информатики, количественной биологии, количественных финансов, статистики, электротехники и системоведения, а также экономики. Материалы на этом сайте не рецензируются arXiv.

В прошлом я столкнулся с тем, что на этой платформе было опубликовано много довольно интересных не рецензируемых статей, например, о новых пакетах ML. Кроме того, используемый набор данных поставляется с лицензией CC0: Public Domain. Другие (коммерческие) наборы данных или API (например, Elsevier) гораздо более ограничены.

Я также попробовал CrossRef. Однако результаты (поиска) были не такими уж проницательными. Основными причинами этого являются качество данных и то, что ограниченное число записей имеют реферат.

🛠️ Загрузка данных

arxiv-metadata-oai-snapshot.json представляет собой большой JSON-файл размером 3,61 ГБ и содержит все метаданные (например, рефераты) о материалах на этой платформе. Для более плавной обработки файл разбит на несколько частей (chunksize=50000).

В приведенном ниже коде все фрагменты предварительно обрабатываются путем фильтрации по темам в области машинного обучения или искусственного интеллекта (cs.LG|cs.AI|stat.ML) и в 2022 году.

Чтобы отфильтровать правильный год, берется временная метка последней версии документа (lines 9 and 13). Последняя строка объединяет столбцы title и abstract в один новый столбец doc_raw, который будет очищен на следующих шагах.

Промежуточный результат ml_topics_df DataFrame можно увидеть ниже (рисунок 1). DataFrame содержит 44 502 записи.

Имея необходимые данные, применяются два этапа предварительной обработки.

🧹 Очистка данных

Lines 8 and 9 удалить разрывы строк и URL-адреса из текста. Последняя строка гарантирует, что будут сохранены только буквы длиной от 3 до 5, а также выбранные знаки препинания.

А стоп-слова? Они будут исключены на этапе моделирования при инициализации CountVectorizer.

📔 Лемматизация

Приведенный выше код (навеянный этой статьей) лемматизирует очищенный столбец doc. Line 5 проверяет, является ли обрабатываемое слово прилагательным, наречием, существительным или глаголом, и лемматизирует его. Теги для слов, которые не совпадают, просто сохраняются как есть.

🤖 Тематическое моделирование

Вы найдете целую батарею различных подходов к тематическому моделированию, таких как LDA, NMF, BERTopic или Top2Vec. Если вас интересуют подробности, Николо Козимо Альбанезе написал неплохую статью о сравнении разных подходов.

В рамках этого небольшого проекта я буду использовать "BERTopic". Более подробную статью о моделировании темы с помощью BERT можно найти здесь.

Если вы еще не слышали о BERTopic, BERTopic — это…

… метод моделирования тем, который использует преобразователи 🤗 и c-TF-IDF для создания плотных кластеров, позволяющих легко интерпретировать темы, сохраняя при этом важные слова в описаниях тем.

Создание вложений — наиболее вычислительный и трудоемкий этап, особенно при работе с большими наборами данных.

Я рекомендую сохранить встроенную модель (line 4), чтобы вам не пришлось снова проходить этап кодирования при экспериментах с гиперпараметрами BERTopic. Другие рекомендации по работе с большими наборами данных можно найти здесь.

Имея вложения, мы можем теперь сосредоточиться на заключительной части.

Приведенный выше код сначала инициализирует модели umap и hdbscan перед созданием списка стоп-слов. Дополнительную информацию о каждом гиперпараметре можно найти здесь. Наконец, модель BERTopic инициализируется и помещается в наши очищенные и лемматизированные документы.

💠 Результаты: топ-4 темы машинного обучения в 2022 году

Запустив model.visualize_barchart(top_n_topics=4), мы получим 4 основные темы в виде гистограмм. Результаты можно увидеть ниже на рисунке 2.

Давайте проверим работоспособность и сравним результаты с циклом ажиотажа искусственного интеллекта Gartner за 2022 год (рис. 3). Каждая тема имеет описание из двух предложений, выделенное ключевыми словами, которые также появляются в результатах (рис. 2).

Тема 1: Обучение с подкреплением

Обучение с подкреплением включает обучение модели принятию последовательности решений в среде, чтобы максимизировать награду. Он часто используется для обучения агентов ИИ выполнению задач, требующих принятия решений и решения проблем.

Этот термин напрямую не визуализируется в цикле ажиотажа, но я бы причислил его к термину Gartner Умные роботы.

Тема 2. Федеративное обучение, также известное как Edge Machine Learning.

При федеративном обучении модель обучается на данных, которые остаются распределенными между участвующими пограничными устройствами (например, смартфонами). Поскольку (конфиденциальные) данные остаются на устройствах, конфиденциальность сохраняется.

Наиболее близким к этому термину в цикле шумихи является Edge AI.

Тема 3: Распознавание речи

(Автоматическое) распознавание речи (ASR) — это процесс автоматического преобразования разговорной речи в (машиночитаемый) текст или форматы. Он включает в себя разработку алгоритмов и систем, которые могут анализировать, интерпретировать (например, эмоции) и понимать устную речь.

Я бы осторожно связал его с НЛП, зная, что основная функция ASR — преобразование речи в текст, а об интерпретации заботится НЛП.

Тема 4: Объяснимое машинное обучение

Объяснимый ИИ (XAI) фокусируется на разработке алгоритмов и систем, которые могут предоставлять интерпретируемые и понятные объяснения своих прогнозов, решений и действий. Цель состоит в том, чтобы создать прозрачные и подотчетные системы искусственного интеллекта, чтобы их поведение и процессы принятия решений могли быть понятны людям и доверять им.

Эта тема может быть связана с термином Gartner Responsible AI.

Заключение

BERTopic — отличный инструмент для тематического моделирования. Результаты выглядят разумными, что не всегда бывает при использовании тематических моделей. Решающим фактором успеха такого проекта является (как и везде) качество данных. Используемый файл JSON позволил мне отфильтровать только темы ML, а аннотация уже была в отличном формате (например, без тегов XML или латексного кода).

Как упоминалось выше, я также попробовал CrossRef. Фильтр по темам ML там не такой простой, еще и реферат довольно грязный и требует много времени (и нервов) на очистку. При работе с источниками данных, которые не предоставляют удобного способа фильтрации, например, по темам ML, высока вероятность того, что вы внесете много шума в свою тематическую модель.

Поскольку этот анализ был выполнен только на одном источнике данных, результаты могут не отражать весь научный ландшафт машинного обучения в 2022 году. Однако результаты впечатляют и, надеюсь, мотивируют опробовать несколько источников данных! Соответствующий блокнот можно найти здесь.

Рекомендации

Набор данных arXiv, https://www.kaggle.com/datasets/Cornell-University/arxiv (CC0: общественное достояние)

Проект НЛП, часть 2: Как очистить и подготовить данные для анализа, «https://www.dataquest.io/blog/how-to-clean-and-prepare-your-data-for- анализ/"

Тематическое моделирование с помощью LSA, pLSA, LDA, NMF, BERTopic, Top2Vec: сравнение, https://towardsdatascience.com/topic-modeling-with-lsa-plsa-lda-nmf-bertopic- top2vec-a-сравнение-5e6ce4b1e4a5#f916

BERTopic, https://maartengr.github.io/BERTopic/index.html

Тематическое моделирование с помощью BERT, https://towardsdatascience.com/topic-modeling-with-bert-779f7db187e6

Что нового в области искусственного интеллекта из цикла ажиотажа Gartner за 2022 год, https://www.gartner.com/en/articles/what-s-new-in-artificial-intelligence-from-the- 2022-gartner-hype-цикл