Главная страница
Навигация по странице:

  • Критерий корреляции Пирсона

  • Получение исходных данных

  • Представление выборки

  • Статистический анализ выборки

  • Автор / Название текста Коэффициент корреляции Пирсона Автор, соответствующий результату

  • Использование математической статистики в анализе авторства текста. Отчет -ПетровА.М.-Дворянов Н.А.-681-12. Использование математической статистики в анализе авторства текста по дисциплине Статистические методы анализа данных


    Скачать 0.6 Mb.
    НазваниеИспользование математической статистики в анализе авторства текста по дисциплине Статистические методы анализа данных
    АнкорИспользование математической статистики в анализе авторства текста
    Дата22.01.2022
    Размер0.6 Mb.
    Формат файлаdocx
    Имя файлаОтчет -ПетровА.М.-Дворянов Н.А.-681-12.docx
    ТипКурсовая
    #339125

    ВОЕННО-КОСМИЧЕСКАЯ АКАДЕМИЯ ИМЕНИ А.Ф. МОЖАЙСКОГО

    Кафедра систем сбора и обработки информации




    Факультет специальных информационных технологий

    Курсовая работа

    Тема: «Использование математической статистики в анализе авторства текста»
    по дисциплине «Статистические методы анализа данных»


    Выполнили: курсанты 681/12 учебной группы:

    рядовой Петров А.М.

    рядовой Дворянов Н.А.
    Проверил:


    Санкт-Петербург

    2020 г.

    СОДЕРЖАНИЕ


    ВОЕННО-КОСМИЧЕСКАЯ АКАДЕМИЯ ИМЕНИ А.Ф. МОЖАЙСКОГО 1

    ВВЕДЕНИЕ 4

    ИСПОЛЬЗУЕМЫЕ МЕТОДЫ СТАТИСТИЧЕСКОГО АНАЛИЗА В РАБОТЕ 5

    ХОД РАБОТЫ 6

    АЛГОРИТМ РАБОТЫ ПРОГРАММЫ И ОПРЕДЕЛЕНИЯ АВТОРОВ ТЕКСТОВ 16

    ВЫВОД 17


    ВВЕДЕНИЕ


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

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

    Целью данной работы является разработка программного средства для возможности распознавания авторства текста на основе биграмм (сочетаний двух букв русского языка без пробелов и служебных символов) и анализ результатов ее работы с использованием математической статистики.

    Для достижения нашей цели будет создана программа на языке python, разбивающая любые тексты на биграммы и переносящая результаты в excel, где, с помощью математической статистики производится вычисление критерия корреляции Пирсона, дисперсионного анализа.


    ИСПОЛЬЗУЕМЫЕ МЕТОДЫ СТАТИСТИЧЕСКОГО АНАЛИЗА В РАБОТЕ


      1. Критерий корреляции Пирсона

    В своей работе мы использовали корреляцию Пирсона (Функция ПИРСОН в excel)

    , где

    x – выборка, состоящая из частоты появления биграмм в тексте известного автора

    y - выборка, состоящая из частоты появления биграмм в исследуемом тексте

    – среднее значение частоты появления биграмм в тексте известного автора

    – среднее значение частоты появления биграмм в исследуемом тексте

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

    Величина коэффициента линейной корреляции Пирсона не может превышать +1 и быть меньше чем -1. Эти два числа +1 и -1 – являются границами для коэффициента корреляции. Когда при расчете получается величина большая +1 или меньшая -1 – следовательно, произошла ошибка в вычислениях.

    Если коэффициент корреляции по модулю оказывается близким к 1, то это соответствует высокому уровню связи между переменными.

    Выбор корреляции Пирсона для определения автора исследуемого текста обусловлен тем, что независимо от вида выборки мы можем определить уровень связи между двумя выборками.

    ХОД РАБОТЫ


      1. Получение исходных данных

    Для данной курсовой работы мы выбрали по два текста у пяти разных авторов и ввели их вместе в разные текстовые документы:

    • Александр Блок (Двенадцать; Незнакомка) – Блок.txt

    • Максим Горький (Челкаш; Макар Чудра) – Горький.txt

    • Сергей Есенин (Анна Снегина; Черный человек) – Есенин.txt

    • Василий Жуковский (Сказка о царе Берендее; Спящая царевна) – Жуковский.txt

    • Николай Некрасов (Крестьянские дети; Русские женщины) – Некрасов.txt

    Далее мы разработали программу, которая выполняет следующие функции:

    • Разбивает любой текст на биграммы (наборы из двух символов русского алфавита без пробелов и служебных знаков),

    • Выводит статистику появления биграмм в загруженном тексте в excel-файл

    • Строит график количества биграмм в загруженном тексте (Только при запуске через редактор исходного кода, например, Visual studio code)



    Рисунок 1. Фрагмент кода программы на языке Python

      1. Представление выборки

    Выборка представляет собой количество биграмм в загруженном тексте, отсортированных по алфавиту (начиная с «аа», заканчивая «яя»).

    Количество биграмм в русском алфавите равняется 33*33 = 1089 возможных вариаций.



    Рисунок 2. Пример гистограммы биграмм в загруженном тексте



    Рисунок 3. Пример гистограммы биграмм в загруженном текста в более крупном масштабе

      1. Статистический анализ выборки

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

    Названия листов в excel – это фамилии авторов

    Ячейка А1 – Названия выбранных текстов у данного автора

    Столбец F – Все существующие биграммы

    Столбец G – Количество биграмм в загруженном тексте

    Ячейка H1 – Сумма количества всех биграмм в загруженном тексте

    Столбец I – Частота появления биграмм в загруженном тексте

    Столбец O – Краткое описание столбцов



    Рисунок 4. Статистика биграмм в произведениях Александра Блока



    Рисунок 5. Статистика биграмм в произведениях Максима Горького



    Рисунок 6. Статистика биграмм в произведениях Сергея Есенина



    Рисунок 7. Статистика биграмм в произведениях Василия Жуковского



    Рисунок 8. Статистика биграмм в произведениях Николая Некрасова

    После получения данных по исследуемым авторам, мы можем загружать любой из десяти текстов выбранных авторов для вычисления степени связи исследуемой выборки текста и исходных выборок по авторам, используем статистический критерий Пирсона в excel.

    Пример №1:

    Возьмем один из двух текстов Максима Горького - «Челкаш».

    Загрузим его в файл text_for_analysis.txt

    Запускаем программу Analyzer.exe

    Открываем наш excel файл, открываем лист «Test» и смотрим статистику.

    Таблица №1. Полученная статистика при загрузке текста М. Горького «Челкаш»

    Блок

    0,921947

    Горький

    0,996266

    Есенин

    0,944842

    Жуковский

    0,904206

    Некрасов

    0,950402

    По данной таблице видно, что наивысший коэффициент корреляции Пирсона (связь) составляет 0,996266, что соответствует автору М. Горький.




    Пример №2:

    Возьмем один из двух текстов Александра Блока - «Незнакомка».

    Загрузим его в файл text_for_analysis.txt

    Запускаем программу Analyzer.exe

    Открываем наш excel файл, открываем лист «Test» и смотрим статистику.

    Таблица №2. Полученная статистика при загрузке текста А. Блока «Незнакомка»

    Блок

    0,99594

    Горький

    0,921989

    Есенин

    0,939681

    Жуковский

    0,900967

    Некрасов

    0,938772

    По данной таблице видно, что наивысший коэффициент корреляции Пирсона (связь) составляет 0,99594, что соответствует автору А.Блок.








      1. Проверка связи всех текстов исследуемых авторов

    Проверим поочередно каждый из десяти текстов авторов и составим таблицу результатов.

    Таблица №3. Результаты проверки одного из двух текстов для каждого из авторов

    Автор/Название текста

    Коэффициент корреляции Пирсона

    Автор,

    соответствующий результату

    Блок/Двенадцать

    0,933717239

    Блок

    Блок/Незнакомка

    0,995939534

    Блок

    Горький/Челкаш

    0,996266341

    Горький

    Горький/Макар Чудра

    0,97604715

    Горький

    Есенин/Анна Снегина

    0,996673045

    Есенин

    Есенин/Черный человек

    0,913884166

    Есенин

    Жуковский/Сказка о царе Берендее

    0,994224883

    Жуковский

    Жуковский/Спящая царевна

    0,963556482

    Жуковский

    Некрасов/Крестьянские дети

    0,956806848

    Некрасов

    Некрасов/Русские женщины

    0,999248811

    Некрасов

    Как видно из таблицы, статистика точно определила авторов текстов.

    Теперь проверим тексты, которые не входили в исходный файл с двумя текстами, по которым составлялась статистика биграмм для каждого автора.

    Таблица №4. Результаты проверки текстов, не входящих в изначальную статистику для каждого из авторов

    Автор/Название текста

    Коэффициент корреляции Пирсона

    Автор,

    соответствующий результату

    Блок/Балаганчик

    0,937070424

    Некрасов

    Блок/Стихотворение

    «О, я хочу безумно жить»

    0,566554397


    Блок

    Горький/Детство

    0,973139323

    Горький

    Горький/Мать

    0,971699923

    Горький

    Есенин/Страна Негодяев

    0,97607992

    Есенин

    Есенин/Русь уходящая

    0,885839865

    Есенин

    Жуковский/Людмила

    0,898963583

    Некрасов

    Жуковский/Двенадцать спящих дев

    0,941727199


    Некрасов

    Некрасов/Кому на Руси жить хорошо

    0,973854826


    Некрасов

    Некрасов/Железная дорога

    0,938014851

    Некрасов

    Из таблицы видно, что при вводе десяти других текстов выбранных авторов, только 70% из них определились верно. Попробуем это исправить.

    Составим новый текстовый документ, содержащий в себе четыре текста автора В. Жуковского: «Сказка о царе Берендее», «Спящая царевна», «Людмила», «Двенадцать спящих дев».

    Получим новую частоту появления биграмм для автора В. Жуковского, заменим старую статистику биграмм автора на новую.

    Пример №3.

    Возьмем текст В. Жуковского - «Людмила».

    Загрузим его в файл text_for_analysis.txt

    Запускаем программу Analyzer.exe

    Открываем наш excel файл, открываем лист «Test» и смотрим статистику.

    Таблица №5. Полученная статистика при загрузке текста В. Жуковского «Людмила»

    Блок

    0,867248

    Горький

    0,86269

    Есенин

    0,882192

    Жуковский

    0,934475

    Некрасов

    0,898964

    По данной таблице видно, что наивысший коэффициент корреляции Пирсона (связь) составляет 0,934475, что соответствует автору В. Жуковский.

    Пример №4.

    Возьмем текст В. Жуковского - «Двенадцать спящих дев».

    Загрузим его в файл text_for_analysis.txt

    Запускаем программу Analyzer.exe

    Открываем наш excel файл и смотрим статистику

    Таблица №6. Полученная статистика при загрузке текста В. Жуковского «Двенадцать спящих дев»

    Блок

    0,921836

    Горький

    0,909828

    Есенин

    0,928778

    Жуковский

    0,983961

    Некрасов

    0,941819

    По данной таблице видно, что наивысший коэффициент корреляции Пирсона (связь) составляет 0,983960658, что соответствует автору В. Жуковский.

    АЛГОРИТМ РАБОТЫ ПРОГРАММЫ И ОПРЕДЕЛЕНИЯ АВТОРОВ ТЕКСТОВ




    Для определения автора текста нужно:

    1. Если открыт файл Data.xlsx, закрыть его!

    2. Открыть файл text_for_analysis.txt и ввести в него любой текст, сохранить файл

    3. Запустить программу Analyzer.exe и дождаться закрытия консольного окна

    4. Открыть файл Data.xlsx

    5. Открыть лист «Test»

    6. Посмотреть нужную статистику:

    • Статистика по авторам находится в ячейках S1 – T5.

    • Итоговый результат (наибольший коэффициент корреляции Пирсона) и соответствующий ему автор находятся в ячейках O10 – R11.




    Описание работы программы и файла excel:

    1. При открытии файла Analyzer.exe, происходит удаление всех лишних символов из файла text_for_analysis.txt, разбиение его на биграммы и подсчет биграмм. Все данные по биграммам выводятся в файл Data.xlsx, лист «Test», колонку G.

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

    3. В отдельные ячейки выводится наибольший коэффициент корреляции Пирсона и соответствующий ему автор.





    ВЫВОД


    После проведенного исследования можно сделать вывод о том, что с помощью статистических методов можно с высокой вероятностью определить автора текста.

    Если вычислить количество биграмм для небольшого количества произведений автора вместе, то с большой вероятностью статистика количества биграмм отдельно взятого произведения правильно определит автора этого произведения.

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

    При возникновении ошибок, можно добавлять в статистику ранее не исследованные произведения данного автора. Благодаря этому исправляются ошибки текста, который ранее определял автора неправильно, а также уменьшается вероятность появления ошибок в других, ранее не исследованных произведениях данного автора.

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


    написать администратору сайта