Теория чисел
September 1

Семен Зверев, вылов лобстеров, финансовые махинации и закон Бенфорда

Рыбинспектор Семен контролирует вылов лобстеров в Юго-Западной части Тихого океана. Когда-то он закончил кафедру анализа данных МФТИ, но страсть к приключениям и тяга к южным морям привели Семена в эту романтичную область мира.

Подконтрольная Семену акватория занимает площадь в тысячи квадратных километров. Но это не мешает ему отлично справляться со своими обязанностями. Более того, своими способностями он нагоняет жуткий страх на рыбаков австралийского, новозеландского и новогвинейского побережий. В кулуарах приморских таверн рыбаки называют его Семен-баньип, что значит «дьявол по имени Семен».

Необразованные рыбаки боятся трех вещей. Во-первых, Семен всегда безошибочно чует фальшивку в статистических данных выловов лобстеров. Во-вторых, определив фальшивку, Семен всегда жестоко наказывает провинившихся. В третьих, говорят, что Семен также безошибочно видит ложь в любом другом наборе чисел.

Как-то раз к нему обратился мэр Новой Зеландии: он попросил определить, правдивы ли финансовые отчеты его помощников. Семен взял отчеты, закрылся с ними на ночь («для колдовского ритуала», – потом сказали аборигены) и наутро вынес вердикт – финансовые отчеты пяти помощников недостоверны. В общем больше этих помощников никто не видел. Дикие люди, что с них взять.

Каким же образом Семен чувствует ложь в данных?


Для выявления ложных данных Семен использует закон Бенфорда.

Закон Бенфорда или Ньюкомба-Бенфорда (Benford, or Newcomb-Benford law) характеризует закономерность встречаемости первых цифр в различных числовых множествах, описывающих сущности окружающего мира.

Так, во множестве упомянутых чисел примерно у 30% первой цифрой будет единица, примерно у 18% – двойка, ~13% – тройка, ~10% – четверка и так далее вплоть до девятки, которая будет первой цифрой примерно у 4% чисел. То есть, чем больше цифра, тем меньше вероятность того, что она будет стоять в начале числа.

Похожим образом будут встречаться пары первых цифр: самой частой первой парой будет 10, а самой редкой – 99.

Строгие формулы расчета вероятности нахождения заданной цифры на первом (D1) или втором (D2) месте, или встречи в начале числа пары цифр (D1D2) выглядят так:

Также мы можем вычислить вроятность встречи в начале числа любой последовательности цифр по формуле:

Здесь n - число, составленное из цифр. Например, вероятность того, что в начале мы встретим последовательность цифр 1, 9, 3, 8, как здесь -19387689898; 1938; 1,938210; 0,001938768 и т. п., - будет равна log(1+1/1938) ≈ 2,24∙10^(-4).

Более того, мы можем определить вероятность того, что заданная цифра встретится в записи числа на k месте от начала. Однако это не имеет смысла, потому что для k > 2 встреча любой цифры на любом месте становится практически равновероятной и равной примерно 10%.

В искусственно созданном множестве чисел встречаемость первых цифр и пары цифр будет иной. Из этого следует, что для выявления фальшивого (неестественного, ненатурального, искусственного) набора данных следует проанализировать частоты встречаемости первых одной-двух цифр этих чисел.

Семен прекрасно знает закон Бенфорда и условия, при которых он не выполняется - он хорошо учился в университете. Поэтому, когда ему приносят сводку данных, он садится за статистическую проверку.

В первую очередь, он выполняет визуальный анализ. Он подсчитывает частоту встречи всех пар цифр в начале чисел и рисует гистограммы.

Вот эти гистограммы натурных данных хорошо соответствуют распределению Бенфорда.

Такие гистограммы не вызывают сильного подозрение Семена.

А вот эти две гистограммы сигнализируют о серъезных манипуляциях с данными.

Они заставляют Семена сильно насторожиться.

Дальнейшая проверка заключается в статистической оценке отклонения наблюдаемого распределения пар чисел от распределения Бенфорда и (не)потверждении его достоверности.

