Разработка програмних засобів конвертування HTML-текстов в семантичні сети

Тип работы:
Реферат
Предмет:
Информатика, программирование


Узнать стоимость новой

Детальная информация о работе

Выдержка из работы

Московський Державний Університет Шляхів сообщения

(МИИТ)

Кафедра АСУ

Курсової проект

«Розробка програмних засобів конвертування HTML текстів в семантичну сеть»

Выполнила:

Студентка 5-го курсу групи УИС-511

Болотова Е.А.

Перевірив: Саркісян Р.Е.

Москва 2001

Що таке семантична мережу … 3

Основні інформацію про мові HTML … 3

1. Введение … 3

2. Сруктура HTML-документа … 4

Що таке фрейми … 7

Можливості уявлення знань з урахуванням мови HTML … 8

TextAnalyst 2.0 — персональна система автоматичного аналізу тексту … 14

Принцип роботи HTML-конвертора … 17

Список використаних джерел … 21

Що таке семантична сеть

Семантична мережу — структура до подання знань у вигляді орієнтованого графа, у якому вершини — це поняття, а дуги — відносини. Термін семантична означає «значеннєва », а сама семантика — це наука, що встановлює відносини між символами і об'єктами, які означають, що є наука, визначальна сенс знаков.

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

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

1. Вузли семантичних мереж є концепти предметів, подій, состояний

2. різні вузли одного концепту ставляться до різним значенням, якщо де вони позначені як які стосуються одному концепту

3. дуги семантичних мереж створюють відносини між вузлами- концептами (позначки над дугами свідчить про тип отношения)

4. деякі відносини між концептами є лінгвістичні відмінки, такі як агент, об'єкт, реципієнт і інструмент (інші означають тимчасові, просторові, логічні стосунки держави й відносини між окремими предложениями

5. концепти організовані за рівнями відповідно до ступенем узагальненості оскільки, наприклад, сутність, жива істота, тварина, плотоядное.

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

Найчастіше в семантичних мережах використовуються такі отношения:

— зв'язок типу «частина-ціле «(«класс-подкласс », «безліч- підмножина «і т.п.)

— функціональні зв’язку, зумовлені зазвичай глаголами

" виробляє «, «належить «і т.п.)

— кількісні («більше », «менше », «одно «і т.п.)

— просторові («від », «далеке від «і т.п.)

— тимчасові («раніше », «пізніше «і т.п.)

— логічні зв’язку («і «, «чи «і т.п.)

— лінгвістичні зв’язку й т.д.

Основні інформацію про мові HTML

1. Введение

Усі стандартні броузеры для Інтернету використовуються засоби уявлення текстів, засновані мовою HTML. HTML (Hyper Text Markup Language) — це мову розмітки гіпертексту. Її «розуміють» все комп’ютери, він досить простий, та заодно має достатні виразні кошти на зручного описи різних типів документів. Мова дозволяє зберігати текст в «чистому» вигляді (не кодуючи його), що уможливлює перегляд HTML скриптов з допомогою звичайних текстових редакторів. Її надає авторам Інтернет — публікацій средства:

— уявлення документів, які включають заголовки, тексти, таблиці, списки, «картинки» тощо. элементы;

— здійснення навігації щодо окремих документами та безлічі документів шляхом застосування гиперссылок;

— конструювання діалогових форм для взаємодії з віддаленими сервісами, доступними в сети;

— включення до документи вычисляемых форм (spread-sheets), відеота звуку, як і різноманітних приложений.

Перша версія мови HTML розробили Т. Бернерс-Лі з Європейського Центру ядерних досліджень (CERN). Надалі мову зазнав істотні зміни. На середину 90-х відбулася стандартизація його версій, що стали курироваться міжнародними організаціями. У час найрозвиненішої є версія мови HTML 4. 0, у якій представлені нові можливості апаратури й підвищити вимоги виробників програмного забезпечення броузерів, і навіть побажання Інтернет — авторов.

2. Структура HTML-документа

