BigARTM

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Воронцов К.В. Обзор вероятностных тематических моделей)
(Публикации)
(10 промежуточных версий не показаны.)
Строка 1: Строка 1:
[[Изображение:BigARTM-logo.svg|130px|right]]
[[Изображение:BigARTM-logo.svg|130px|right]]
{{TOCright}}
{{TOCright}}
-
'''BigARTM''' — открытая библиотека для [[тематическое моделирование|тематического моделирования]] [[Big Data|больших]] коллекций текстовых документов. Параллельная распределённая реализация методов вероятностного тематического моделирования на основе [[АРТМ|аддитивной регуляризации]].
+
'''BigARTM''' — библиотека с открытым кодом для [[тематическое моделирование|тематического моделирования]] [[Big Data|больших]] коллекций текстовых документов и массивов транзакционных данных. Эффективная потоковая параллельная реализация вероятностного тематического моделирования на основе [[АРТМ|аддитивной регуляризации]].
ARTM ''(англ.)'' — Additive Regularization for Topic Modeling.
ARTM ''(англ.)'' — Additive Regularization for Topic Modeling.
Строка 7: Строка 7:
АРТМ ''(рус.)'' — Аддитивная Регуляризация Тематических Моделей.
АРТМ ''(рус.)'' — Аддитивная Регуляризация Тематических Моделей.
-
==Теоретическое введение==
+
==Тематическое моделирование==
-
{{main|Тематическое моделирование}}
+
-
''Вероятностное тематическое моделирование'' это современный инструмент статистического анализа текстов, предназначенный для выявления тематики коллекций документов. Тематическая модель описывает каждую тему дискретным распределением на множестве терминов, каждый документ — дискретным распределением на множестве тем. Тематические модели используются для информационного поиска, классификации, категоризации, аннотирования, сегментации текстов.
+
''[[Тематическое моделирование]]'' это технология статистического анализа текстов для автоматического выявления тематики в больших коллекциях документов. Тематическая модель определяет, к каким темам относится каждый документ, и какими словами описывается каждая тема. Для этого не требуется никакой ручной разметки текстов, обучение модели происходит без учителя. Похоже на [[Кластеризация|кластеризацию]], но тематическая кластеризация является «мягкой» и допускает, чтобы документ относился к нескольким кластерам-темам. Тематическое моделирование не претендует на понимание смысла текста, однако оно способно отвечать на вопросы «о чём этот текст» или «какие общие темы имеет эта пара текстов».
-
Тематическая модель — это представление наблюдаемого условного распределения <tex>p(w|d)</tex> терминов (слов или словосочетаний) <tex>w</tex> в документах <tex>d</tex> коллекции <tex>D</tex>:
+
Для чего используется тематическое моделирование:
-
::<tex>p(w|d) = \sum_{t\in T} p(w|t) p(t|d),</tex>
+
* разведочный информационный поиск (exploratory search) в электронных библиотеках;
-
где <tex>T</tex> — множество тем;
+
* поиск по смыслу, а не по ключевым словам;
-
:<tex>\phi_{wt} = p(w|t)</tex> — неизвестное распределение терминов в теме <tex>t</tex>;
+
* обнаружение и отслеживание событий в новостных потоках;
-
:<tex>\theta_{td} = p(t|d)</tex> — неизвестное распределение тем в документе <tex>d</tex>.
+
* выявление тематических сообществ в социальных сетях;
 +
* построение профилей интересов пользователей в рекомендательных системах;
 +
* категоризация интентов в системах разговорного интеллекта;
 +
* поиск мотивов в нуклеотидных и аминокислотных последовательностях;
 +
* аннотирование изображений;
 +
* поиск аномального поведения объектов в видеопотоке;
 +
