Автоматическое определение авторства текста
Програма буде заснована на методиці визначення авторства тексту. Схожа методика з великим ступенем вірогідності визначає справжнього автора за текстом. Методика не аналізує сюжет, фабулу і художні засоби. Програма проводить свої висновки на основі деякої оцінки відносної ентропії текстів. В оцінці відносної ентропії враховуються такі формальні характеристики текстів, як:
- число службових слів (прийменників, спілок і частинок);
- морфеми, що використовуються в словах (приставки, корені, суфікси, закінчення) і їх послідовності;
- складність використовуваних граматичних конструкцій;
- словник, що використовує автор.
Програмі необхідно виміряти всі ці параметри, щоб вони були зведені в таблиці, що містять змінні, які характеризують письменника. Для автора є своя таблиця у базі даних, яка є авторським еталоном.
При аналізі іншого тексту, відбувається побудова ще однієї таблиці за вхідним текстом. Після цього вхідна таблиця зіставляється з вихідної, і виводиться інтегральна величина для оцінки близькості даного тексту до вихідного. Така інтегральна величина називається відносної ентропією. Програма повідомить якою є відносна ентропія даного тексту. При аналізі тексту також не використовуватимуться власні імена.
З математичної точки зору завдання можна вирішити програмою, що полягає в наступному: подано текст Z невідомого походження; необхідно співвіднести його одному з текстів <!--[if !msEquation]--> <!--[endif]-->, ..., <!--[if !msEquation]--> <!--[endif]-->.
Підхід до вирішення задачі [16] полягає у побудові деякої оцінки відносної ентропії H(B|A) тексту B відносно тексту A. Потім послідовність Z співвідноситься з послідовністю <!--[if !msEquation]--> <!--[endif]--> яка має мінімальну відносну ентропію H(Z|<!--[if !msEquation]--> <!--[endif]-->).
Відносну ентропія є узагальненням поняття ентропії, що вводиться як до теорії ймовірності, так і до теорії інформації [9, 18]. Існує два підходи до визначення ентропії, що призводять до різних обчислювальних алгоритмів її оцінки.
Чисто інформаційне визначення ентропії через складність ввів А. Н. Колмогоров [9]: складністю послідовності літер A є довжина (в двійковому алфавіті) мінімальної програми, яка виводить A, а ентропія A - це її складність, поділена на довжину A в бітах.
Традиційне вірогіднісне визначення ентропії засновано на розгляді ланцюга Маркова n-го порядку на послідовності A, що виходить із ергодичного джерела [18]. Для досить довгих A гарна оцінка ентропії дається деякою функцією <!--[if !msEquation]--> <!--[endif]-->(A), що залежить тільки від частот вживання послідовної n+1 літери у тексті [18]. Аналогічно можна визначити функцію відносної ентропії <!--[if !msEquation]--> <!--[endif]-->(B|A).
Виходячи з результату отриманого Д. В. Хмельовим [16]: в рамках завдання визначення авторства достатньо обмежитись функцією <!--[if !msEquation]--> <!--[endif]-->(B|A), тобто, авторство тексту буде визначатися інформацією про частоту пар літер, що послідовно йдуть у тексті.
Спочатку обчислюються ентропії H(Z|<!--[if !msEquation]--> <!--[endif]-->), ..., H(Z|<!--[if !msEquation]--> <!--[endif]-->) тексту Z відносно текстів <!--[if !msEquation]--> <!--[endif]-->, ..., <!--[if !msEquation]--> <!--[endif]--> всіх авторів кількістю 6 з бази даних. А саме:
Розум і почуття (англ. Sense and Sensibility, 1811);
Гордість і упередження (англ. Pride and Prejudice, 1813);
Менсфілд парк (англ. Mansfield Park, 1814);
Емма (англ. Emma, 1816);
Аргументи розуму (англ. Persuasion, 1817);
Нортенгерське абатство (англ. Northanger Abbey, 1818).
Потім, за допомогою аналогічних ентропійних міркувань, відсікаються автори, які не мають відношення до тексту.
Для оптимізації роботи такої системи слова і словосполучення вихідного тексту можна розбивати на групи за частотою їх вживання, ознаками відповідності одного гнізда, однокореневі та ін., вибудовуючи відповідні залежності.
Навіть простий порівняльний аналіз таких частотних діаграм дозволить вирішити ряд завдань щодо ідентифікації авторства, націленості тексту на певний імператив та ін. Таким чином, частотний аналіз є першим ступенем інтелектуальної обробки і дослідження тексту.
Тобто, виходячи з цього перш за все необхідно порахувати такі кількісні характеристики як:
Довжина речень, тобто середнє число слів у реченні.
Довжина слів, тобто середня кількість складів у слові.
Загальна частота вживання службових слів - прийменників, спілок, частинок, тобто процентний вміст службових слів.
Частота вживання іменників, тобто їх процентний вміст.
Частота вживання дієслів, тобто їх процентний вміст.
Частота вживання прикметників (у відсотках).
Частота вживання прийменника «в» (у відсотках).
Частота вживання частки «не» (у відсотках).
Кількість службових слів у реченні, тобто середнє число спілок, прийменників і часток у реченні.
Отже, алгоритм матиме такий вигляд: на вхід програми буде подаватися декілька текстів. З цих текстів видаляються стоп-слова та знаки пунктуації, складається частотний словник слів текстів, що аналізуються, складається словник маркем для обраного автора, завантажується текст, для якого необхідно визначити чи є обраний письменник його автором, для цього тексту складається словник маркем й робиться висновок про авторство письменника.
Current freelance projects in the category Java
Script for modifying APKI have a script for older versions of the APK Minecraft that allowed creating a lighter version of the game by removing the music. Additionally, the script created a clone of Minecraft (so you could have two Minecraft games on your device...), and it also embedded the servers we… Java, App Development for Android ∙ 3 days 16 hours back ∙ 12 proposals |
Customization of the loading screen and menu for Minecraft 1.12.2 (Tech Survival)
20 USD
Need to refine the ready client Minecraft 1.12.2 with mods and implement a custom interface design in the style of technical survival (Industrial / Tech Survival).What needs to be done1. Custom mod loading screen It is necessary to replace the standard Minecraft/Forge loading… Java, Gaming Apps ∙ 8 days 14 hours back ∙ 6 proposals |
Integration of dental scanner modules into CRM
601 USD
We have developed a CRM system for interaction with dentists and laboratories. It is necessary to integrate services like iTero, Sirona, Medit, and others so that files are pulled automatically. AI & Machine Learning, Java ∙ 8 days 15 hours back ∙ 28 proposals |
Development of simple 2D games (Snake, Galaxy, etc.) for Google Play MarketHello! I am looking for a developer (or a beginner with a good foundation) who can create several simple classic 2D games for the Android mobile platform with subsequent publication in the Play Market.To start, one or two games need to be developed. Examples of settings and… Java, Gaming Apps ∙ 10 days 19 hours back ∙ 19 proposals |