Фактически, на этом шаге мы должны сравнить две гистограммы - два дискретных распределения.

Для сранения двух распределений, в том числе дискретных гистограмм, часто используют тест Колмогорова-Смирнова (КС) и другие тесты: критерий хи-квадрат, метрика землекопа (Earth mover's distance) и расстояние Кульбака-Лейблера (Kullback–Leibler divergence). Сегодня Семен решил использовать только КС, а остальные тесты мы с вами рассмотрим в другой замете про сравнение гистограмм.

Итак, Семену принесли очередные данные о вылове лобстеров за последний месяц. Вот они:

Гистограммы говорят, что вторые данные ложны. Проверим в R при помощи КС.

> ks.test(A, Benf)Exact two-sample Kolmogorov-Smirnov test

data:  A and Benf
D = 0.044444, p-value = 1
alternative hypothesis: two-sided

В первом тесте p = 1 > 0,05. Значит мы принимаем нулевую гипотезу о том, что две выборки равны. То есть распределение A удовлетворяет критерию Бенфорда.

> ks.test(B, Benf)Exact two-sample Kolmogorov-Smirnov test

data:  B and Benf
D = 0.43333, p-value = 5.26e-08
alternative hypothesis: two-sided

Во втором тесте p < 0,05. Значит мы отвергаем нулевую гипотезу. То есть распределение B не удовлетворяет критерию Бенфорда.

Далее Семен смотрит на выбросы в данных (пики на гистограмме), анализирует их причины и делает окончательный вывод, что вторая выборка сфальсифицирована.

Гнев Семена был страшен, виновные были наказаны, но это уж есовсем другая история.


В настоящее время Семен ищет заместителей. Семен гарантирует высокую зарплату, комфортные условия труда, свежие тропические фрукты, экзотические морепродукты, бунгало с видом на океан и глубокое уважение туземцев. Взамен Семен просить изучить тексты, прикрепленные к основной заметке, так как по ним он будет проводить отборочный экзамен.


Сопутствующая литература

Закон Бенфорда в Википедии (английская версия хорошо объясняет):
https://en.wikipedia.org/wiki/Benford’s_law

Ценнейшая книга, целиком посвященная особенностям использования закона Бенфорда для анализа данных.

Nigrini M. J. (2012) Benford’s law. Applications for forensic accounting, aufiting, and fraud detection.

Ценнейший ресурс: онлайн библиография статей с 1881 по сегодняшний день (естественно на английском), в которых авторы используют закон Бенфорда.

https://www.benfordonline.net/list/chronological

Отличная статья российских авторов, которая на пальцах объясняет, как использовать закон Бенфорда для аудита финансовых отчетов. По аналогии можно так же проверить любой другой тип числовых данных. (И фамилия у первого автора подходящая(:

Зверев Е. Никифоров А. (2018) Распределение Бенфорда: выявление нестандартных элементов в больших совокупностях финансовой информации.

Еще одна неплохая статья отечественного исследователя о выявлении условий, при которых закон Бенфорда допустимо применять для проверки финансовой отчетности. Для этого автор использует статистическую проверку выдвинутой гипотезы «о существовании линейной зависимости между коэффициентами начислений и показателями среднего абсолютного отклонения фактических и аналитических плотностей распределения цифр в первом разряде их бухгалтерской отчетности». Очевидный недостаток статьи – текст перегружен дополнениями и определениями, что мешает приобщиться к доносимой идее. (Перегружен примерно так же, как я здесь написал.)

Алексеев А. А. (2016) Применимость закона Бенфорда для определения достоверности финансовой отчетности.

Оригинальная статья Бенфорда.

Benford F. (1938) The law of anomalous numbers.

Статья, популярно рассказывающая про историю закона Бенфорда с необходимыми математическим подробностями, а также содержащая обзор примеров использования закона Бенфорда для анализа данных из разных областей науки.

Burgos A., Santos A. (2021) The Newcomb–Benford law: Scale invariance and a simple Markov process based on it.