Участник:Kruglikov/PLSA: различия между версиями

Материал из Алговики
Перейти к навигации Перейти к поиску
Строка 11: Строка 11:


=== Математическое описание алгоритма ===
=== Математическое описание алгоритма ===
Пусть <math>D</math> — конечное множество документов, <math>W</math> — конечное множество терминов, <math>T</math> — конечное множество тем. <math>(d_i, w_i, t_i)_{i=1}^n \subset D \times W \times T</math> — коллекция текстовых документов.
Введём набор счётчиков:
<math>n_{dwt} = \sum_{i=1}^n [d_i = d][w_i = w][t_i = t]</math> — частота <math>(d_i, w_i, t_i)</math> в коллекции;
<math>n_{wt} = \sum_{d} n_{dwt}</math> — частота термина <math>w</math> в теме <math>t</math>;
<math>n_{td} = \sum_{w} n_{dwt}</math> — частота терминов темы <math>t</math> в документе <math>d</math>;
<math>n_{t} = \sum_{d, w} n_{dwt}</math> — частота терминов темы <math>t</math> коллекции;
<math>n_{dw} = \sum_{t} n_{dwt}</math> — частота термина <math>w</math> в документе <math>d</math>;
<math>n_{w} = \sum_{d, t} n_{dwt}</math> — частота термина <math>w</math> в коллекции;
<math>n_{d} = \sum_{w, t} n_{dwt}</math> — длина документа <math>d</math>;
<math>n = \sum_{d, w, t} n_{dwt}</math> — длина коллекции.


== Программная реализация алгоритма ==
== Программная реализация алгоритма ==

Версия от 20:27, 28 октября 2017

Общая схема описания алгоритмов имеет следующий вид:

Свойства и структура алгоритмов

Общее описание алгоритма

Задача тематического моделирования заключается в том, чтобы выделить в коллекции текстовых документов скрытые структуры, называемые темами. Неформально под темой понимается семантически однородное множество документов. Более формально, темой называется условное распределение на множестве терминов [math]\displaystyle{ p(w|t) }[/math], а тематикой документа называется условное распределение [math]\displaystyle{ p(t|d) }[/math]. Переменная [math]\displaystyle{ t }[/math] является скрытой. Таким образом, задача тематического моделирования — оценить вероятности [math]\displaystyle{ p(w|t) }[/math] и [math]\displaystyle{ p(t|d) }[/math] по наблюдаемым частотам [math]\displaystyle{ p(w|d) }[/math] слов в документах.

Задачу восстановления скрытого распределения можно решать, максимизируя правдоподобие выборки EM-алгоритмом. В применении к тематическому моделированию такой подход называется probabilistic latent semantic analysis — PLSA.


Математическое описание алгоритма

Пусть [math]\displaystyle{ D }[/math] — конечное множество документов, [math]\displaystyle{ W }[/math] — конечное множество терминов, [math]\displaystyle{ T }[/math] — конечное множество тем. [math]\displaystyle{ (d_i, w_i, t_i)_{i=1}^n \subset D \times W \times T }[/math] — коллекция текстовых документов.

Введём набор счётчиков:

[math]\displaystyle{ n_{dwt} = \sum_{i=1}^n [d_i = d][w_i = w][t_i = t] }[/math] — частота [math]\displaystyle{ (d_i, w_i, t_i) }[/math] в коллекции;

[math]\displaystyle{ n_{wt} = \sum_{d} n_{dwt} }[/math] — частота термина [math]\displaystyle{ w }[/math] в теме [math]\displaystyle{ t }[/math];

[math]\displaystyle{ n_{td} = \sum_{w} n_{dwt} }[/math] — частота терминов темы [math]\displaystyle{ t }[/math] в документе [math]\displaystyle{ d }[/math];

[math]\displaystyle{ n_{t} = \sum_{d, w} n_{dwt} }[/math] — частота терминов темы [math]\displaystyle{ t }[/math] коллекции;

[math]\displaystyle{ n_{dw} = \sum_{t} n_{dwt} }[/math] — частота термина [math]\displaystyle{ w }[/math] в документе [math]\displaystyle{ d }[/math];

[math]\displaystyle{ n_{w} = \sum_{d, t} n_{dwt} }[/math] — частота термина [math]\displaystyle{ w }[/math] в коллекции;

[math]\displaystyle{ n_{d} = \sum_{w, t} n_{dwt} }[/math] — длина документа [math]\displaystyle{ d }[/math];

[math]\displaystyle{ n = \sum_{d, w, t} n_{dwt} }[/math] — длина коллекции.

Программная реализация алгоритма

Литература