* выявление паттернов поведения клиетов по транзакционным данным.
-
Параметры тематической модели — матрицы <tex>\Phi=(\phi_{wt})</tex> и <tex>\Theta=(\theta_{td})</tex> находятся путём решения задачи максимизации правдоподобия
+
''[[Тематическое моделирование|Тематическая модель]]'' формирует сжатое векторное представление текста, которое помогает классифицировать, рубрицировать, аннотировать, сегментировать тексты. В отличие от известных векторных представлений семейства x2vec ([[vord2vec]], [[paragraph2vec]], [[graph2vec]] и т.д.), в тематических векторах каждая координата соответствует теме и имеет содержательную интерпретацию. Модель привязывает к каждой теме список ключевых слов или фраз, который описывает семантику этой темы.
-
::<tex>\sum_{d\in D} \sum_{w\in d} n_{dw}\log \sum_{t\in T} \phi_{wt}\theta_{td} \to \max_{\Phi,\Theta} ,</tex>
+
-
при ограничениях нормировки и неотрицательности
+
-
::<tex>\sum_w \phi_{wt} = 1,\; \sum_t \theta_{td} = 1,\; \phi_{wt} \geq 0,\; \theta_{td}\geq 0, </tex>
+
-
где <tex>n_{dw}</tex> — число вхождений слова <tex>w</tex> в документ <tex>d</tex>.
+
-
Для решения обычно используется [[EM-алгоритм]], который сходится к одному из локальных решений.
+
[[LDA|LDA, ''латентное размещение Дирихле'']] – самая известная и часто используемая тематическая модель. Зачем нужно что-то ещё? Проблема в том, что задача тематического моделирования имеет очень много (бесконечно много) решений, и LDA выбирает одно из них, не предоставляя никаких средств для выбора лучшего решения под конкретную задачу.
-
Данная задача некорректно поставлена и имеет в общем случае бесконечно много решений вида
+
==Регуляризация тематических моделей==
-
<tex>(\Phi S) (S^{-1}\Theta) = \Phi\Theta</tex>.
+
-
Отсюда вытекают проблемы неустойчивости и плохой интерпретируемости тематических моделей.
+
-
===Аддитивная регуляризация тематических моделей ===
+
''Регуляризация'' служит для задания желаемых свойств тематической модели в виде оптимизационных критериев. Например, есть регуляризаторы, которые улучшают качество классификации текстов, повышают точность и полноту поиска, повышают различность тем, обеспечивают максимально возможную разреженность решения, учитывают дополнительные нетекстовые данные, и т.д.
-
{{main|АРТМ}}
+
-
Для решения проблемы неединственности и неустойчивости принято использовать регуляризацию — накладывать дополнительные ограничения на искомое решение.
+
''[[ARTM|Аддитивная регуляризация (ARTM)]]'' позволяет задать сразу несколько критериев-регуляризаторов. Например, чтобы построить тематическую модель новостного потока, необходимо учесть несколько верхних уровней уже имеющегося рубрикатора, научить модель учитывать время документов, разделять темы на подтемы и создавать новые темы по необходимости. ARTM позволяет складывать регуляризаторы от разных моделей, создавая комбинации моделей с заданными свойствами под конкретные приложения. Это приводит к модульной технологии тематического моделирования с высокой степенью повторного использования кода.
-
Подход АРТМ основан на идее многокритериальной регуляризации. Он позволяет строить модели, удовлетворяющие многим ограничениям одновременно. Каждое ограничение формализуется в виде регуляризатора — оптимизационного критерия, зависящего от параметров модели. Взвешенная сума всех таких критериев максимизируется совместно с основным критерием правдоподобия.
+
==Функциональные возможности BigARTM==
-
Для решения задачи регуляризованного правдоподобия используется EM-алгоритм с модифицированными формулами M-шага.
+
'''BigARTM''' реализует модульную технологию ARTM. Ядро библиотеки написано на С++ с соблюдением стандартов промышленного программирования. BigARTM поддерживает распараллеливание на ядрах центрального процессора. Реализует пакетную обработку больших данных, не требующую единовременной загрузки всех данных в оперативную память. Обладает линейной вычислительной сложностью по объёму коллекции и числу тем. Опережает другие свободно доступные библиотеки по скорости вычислений. Располагает встроенной библиотекой регуляризаторов и метрик качества, и позволяет добавлять свои. BigARTM – это «ЛЕГО-конструктор» тематических моделей.
-
Благодаря аддитивности регуляризаторов, модификация EM-алгоритма очень проста.
+
-
Достаточно добавить производные регуляризатора по параметрам модели в формулы М-шага.
+
-
Преимущества подхода АРТМ:
+
BigARTM реализует несколько механизмов, которые снимают многие ограничения простых моделей типа PLSA или LDA и расширяют спектр приложений тематического моделирования.
-
* Многие байесовские тематические модели (или заложенные в них идеи) удаётся переформулировать через регуляризаторы.
+
* ''Regularization.'' Регуляризаторы, которые можно комбинировать в любых сочетаниях.
-
* В АРТМ регуляризаторы не обязаны иметь вероятностный смысл.
+
* ''Modality.'' Модальности, которыми можно описывать нетекстовые объекты внутри документов.
-
* Суммируя регуляризаторы, взятые из разных моделей, можно строить многоцелевые комбинированные модели.
+
* ''Hierarchy.'' Тематические иерархии, в которых темы разделяются на подтемы.
-
* АРТМ проще, чем байесовский подход. Тематические модели в АРТМ легче понимать, легче выводить и легче комбинировать.
+
* ''Intratext.'' Обработка текста как последовательности тематических векторов слов.
-
* Снижается порог вхождения в область тематического моделирования для исследователей из смежных областей.
+
* ''Co-occurrence.'' Использование данных о совместной встречаемости слов.
 +