У HTML — файлі перебуває символьна інформація. Частина її - це з, складові вміст документа, іншу частина — HTML — теги, мовні конструкції, використовувані для розмітки документи й які його відображенням. Для виділення тегов з тексту HTML — документа ці конструкції беруться в кутові дужки. Зазвичай теги використовуються парами: відкриває і закриває тег.

Типовий HTML — документ має таку структуру:

< ! DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4. 0//EN»

«internet

Найменування документа name=keywords content="Ключевые слова">

Тіло документа

У наведеному фрагменті коментар фіксує поточне стан специфікації версії мови HTML. Документ повинен відкриватися тегом, закриватися тегом і складатися з двох частин: заголовка і тіла документа.

Заголовок перебуває між тегами й містить службову інформацію. У представленому вище фрагменті HTML — документа показані два компонента заголовка:

— Заглавие — рядок символів, яка відображається в заголовку вікна броузера.

— - додаткову інформацію про HTML — документі (у нашій прикладі цей етикетка з допомогою параметрів name і content фіксує значення першого атрибута як keywords, а другого — як ключове слово «Уявлення знань» і «Мультиагентные системи»). Цей поміткою орієнтовано анотування Інтернет — документів і майже значно полегшує завдання індексування їх, наприклад, з допомогою мережевих роботов.

Крім цих компонентів заголовок може містити й інші теги:

— - базовий адресу, використовуваний при обробці относительных

URL,

— - використовується для зв’язку HTML-документа коїться з іншими джерелами данных.

Власне зміст документа перебуває у тілі між тегами і. Іноді замість цих тегов можна зустріти поміткою, який визначає спеціальний тип документа — Web-страницу з кадрами чи фреймами.

Зазвичай, тіло HTML-документа складається з послідовності структурних одиниць, засадничими у тому числі являются:

— заголовки різного рівня (текст, укладений між тегами и

), де і не може змінюватися від 1 до 6;

— параграфи (текст, укладений між тегами і).

Це мінімальні кошти форматування документа. Природно, що у HTML ці гроші значно багатшими (різноманітні вирівнювання, табуляція, три «види списків, таблиці і т.д.).

Найважливішими базовими конструкціями мови HTML є якоря. Синтаксично ці конструкції представлені тегами і з атрибутами name і href. Якорем є конструкція вида:

Текст

Ця конструкція забезпечує унікальне не більше документа ім'я початку певного фрагмента HTML-текста. У цьому текст, укладений між тегами і, зазвичай, задає семантично значиме найменування заголовка.

Для посилань на позначені в такий спосіб частини Інтернет — документа використовуються конструкції наступного вида:

1) Текст — Задає локальну посилання частина документа, що починається із зазначеною метки

2) Текст — Задає глобальну посилання документ у мережі, однозначно идентифицируемый з допомогою URL (Unified Resource

Locator) — Інтернет — адресу: ім'я домену, уточнену назвою протоколу, й своє ім'я документа, включаючи шлях у його межах даної домена.

Важливими конструкціями HTML також є таблиці з багатими можливостями багаторівневих заголовків і форми, з допомогою що у мову запроваджені кошти забезпечення діалог із читачами Інтернет — документів. Засадничими конструкціями форм є редаговані текстові поля, елементи вибору, різні кнопки і т.д.

Приклад створення таблицы:

столбец1, строка1 столбец2, строка1 столбец1, строка2 столбец2, строка2

Найпростіший приклад створення формы:

Можете вводити на полі одну строку

Для обробки результатів введення натисніть кнопку

Ще один важлива конструкція — це фрейми (frames). З їхньою допомогою можна розділити документ на частини й представляти в окремих, неперекрывающихся областях екрана. Це уявлення інформації притаманно многооконных приложений.

Крім цього є та інші конструкції розмітки Інтернет — документів. Серед цих конструкцій слід зазначити більш чіткий поділ між структурою документи й його поданням з допомогою використання таблиць стилів, скриптов, підтримують, зокрема, створення динамічних сторінок, новий механізм інтеграції текстових і графічних посилань, виконуваний за імені клієнта й стандартизацію механізму підключення до HTML-документам базисних медиаобъектов і приложений.

