Перейти к содержанию

Дисперсия слов

dispersion(text="", path=null, words=null, parts=10, lemmatize=true, top_n=20)

Дисперсия - насколько равномерно слово распределено по тексту: она отличает слово, которое проходит через весь текст, от слова, сосредоточенного в одном месте, хотя частота их не различает. Текст делится на parts частей примерно равного размера, и для каждого слова считаются меры Гриса и другие меры дисперсии. Определения и формулы мер - на странице ruTS Дисперсия слов.

Слово с частотой меньше parts не может попасть во все части, и его меры показывают сосредоточенность даже при самом ровном распределении: ответ предупреждает о таких словах. У слова, которого нет в тексте, частота 0 и меры null.

Ошибки - общие для инструментов, текст без слов, частей больше, чем слов, и слово из words не из одного слова.

{
  "name": "dispersion",
  "arguments": {
    "text": "Кот сидел на окне и смотрел на птиц. Птицы улетели, и кот уснул на окне. Завтра кот снова будет сидеть на окне и смотреть на птиц.",
    "words": ["кот", "птица"],
    "parts": 3
  }
}
{
  "n_words": 26,
  "words": [
    {
      "word": "кот",
      "freq": 3,
      "dp": 0.3205,
      "dp_norm": 0.463,
      "juilland_d": 0.4226,
      "carroll_d2": 0.5794,
      "rosengren_s": 0.6725,
      "kl_divergence": 0.6122
    },
    {
      "word": "птица",
      "freq": 3,
      "dp": 0.3462,
      "dp_norm": 0.5,
      "juilland_d": 0.4443,
      "carroll_d2": 0.5948,
      "rosengren_s": 0.641,
      "kl_divergence": 0.6689
    }
  ],
  "warnings": []
}

Параметры

Параметр Тип По умолчанию Описание
text string "" Текст
path string null Абсолютный путь к файлу с текстом вместо text
words array[string] null Слова, дисперсия которых нужна, до 200; не задано - самые частые слова
parts integer 10 Число частей текста, от 2 до 100
lemmatize boolean true Сравнивать леммы: формы слова считаются одним словом
top_n integer 20 Число самых частых слов, если words не задано, до 200

Результат

Поле Тип Описание
n_words integer Число слов текста
words array[object] Слова в порядке запроса или по убыванию частоты: слово word, частота freq и меры дисперсии ниже
warnings array[string] Текст не на русском языке, слов нет в тексте, частота слов меньше числа частей
Мера Значения
dp Отклонение пропорций DP Гриса, основная мера: 0 - слово распределено пропорционально размерам частей, наибольшее значение около 1 - 1/parts - все вхождения в одной части
dp_norm DP, деленное на наибольшее возможное значение: 1 - все вхождения в самой малой части
juilland_d D Жюйана: 1 - равномерно, 0 - в одной части
carroll_d2 D2 Кэрролла по энтропии распределения: 1 - равномерно, 0 - в одной части
rosengren_s S Розенгрена: 1 - пропорционально, около 1/parts - в одной части
kl_divergence Дивергенция Кульбака-Лейблера в битах: 0 - пропорционально, растет при сосредоточении