* ''Hypergraph.'' Тематизация сложно структурированных транзакционных данных.
-
Для комбинирования регуляризаторов в АРТМ необходимо продумывать ''стратегию регуляризации'':
+
Теперь немного подробнее об этих механизмах.
-
* какие регуляризаторы необходимы в данной задаче;
+
-
* какие регуляризаторы должны работать одновременно, какие друг за другом или попеременно, делая необходимую подготовительную работу;
+
-
* как менять коэффициент регуляризации каждого регуляризатора в ходе итераций: по каким условиям включать, усиливать, ослаблять и отключать каждый регуляризатор.
+
-
Ограничения подхода АРТМ:
+
''Мультимодальные тематические модели'' позволяют обрабатывать документы, содержащие не только слова, но и токены других модальностей. Это могут быть метаданные документа – авторы, время, источник, рубрики, и т.д. Это могут быть также токены, находящиеся внутри текста – ссылки, теги, словосочетания, именованные сущности, объекты на изображениях, записи о действиях пользователей, и т.д. Модальности помогают строить темы с учётом дополнительной информации. С другой стороны, темы помогают выявлять семантику нетекстовых модальностей, предсказывать или рекомендовать значения пропущенных токенов.
-
* Коэффициенты регуляризации приходится подбирать вручную. Автоматическая коррекция стратегий регуляризации в АРТМ пока является открытой проблемой.
+
-
===Параллельный онлайновый EM-алгоритм===
+
''Мультиязычные тематические модели'' реализуются как частный случай мультимодальных. Модальностями являются языки. В системах кроссязычного и мультиязычного тематического поиска запрос даётся на одном языке, а ответ может быть получен на других языках. Например, пользователь имеет текст патента на русском языке, и хочет найти близкие патенты на английском.
-
''Онлайновый EM-алгоритм'' реализует наиболее эффективную схему вычислений, при которой большие коллекции документов обрабатываются вообще за одну итерацию. Это возможно благодаря тому, что в матричном разложении <tex>\Phi\Theta</tex> матрица <tex>\Phi</tex> зависит от всей коллекции, тогда как в матрице <tex>\Theta</tex> каждый столбец зависит от своего документа. На больших коллекциях темы неплохо определяются по небольшой доле документов. Поэтому матрица <tex>\Phi</tex> успевает сойтись задолго до того, как заканчивается первая итерация.
+
-
В онлайновом EM-алгоритме коллекция разделяется на пакеты документов. Каждый пакет обрабатывается при фиксированной матрице <tex>\Phi</tex>, при этом для каждого документа из пакета производится несколько итераций до сходимости. На каждой итерации вычисляются переменные <tex>\theta_{td}</tex>. Переменные <tex>\phi_{wt}</tex> обновляются гораздо реже, после обработки каждого пакета.
+
-
Онлайновый алгоритм не держит в памяти всю коллекцию. Пакеты документов загружаются и выгружаются по необходимости. Это позволяет обрабатывать сколь угодно большие коллекции, которые не помещаются целиком ни в оперативную память, ни даже на диск одного компьютера. Эксперименты показывают, что качество модели и время обработки слабо зависят от размера пакетов, причём с ростом размера коллекции эта зависимость становится ещё менее заметной.
+
-
В ARTM онлайновый EM-алгоритм обобщён для мультимодальных регуляризованных моделей.
+
-
Параллельная архитектура BigARTM разработана исходя из требований асинхронной обработки данных, минимизации используемого объёма оперативной памяти, масштабируемости при увеличении количества ядер на узле, кроссплатформенности, возможности быстрой установки и использования на одной машине.
+
''Иерархические тематические модели'' используются для автоматической рубрикации текстов. В BigARTM тематическая иерархия строится сверху вниз по уровням. Каждая дочерняя тема связывается с одной или несколькими родительскими. Каждая родительская тема может разделиться на несколько подтем, либо перейти на следующий уровень целиком.
-
Для организации параллельной обработки данных на одном узле используется многопоточный параллелизм в пределах одного процесса. Это позволяет получить хорошую скорость обработки и хранить общую матрицу <tex>\Phi</tex> для узла, а не для каждого ядра. Кроме того, обеспечивается возможность асинхронной работы с данными.
+
-
===Регуляризаторы===
+
''Внутритекстовые регуляризаторы'' позволяют учитывать порядок слов, синтаксические связи, деление текста по предложениям и абзацам и другую внутритекстовую информацию. Он используется для тематической сегментации текстов, при этом сегментация влияет на темы. Это позволяет отойти от гипотезы «мешка слов» – самого критикуемого допущения в тематическом моделировании.
 +
 +
''Тематические модели совстречаемости'' используют данные о совместной встречаемости слов в локальных контекстах, например, в предложениях. Они основаны на дистрибутивной гипотезе – предположении, что смысл слова в языке определяется совокупностью всех слов, встречающихся в его локальных контекстах. Получаемые векторные представления слов имеют те же свойства, что и в моделях дистрибутивной семантики семейства x2vec. Они лучше инкапсулируют смыслы слов и точнее решают задачи семантической близости. При этом тематические векторные представления, в отличие от векторов x2vec, имеют интерпретируемые координаты.
 +
 
 +
''Гиперграфовые тематические модели'' используются для описания транзакционных данных. В обычном тексте транзакция – это запись о том, что слово встретилось в документе. В более сложных приложениях данные не сводятся к парным транзакциям и описывают взаимодействия трёх и более объектов. Например, транзакция (u,b,p) в рекламной сети – «пользователь u кликнул баннер b, расположенный на странице p»; финансовая транзакция (b,s,g) – «покупатель b купил товар g у продавца s». Транзакциями могут быть любые наборы объектов. Предложение в тексте – это тоже транзакция, состоящая из слов. Транзакции могут быть пересекающимися или вложенными. Модель строит тематические векторные представления для всех объектов, участвующих в транзакциях, независимо от их природы. Это наиболее общий вид тематических моделей, которые можно строить с использованием BigARTM.
 +
 
 +
==Регуляризаторы==
Следующие регуляризаторы реализованы в библиотеке BigARTM.
Следующие регуляризаторы реализованы в библиотеке BigARTM.
* ''Сглаживание'' распределений терминов в темах. Используется для выделения фоновых тем, собирающих общую лексику языка или общую лексику данной коллекции.
* ''Сглаживание'' распределений терминов в темах. Используется для выделения фоновых тем, собирающих общую лексику языка или общую лексику данной коллекции.
Строка 76: Строка 70:
Список регуляризаторов будет пополняться.
Список регуляризаторов будет пополняться.
-
===Метрики качества===
+
==Метрики качества==
Следующие метрики качества реализованы в библиотеке BigARTM.
Следующие метрики качества реализованы в библиотеке BigARTM.
* ''Перплексия''
* ''Перплексия''
Строка 86: Строка 80:
Список метрик качества будет пополняться.
Список метрик качества будет пополняться.
-
 
-
===Мультимодальные тематические модели===
 
-
 
