Этот пример показывает, как соответствовать модели темы к текстовым данным и визуализировать темы.
Модель Latent Dirichlet Allocation (LDA) является моделью темы, которая обнаруживает базовые темы в наборе документов. Темы, охарактеризованные дистрибутивами слов, соответствуют группам обычно слов co-появления. LDA является безнадзорной моделью темы, что означает, что он не требует маркированных данных.
Загрузите данные в качестве примера. Файл weatherReports.csv содержит прогнозы погоды, включая текстовое описание и категориальные метки для каждого события.
Импортируйте данные с помощью readtable, функционируют и извлекают текстовые данные из столбца event_narrative.
filename = "weatherReports.csv"; data = readtable(filename,'TextType','string'); textData = data.event_narrative;
Маркируйте и предварительно обработайте текстовые данные и создайте модель сумки слов.
Маркируйте текст.
documents = tokenizedDocument(textData);
Чтобы улучшить образцовую подгонку, удалите пунктуацию и слова остановки (слова как "и", и) из документов.
documents = removeStopWords(documents); documents = erasePunctuation(documents);
Создайте модель сумки слов.
bag = bagOfWords(documents);
Соответствуйте модели LDA семью темами с помощью функции fitlda. Чтобы подавить многословный вывод, установите опцию 'Verbose' на 0.
numTopics = 7;
mdl = fitlda(bag,numTopics,'Verbose',0);Визуализируйте первые четыре темы с помощью облаков слова.
figure for topicIdx = 1:4 subplot(2,2,topicIdx) wordcloud(mdl,topicIdx); title("Topic " + topicIdx) end

Для следующих шагов в текстовой аналитике можно попытаться улучшить образцовую подгонку при помощи различных шагов предварительной обработки и визуализации смесей темы. Для примера смотрите, Анализируют текстовые Данные Используя Модели Темы.
bagOfWords | erasePunctuation | fitlda | removeStopWords | tokenizedDocument | wordcloud