Створення мереж термінів на основі аналізу текстів

За дорученням відомого автора Дмитра Ланде (наприклад, «Пошук знань у Internet», Інтернетика. Навігація в складних мережах: моделі та алгоритми) публікую одну з останніх його робіт.

В даний час актуальними є завдання побудови онтологій за певними областями знань. Очевидно, побудова великої галузевої онтології - складна проблема, яка вимагає великих ресурсних витрат. У будь-якому випадку, певним етапом побудови загальних онтологій є побудова відповідних тезаурусів, термінологічних онтологій.

У цій роботі пропонується методика побудови мережі природної ієрархії термінів, яку можна розглядати як «квазіонтологію», основу для формування відповідної термінологічної онтології. Мережа природної ієрархії термінів базується на інформаційно-значущих елементах тексту, опорних словах і словосполученнях, методологія виявлення яких наведена в [1, 2]. Використання таких елементів дозволяє формувати пошукові образи, охоплювати цілі області знань в якості основ для подальшої побудови загальних онтологій. Опорні слова і словосполучення для побудови природних ієрархій термінів вибираються з урахуванням такої їх властивості, як дискримінантна сила. Разом з тим, однієї цієї властивості виявляється недостатньою при побудові тезаурусів і онтологій. Іноді слова з низькою дискримінантною силою, зокрема, найбільш частотні слова обраної предметної області (наприклад, слова «Information», «Retrieval», «Search» в корпусі з інформаційного пошуку) виявляються найважливішими для завдання, яке розглядається.

Формування мережі природних ієрархій термінів (СЕІТ) базується на контенті текстових корпусів відповідної спрямованості. «Природність» ієрархій термінів у цьому випадку розуміється як відмова при формуванні мережі від спеціальних методів семантичного аналізу. Всі зв'язки в такій мережі визначаються природним застосуванням слів і словосполучень, які екстрагуються з текстових корпусів статистично значущих обсягів. Мережа природних ієрархій термінів, створювана повністю автоматично, може розглядатися як основа для подальшого автоматизованого формування термінологічної онтології.

Алгоритм створення мережі природних ієрархій термінів, яка розглядається в цій роботі, передбачає реалізацію послідовності кроків, що охоплює попередню обробку вихідного текстового корпусу, визначення і сортування термінів, вибір необхідної кількості найбільш вагомих (найбільших вузлів компактифікованого графа горизонтальної видимості [3]), побудову СЕІТ і її відображення. Розгляньмо ці кроки детальніше.

1. На першому етапі виділяється початковий текстовий корпус. Як приклад такого корпусу нижче розглядається масив анотацій електронних препринтів arXiv (www.arxiv.org) за 2007-2010 роки за тематикою інформаційного пошуку (рубрика cs. IR) обсягом 550 записів.

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