-
''Мультимодальные тематические модели'' учитывают метаданные документа — информацию, дополнительную по отношению к основному тексту. Метаданные могут помогать выявлять тематику документа, и, наоборот, определив тематику документа по его тексту, можно автоматически формировать метаданные, восполнять пропущенные метаданные, строить рекомендации для пользователей.
 
-
 
-
В тематических моделях могут учитываться метаданные различных типов:
 
-
авторы,
 
-
метки времени создания документа или его фрагментов,
 
-
категории,
 
-
изображения и отдельные элементы изображений,
 
-
цитируемые документы,
 
-
цитируемые авторы,
 
-
пользователи документов и т.д.
 
-
 
-
BigARTM реализует мультимодальные модели, позволяющие обрабатывать метаданные любого числа типов одновременно.
 
-
Для каждой модальности создаётся словарь возможных значений.
 
-
Вхождение элементов каждой модальности рассматривается точно так же, как вхождение терминов в текст.
 
-
По сути дела, термины (слова и словосочетания) — это лишь элементы одной из модальностей.
 
-
Мультимодальная тематическая модель строит для каждой темы дискретное вероятностное распределение на конечном множестве (словаре) всех элементов каждой модальности.
 
-
 
-
===Модели PLSA и LDA===
 
-
 
-
В библиотеке BigARTM легко реализовать две самые известные модели — [[Вероятностный латентный семантический анализ|PLSA]] и [[Латентное размещение Дирихле|LDA]], но нет смысла выделять их особо.
 
-
* PLSA (Probabilistic Latent Semantic Analysis) — это тематическая модель без регуляризаторов.
 
-
* LDA (Latent Dirichlet Allocation) — это тематическая модель, в которой каждая тема сглажена одним и тем же регуляризатором Дирихле.
 
-
 
-
Мы рекомендуем использовать одну сглаженную тему, чтобы моделировать общую лексику языка, а к остальным темам применять регуляризаторы разреживания и декоррелирования, чтобы помочь тематической модели выделить в них специфические темы предметных областей данной текстовой коллекции.
 
-
 
-
===Сравнение с байесовскими моделями ===
 
-
Вероятностное тематическое моделирование развивается, главным образом, в рамках [[байесовское обучение|байесовского обучения]] и [[графическая модель|графических моделей]]. В байесовском подходе коллекция текстов описывается единой вероятностной порождающей моделью, при этом дополнительные знания и предположения формализуются с помощью априорных распределений.
 
-
 
-
Это не очень хорошо по нескольким причинам:
 
-
* Не всякого рода знания удобно формализовать через априорные распределения. Попытка учесть больше знаний, чтобы построить более адекватную модель, приводит к значительному усложнению математического аппарата. В литературе почти нет работ по комбинированию тематических моделей, несмотря на их очевидную практическую востребованность.
 
-
* Не все верят, что естественный язык можно рассматривать как чисто статистическое явление. Одна из основных тенденций вычислительной лингвистики — создание гибридных моделей, объединяющих лучшие достижения статистических и лингвистических подходов. Лингвистические знания не всегда возможно описать на вероятностном языке.
 
-
* Многие байесовские модели используют априорные распределения Дирихле, имеющие весьма слабые лингвистические обоснования. Они не моделируют какие-либо явления естественного языка. Зато они удобны для математических выкладок благодаря свойству сопряжённости с мультиномиальным распределением.
 
-
* Априорное распределение Дирихле является слишком слабым регуляризатором. Проблему неустойчивости он не решает.
 
-
 
-
==Функциональные возможности BigARTM==
 
-
 
-
* Регуляризаторы: сглаживание, разреживание, декоррелирование, отбор тем
 
-
* Метрики качества: перплексия, разреженность, чистота тем, контрастность тем, размер ядер тем
 
-
* Мультимодальные тематические модели
 
-
* Возможность добавления новых регуляризаторов и метрик качества
 
-
 
-
==Архитектура BigARTM==
 
-
 
-
Реализация ядра библиотеки на С++, интерфейсы на C++, Python.
 
==Разработчики BigARTM==
==Разработчики BigARTM==
Строка 142: Строка 89:
'''Основные'''
'''Основные'''
-
# ''Воронцов К. В.'' [[Media:voron17survey-artm.pdf|Обзор вероятностных тематических моделей]]. {{важно|— обновление 14.07.2017}}.
+
# ''Воронцов К. В.'' [[Media:voron17survey-artm.pdf|Вероятностное тематическое моделирование: теория, модели, алгоритмы и проект BigARTM]]. 2020.
 +
# ''Frei O., Apishev M.'' [[Media:frei16parallel.pdf|Parallel Non-blocking Deterministic Algorithm for Online Topic Modeling]] // Analysis of Images, Social Networks and Texts. AIST 2016. Communications in Computer and Information Science, vol 661. Springer, pp. 132–144.
 +
# ''Kochedykov D., Apishev M., Golitsyn L., Vorontsov K.'' [https://fruct.org/publications/fruct21/files/Koc.pdf Fast and Modular Regularized Topic Modelling] // Proceeding Of The 21St Conference Of FRUCT (Finnish-Russian University Cooperation in Telecommunications) Association. The seminar on Intelligence, Social Media and Web (ISMW). Helsinki, Finland, November 6-10, 2017. Pp.182–193.
 +
 
 +
