УДК 004.519.7 (045)
А.І. ВАВІЛЕНКОВА*
ПОРІВНЯЛЬНИЙ АНАЛІЗ РЕЧЕНЬ ПРИРОДНОЇ МОВИ ЗА ЗМІСТОМ
Національний авіаційний університет, Київ, Україна
Анотація. У статті запропоновано метод порівняльного аналізу речень природної мови довільної складності за змістом, що базується на побудові їх логіко-лінгвістичних моделей. У представленому алгоритмі зосереджено увагу на етапі побудови інваріантних логіко-лінгвістичних моделей та їх безпосередньому впливі на розрахунок відсотку збігів.
Ключові слова: логіко-лінгвістична модель, порівняльний аналіз, природна мова, текстові збіги, інваріантні моделі.
Аннотация. В статье предложен метод сравнительного анализа предложений естественного языка произвольной сложности по содержанию, который основывается на построении их логиколингвистических моделей. В представленном алгоритме внимание сосредоточено на этапе построения инвариантных логико-лингвистических моделей и их непосредственном влиянии на расчет процента совпадений.
Ключевые слова: логико-лингвистическая модель, сравнительный анализ, естественный язык, текстовые совпадения, инвариантные модели.
Abstract. The article proposes a method of comparative analysis of natural language sentences of arbitrary complexity, which is based on the construction of logic and linguistic models. In the presented algorithm the attention is focused on the stage of construction of invariant logic and linguistic models and their direct impact on the calculation of the percentage of coincidences.
Keywords: logic and linguistic model, comparative analysis, natural language, text coincidences, invariant models.
1. Вступ
Постійне зростання кількості електронних документів спричиняє дублювання матеріалів в інформаційних мережах. У зв’язку з цим, у всіх сферах соціального середовища виникає проблема появи ідентичних за змістом копій документів. Так, в освіті - це плагіат курсових та дипломних робіт, у політичній сфері - створення суперечливих законопроектів, в інформаційних технологіях - відсутність можливості здійснення коректної пошукової оп-тимізації, в економіці - створення однотипних проектів та ін. Все це загрожує дезінформацією, виникненням логічних протиріч і неточністю прийняття рішень.
Найбільш наближеним підходом до пошуку логічних зв’язків у текстовій інформації на сьогодні є створення семантичних мереж у вигляді графів зв’язності, де ключову роль відіграє відстань між словами, а схожість текстів оцінюється як середнє арифметичне цих відстаней [1]. Але зміст природномовних текстів неможливо виявити лише за допомогою статистичних закономірностей. Дана проблема вимагає об’єднання зусиль спеціалістів із області лінгвістики, інформаційних технологій, математики та філософії.
2. Постановка задачі
Для відслідковування істинності тих чи інших пропозицій у сучасних системах аналізу текстових даних використовується стандартний або дещо модифікований алгоритм:
- кешування логічного виводу;
- надання засобів формування конструктивних припущень та аналізу їх корисності;
- аналіз та усунення можливих протиріч у моделях [2].
Такий підхід був запропонований Дойлом та Мак-Аллестером для побудови системи відслідковування істинності пропозицій для знаходження єдиного вирішення проблеми,
© Вавіленкова А.І., 2015
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
97
що задовольняє певним обмеженням. Проте такий алгоритм не дозволяє виконати порівняння альтернативних варіантів вирішення проблеми.
Саме формалізація альтернативних варіантів запису текстової інформації у вигляді інваріантних форм логіко-лінгвістичних моделей лежить в основі матеріалів дослідження. Адже, ані такі методи пошуку текстових збігів, як метод шинглів [3] та методи пошуку підрядків у рядочках [4], що лежать в основі систем аналітичної обробки текстової інформації, ані створення семантичних мереж з веденням бази синонімів [5], досі не забезпечили якісної обробки електронних документів за змістом.
Над аналізом структури текстів та дослідженням закономірностей організації у них змістовних зв’язків працюють такі лінгвісти та філологи, як Філіппов К.А. [6] , Головкіна С.Х. [7], Мельчук І.А. [8] та ін., проте вони не використовують у своїй роботі формальний апарат.
Тому актуальним залишається питання розробки єдиної теоретичної бази, що дозволила б аналізувати текстову інформацію на різних рівнях (прості, складні речення, абзаци, складні синтаксичні конструкції) за єдиним принципом.
3. Метод порівняльного аналізу речень природної мови довільної складності за змістом
Для розуміння змісту складних текстових конструкцій важливо зрозуміти, як згруповані між собою прості речення, що входять до їх складу [9]. Тому в основі методу пошуку текстових збігів у реченнях природної мови довільної складності лежать аналіз логіко-лінгвістичних моделей, правила побудови складних синтаксичних конструкцій та способи організації граматичного зв’язку між предикативними частинами.
Нехай два складних речення S1 та S2 описуються логіко-лінгвістичними моделями:
v (S1) L(S1) = Л L (S1), m1 = 1 (1)
v(S2)
L(S2) = Л LJS2), m 2 =1 (2)
де L (S1) - простий предикат, що описує частину речення S1, яка відображає закінчений зміст;
Lm(S2) - простий предикат, що описує частину речення S2, яка відображає закінчений зміст;
m = 1, v(Sj) , v(Sj) - кількість частин речення S1, які мають закінчений зміст;
m2 = 1, v(S2), v(S2) - кількість частин речення S2, які мають закінчений зміст.
Алгоритм методу порівняльного аналізу речень природної мови довільної складності складається з таких етапів.
1. Побудова вектора характеристик речення. На цьому етапі для кожного складного речення природної мови S1 та S2 ідентифікуються параметри заданих моделей (1) та (2). Для кожної логіко-лінгвістичної моделі встановлюються значення кількості атомарних предикатів v(S1) та v(S2), фіксуються логічні операції, використані у моделях (1) та (2). Внаслідок цього формується вектор характеристик U (S) складного речення:
U (S) = (v(S), O(S ),W (S)},
де v(S) - кількість атомарних предикатів, що описують частини речення S та відображають закінчений зміст;
98
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
O(S) - кортеж логічних операцій речення S :
O(S) = [oe(S) e = ],
де h - загальна кількість логічних операцій, наявних у реченні S ;
W (S) - вид окремої форми уніфікованої логіко-лінгвістичної моделі.
Таким чином, після виконання першого кроку алгоритму порівняльного аналізу речень природної мови довільної складності логіко-лінгвістичні моделі (1) та (2) будуть мати такі вектори характеристик:
U (Si) = (v(Si), O(Si),W (Si)}
та U(S2) = {v(S2), O(S2),W(S2)}.
2. Ідентифікація елементів логіко-лінгвістичних моделей. Для кожного атомарного предиката L (S1) та L^ (S2) фіксуються предикатні змінні та константи, внаслідок чого
кожній компоненті логіко-лінгвістичної моделі ставиться у відповідність конкретне значення концепту з моделі (1) та (2) відповідно [10]. Результатом виконання даного етапу є дві таблиці відношень (табл. 1, табл. 2).
Таблиця 1. Таблиця відношень складного речення S1
m / № p X c( X) y c( y) z c( z ) c( P)
1 P1 X1 c1( X1) У1 c1( У1) z1 c1( z1) c1( P1)
m1 Pm Xm1 c1m1(Xm1) Ут1 Cm1(Ут1) zm! Cm1(zm1) cm1(Pm1)
v( S1) pv( S1) Xv( S1) Cv( St)( Xv(S1)) yv(S!) Cv (S{)( yv( S1)) ZvS) cv (St)( Zv(S1)) cv(St)( Pv(S1))
Таблиця 2. Таблиця відношень складного речення S2
m / № P X c( X) У c( У) z c( z) c( P)
1 P1 X1 c1( X1) У1 c1( У1) z1 c1( z1) c1( P1)
m2 Pm2 Xm2 c1m2( Xm2) Уm2 cm2( •^m2) zm 2 cm2( zm2) cm2( Pm2)
v(S2) Pv (S2) Xv(S2) cv(S2 ) (Xv(S2)) >’v(S2) cv( S2)( >’v(S2)) zv( S2) cv(S1)( Zv( S2 ) ) cv (S2 ) ( Pv( S2))
3. Формування інваріантних логіко-лінгвістичних моделей. Кожному реченню притаманний предикат (присудок), його визначення - логічний суб’єкт, що задає граматико-змістовну перспективу речення. Інваріантні форми логіко-лінгвістичних моделей описують речення природної мови, що мають одне й те саме значення, але мають різну глибинну структуру.
Залежно від типу логіко-лінгвістичної моделі, до якого належать задані формули (1) та (2), формуються інваріантні форми, що відповідають тотожним за змістом реченням природної мови:
(L(S1) ® ЄФ))&(Є($) ® L(SJ) та (L(S2) ® Q(S2)) & (Q(S2) ® L(S2)),
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
99
де Q(S1) c Q1, де Q1 - множина можливих інваріантних форм логіко-лінгвістичної моделі
ВД);
де Q(S2) с Q2, де Q2 - множина можливих інваріантних форм логіко-лінгвістичної моделі L(S2).
Отже, для кожного речення природної мови Sj та S2 формуються інваріантні логіко-лінгвістичні моделі:
J( S1) Q№) = /v, QJSJ, j=1 4 (3)
J(S2)
Q(S2) = / Qj2(S2), j 2 =1 2 (4)
де Q (Sj) - простий предикат, що описує інваріантну до L(S1) частину речення Sj, яка відображає закінчений зміст;
Q (S2) - простий предикат, що описує інваріантну до L(S2) частину речення S2, яка відображає закінчений зміст;
ф1 = 1, J(S1), J(S1) - кількість інваріантних до L(S1) простих предикатів, які мають закінчений зміст і описують речення Sj.
j2 = 1, J(S2), J(S2) - кількість інваріантних до L(S2) простих предикатів, які мають закінчений зміст і описують речення S2 .
J(S1) та J(S2) - величини, що варіюються залежно від кількості спрацьованих правил.
Таким чином, після виконання етапу формування інваріантних логіко-лінгвістичних моделей для кожного речення природної мови табл. j та табл. 2 доповняться і будуть містити всі можливі варіанти відношень, що будуть відповідати синонімічно тотожним конструкціям.
Таблиця 3. Таблиця відношень складного речення Sj з урахуванням інваріантних моделей
m / № P X C( X) y c( y) z C( Z) c( P)
1 P1 X1 C1( X1) У1 C1( У1) Z1 C1( Z1) c1( P1)
m1 Pm, c1m1(Xm1) Ут, cm1( ym1) zm, Cm1( zm1) cm1( Pm1)
v( S1) Pv(S\) Xv( SO Cv (S,)( Xv( S1)) yv( Sl) Cv (S,)( yv( S1)) zv( S[) Cv (S,)( Zv(S1)) Cv (S^( Pv( S1))
Ф1 Pj Ф Ф Уф Ф Уф1) Ф Pj)
ОД) PJ(S\) XJ( S1) CJ(S1) (XJ(S1)) yJ( S1) Cd(Sj)( yd(S1)) ZJ( S1) C«(Sj)( ZJ(S1)) C«(Sj)( PJ( S1))
Таблиця 4. Таблиця відношень складного речення S2 з урахуванням інваріантних моделей
m / № P X c( X) У c( У) z c( z ) c( P)
1 A X1 c1( X1) У1 c1( У1) z1 c1( z1) c1( A)
m2 Pm2 Xm2 c1m2( Xm2) Уm2 cm2( ym2) zm2 cm2( zm2) cm2( Pm2)
100
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
Продовж. табл. 4
v(S2) Pv( S2) Xv( S2) Cv(S2)( Xv (S2)) yv( S2) Cv (S2)( yv( S2)) Zv( S2) Cv(S2)( Zv( S2)) Cv(S2)( Pv(S2))
m / № P X c( X) y c( y) z c( z ) c( p)
Ф2 Рф2 ХФ2 C1j2( Xj2) Уф2 сф2( Уф2) Zj2 Cj2( Zj2) ф (Рф2)
JS2) pj(S2) XJ(S2) CJ( S2)( XJ(S2)) У«№) CJ(S2)( yj(S2)) ZJ(S2) CJ( S2)( ZJ( S2)) CJ( S2)( PJ(S2))
4. Порівняння векторів характеристик. На даному етапі відбувається порівняння векторів характеристик двох заданих речень S1 та S2:
U (Sj) = [v^l O(S\W №)},
U (S2) = {v(S2), O(S2),W (S2)}.
1) Зафіксувати значення W(Sj) та W(S2) видів окремої форми уніфікованої логіко-лінгвістичної моделі.
2) Якщо кількість атомарних предикатів, що описують частини речення, які відображають закінчений зміст, для обох речень однакова v(S1) = v(S2), то перейти до п. 3), інакше перейти до п. 5.
3) Порівняти кортежі логічних операцій, використані в реченнях S1 та S2:
O(Sj) = [oej(Sj) e = 1,AJ,
O(S2) = [ o„ (S2) e = 1, h2l,
- якщо елементи кортежу логічних операцій o1(S1),...,ogi (S1),...,o^ (S1) повністю збігаються з елементами кортежу логічних операцій o1(S2),...,o (S2),...,o^(S2), тобто O(S1) = O(S2), і кількість елементів першого і другого кортежів співпадає, \ = h2 (причому обов’язковим є врахування порядку елементів у кортежі), то виконати п. 5 і присвоїти Ah = 0;
- якщо кількість елементів у кортежі логічних операцій одного з речень відрізняється від кількості елементів у кортежі логічних операцій другого, і при цьому елементи кортежу першого речення включають у себе елементи кортежу другого речення O(S2), тобто O(S2) с O(S1) при h > h2, або навпаки, елементи кортежу логічних операцій першого речення входять до множини логічних операцій речення S2, тобто O(S1) с O(S2) при \< h2, то перейти до п. 5 і присвоїти:
а) Ah = h2 при \ > h2;
б) Ah = h2 - h при h < h2;
- якщо кількість елементів у кортежах логічних операцій однакова \ = h2 і елементи кортежів O(S1) та O(S2) не повністю співпадають, проте
(O(S2) с O(S1))& (O(S2) c O(S1)) , то перейти до п. 5 і присвоїти Ah = 0 ;
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
101
- інакше, коли елементи кортежів логічних операцій речень S1 та S2 не співпадають, O(Sj) Ф O(S2) , виконати п. 5 і присвоїти Dh = ®.
5. Порівняння логіко-лінгвістичних моделей. Даний етап передбачає перевірку ряду умов, зокрема, умов протиріччя та синонімії двох речень природної мови, можливість побудови імплікативних та пресуппозиційних зв’язків між атомарними предикатами, а також умови організації граматичного зв’язку між предикатними частинами речень. Внаслідок чого встановлюється істинність або хибність факту виявлення тотожних за змістом речень природної мови довільної складності.
1) Здійснити порівняння кожного простого предиката L (Sj) логіко-лінгвістичної моделі (1) та кожної інваріантної форми Q (S1) логіко-лінгвістичної моделі (3) з кожним простим предикатом L (S2) логіко-лінгвістичної моделі (2) та інваріантними формами Q (S2) логіко-лінгвістичної моделі (4) почергово методом порівняння простих речень за змістом [11].
2) Нехай змінна 0(S) - загальна кількість збігів простих предикатів речення природної мови S1 з простими предикатами речення природної мови S2 .
3) Нехай змінна t(S) - загальна кількість збігів простих інваріантних предикатів речень природної мови S1 та S2 .
4) Перевірити істинність умов та зафіксувати загальну кількість збігів:
- якщо істинною є умова
(L^) °LJS2)),
то 0(S) збільшується на одиницю, тобто 0(S) = 0(S) +1;
- якщо істинною є умова
(Qj (S1) ° L^2 (S2)) v L (S1) ° j (S2)) v (Qj (S1) ° Qj2 (S2)),
то t(S) збільшується на одиницю, тобто t(S) = t(S) +1.
1) Загальна кількість порівнянь w(S) обчислюється як
w(S) = (v(S1) + J(S1))(v(S2) + J(S2)), тобто дорівнює добутку суми кількості простих та простих інваріантних предикатів речення S1 і суми кількості простих та простих інваріантних предикатів речення S2 .
2) Обчислити відсоток збігів h(S) у реченнях природної мови S1 та S2:
- якщо W (S1) = W (S2) і Dh = 0, то
) =q(S >+X(S > .100% =0JS)±t(S)
v(S,) v(S,) ’
- якщо W(S1) = W(S2) і (Dh = h -h2 або Dh = 0), то
)_ 0(S)+x(S) 100%;
v(S2)
- якщо W(S1) = W(S2) і (Dh = h2 -h або Dh = 0), то
h(S) =0(S)±x(S) .100%;
v(S.)
- якщо W (S1) Ф W (S2) або Dh = ®, то
102
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
h(S) = t(S) 100%, при h< h2, iv 7 n(Si) ’ v ч 2,
h(S) = t(S) 100%, при h2 < h .
v(S2)
Отже, метод порівняльного аналізу речень природної мови довільної складності дає можливість визначити ступінь схожості речень за змістом. Це стає можливим завдяки формуванню інваріантних логіко-лінгвістичних моделей, що базуються на правилах та моделях побудови складних синонімічних конструкцій природної мови.
4. Висновки
Для розуміння змісту складних конструкцій важливо зрозуміти, як згруповані між собою прості речення, що входять до їх складу [12]. Тому, на відміну від методу шинглів, що лежить в основі більшості сучасних систем порівняльного аналізу текстових документів, запропонований у статті метод базується на правилах побудови складних речень природної мови, виявленні механізмів утворення тотожних синтаксичних конструкцій і залежностях відсотку збігів від істинності логіко-лінгвістичних моделей та їх інваріантних форм. Метод порівняльного аналізу речень природної мови довільної складності є посередньою ланкою між порівнянням простих речень природної мови та порівнянням цілих текстових документів за змістом. Тому запропонований метод одночасно використовує для своєї роботи метод порівняння простих речень природної мови та являється основою для методу порівняльного аналізу текстових моделей.
СПИСОК ЛІТЕРАТУРИ
1. Тарануха В.Ю. Інтелектуальна обробка текстів / Тарануха В.Ю. - Київ, 2014. - 80 с.
2. Джексон П. Введение в экспертные системы / Джексон П. - Санкт-Петербург: Вильямс, 2001. -624 с.
3. Вавіленкова А.І. Логіко-лінгвістичні моделі речень як засіб порівняння текстових документів за змістом /А.І. Вавіленкова // Математичні машини та системи. - 2012. - № 1. - С. 166 - 173.
4. Ландэ Д.В. Поиск знаний в Internet. Профессиональная работа / Ландэ Д.В. - М.: ООО «Вильямс», 2005. - 272 с.
5. Jurafsky D. Natural Language Processing [Електронний ресурс] / D. Jurafsky, C. Manning. - Stanford University, 2012. - Режим доступу: https://www.coursera.org/course/nlp.
6. Филиппов К.А. Лингвистика текста. Курс лекций / Филиппов К.А. - Спб.: Издательство С.Петербургского университета, 2008. - 336 с.
7. Головкина С.Х. Лингвистический анализ текста / С.Х. Головкина, С.Н. Смольников. - Вологда: Издательский центр ВИРО, 2006. - 124 с.
8. Мельчук И. А. Опыт теории лингвистических моделей «СМЫСЛ-ТЕСТ» / Мельчук И. А. - М.: Школа «Языки русской культуры», 1999. - 346 с.
9. Vavilenkova A. A self-system to identify conceptual relationships in text / A. Vavilenkova // Proceedings of the National Aviation University. - 2015. - № 1 (62). - P. 63 - 69.
10. Вавіленкова А.І. Методологічні основи автоматичного аналізу логіко-лінгвістичних моделей текстових документів /А.І. Вавіленкова // Математичні машини та системи. - 2015. - № 1. - С. 65 -71.
11. Вавіленкова А.І. Аналіз методів пошуку синонімів в електронних документах / А.І. Вавіленкова // Вісник Чернігівського державного технологічного університету: зб. наук. праць. - (Серія «Технічні науки»). - 2014. - № 2 (73). - С. 119 - 128.
12. Марчук Ю.Н. Компьютерная лингвистика / Марчук Ю.Н. - М.: АСТ: Восток - Запад, 2007. -317 с.
Стаття надійшла до редакції 21.04.2015
ISSN 1028-9763. Математичні машини і системи, 2015, № 2
103