textrankScores

Документ, выигрывающий с алгоритмом TextRank

Описание

пример

scores = textrankScores(documents) баллы documents для важности согласно попарным значениям подобия с помощью алгоритма TextRank. Чтобы вычислить общие черты и баллы важности, функция использует BM25 и алгоритмы PageRank, соответственно.

пример

scores = textrankScores(bag) документы баллов закодированы сумкой слов или мешком n модели bag граммов.

Примеры

свернуть все

Создайте массив маркируемых документов.

str = [
    "the quick brown fox jumped over the lazy dog"
    "the fast brown fox jumped over the lazy dog"
    "the lazy dog sat there and did nothing"
    "the other animals sat there watching"];
documents = tokenizedDocument(str)
documents = 
  4x1 tokenizedDocument:

    9 tokens: the quick brown fox jumped over the lazy dog
    9 tokens: the fast brown fox jumped over the lazy dog
    8 tokens: the lazy dog sat there and did nothing
    6 tokens: the other animals sat there watching

Вычислите баллы TextRank.

scores = textrankScores(documents);

Визуализируйте баллы в столбчатой диаграмме.

figure
bar(scores)
xlabel("Document")
ylabel("Score")
title("TextRank Scores")

Создайте модель сумки слов из текстовых данных в sonnets.csv.

filename = "sonnets.csv";
tbl = readtable(filename,'TextType','string');
textData = tbl.Sonnet;
documents = tokenizedDocument(textData);
bag = bagOfWords(documents)
bag = 
  bagOfWords with properties:

          Counts: [154x3527 double]
      Vocabulary: [1x3527 string]
        NumWords: 3527
    NumDocuments: 154

Вычислите баллы TextRank.

scores = textrankScores(bag);

Визуализируйте баллы в столбчатой диаграмме.

figure
bar(scores)
xlabel("Document")
ylabel("Score")
title("TextRank Scores")

Входные параметры

свернуть все

Введите документы в виде tokenizedDocument массив, массив строк слов или массив ячеек из символьных векторов. Если documents не tokenizedDocument массив, затем это должен быть вектор-строка, представляющий единый документ, где каждым элементом является слово. Чтобы задать несколько документов, используйте tokenizedDocument массив.

Введите сумку слов или мешок n модели граммов в виде bagOfWords возразите или bagOfNgrams объект. Если bag bagOfNgrams объект, затем функция обрабатывает каждую n-грамму как отдельное слово.

Выходные аргументы

свернуть все

Баллы TextRank, возвращенные как N-by-1 вектор, где scores(i) соответствует счету к ith вводят документ, и N является количеством входных документов.

Ссылки

[1] Mihalcea, Рада и Пол Тэро. "Textrank: Обеспечение порядка в текст". В Продолжениях 2 004 конференций по эмпирическим методам в обработке естественного языка, стр 404-411. 2004.

Введенный в R2020a