'''Теория ARTM'''
# ''Воронцов К. В.'' [[Media:Voron14dan-rus.pdf|Аддитивная регуляризация тематических моделей коллекций текстовых документов]] // Доклады РАН. 2014. — Т. 455., №3. 268–271
# ''Воронцов К. В.'' [[Media:Voron14dan-rus.pdf|Аддитивная регуляризация тематических моделей коллекций текстовых документов]] // Доклады РАН. 2014. — Т. 455., №3. 268–271
# ''Воронцов К. В., Фрей А. И., Апишев М. А., Ромов П. А., Янина А. О., Суворова М. А.'' [[Media:Voron15damdid.pdf|BigARTM: библиотека с открытым кодом для тематического моделирования больших текстовых коллекций]] // Аналитика и управление данными в областях с интенсивным использованием данных. XVII Международная конференция DAMDID/RCDL’2015, Обнинск, 13-16 октября 2015.
# ''Воронцов К. В., Фрей А. И., Апишев М. А., Ромов П. А., Янина А. О., Суворова М. А.'' [[Media:Voron15damdid.pdf|BigARTM: библиотека с открытым кодом для тематического моделирования больших текстовых коллекций]] // Аналитика и управление данными в областях с интенсивным использованием данных. XVII Международная конференция DAMDID/RCDL’2015, Обнинск, 13-16 октября 2015.
Строка 148: Строка 99:
# ''Vorontsov K. V., Frei O. I., Apishev M. A., Romov P. A., Suvorova M. A., Yanina A. O.'' [[Media:Voron15cikm-tm.pdf|Non-Bayesian Additive Regularization for Multimodal Topic Modeling of Large Collections]] // Topic Models: Post-Processing and Applications, CIKM 2015 Workshop, October 19, 2015, Melbourne, Australia.
# ''Vorontsov K. V., Frei O. I., Apishev M. A., Romov P. A., Suvorova M. A., Yanina A. O.'' [[Media:Voron15cikm-tm.pdf|Non-Bayesian Additive Regularization for Multimodal Topic Modeling of Large Collections]] // Topic Models: Post-Processing and Applications, CIKM 2015 Workshop, October 19, 2015, Melbourne, Australia.
# ''Vorontsov K. V., Potapenko A. A., Plavin A. V.'' [[Media:Voron15slds.pdf|Additive Regularization of Topic Models for Topic Selection and Sparse Factorization]] // The Third International Symposium On Learning And Data Sciences (SLDS 2015). April 20-22, 2015. Royal Holloway, University of London, UK. Springer International Publishing Switzerland 2015, A. Gammerman et al. (Eds.): SLDS 2015, LNAI 9047, pp. 193–202, 2015.
# ''Vorontsov K. V., Potapenko A. A., Plavin A. V.'' [[Media:Voron15slds.pdf|Additive Regularization of Topic Models for Topic Selection and Sparse Factorization]] // The Third International Symposium On Learning And Data Sciences (SLDS 2015). April 20-22, 2015. Royal Holloway, University of London, UK. Springer International Publishing Switzerland 2015, A. Gammerman et al. (Eds.): SLDS 2015, LNAI 9047, pp. 193–202, 2015.
 +
# ''Chirkova N., Vorontsov K.'' [http://jmlda.org/papers/doc/2016/no2/Chirkova2016hARTM.pdf Additive Regularization for Hierarchical Multimodal Topic Modeling] // Journal Machine Learning and Data Analysis. 2(2), pp. 187-200. 2016.
 +
# ''Ianina A., Golitsyn L., Vorontsov K.'' [[Media:ianina17exploratory.pdf|Multi-objective topic modeling for exploratory search in tech news]] // Filchenkov A., Pivovarova L., Žižka J. (eds) Artificial Intelligence and Natural Language. AINL 2017, St. Petersburg, Russia, September 20-23, 2017. — Communications in Computer and Information Science, vol 789. Springer, Cham, 2017. — pp 181–193.
 +
# ''Potapenko A. A., Popov A. S., Vorontsov K. V.'' [https://arxiv.org/abs/1711.04154.pdf Interpretable probabilistic embeddings: bridging the gap between topic models and neural networks] // Filchenkov A., Pivovarova L., Žižka J. (eds) Artificial Intelligence and Natural Language. AINL 2017, St. Petersburg, Russia, September 20-23, 2017. — Communications in Computer and Information Science, vol 789. Springer, Cham, 2017. — pp 167-180.
 +
# ''Alekseev V. A., Bulatov V. G., Vorontsov K. V.'' [http://www.dialog-21.ru/media/4281/alekseevva.pdf Intra-Text Coherence as a Measure of Topic Models Interpretability] // Computational Linguistics and Intellectual Technologies. Dialogue 2018. Pp. 1-13.
 +
# ''Belyy A. V., Seleznova M. S., Sholokhov A. K., Vorontsov K. V.'' [http://www.dialog-21.ru/media/4289/belyyav_dubovama.pdf Quality Evaluation and Improvement for Hierarchical Topic Modeling] // Computational Linguistics and Intellectual Technologies. Dialogue 2018. Pp. 110-123.
 +