Що таке фреймы

Термін фрейм було запропоновано у роки для позначення структури знань до просторових сцен. Фрейм — це абстрактне образ для уявлення якогось стереотипу сприйняття. Фреймом також називається і формалізована модель для відображення образа.

Различают:

— фреймы-образцы (прототипи) — зберігаються у базі данных

— фреймы-экземпляры — створюються для відображення реальних фактичних ситуацій з урахуванням вступників данных

— фреймы-структуры — йдуть на позначення об'єктів і понятий

— фреймы-роли

— фреймы-сценарии

— фреймы-ситуации

Зазвичай структура фрейму подається як список свойств:

(ІМ'Я ФРЕЙМА:

(назву Першого слота: значення 1-го слота),

(ім'я 2-го слота: значення 2-го слота),

--------------------------

(ім'я N-го слота: значення N-го слота)

Як значення слота може бути ім'я іншого фрейму, так утворюється мережу фреймов.

Є кілька способів отримання слотом значень у фреймі- экземпляре:

— за умовчанням від фрейма-образца (значення default)

— через успадкування властивостей від фрейму, вказаної у слоте АКО (a kind of)

— за такою формулою, яка вказана у слоте

— через приєднану процедуру

— явно з діалог із пользователем

— з убозівської бази данных.

Можливості уявлення знань з урахуванням мови HTML

Розглянемо, як HTML-документ то, можливо подано у вигляді семантичної мережі. Маємо виділити ті конструкції мови, які можуть прислужитися на вирішення цієї задачи.

Насамперед, до таких конструкцій ставляться теги типу, і. Перший ознака важливий для фіксації семантики всього HTML — документа, оскільки текст, укладений між тегами й частіше всього відбиває призначення чи содержание.

Теги типу вводять імена атрибутів та його значення з допомогою параметрів name="…" і content="…", а посилання і якоря фіксують відносини між частинами одного документа чи торгівлі між окремими документами.

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

Теги типу фіксують лише наявність відносини між посиланням і його якорем. У окремих випадках цьому відношенню можна «приписати» ім'я SeeAlso (дивися також), за іншими випадках — ConsistOf, PartOf чи інше підходяще ім'я, але семантика даної конструкції имплицитна, а вбудована інтерпретація її пов’язана лише переходити по засланні і візуалізацією початку відповідного фрагмента документа чи завантаженням нового документа для просмотра.

Іншими корисними конструкціями є заголовки розділів і підрозділів (тексти між тегами і), списки, таблиці та інші елементи языка.

Та загалом, виділення значимих для семантичної інтерпретації конструкцій є експертної завданням, розв’язуваної щоразу автором відповідної Інтернет — публікації по-своєму. Але є певні стереотипи. Наприклад, зі сторінок Інтернет — магазинів каталоги товарів у вона найчастіше видаються таблицями чи списками, або «зашиті» в чутливі для щиглика миші графічні об'єкти. Це характерне й для індексів на сайтах машин поиска.

Розглянемо за приклад сторінку офіційного сайту компанії Microsystems Ltd, що у мережі за адресою internet На цій шпальті розташовується по інформація за програмою TextAnalyst 2.0. Екранна форма цієї сторінки показано малюнку. [pic]

Фрагмент відповідного HTML — тексту представлений ниже:

---------------------------------

Microsystems, Ltd

-----------------------------------------------

-------------------------------------

----------------------------------------------

Products

TextAnalyst SDK

TextAnalyst

Text Referent

----------------------------------------

TextAnalyst

Одержите безплатну версию

TextAnalyst

Системні требования

Intel-based PC

Windows 9X, NT, 2000, Me

Технічні характеристики/tr>

Середня швидкість аналізу тексту близько 1Мбайт/мин (при використанні Pentium-II).

Максимальний обсяг аналізованої добірки необмежений і залежить від обсягу ресурсів комп’ютера та настройки TextAnalyst.

Власний обсяг TextAnalyst вбирається у 5Мб.

Формати оброблюваних файлов:

*. txt (ANSI, DOS), *. rtf

Експорт інформацією формати: *. txt,

*. csw (електронні таблицы).

-----------------------------------

TextAnalyst 2.0 персональна система автоматичного аналізу тексту

TextAnalyst розроблений як інструмент для аналізу змісту текстів, смислового пошуку інформації, формування електронних архівів, і дає користувачеві такі основні можливості: аналізу змісту тексту з автоматичним формуванням семантичної мережі з гіперпосиланнями — отримання смислового портрета тексту в термінах основних понять та його значеннєвих зв’язків; аналізу змісту тексту з автоматичним формуванням тематичного дерева з гіперпосиланнями — виявлення семантичної структури тексту як ієрархії тим гаслам і підтем; смислового пошуку з урахуванням прихованих значеннєвих зв’язків слів запиту зі словом тексту; автоматичного реферування тексту — формування її смислового портрета в термінах найбільш інформативних фраз; кластеризації інформації - аналізу розподілу матеріалу текстів по тематичним класам; автоматичної індексації тексту з перетворенням в гіпертекст; ранжирування всіх видів інформації про семантикою тексту по «ступеня значимості» із можливістю варіювання детальності її дослідження; автоматического/автоматизированного формування повнотекстової бази знань з гіпертекстової структурою й потенційними можливостями асоціативного доступу до інформації;

Не лякайтеся достатку возможностей!

Фундаментальна обізнаність із TextAnalyst видасться Вам несподівано простий приємною, яке аналітичні здібності заощадять чимало корисного времени…

----------------------------------

Порівнявши наведені екранній формі і HTML-текст, бачимо, що семантично значимими елементами даного документа є: — ключове слово, які стосуються даному документа: Microsystems,

TextAnalyst, text mining, knowledge discovery, textmining, e-commerce, classification, semantic analysis, neuro networks, natural linguistc, text processing, Мікросистеми, аналіз текстів, база знань, документообіг, класифікація, семантичний аналіз, нейронные мережі, натуральні мови, текст процесор (ярличок); - все меню зорганізовані у вигляді таблиць (ознака), в осередках которых

(ярличок) розташовані посилання (ярлик), з допомогою яких можна можливість перейти до інший цікавій для інформації. Наприклад, можна було одержати інформацію про продукти даної компанії, обравши їх назва з лівої меню. — текст описи можливостей програми TextAnalyst організований вигляді списку (поміткою).

Т.а. можна побачити, семантично значимі характеристики документа можуть бути розкидані на різних частин документа чи з різним документам. Це сильно утрудняє семантичний аналіз Інтернет — документов.

Вирішення проблеми нині пов’язані з використанням двох підходів. Перший підхід передбачає, що семантична розмітка документа виконується вручну його автором з урахуванням спеціальних метатегов, а другий підхід пов’язані з автоматичним чи напівавтоматичним перетворенням вихідного тексту до спеціального семантична уявлення. Доцільно конвертувати HTML-тест на більш зручну форму уявлення для подальшої обработки.

TextAnalyst 2.0 — персональна система автоматичного аналізу текста

TextAnalyst розроблений як інструмент для аналізу змісту текстів, смислового пошуку інформації, формування електронних архівів, і надає користувачеві такі основні возможности:

. аналіз змісту тексту з автоматичним формуванням семантичної мережі з гіперпосиланнями — отримання смислового портрета тексту в термінах основних понять та його значеннєвих связей;

. аналіз змісту тексту з автоматичним формуванням тематичного дерева з гіперпосиланнями — виявлення семантичної структури тексту як ієрархії тим гаслам і подтем;

. значеннєвий пошук з урахуванням прихованих значеннєвих зв’язків слів запиту зі словом текста;

. автоматичне реферування тексту — формування його смислового портрета в термінах найбільш інформативних фраз;

. кластеризація інформації - аналіз розподілу матеріалу текстів по тематичним классам;

. автоматична індексація тексту з перетворенням в гипертекст;

. ранжування всіх видів інформації про семантикою тексту по «ступеня значимості» із можливістю варіювання детальності її исследования;

. автоматическое/автоматизированное формування повнотекстової бази знань з гіпертекстової структурою та можливостей асоціативного доступу до информации.

Розглянемо на прикладі роботу програми. Після запуску TextAnalyst, необхідно відкрити текстовий файл, де розміщений HTML- документ нашого прикладу. Програма виконує аналіз запропонованого тексту і видає результати (див. рисунок)

Вивчивши запропонований текст, TextAnalyst формує мережу найвагоміших понять, які у даному тексті. На таку включені ті терміни тексту, яких зазнають основну значеннєву навантаження. Т.а. мережу дозволяє відкинути несуттєву інформації і уявити зміст тексту стислому вигляді. Кожне поняття, що з’являлось безліч разів у різних частинах тексту, в мережі представлено єдиним вузлом. Різні форми слів для відображення до одного вузол мережі видаються до спільної граматичної форме.

[pic]

Кожен елемент мережі характеризується числової оцінкою — смисловим вагою. Зв’язки між поняттями також характеризуються вагами. Значення смислового ваги (від 1 до 100) показує, наскільки є поняття для сенсу всього тексту, тобто. як багато інформацією тексті стосується даного поняття. Максимальне значення, однакову 100, свідчить, що правове поняття є ключовим і становить найважливішу тему тексту. Маленька, близьке до одиниці значення показує, що відповідна тема лише мимохідь згадана з тексту у ньому обмаль інформації, що належить до даному поняттю. Друге число, що стоїть перед смисловим вагою, ближчі один до щодо розкритої вузлу, представляє вагу зв’язку від розуміння в вершині розтуленого списку до даному. Важливе значення ваги зв’язку (близький до 100) зазначає, що переважна більшість інформацією тексті, що стосується першого, стосується виборів у те час та другого поняття. Мале (близький до 1) значення означає, перше поняття слабко пов’язаний із другим і обмаль інформації з першої темі стосується виборів у водночас і второй.

За умовчанням на екрані відбиваються поняття із щонайменше 5. Вигляд мережі на екрані можна налаштовувати, змінюючи кількість відображуваних понять і зв’язків, і навіть спосіб їх сортировки.

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

У прикладі реферат виглядає таким образом:

98 аналізу змісту тексту з автоматичним формуванням семантичної мережі з гіперпосиланнями — отримання смислового портрета тексту в термінах основних понять та його значеннєвих зв’язків; 98 аналізу змісту тексту з автоматичним формуванням тематичного дерева з гіперпосиланнями — виявлення семантичної структури тексту як ієрархії тим гаслам і подтем;

Цифри показують ступінь значимості пропозицій у тексті. Значення ваги, близький до 100, означає, що це пропозицію представляє найважливішу інформацію, що стосується головних понять тексту. Ці поняття на рефераті виділяються цветом.

За умовчанням на екрані відбиваються пропозиції реферату з вагами не менш 90.

Для аналізованого вище примераHTML-текста описи сторінки Analyst. ru фрагменти семантичної мережі виглядають наступним образом:

[pic]

Принцип роботи HTML-конвертора

Розглянемо за приклад таке підмножина HTML-языка, що може бути поставлено такими определениями:

HTML-text: = HEAD BODY

HEAD: = TITLE{HEAD}| META{HEAD}| LINK{HEAD}…

TITLE: = рядок

META: =

KEYWORDS: = …

BODY: = HTML-BODY

HTML-BODY: = PARAGRAPH{HTML-BODY} | TABLE {HTML-BODY} | LIST{HTML- BODY} | ANCHOR{HTML-BODY} | …

PARAGRAPH: = текст

TABLE: = TABLE-CELLS

TABLE-CELLS: = STROKA{TABLE-CELLS} | …

STROKA: = CELL

CELL: = текст

LIST: = LIST-ATOM

LIST-ATOM: = …

ANCHOR: = TEXT

TEXT: = …

LINK: = …

Синтаксична діаграма, відповідна цих правил виглядає так: [pic]

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

Спочатку що необхідно дати регулярне відображення кожного правила специфікації HTML-конструкций в відповідний об'єкт бази знань на рівні фрейма-прототипа. Система таких прототипів дасть нам опис мови, а безліч фреймов-экземпляров — специфікацію конкретних і синтаксично правильних HTML-текстов. Основні правила такого відображення таковы:

— кожному концепту з лівої частини BNF-определения ставимо за відповідність ім'я фрейма-прототипа;

— альтернативам з правій частині BNF-определения у своїй повинні відповідати імена слотів цього фрейма;

— для концептов-нетерминалов відповідний слот повинен мати тип frame;

— для концептов-терминалов відповідні слоты будуть, зазвичай, мати тип numb чи string;

— рекурсія в BNF-определениях замінюється ітерацією, а відповідні слоты стають множественными.

Після застосування даних правил до BNF-определениям мови HTML одержимо таке безліч фреймов-прототипов:

[html is_aprototype, if_added HTML ();

HEADframe, restr_by head;

BODYframe, restr_by body ];

[head is_aprototype, if_added HEAD ();

BODY{frame}, restr_by one_of {title, meta, …}];

[title is_aprototype, if_added TITLE ();

BODYstring ];

[meta is_aprototype, if_added META ();

BODYstring ];

[body is_aprototype, if_added BODY ();

SENT{frame}, restr_by one_of {header, paragraph, table, …}];

[paragraph is_aprototype, if_added PARAGRAPH ();

[LIST is_aprototype; ATOM{frame}, if_added LI () ];

BODYframe, restr_by text];

[table is_aprototype; if_added TABLE ();

TAB{frame}, restr_by one_of {stroka,…}; ]

[stroka is_aprototype, if_added TR ();

CELLS{frame}, restr_by one_of{cell,…}];

[cell is_aprototype, if_added TD (); ];

[anchor is_aprototype;

BODYframe, restr_by text];

[link is_aprototype;

URLframe, restr_by one_of {http, ftp,…}];

MAILframe, restr_by mail];

[url is_alink; without_slot MAIL];

[http is_aurl, if_added HTTP ();

SERVERstring;

DIR{string};

FILEstring];

[ftp is_aurl, if_added FTP ();

SERVERstring;

DIR{string};

FILEstring];

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

Специфікація однієї з таких демонів представлена нижче мовою Java:

public class HTML extends FramePrototype {

HEAD head=null;

BODY body-null;

String keyword;

Public void HTML (String name) {

Super (name); keyword=getToken (); if (keyword. compareTo (««) = =0 { head = new HEAD (getNewName ()); body = new BODY (getNewName ());

}; keyword = getToken (); if (keyword. compareTo (««)= =0) return;

}

Public void (String nam) {

Super (name);

Keword=getToken ();

If (keyword compareTo (««) = = 0 { paragraph = new PARAGRAPH (getNewName ()); header = new HEADER (getNewName ()); table = new TABLE (getNewName ());

}; keyword = getToken (); if (keyword compareTo (««) = = 0) return;

}

}

Фактично, такий демон є конструктором класу HTML, а запуск конвертора здійснюється з допомогою оператора створення нової об'єкта цього класса:

HTML currPage = new HTML (get_new_name ());

У цьому будуть рекурсивно викликатися конструктори інших класів (на верхньому рівні це HEAD, BODY), що, зрештою, призведе до побудові безлічі фреймов-экземпляров, які мають анализируемую HTML- страницу.

Одержання корисною надалі бази знань передбачає подальшу семантичну інтерпретацію фреймового уявлення та побудова в кінцевому підсумку семантичної мережі, що відбиває сенс вихідного Інтернет — документа.

Список використаних источников:

1) Т. А. Гаврилова, В. Ф. Хорошевский «Бази знань інтелектуальних систем», підручник, Санкт-Петербург, «Пітер», 2001

2) internet

3) internet

4) internet

ПоказатьСвернуть
Заполнить форму текущей работой