Запуск с моделированием темы

Этот пример показывает, как соответствовать модели темы к текстовым данным и визуализировать темы.

Модель 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

Соответствуйте модели 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

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

Смотрите также

| | | | |

Похожие темы