# ''Skachkov N. A., Vorontsov K. V.'' [http://www.dialog-21.ru/media/4331/skachkovna_vorontsovkv.pdf Improving topic models with segmental structure of texts] // Computational Linguistics and Intellectual Technologies. Dialogue 2018. Pp. 652-661.
'''Переводы, сокращённые версии'''
'''Переводы, сокращённые версии'''
Строка 154: Строка 111:
# ''Vorontsov K. V., Frei O. I., Apishev M. A., Romov P. A., Suvorova M. A.'' [[Media:Voron15aist.pdf|BigARTM: Open Source Library for Regularized Multimodal Topic Modeling of Large Collections]] // AIST’2015, Analysis of Images, Social networks and Texts. Springer International Publishing Switzerland, 2015. Communications in Computer and Information Science (CCIS).
# ''Vorontsov K. V., Frei O. I., Apishev M. A., Romov P. A., Suvorova M. A.'' [[Media:Voron15aist.pdf|BigARTM: Open Source Library for Regularized Multimodal Topic Modeling of Large Collections]] // AIST’2015, Analysis of Images, Social networks and Texts. Springer International Publishing Switzerland, 2015. Communications in Computer and Information Science (CCIS).
# ''Воронцов К. В., Потапенко А. А.'' [[Media:Voron14dialog.pdf|Регуляризация вероятностных тематических моделей для повышения интерпретируемости и определения числа тем]] // Компьютерная лингвистика и интеллектуальные технологии: По материалам ежегодной Международной конференции «Диалог» (Бекасово, 4–8 июня 2014 г.) Вып.13 (20). М: Изд-во РГГУ, 2014. C.676–687.
# ''Воронцов К. В., Потапенко А. А.'' [[Media:Voron14dialog.pdf|Регуляризация вероятностных тематических моделей для повышения интерпретируемости и определения числа тем]] // Компьютерная лингвистика и интеллектуальные технологии: По материалам ежегодной Международной конференции «Диалог» (Бекасово, 4–8 июня 2014 г.) Вып.13 (20). М: Изд-во РГГУ, 2014. C.676–687.
 +
# ''Янина А. О., Воронцов К. В.'' [http://jmlda.org/papers/doc/2016/no2/Ianina2016Multimodal.pdf Мультимодальные тематические модели для разведочного поиска в коллективном блоге] // Машинное обучение и анализ данных. 2016. T.2. №2. С.173-186.
==Ссылки==
==Ссылки==
 +