2. На другому етапі кожному окремому слову з текстового корпусу ставиться у відповідність оцінка його «дискримінантної сили», а саме TFIDF, яка в канонічному вигляді дорівнює виробленню частоти цього слова (Term Frequency) в фрагменті тексту на двійковий логарифм від величини, зворотної до кількості фрагментів тексту, в яких це слово зустрілося (Inverse Documfent [requent)

3-4. Виконується те ж, що і на попередньому кроці, тільки для словосполучень з двох слів (біграм) і з трьох слів (триграм).

5. Для послідовностей термінів та їх вагових значень за TFIDF будуються компактифіковані графи горизонтальної видимості (CHVG) [1, 2] і виконується повторне визначення вагових значень слів за цим алгоритмом. Ця процедура дозволяє враховувати в подальшому крім термінів з великою дискримінантною силою також високочастотні терміни, які мають велике значення для загальної тематики текстового корпусу. Після цього всі терміни сортуються зі збування розрахованих вагових значень відповідних вузлів CHVG.

Подальшому аналізу не підлягають терміни з так званого стоп-словника. Це, як правило, фіксований набір службових слів, що не відіграють істотної ролі у змісті текстів.

6. Експертним методом визначається необхідний обсяг СЕІТ (число N), після чого обирається відповідна кількість одиничних слів, біграм і триграм (всього N + N + N елементів) з найбільшими ваговими значеннями за CHVG.

7. З відібраних на попередньому кроці елементів будуються мережі природних ієрархій термінів, в яких як вузли розглядаються самі терміни, а зв'язки відповідають входженням одних термінів в інші. 1 проілюстровано принцип побудови зв'язків СЕІТ. Окремі геометричні фігури на цій ілюстрації відповідають одиничним словам.

Ріс. 1 - Формування зв'язків у трирівневій мережі природної ієрархії термінів

Перший рядок відповідає вибраному безліч одиничних слів, другий - безліч біграм, а третій - безліч триграм. Якщо одиничне слово входить в біграму або триграму, або біграма входить в триграму, утворюється зв'язок, який позначається стрілкою. Безліч вузлів, яким відповідають терміни, і зв'язки утворюють трирівневу мережу природної ієрархії термінів.

8. На останньому етапі формування СЕІТ здійснюється її відображення програмними засобами аналізу та візуалізації складних мереж. Для завантаження мереж природних ієрархій термінів у бази даних формується матриця інцидентності загальноприйнятого формату csv.

Для побудованих мереж природних ієрархій термінів різних розмірів за обраним текстовим корпусом було визначено розподіл вихідних ступенів вузлів, яке виявилося близьким до степеного (p (k) = C * k ^ h), тобто ці мережі є безмасштабними. Виявилося, що коефіцієнт h для мереж різних розмірів (від 20 + 20 + 20 до 200 + 200 + 200) становить від 2,1 до 2,3.

На рис. 2 представлена невелика мережа природної ієрархії термінів розміром 20 + 20 + 20, яка візуалізована у вигляді спіралі за запропонованим автором методом.

Ріс. 2 - Перегляд СЕІТ розміром 20 + 20 + 20

На рис. 3 представлений загальний вид мережі природної ієрархії термінів розміром 200 + 200 + 200, яка візуалізована засобами системи Gephi (https://gephi.org/).

Ріс. 3 - Візуалізація СЕІТ розміром 200 + 200 + 200 засобами Gephi

На рис. 4 наведено окремі фрагменти мережі природної ієрархії термінів, які відповідають обраним базовим термінам.

Ріс. 4 - Фрагменти СЕІТ

Таким чином, в результатами проведених досліджень:

  • Запропоновано алгоритм побудови мереж природних ієрархій термінів на основі аналізу текстових корпусів.
  • На підставі цього алгоритму по текстовому корпусу побудована мережа природної ієрархії термінів.
  • Досліджені властивості мережі природних ієрархій термінів, яка виявилася скейл-фрі з вихідних зв'язків.
  • Обрано засоби візуалізації мережі природних ієрархій термінів.
  • Мережу мови, побудовану за допомогою запропонованої методики, можна використовувати як базу для побудови загальної онтології (у розглянутому прикладі - за тематикою інформаційного пошуку), використовувати на практиці в якості готового до застосування засобу навігації в базах даних відповідної тематики, а також для організації контекстних підказок користувачам інформаційно-пошукових систем.

Література

  1. Lande D.V., Snarskii A.A., Yagunova E.V., Pronoza E.V. The Use of Horizontal Visibility Graphs to Identify the Words that Define the Informational Structure of a Text // 12th Mexican International Conference on Artificial Intelligence, 2013. – P. 209-215.
  2. Lande D.V., Snarskii A.A. Compactified Horizontal Visibility Graph for the Language Network // Preprint Arxiv (1302.4619)
  3. Luque В., Lacasa L., Ballesteros F., Luque J. Horizontal visibility graphs: Exact results for random time series // Physical Review E, 2009. – P. 046103-1 – 046103-11.
  4. Salton G., McGill M.J. Introduction to Modern Information Retrieval. – New York: McGraw-Hill, 1983. – 448 p.