КОГНИТИВИСТИдейное ядро²Прологи
Пролог 15. Закон Зипфа в случайных текстах
Прологи: наука о сознании становится точной
Манифест когнитивиста
.
Узелки на распутку
.
Прологи
Пролог 1. Когнитивный порядок
Пролог 2. Сигнатура характерного масштаба
Пролог 3. Степенной закон
Пролог 4. Три типа степенных распределений
Пролог 5. Закон Зипфа, сигнатура β = 1
Пролог 6. Цветные шумы, сигнатура α = 1
.
Пролог 7. Розовый шум и модель Бака-Снеппена
Пролог 8. Розовый шум и модель релаксации
Пролог 9. Розовый шум: шипелки и фрактальное блуждание
Пролог 10. Население городов и закон Зипфа
Пролог 11. Масштабно-инвариантные сети
Пролог 12. Фракталы и закон Зипфа
Пролог 13. Дробление континуума
Пролог 14. Социально-географические волокна
Пролог 15. Закон Зипфа в случайных текстах
Пролог 16. Тексты как фракталы
Пролог 17. Когнитивные фракталы
Пролог 18. β и размерность Хаусдорфа
Пролог 19. Образы когнитивных фракталов
Пролог 20. Когнитивные волокна
Пролог 21. Математика когнитивных фракталов
Пролог 22. Стохастические когнитивные фракталы
Пролог 23. Сравниваем Россию и Польшу
Пролог 24. От Швейцарии до Афганистана
Пролог 25. Гармониум
Пролог 26. Шум когнитивных фракталов
Пролог 27. Шум когнитивных процессов
Пролог 28. Розовый шум в поведении людей
Пролог 29. Шум в динамике зрительного внимания
Пролог 30. Изображения и двухмерный розовый шум
.
Пролог 31. Физическая и когнитивная релаксация
Пролог 32. Когнитивная релаксация и цветные шумы
Пролог 33. ВТОРОЙ ЦИКЛ. Дробление времени
Пролог 34. Когнитивное дробление времени
Пролог 35. Время как текст
Пролог 36. События и причинность
Пролог 37. Четыре причины Аристотеля
Пролог 38. Экзогенные причины
Пролог 39. Генеративные модели причинности
Пролог 40. Генеративные модели причинности, часть 2
Пролог 41. Гештальт-причинность
Пролог 42. Тау-модель
Пролог 43. Я-состояния и тироны
Пролог 44. Параметры тау-модели
.
Пролог 45. Параметры тау-модели, часть 2
Пролог 46. Параллельный тирон
.
Пролог 47. Параллельный тирон, часть 2
Пролог 48. Свойства тирона
.
Пролог 49. Свойства тирона, часть 2
.
Пролог 50. Семейства тирона
Пролог 51. Эволюция как тирон
Пролог 52. Я-состояния и девиации
Пролог 53. Эволюция и морфогенез
Пролог 54. Волокна и легенды
Пролог 55. Волокна и легенды, часть 2
Пролог 56. ТРЕТИЙ ЦИКЛ. Я-состояния и их структура
Пролог 57. Я-состояния и их структура, часть 2
Пролог 58. Спиральная структура
.
Пролог 59. Информация и её типы
Пролог 60. Информация и симметрия
Пролог 61. Информация и закон Вебера-Фехнера
Пролог 62. Натуральная пропорция
Пролог 63. Апекс Я-состояний
.
Пролог 64. Генеративные модели Я-состояния
Пролог 65. Нейрон
Пролог 66. Критические случайные графы
.
Пролог 67. Блохи и табакерки
Пролог 68. Чаши, табакерки и прочее
.
Пролог 69. Интерлюдия
Пролог 70. Гештальт числа e
.
Пролог 71. Гештальт числа e, часть 2
Пролог 72. ЧЕТВЁРТЫЙ ЦИКЛ. Тиронный рост
Пролог 73. Обобщённые процессы
Пролог 74. Обобщённые процессы, часть 2
Пролог 75. Обобщённые процессы и энтропия Реньи
Пролог 76. Дельта-процессы
.
Пролог 77. Дельта-аддитивные процессы
Пролог 78. Дельта-мультипликативные процессы
Пролог 79. Дельта-мультипликативные процессы, часть 2
Пролог 80. Дельта-мультипликативные процессы, часть 3
Пролог 81. Структурно-временной изоморфизм
Пролог 82. Тау-процесс и время
Пролог 83. Знаки состояний
Пролог 84. Мерные знаки и случайное блуждание
.
Пролог 85. Именные знаки и графы состояний
Пролог 86. ПЯТЫЙ ЦИКЛ. Простые числа
Пролог 87. Числа и их компоненты
Пролог 88. Время и простые числа
Пролог 89. Т-информация
Пролог 90. Новый прототип статистики Зипфа
Пролог 91. Новый прототип и гармоническая информация
.
Пролог 92. Не-целочисленные симметрии
Пролог 93. Спектры симметрии
.
Пролог 94. Преобразования симметрий
Пролог 95. Комплексные симметрии
Пролог 96. Cимметрии и структурные модальности
Пролог 97. Симметрии и характерная динамика
Пролог 98. Симметрия, энергия, излучения
Пролог 99. Симметрия системы
Пролог 100. Симметрия континуумов и траекторий
Пролог 101. Симметрия континуумов, часть 2
Пролог 102. Симметрия и масштаб
Пролог 103. Симметрия и вероятность
Пролог 104. Симметрия и вероятность, часть 2
.
Пролог 105. Преобразование симметрии континуумов
Пролог 106. Cимметрия многомерных континуумов
Пролог 107. Опыты с взаимодействием форм
Пролог 108. Опыты с взаимодействием форм, часть 2
Пролог 109. Омега-преобразование
Пролог 110. Омега-линзы
Пролог 110 (2). Омега-линзы, часть 2
Пролог 111. Геометрическое среднее и максимум энтропии
Пролог 112. Мультипликативные коллизии
Пролог 113. Смысл принципа максимума энтропии
Пролог 114. Варианты модели мультипликативных коллизий
Пролог 115. Свойства модели мультипликативных коллизий
Пролог 116. Геометрическая энтропия
Пролог 117. Специальные энтропии. Последний Пролог.
Степенные законы, распределения Парето и закон Зипфа
.
Когнитивный уровень
.
Мерцающие зоны
.
Органическая логика: резюме
Карта органической логики
.
Хвост ящерки. Метафизика метафоры.
.
Опус 1/F
.
Anschauung, научный метод Гёте
.
Закон серийности Пауля Каммерера
.
Ранние признаки критических переходов
.
Слабые сигналы
.
Меметика
.
Системный анализ и чувствительные точки
.
Спиральная динамика
.
Пролог 15. Закон Зипфа в случайных текстах
Темы:
Роман Уфимцев
5 декабря 2011 года, Калининград
В предыдущих прологах мы выдвинули гипотезу, что закон Зипфа в ранговых распределениях городов стран и провинций по населению обусловлен механизмом каскадного дробления континуума. Из этой гипотезы следует, что население стран и провинций организовано в вертикальные семейства, которые мы назвали социально-географическими волокнами. Однако, главной целью наших поисков является вовсе не объяснение закона Зипфа в данном конкретном случае. Мы ищем общее понимание механизмов когнитивного порядка, которые, как мы считаем, могут объяснить выполнение закона Зипфа во многих социальных и природных явлениях.
Поэтому, чтобы пока не увлекаться выводами из "теории социально-географических волокон" (а их много и они весьма любопытны), мы исследуем ещё один натуральный закон Зипфа, который обнаруживается в ранговых распределениях слов естественных языков по частоте их повторения в текстах.
Распределения слов по их частоте (а именно эти исследования и ознаменовались открытием закона Зипфа) следует считать одним из канонических примеров распределений с β=1, который должен получить у нас объяснение не менее ясное, нежели объяснение закона Зипфа в распределениях городов по населению.
Итак, лингвист Джордж Кингсли Зипф обнаружил, что частота использования тех или иных слов в самых различных текстах удивительно закономерна. Конкретно, если построить ранговое распределение слов по частоте, то оно почти точно соответствует степенной функции с показателем -1. Мы уже убеждались в этом на примере корпуса русскоязычных художественных текстов:
(Обратим внимание: распределение охватывает только слова, встречающиеся не реже 18,5 раз на миллион слов)
Для распределения слов в русских художественных текстах по частоте β = 1,02. Тот же с точностью результат мы получим, проанализировав русскоязычные публицистические тексты, русскоязычные тексты разных периодов времени и т.д.
Точность соблюдения закона Зипфа в самых разных естественных языках, конечно, интригует многих исследователей. В конце концов, это одна из немногих достоверно установленных, универсальных, точных и сквозных закономерностей, известных в лингвистике. На предмет соблюдения закона Зипфа изучены многие языки и практически всегда он подтверждается - от языка к языку показатель β слегка различается, оставаясь, тем не менее, близким единице.
Это используется и практически. Например, закон Зипфа применяется поисковыми системами, которые с его помощью отличают натуральные тексты от искусственно сгенерированных. Делаются более-менее успешные попытки применять его при расшифровке древних текстов на неизвестных языках (в том числе, обратим на это внимание, иероглифических текстов), в криптологии и т.д.
Естественный и важный вопрос в этой ситуации: как же объяснить эту универсальную закономерность?
Мы уже не первый раз, обсуждая проблемы, связанные с сигнатурами когнитивного порядка, замечали, что современная наука, несмотря на свою мощь, опыт и ресурсы, демонстрирует странное замешательство, когда очередной раз наталкивается на шум со спектром 1/f или натуральное распределение, соответствующее закону Зипфа. Вот и проблема частотности слов – очередная иллюстрация. Дело в том, что сегодня (до сих пор! - хотя прошло более полувека с открытия этой закономерности) учёные делятся на два лагеря. Одни считают, что закон Зипфа отражает какие-то глубинные и значимые свойства естественного языка, а другие считают, что этот закон является всего лишь статистическим и комбинаторным артефактом, в котором нет никакого скрытого значения. В доказательство этого они заявляют, что закон Зипфа выполняется даже в искусственно сгенерированных, случайных и лишённых смысла текстах.
Поскольку это прямо затрагивает круг наших интересов, нам нужно в этом разобраться детально. Действительно ли случайные тексты соответствуют закону Зипфа, как "настоящие"? Если нет, то мы должны дать явлению другое объяснение. А если да, то может ли это пролить новый свет на проблему населения городов?
Итак, не вставая пока ни на одну сторону в этом научном споре, беспристрастно проверим: могут ли случайные тексты демонстрировать закон Зипфа?
Обезьяна за пишущей машинкой
Впервые идею о том, что даже случайные тексты порождают закон Зипфа, выдвинул никто иной как авторитетный Бенуа Мандельброт (поэтому закон Зипфа иногда ещё называют законом Зипфа-Мандельброта). Об этом он написал в одной из своих ранних работ. С тех же пор появился образ обезьяны за пишущей машинкой, которая совершенно бессмысленно тыкая по клавишам, тем не менее, будет печатать тексты, по своим статистическим характеристикам точно соответствующие текстам любого высоко интеллектуального писателя. Проверим это.
У нас имеется 33 буквы и пробел, который разделяет слова.
Сначала исследуем самый простой вариант: мы набираем текст случайно, буква за буквой, и при этом все буквы появляются с одинаковой вероятностью. Кроме того, чтобы не получать неестественно длинных слов, сделаем вероятность появления пробела в несколько раз больше, чем в среднем для букв. Строим случайный текст длиной в 4 млн. знаков (это уже не так просто для простого компьютера), подсчитываем слова по их количеству повторений в тексте и строим ранговое распределение, как обычно, в двойных логарифмических координатах:
Первое, что бросается в глаза - ступенчатая форма распределения. Ясно, что это не похоже на гладкие распределения, которые наблюдаются в натуральных текстах. Но соответствует хотя бы общий наклон этой лестницы закону Зипфа? К сожалению, видно не более 2 ступенек - слишком короткий текст мы проанализировали. Если сократить число букв в алфавите до 3, то становится видно, что ступеньки образуют прямую лестницу, но её наклон β=1,35 слишком велик для закона Зипфа:
Может быть, если взять всё-таки реалистичный по объему алфавит, мы получим β=1?
Чтобы ответить на этот вопрос наверняка, нам придётся обратиться к простой математике.
Я осознаю, что основными читателями прологов являются скорее люди гуманитарных специальностей. Но всё же, если мы хотим сделать свои знания точными, если мы хотим найти и чётко сформулировать закономерности когнитивного порядка, без математики не обойтись. Простые математические выкладки, которые я иногда привожу здесь, предназначены в том числе и для того, чтобы читатель мог вспомнить свои школьные и вузовские знания, если их подзабыл.
Итак,
Считаем
Будем набирать случайный текст из W разных букв и одного пробела. Будем считать, что все буквы равновероятны. Пусть также вероятность появления пробела, разрывающего слова, равна P2, и она больше, чем вероятность появления P1 какой-то конкретной буквы - как в нормальных текстах, где пробелы - самые часто встречающиеся "буквы".
Представим, что мы получили очень длинный текст, состоящий из N слов разной длины. Но мы свернули все слова так, чтобы были видны только их первые буквы:
Глядя на свернутые слова, мы легко можем оценить, в скольких случаях за первой буквой скрыт пробел. Их число равно произведению общего числа слов на вероятность появления пробела:
Это значит, именно столько в нашем тексте однобуквенных слов. Соответственно, многобуквенных слов окажется:
Далее повторим операцию, раскроем следующий знак для тех слов, которые не оказались однобуквенными. И мы снова можем оценить, сколько в этом случае пробелов мы обнаружим. Для этого умножим число многобуквенных слов (а только их мы продолжаем раскрывать) на вероятность появления пробела:
Это означает, что именно столько слов в тексте окажется двухбуквенными.
Повторяя операцию многократно, мы выясним, что вообще, из исходных N слов d-буквенными являются:
Это выражение позволяет вычислить сколько вообще будет в тексте слов из d букв. Но в ранговое распределение у нас входят конкретные слова, а их может быть множество разных вариантов для каждого количества букв. Например, вариантов однобуквенных слов у нас будет W - столько же, сколько всего букв в нашем алфавите, двухбуквенных вариантов будет, и т.д. Получаем, что вообще, для для слов длины d имеется:
вариантов. Поскольку у нас все буквы равновероятные, то и все варианты слов будут тоже равновероятные.
Мы готовы строить ранговое распределение H(rank). Оно будет иметь ступенчатый вид:
Поскольку вероятность появления пробела у нас выше, чем какой-то из букв, то первая ступенька будет образована однобуквенными словами - потому что они будут самыми часто встречающимися в тексте. Вторая ступенька - двухбуквенными словами и т.д.
Возьмем ступеньку, соответствующую словам из d букв. Ширина этой ступеньки (по оси рангов) равна количеству слов, входящих в неё. Это все варианты слов из d букв. Как мы знаем, их количество:
Высота этой ступеньки равна количеству раз, сколько каждое из этих слов появляется в тексте. Чтобы подсчитать его, нужно взять общее количество слов длины d и поделить на количество вариантов:
Именно столько в нашем тексте в среднем конкретных вариантов слов из d букв.
Возьмём точку на ранговом распределении, соответствующую окончанию очередной ступени слов, состоящих из m букв:
Для этой точки значение H будет соответствовать высоте ступеньки для m-буквенных слов:
Её положение по оси рангов будет равно ширине всех ступенек для слов, состоящих от 1 до m букв, то есть, будет равно сумме:
Это геометрическая прогрессия, с которыми мы уже сталкивались, считая ранговые распределения дыр по площадям в ковре Серпинского. По формуле частичной суммы геометрического ряда получим, что для нашей точки положение по оси рангов:
Теперь, чтобы упростить выражение, допустим, что W велико, то есть, в нашем алфавите много букв. Тогда мы сможем упростить выражение так:
Из этого:
Подставляем результат в выражение H(m) и получим:
Преобразуем получившееся выражение:
То есть, действительно, ранговое распределение H(rank) является степенным с показателем степени:
Пусть, например, P2 = 1/5, то есть, в среднем пробел попадается один раз на каждые пять букв, и алфавит из 33 букв, W = 33, тогда показатель степени будет равен около -1,06, то есть, β = 1,06.
Как мы видим, случайный текст действительно порождает распределение, которое в целом соответствует степенной функции c β близким к 1, то есть, имеется хорошее приближение к закону Зипфа.
Глядя на выражение показателя степени становится ясно, при каких условиях β будет стремится к 1: для этого необходимо, чтобы алфавит состоял из очень большого числа букв и/или вероятность появления пробела при этом была бы близкой к нулю:
Пусть, например, наш алфавит состоит из 1000 букв, а вероятность появления пробела равна 1/1000. В этом случае мы получим β=1,000001.
Рассмотрим ещё ситуацию, которую мы выше проверяли числовым опытом: вероятность пробела - 2/5, число букв в алфавите - 3. Расчёт по полученной нами формуле даёт β=1,46, что лишь грубо соответствует опытному значению 1,35. Иными словами, формула работает не точно, когда алфавит маленький - ведь мы её выводили исходя из предположения, что алфавит большой.
Избавляемся от ступенек. Обезьяна умнеет на глазах
Итак, вроде бы правы те, кто утверждает, что закон Зипфа проявляется даже в случайных текстах. Однако, в отличие от распределений для настоящих текстов, распределения для случайных имеют не линейный, а ступенчатый вид. Например, вот так в двойных логарифмических координатах выглядит распределения слов по частоте для текста длиной в 2 млн. знаков, набранного из 15 равновероятных букв:
(Чем меньше букв в алфавите, тем меньше машинного времени требуется для расчётов, поэтому мы выбрали алфавит из 15 букв, а не из обычных для настоящих языков 20-30. Это не помешает нам увидеть основные закономерности.)
Мы видим те самые ступеньки - примерно такой формы распределение получилось бы у совершенно случайно стучащей по клавишам пишущей машинки обезьяны. Как мы знаем, в целом наклон этих ступенек соответствует закону Зипфа.
Обратим внимание на два момента. Во-первых, заметим большой хвост слов, которые встретились в тексте всего один раз (он протянулся примерно от ранга 10000 до ранга более 100000). Эти слова выпадают из общей картины – наш контрольный текст слишком короткий, чтобы в таких редких словах мы могли увидеть какую-то закономерность. Поэтому мы далее будем учитывать только слова, которые встретились минимум 3 раза. Отбросив этот хвост, мы можем убедиться в том, что "лестница" действительно выстроилась по закону Зипфа:
Заметим также, что ближе к концу распределения ступеньки "плавятся" из-за случайных отклонений от идеальной статистики. Это происходит тоже из-за того, что наш контрольный текст слишком короток. Поэтому мы будем главным образом обращать внимание на начало рангового распределения, где его форма видна ясно.
Итак, как можно избавиться от ступенек?
Попробуем сделать картину более реалистичной и учесть, что одни клавиши обезьяне ближе и удобнее для нажатия, а другие - наоборот. Назначим всем 15 буквам разные случайные вероятности появления в тексте и поглядим, что от этого изменится:
Ступеньки скруглились. Теперь распределение словно спиралью вьётся вокруг идеальной линии, соответствующей точному выполнению закона Зипфа. Ясно, что нам нужно как-то особым образом распределить вероятности появления в тексте тех или иных букв - и тогда мы сможем получить идеальный закон Зипфа. Случайные вероятности букв - шаг в верном направлении, но явно не достаточный.
Попробуем максимально приблизиться к реальности и назначим буквам вероятности в соответствии с их вероятностями в натуральном языке. Для этого взглянем на ранговое распределение букв в русском тексте по их частотности:
Обратим внимание, что логарифмической у нас является только шкала рангов, и частотность букв хорошо соответствует не степенной, а логарифмической функции. Попробуем распределить вероятность появления наших 15 букв в соответствии с подобным логарифмическим законом. Конечно, этим самым мы делаем обезьяну гораздо более интеллектуальной, чем средняя обитательница джунглей - она теперь должна не просто случайно молотить по клавишам, а соблюдать логарифмическую частотность букв, словно она является нормальным носителем натурального языка.
Пробуем:
Очевидно, мы сделали правильный и необходимый шаг. Распределение выровнялось и теперь вполне можно говорить о точном соблюдении закона Зипфа в частотности слов случайного текста.
Какую сторону мы теперь займём в споре тех, кто считает закон Зипфа в частотности слов лишь забавным комбинаторным артефактом, и тех, кто полагает что он связан с какими-то глубокими механизмами самоорганизации языка?
Мы действительно можем получить случайный текст, который бы прекрасно соответствовал закону Зипфа. Но для этого нам необходимо, чтобы частотность букв в алфавите была отнюдь не случайной. Только распределив их вероятности также, как они распределены в натуральных языках - логарифмически - можно получить картину распределения частотности слов, которую мы видим в натуральных языках.
Ситуация интересная. С одной стороны, мы действительно смогли получить случайный текст с законом Зипфа. Но с другой - для этого нам пришлось применить трюк, который средней обезьяне, пожалуй, не по силам - откуда ей знать, с какой частотой она должна выбирать те или иные буквы? Пожалуй, будет правильно принять такую позицию: закон Зипфа в распределениях слов по частотам, опирается на простые комбинаторные закономерности любых текстов, однако лишь опирается. Кроме этих самых комбинаторных закономерностей необходимо ещё кое-что, что уже трудно объяснить случайностью. Это "кое-что" и отличает натуральный язык как совершенное средство мышления и общения, как когнитивно насыщенное средство, от случайных текстов.
Но почему частоты букв в натуральных языках соответствуют логарифмическому закону? Что это может значить?
Ваш комментарий
image Поля, отмеченные звездочкой, нужно обязательно заполнить
Заголовок комментария:
image Текст комментария: (не более 2000 символов, HTML-разметка удаляется)
image Ваше имя:
Ваш E-mail:
image Сколько будет дважды два? (ответьте цифрой, это проверка от спам-рассылок)
Отправить комментарий
Главные темы
Внимание (8)Геогештальт (1)Гештальт (16)Динамика внимания (5)Инсайт (5)Интуиция (2)Кибернетика (5)Когнитивное управление (6)Когнитивный анализ (4)Когнитивный словарь (5)Культура наблюдения (5)Мерцающие зоны (7)Метафизика (3)Метафора (13)Механизмы восприятия (15)Мифы и парадигмы (7)Органическая логика (5)Прогнозирование (6)Роль языка (4)Симметрии (5)Синхронизмы (5)Сложные системы (10)Степенной закон (8)Творческое мышление (5)Три уровня систем (4)Управление знаниями (3)Фазы развития (7)Фракталы (18)Цветные шумы (9)
КОГНИТИВИСТ: когнитивные методы и технологии © Роман Уфимцев, при поддержке Ателье ER