* [[Media:BigARTM-short-intro.pdf|Тематический анализ больших данных]]''. Краткое популярное введение в BigARTM.
* Документация: [http://bigartm.org bigartm.org]
* Документация: [http://bigartm.org bigartm.org]
* Страница на гитхабе: [https://github.com/bigartm github.com/bigartm]
* Страница на гитхабе: [https://github.com/bigartm github.com/bigartm]
Строка 165: Строка 124:
* [[Вероятностные тематические модели (курс лекций, К.В.Воронцов)|Вероятностные тематические модели]] — семестровый спецкурс, [[Математические методы прогнозирования (кафедра ВМиК МГУ)|кафедра ММП]] [[ВМиК МГУ]]
* [[Вероятностные тематические модели (курс лекций, К.В.Воронцов)|Вероятностные тематические модели]] — семестровый спецкурс, [[Математические методы прогнозирования (кафедра ВМиК МГУ)|кафедра ММП]] [[ВМиК МГУ]]
* [[Коллекции документов для тематического моделирования]]
* [[Коллекции документов для тематического моделирования]]
-
* ''Воронцов К.В.'' Лекции по тематическому моделированию. [[Media:Voron-2013-ptm.pdf|Voron-2013-ptm.pdf]].
 
-
* ''Воронцов К.В.'' Практическое задание по тематическому моделированию. [[Media:voron-2014-task-PTM.pdf|Voron-2014-task-ptm.pdf]]
 
-
 
-
{{stub}}
 
[[Категория:Инструменты и технологии]]
[[Категория:Инструменты и технологии]]

Версия 14:57, 27 июля 2020

Содержание

BigARTM — библиотека с открытым кодом для тематического моделирования больших коллекций текстовых документов и массивов транзакционных данных. Эффективная потоковая параллельная реализация вероятностного тематического моделирования на основе аддитивной регуляризации.

ARTM (англ.) — Additive Regularization for Topic Modeling.

АРТМ (рус.) — Аддитивная Регуляризация Тематических Моделей.

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

Тематическое моделирование – это технология статистического анализа текстов для автоматического выявления тематики в больших коллекциях документов. Тематическая модель определяет, к каким темам относится каждый документ, и какими словами описывается каждая тема. Для этого не требуется никакой ручной разметки текстов, обучение модели происходит без учителя. Похоже на кластеризацию, но тематическая кластеризация является «мягкой» и допускает, чтобы документ относился к нескольким кластерам-темам. Тематическое моделирование не претендует на понимание смысла текста, однако оно способно отвечать на вопросы «о чём этот текст» или «какие общие темы имеет эта пара текстов».

Для чего используется тематическое моделирование:

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

Тематическая модель формирует сжатое векторное представление текста, которое помогает классифицировать, рубрицировать, аннотировать, сегментировать тексты. В отличие от известных векторных представлений семейства x2vec (vord2vec, paragraph2vec, graph2vec и т.д.), в тематических векторах каждая координата соответствует теме и имеет содержательную интерпретацию. Модель привязывает к каждой теме список ключевых слов или фраз, который описывает семантику этой темы.

LDA, латентное размещение Дирихле – самая известная и часто используемая тематическая модель. Зачем нужно что-то ещё? Проблема в том, что задача тематического моделирования имеет очень много (бесконечно много) решений, и LDA выбирает одно из них, не предоставляя никаких средств для выбора лучшего решения под конкретную задачу.

Регуляризация тематических моделей

Регуляризация служит для задания желаемых свойств тематической модели в виде оптимизационных критериев. Например, есть регуляризаторы, которые улучшают качество классификации текстов, повышают точность и полноту поиска, повышают различность тем, обеспечивают максимально возможную разреженность решения, учитывают дополнительные нетекстовые данные, и т.д.

Аддитивная регуляризация (ARTM) позволяет задать сразу несколько критериев-регуляризаторов. Например, чтобы построить тематическую модель новостного потока, необходимо учесть несколько верхних уровней уже имеющегося рубрикатора, научить модель учитывать время документов, разделять темы на подтемы и создавать новые темы по необходимости. ARTM позволяет складывать регуляризаторы от разных моделей, создавая комбинации моделей с заданными свойствами под конкретные приложения. Это приводит к модульной технологии тематического моделирования с высокой степенью повторного использования кода.

Функциональные возможности BigARTM

BigARTM реализует модульную технологию ARTM. Ядро библиотеки написано на С++ с соблюдением стандартов промышленного программирования. BigARTM поддерживает распараллеливание на ядрах центрального процессора. Реализует пакетную обработку больших данных, не требующую единовременной загрузки всех данных в оперативную память. Обладает линейной вычислительной сложностью по объёму коллекции и числу тем. Опережает другие свободно доступные библиотеки по скорости вычислений. Располагает встроенной библиотекой регуляризаторов и метрик качества, и позволяет добавлять свои. BigARTM – это «ЛЕГО-конструктор» тематических моделей.

BigARTM реализует несколько механизмов, которые снимают многие ограничения простых моделей типа PLSA или LDA и расширяют спектр приложений тематического моделирования.

  • Regularization. Регуляризаторы, которые можно комбинировать в любых сочетаниях.
  • Modality. Модальности, которыми можно описывать нетекстовые объекты внутри документов.
  • Hierarchy. Тематические иерархии, в которых темы разделяются на подтемы.
  • Intratext. Обработка текста как последовательности тематических векторов слов.
  • Co-occurrence. Использование данных о совместной встречаемости слов.
  • Hypergraph. Тематизация сложно структурированных транзакционных данных.

Теперь немного подробнее об этих механизмах.

Мультимодальные тематические модели позволяют обрабатывать документы, содержащие не только слова, но и токены других модальностей. Это могут быть метаданные документа – авторы, время, источник, рубрики, и т.д. Это могут быть также токены, находящиеся внутри текста – ссылки, теги, словосочетания, именованные сущности, объекты на изображениях, записи о действиях пользователей, и т.д. Модальности помогают строить темы с учётом дополнительной информации. С другой стороны, темы помогают выявлять семантику нетекстовых модальностей, предсказывать или рекомендовать значения пропущенных токенов.

Мультиязычные тематические модели реализуются как частный случай мультимодальных. Модальностями являются языки. В системах кроссязычного и мультиязычного тематического поиска запрос даётся на одном языке, а ответ может быть получен на других языках. Например, пользователь имеет текст патента на русском языке, и хочет найти близкие патенты на английском.

Иерархические тематические модели используются для автоматической рубрикации текстов. В BigARTM тематическая иерархия строится сверху вниз по уровням. Каждая дочерняя тема связывается с одной или несколькими родительскими. Каждая родительская тема может разделиться на несколько подтем, либо перейти на следующий уровень целиком.

Внутритекстовые регуляризаторы позволяют учитывать порядок слов, синтаксические связи, деление текста по предложениям и абзацам и другую внутритекстовую информацию. Он используется для тематической сегментации текстов, при этом сегментация влияет на темы. Это позволяет отойти от гипотезы «мешка слов» – самого критикуемого допущения в тематическом моделировании.

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

Гиперграфовые тематические модели используются для описания транзакционных данных. В обычном тексте транзакция – это запись о том, что слово встретилось в документе. В более сложных приложениях данные не сводятся к парным транзакциям и описывают взаимодействия трёх и более объектов. Например, транзакция (u,b,p) в рекламной сети – «пользователь u кликнул баннер b, расположенный на странице p»; финансовая транзакция (b,s,g) – «покупатель b купил товар g у продавца s». Транзакциями могут быть любые наборы объектов. Предложение в тексте – это тоже транзакция, состоящая из слов. Транзакции могут быть пересекающимися или вложенными. Модель строит тематические векторные представления для всех объектов, участвующих в транзакциях, независимо от их природы. Это наиболее общий вид тематических моделей, которые можно строить с использованием BigARTM.

Регуляризаторы

Следующие регуляризаторы реализованы в библиотеке BigARTM.

  • Сглаживание распределений терминов в темах. Используется для выделения фоновых тем, собирающих общую лексику языка или общую лексику данной коллекции.
  • Сглаживание распределений тем в документах. Используется для выделения фоновых слов в каждом документах.
  • Разреживание распределений терминов в темах. Используется для выделения лексических ядер предметных тем как относительно небольшой доли слов словаря.
  • Разреживание распределений тем в документах. Используется для выделения относительно небольшой доли предметных тем в каждом документах.
  • Декоррелирование распределений терминов в темах. Используется для повышения различности лексических ядер предметных тем.
  • Отбор тем путём обнуления вероятности темы во всех документах. Используется для выведения из модели незначимых тем. Позволяет оптимизировать число тем, начиная с заведомо избыточного числа тем и постепенно удаляя ненужные.

Список регуляризаторов будет пополняться.

Метрики качества

Следующие метрики качества реализованы в библиотеке BigARTM.

  • Перплексия
  • Разреженность
  • Средняя чистота тем
  • Средняя контрастность тем
  • Средний размер лексического ядра тем
  • Доля фоновых слов во всей коллекции

Список метрик качества будет пополняться.

Разработчики BigARTM

Публикации

Основные

  1. Воронцов К. В. Вероятностное тематическое моделирование: теория, модели, алгоритмы и проект BigARTM. 2020.
  2. Frei O., Apishev M. Parallel Non-blocking Deterministic Algorithm for Online Topic Modeling // Analysis of Images, Social Networks and Texts. AIST 2016. Communications in Computer and Information Science, vol 661. Springer, pp. 132–144.
  3. Kochedykov D., Apishev M., Golitsyn L., Vorontsov K. Fast and Modular Regularized Topic Modelling // Proceeding Of The 21St Conference Of FRUCT (Finnish-Russian University Cooperation in Telecommunications) Association. The seminar on Intelligence, Social Media and Web (ISMW). Helsinki, Finland, November 6-10, 2017. Pp.182–193.

Теория ARTM

  1. Воронцов К. В. Аддитивная регуляризация тематических моделей коллекций текстовых документов // Доклады РАН. 2014. — Т. 455., №3. 268–271
  2. Воронцов К. В., Фрей А. И., Апишев М. А., Ромов П. А., Янина А. О., Суворова М. А. BigARTM: библиотека с открытым кодом для тематического моделирования больших текстовых коллекций // Аналитика и управление данными в областях с интенсивным использованием данных. XVII Международная конференция DAMDID/RCDL’2015, Обнинск, 13-16 октября 2015.
  3. Vorontsov K. V., Potapenko A. A. Additive Regularization of Topic Models // Machine Learning. Special Issue “Data Analysis and Intelligent Optimization with Applications”. 2014. Русский перевод
  4. Vorontsov K. V., Frei O. I., Apishev M. A., Romov P. A., Suvorova M. A., Yanina A. O. Non-Bayesian Additive Regularization for Multimodal Topic Modeling of Large Collections // Topic Models: Post-Processing and Applications, CIKM 2015 Workshop, October 19, 2015, Melbourne, Australia.
  5. Vorontsov K. V., Potapenko A. A., Plavin A. V. Additive Regularization of Topic Models for Topic Selection and Sparse Factorization // The Third International Symposium On Learning And Data Sciences (SLDS 2015). April 20-22, 2015. Royal Holloway, University of London, UK. Springer International Publishing Switzerland 2015, A. Gammerman et al. (Eds.): SLDS 2015, LNAI 9047, pp. 193–202, 2015.
  6. Chirkova N., Vorontsov K. Additive Regularization for Hierarchical Multimodal Topic Modeling // Journal Machine Learning and Data Analysis. 2(2), pp. 187-200. 2016.
  7. Ianina A., Golitsyn L., Vorontsov K. Multi-objective topic modeling for exploratory search in tech news // Filchenkov A., Pivovarova L., Žižka J. (eds) Artificial Intelligence and Natural Language. AINL 2017, St. Petersburg, Russia, September 20-23, 2017. — Communications in Computer and Information Science, vol 789. Springer, Cham, 2017. — pp 181–193.
  8. Potapenko A. A., Popov A. S., Vorontsov K. V. Interpretable probabilistic embeddings: bridging the gap between topic models and neural networks // Filchenkov A., Pivovarova L., Žižka J. (eds) Artificial Intelligence and Natural Language. AINL 2017, St. Petersburg, Russia, September 20-23, 2017. — Communications in Computer and Information Science, vol 789. Springer, Cham, 2017. — pp 167-180.
  9. Alekseev V. A., Bulatov V. G., Vorontsov K. V. Intra-Text Coherence as a Measure of Topic Models Interpretability // Computational Linguistics and Intellectual Technologies. Dialogue 2018. Pp. 1-13.
  10. Belyy A. V., Seleznova M. S., Sholokhov A. K., Vorontsov K. V. Quality Evaluation and Improvement for Hierarchical Topic Modeling // Computational Linguistics and Intellectual Technologies. Dialogue 2018. Pp. 110-123.
  11. Skachkov N. A., Vorontsov K. V. Improving topic models with segmental structure of texts // Computational Linguistics and Intellectual Technologies. Dialogue 2018. Pp. 652-661.

Переводы, сокращённые версии

  1. Vorontsov K. V. Additive Regularization for Topic Models of Text Collections // Doklady Mathematics. 2014, Pleiades Publishing, Ltd. — Vol. 89, No. 3, pp. 301–304.
  2. Vorontsov K. V., Potapenko A. A. Tutorial on Probabilistic Topic Modeling: Additive Regularization for Stochastic Matrix Factorization // AIST’2014, Analysis of Images, Social networks and Texts. Springer International Publishing Switzerland, 2014. Communications in Computer and Information Science (CCIS). Vol. 436. pp. 29–46.
  3. Vorontsov K. V., Frei O. I., Apishev M. A., Romov P. A., Suvorova M. A. BigARTM: Open Source Library for Regularized Multimodal Topic Modeling of Large Collections // AIST’2015, Analysis of Images, Social networks and Texts. Springer International Publishing Switzerland, 2015. Communications in Computer and Information Science (CCIS).
  4. Воронцов К. В., Потапенко А. А. Регуляризация вероятностных тематических моделей для повышения интерпретируемости и определения числа тем // Компьютерная лингвистика и интеллектуальные технологии: По материалам ежегодной Международной конференции «Диалог» (Бекасово, 4–8 июня 2014 г.) Вып.13 (20). М: Изд-во РГГУ, 2014. C.676–687.
  5. Янина А. О., Воронцов К. В. Мультимодальные тематические модели для разведочного поиска в коллективном блоге // Машинное обучение и анализ данных. 2016. T.2. №2. С.173-186.

Ссылки

См. также

Личные инструменты