Реферат: Разработка программных средств конвертирования HTML-текстов в семантические сети

--PAGE_BREAK--Что такое фреймы


Термин фрейм был предложен в 70-е годы для обозначения структуры знаний для восприятия пространственных сцен. Фрейм – это абстрактный образ для представления некоего стереотипа восприятия. Фреймом также называется и формализованная модель для отображения образа.

Различают:

-                      фреймы-образцы (прототипы) – хранятся в базе данных

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

-                      фреймы-структуры – используются для обозначения объектов и понятий

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

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

-                      фреймы-ситуации
Обычно структура фрейма представляется как список свойств:
(ИМЯ ФРЕЙМА:

(имя 1-го слота: значение 1-го слота),

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

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

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

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

-                      по умолчанию от фрейма-образца (значение default)

-                      через наследование свойств от фрейма, указанного в слоте АКО (a kind of)

-                      по формуле, указанной в слоте

-                      через присоединенную процедуру

-                      явно из диалога с пользователем

-                      из базы данных.
Возможности представления знаний на базе языка
HTML


Рассмотрим, каким образом HTML-документ может быть представлен в виде семантической сети. Нам необходимо выделить те конструкции языка, которые могут быть полезными для решения этой задачи.

Прежде всего, к числу таких конструкций относятся теги типа <TITLE>, <META…> и <A…>. Первый тег важен для фиксации семантики всего HTML– документа, так как текст, заключенный между тегами <TITLE> и </TITLE> чаще всего отражает его назначение или содержание.

Теги типа <META…> вводят имена атрибутов и их значения с помощью параметров name=”…” и content=”…”, а ссылки и якоря фиксируют отношения между частями одного документа или между отдельными документами.

Теги типа <META…> явно вводят семантику значений атрибутов, одинаково интерпретируемых броузерами за счет ключевых слов, которые могут быть значениями параметра name.

Теги типа <A…> фиксируют лишь факт наличия отношения между ссылкой и ее якорем. В некоторых случаях этому отношению можно «приписать» имя SeeAlso(смотри также), в других случаях – ConsistOf, PartOfили иное подходящее имя, но семантика данной конструкции имплицитна, а встроенная интерпретация ее связана лишь с переходом по ссылке и визуализацией начала соответствующего фрагмента документа или загрузкой нового документа для просмотра.

Другими полезными конструкциями являются заголовки разделов и подразделов (тексты между тегами <Hi> и </Hi>), списки, таблицы и другие элементы языка.

Но в целом, выделение значимых для семантической интерпретации конструкций является экспертной задачей, решаемой каждый раз автором соответствующей Интернет — публикации по-своему. Но существуют определенные стереотипы. Например, на страницах Интернет – магазинов каталоги товаров в большинстве случаев представляются таблицами или списками, либо «зашиты» в чувствительные для щелчка мыши графические объекты. Это характерно и для индексов на сайтах машин поиска.

Рассмотрим в качестве примерастраницу официального сайта компании Microsystems LTD, расположенную в сети по адресу www.analyst.ru. На этой странице располагается по информация по программе TextAnalyst 2.0. Экранная форма этой страницы показана на рисунке.

<img width=«623» height=«434» src=«ref-1_407539320-55470.coolpic» v:shapes="_x0000_i1025">
Фрагмент соответствующего HTML – текста представлен ниже:
<html>

<head>
---------------------------------
<meta name=«KEYWORDS» content=«Microsystems, TextAnalyst, text mining, knowledge discovery, textmining, e-commerce, classification, semantic analysis, neuro networks, natural linguistc, text processing, Микросистемы, анализ текстов, база знаний, документооборот, классификация, семантический анализ, нейронные сети, натуральные языки, текст процессор»>

<meta name=«GENERATOR» content=«Microsoft FrontPage 4.0»>

<meta name=«ProgId» content=«FrontPage.Editor.Document»>

<title>Microsystems, Ltd</title>

<link rel=«stylesheet» type=«text/css» href=«style.css»>

</head>
-----------------------------------------------
<body topmargin=«0» leftmargin=«0»>

<table border=«0» cellspacing=«0» cellpadding=«0»>

    <tr>

   <td valign=«top» width=«239»><a href="/index.php?lang=eng"><img

border=«0» src="/images/top_logo.gif"></a></td>

   <td valign=«top» align=«left»>

     <table border=«0» cellspacing=«0» cellpadding=«0»>

              <tr><td width=«100%»><img border=«0» src="/images/top_up.gif">

              </td></tr>

              <tr> <td width=«100%»>

   <table border=«0»  cellspacing=«0» cellpadding=«0» width=«100%»

bgcolor="#001395" height=«23»>

                  <tr><td width=«100%»>
-------------------------------------
                      </table>

                      </td></tr>

                    </table>

                            <!-- end menu -->
----------------------------------------------
        <!-- start menu here -->

             <table border=«0» cellspacing=«0» cellpadding=«0» width=«100%»>

        <tr> <td width=«241» valign=«top» align=«left»>

       <table border=«0» width=«100%» cellspacing=«0» cellpadding=«0»>

              <tr><td width=«100%»>

             <p> </p>

        <p align=«center»>                

  <img border=«0» src="/images/10thyear_s.gif" width=«210» height=«52»>

         </p>

                </td></tr>

              <tr><td width=«100%» valign=«top» align=«left»>

                <!-- left menu-->

         <table border=«0» width=«218»>

        <tr><td width=«210» bgcolor="#DDDDDD" valign=«top» align=«left»>

                      <p align=«right»><b>Products</b></td>

                  </tr>

 <tr onmouseout=«this.style.backgroundColor='transparent'»

onmouseover=«this.style.backgroundColor='#6B8ADE'»>

                              <td width=«210» align=«right»>

  <a href="/index.php?lang=eng&dir=content/products/&id=body&left=

content/products/menu.txt" target="_self">

 <span style=«color: #000000; text-decoration: none»>

            TextAnalyst SDK</span></a>

     </td></tr>

<tr><td width=«210» align=«right»>

<p align=«right»><img border=«0» src="/images/bd14580_.gif" width=«12»

height=«12»>

TextAnalyst</p>

</td></tr>

<tr onmouseout=«this.style.backgroundColor='transparent'»

onmouseover=«this.style.backgroundColor='#6B8ADE'»>

<td width=«210» align=«right»>

<a href="/index.php?lang=eng&dir=content/products/&id=

tref&left=content/products/menu.txt

" target="_self">

<span style=«color: #000000; text-decoration: none»>

Text Referent</span></a>

</td></tr>

<!-- end left menu-->
----------------------------------------
            </table>

  <!-- end here -->

                     </td>

                     <!-- free space -->

                     <td valign=«top» align=«left»>

                         

                     </td>

                     <!-- end free space -->

                               

          <td valign=«top» align=«left» width=100% >

          <!-- content started here -->

           <table border=«0» cellspacing=«6» cellpadding=«0»>

           <tr> <td width=«100%» valign=«top» align=«left»>

<head>

<meta name=«DESCRIPTION» content=«TextAnalyst — personal text mining system»>

<meta name=«KEYWORDS» content=«TextAnalyst, personal, text mining»>

<title>TextAnalyst</title>

</head>

<div align=«left»>

  <table border=«0» align=«left» cellspacing=«4» cellpadding=«3»>

    <tr> <td valign=«top» align=«center» width=«250»>

        <p align=«center»> </p>

        <p align=«center»><a href=«cgi-bin/stat/loadfile.pl?file=ta_rus»>

        <img border=«0» src=«images/downloads.gif»></a></p>

        <p align=«center»>Получите бесплатную версию

        TextAnalyst</p>

        <table border=«0»>

          <tr><td width=«100%» bgcolor="#008000">

              <p align=«center» class=«menu»>

              <font color="#FFFFFF">Системныетребования</font></td> </tr>

          <tr><td width=«100%»>Intel-based PC</td> </tr>

          <tr> <td width=«100%»>Windows 9X, NT, 2000, Me</td> </tr>

          <tr> <td width=«100%» bgcolor="#C0C0C0">

              <p align=«center» class=«menu»>

       <font color="#FFFFFF">Технические характеристики</font></td>/tr>

          <tr><td width=«100%» valign=«top» align=«left»>

              <ul>

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

    <li>Максимальный объем анализируемой подборки  не ограничен и зависит от объема ресурсов компьютера и настройки TextAnalyst.</li>

     <li>Собственный объем TextAnalyst не превышает 5Мб.</li>

     <li>Форматы обрабатываемых файлов:</li>

     <li>*.txt (ANSI, DOS), *.rtf</li>

     <li>Экспорт информации  в форматы: *.txt,

       *.csw (электронные таблицы).</li>

              </ul> </td></tr>

        </table>
-----------------------------------
      <h1 align=«center»>

      <img border=«0» src="../../images/octopus_shaden.gif" align=«left» width=«99» height=«112»>TextAnalyst 2.0 </h1>

        <p align=«center»><b>персональная система автоматического анализа текста </b></p>

        <p>TextAnalyst разработан в качестве инструмента для анализа содержания текстов, смыслового поиска информации, формирования электронных архивов, и предоставляет пользователю следующие основные возможности: </p>

        <ul>

          <li>анализа содержания текста с автоматическим формированием семантической сети с гиперссылками — получения смыслового портрета текста в терминах основных понятий и их смысловых связей; </li>

          <li>анализа содержания текста с автоматическим формированием тематического древа с гиперссылками — выявления семантической структуры текста в виде иерархии тем и подтем; </li>

          <li>смыслового поиска с учетом скрытых смысловых связей слов запроса со словами текста; </li>

          <li>автоматического реферирования текста — формирования его смыслового портрета в терминах наиболее информативных фраз; </li>

          <li>кластеризации информации — анализа распределения материала текстов по тематическим классам;</li>

          <li>автоматической индексации текста с преобразованием в гипертекст; </li>

          <li>ранжирования всех видов информации о семантике текста по «степени значимости» с возможностью варьирования детальности ее исследования; </li>

          <li>автоматического/автоматизированного формирования полнотекстовой базы знаний с гипертекстовой структурой и возможностями ассоциативного доступа к информации; </li>

        </ul>

        <p align=«center»><b>Не пугайтесь обилия возможностей!</b></p>

        <p align=«center»><i>Работа с TextAnalyst покажется Вам неожиданно простой и приятной, а его аналитические способности сэкономят массу полезного времени...

        </i></p></td> </tr>

  </table></div></td> </tr>

            </table>
----------------------------------
</body>

</html>
Сравнив приведенные экранную форму и HTML-текст, видим, что семантически значимыми элементами данного документа являются:

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

-               все меню организованы в виде таблиц (тег <TABLE>), в ячейках которых (тег <TD>)расположены ссылки (тег <A href …>), с помощьюкоторых можно перейти к другой интересующей информации. Например, можно получить информацию о продуктах данной компании, выбрав их название из левого меню.

-               текст описания возможностей программы TextAnalyst организован в виде списка (тег <li>).

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

Решение этой проблемы в настоящее время связано с использованием двух подходов. Первый подход предполагает, что семантическая разметка документа выполняется вручную его автором на основе специальных метатегов, а второй подход связан с автоматическим или полуавтоматическим преобразованием исходного текста в специальное семантическое представление. Целесообразно конвертировать HTML-тест в более удобную форму представления для дальнейшей обработки.
TextAnalyst 2.0 –
персональная система автоматического анализа текста

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

§  анализ содержания текста с автоматическим формированием семантической сети с гиперссылками — получение смыслового портрета текста в терминах основных понятий и их смысловых связей;

§  анализ содержания текста с автоматическим формированием тематического древа с гиперссылками — выявление семантической структуры текста в виде иерархии тем и подтем;

§  смысловой поиск с учетом скрытых смысловых связей слов запроса со словами текста;

§  автоматическое реферирование текста — формирование его смыслового портрета в терминах наиболее информативных фраз;

§  кластеризация информации — анализ распределения материала текстов по тематическим классам;

§  автоматическая индексация текста с преобразованием в гипертекст;

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

§  автоматическое/автоматизированное формирование полнотекстовой базы знаний с гипертекстовой структурой и возможностями ассоциативного доступа к информации.
Рассмотрим на нашем примере работу этой программы. После запуска TextAnalyst, необходимо открыть текстовый файл, в котором расположен HTML-документ нашего примера. Программа выполняет анализ предложенного текста и выдает результаты (см. рисунок)

Изучив предложенный текст, TextAnalyst формирует сеть наиболее значимых понятий, содержащихся в данном тексте. В такую включены те термины текста, которые несут основную смысловую нагрузку. Т.о. сеть позволяет отбросить несущественную информацию и представить содержание текста в сжатом виде. Каждое понятие, появляющееся множество раз в различных частях текста, в сети представлено единственным узлом. Различные формы слов для отображения в один узел сети представляются к общей грамматической форме.
<img width=«622» height=«446» src=«ref-1_407594790-60840.coolpic» v:shapes="_x0000_i1026">

Каждый элемент сети характеризуется числовой оценкой – смысловым весом. Связи между понятиями также характеризуются весами. Значение смыслового веса (от 1 до 100) показывает, насколько важную роль играет понятие для смысла всего текста, т.е. как много информации в тексте касается данного понятия. Максимальное значение, равное 100, говорит о том, что понятие является ключевым и представляет важнейшую тему текста. Маленькое, близкое к единице значение показывает, что соответствующая тема лишь вскользь упомянута в тексте и в нем очень мало информации, относящейся к данному понятию. Второе число, стоящее перед смысловым весом, ближе к раскрытому узлу, представляет вес связи от понятия в вершине раскрытого списка к данному. Большое значение веса связи (близкое к 100) указывает на то, что подавляющая часть информации в тексте, касающаяся первого, касается в то же время и второго понятия. Малое (близкое к 1) значение означает, что первое понятие слабо связано со вторым и очень мало информации по первой теме касается в тоже время и второй.

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

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

В нашем примере реферат выглядит таким образом:
98  анализа содержания текста с автоматическим формированиемсемантической сети с гиперссылками— получения смыслового портрета текстав терминах основных понятий и их смысловых связей;

98  </li>            <li>анализа содержания текста с автоматическим формированиемтематического древа с гиперссылками— выявления семантической структуры текстав виде иерархии тем и подтем;

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

По умолчанию на экране отображаются предложения реферата с весами не менее 90.

Для рассматриваемого выше примераHTML-текста описания страницы Analyst.ruфрагменты семантической сети выглядят следующим образом:
<img width=«622» height=«473» src=«ref-1_407655630-28532.coolpic» v:shapes="_x0000_i1027">

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

Рассмотрим в качестве примера следующее подмножество HTML-языка, которое может быть задано следующими определениями:
HTML-text :: = <HTML> HEAD BODY </HTML>

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

TITLE :: = <TITLE> строка </TITLE>

META :: = <META name=«KEYWORDS» content="строка">

KEYWORDS :: = …

BODY :: = <BODY> HTML-BODY </BODY>

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

PARAGRAPH :: = <P> текст</P>

TABLE :: = <TABLE> TABLE-CELLS </TABLE>
    продолжение
--PAGE_BREAK--
еще рефераты
Еще работы по информатике