Генерация формальных описаний научных статей для информационных систем
Анализ и оценка одного из подходов к разработке информационной системы генерации формальных описаний научных статей. Исследование принципов функционирования такой системы, а также алгоритмов автоматического создания локальной базы данных цитирования.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | доклад |
Язык | русский |
Дата добавления | 18.01.2018 |
Размер файла | 205,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
ГЕНЕРАЦИЯ ФОРМАЛЬНЫХ ОПИСАНИЙ НАУЧНЫХ СТАТЕЙ ДЛЯ ИНФОРМАЦИОННЫХ СИСТЕМ
О.О. Дяченко (dyachenko.oleg@gmail.com)
Новосибирский Государственный Университет
Ю.А. Загорулько (zagor@iis.nsk.su)
Институт систем информатики
им. А.П. Ершова СО РАН,
Новосибирск
Ключевые слова и выражения: библиографическая ссылка, база данных цитирования, формальное описание научной статьи, шаблон, маркер, конструктор шаблонов, алгоритм разбора цитаты.
В докладе рассматривается подход к разработке системы генерации формальных описаний научных статей. Обсуждаются принципы функционирования такой системы, а также алгоритмы автоматического создания локальной базы данных цитирования. Настройка системы обеспечивается встроенным конструктором шаблонов разбора библиографических ссылок.
Введение
Постоянно возрастающие объемы электронных архивов научных статей требуют удобных для пользователя средств навигации и доступа к статьям, представленным в этих архивах. В настоящее время уже недостаточно просто предоставить пользователю файл статьи, необходимо обеспечить его информацией о её содержании и связях с другими библиографическими источниками. Этим целям могут служить базы данных цитирования (или БД библиографических ссылок).
При построении базы данных цитирования необходимо решать следующие задачи:
Определение основных данных о статье (название, авторы, аннотация, ключевые слова).
Выделение списка литературы из текста статьи и разбор его на составные элементы.
Добавление идентифицированных элементов списка литературы в базу данных цитирования.
В настоящее время существует несколько подходов к созданию баз данных цитирования, перечислим наиболее значимые из них:
1. Модель универсальной базы данных цитирования, предложенная Дэвидом Сонгом [Сонг, 2003]. Согласно этой модели все публикации должны быть описаны в стандартном формате. Ссылки на цитаты (библиографические ссылки) должны даваться в XML-документе, построенном согласно определенной структуре.
2. Разработанная исследовательским институтом корпорации NEC автономная система индексирования цитат ResearchIndex [Lawrence et al., 1999], автоматически индексирующая публикации по информатике, обнаруженные в Web.
3. Менеджеры ссылок (Reference managers) [BiblioScape 8, 2010; I, Librarian, 2010; Mendeley Desktop, 2010], позволяющие пользователям, как правило, авторам публикаций или исследователям, создавать и использовать свои локальные базы данных цитирования.
Каждый из перечисленных подходов имеет свои достоинства и недостатки. В первом из них вся «работа» возложена на автора или издательство, во втором наоборот - ручной труд практически исключен, но при этом ухудшается качество поиска, так как некоторые атрибуты статьи (например, автор или заголовок) не всегда правильно извлекаются из текста.
Составление больших БД цитирования вручную достаточно трудоемко и не всегда возможно, поэтому предпринимаются попытки автоматизировать этот процесс. Одному из таких подходов и посвящен данный доклад.
1. Подход к автоматизации обработки текста статьи
1.1 Основные определения
Введем несколько базовых понятий [Захарова, 2003], необходимых для описания алгоритма.
Цитата - элемент списка литературы.
Значимая часть текста - часть текста, о которой с высоким уровнем уверенности известно, что она содержит необходимую для описания текста информацию. информационный генерация научный статья цитирование
Полем (цитаты или некоторой значимой части текста) будем называть компонент цитаты или некоторого значимого отрывка текста, представленный в тексте или цитате своим значением, образуя пару <атрибут - значение>. Примеры: автор, заголовок.
Подполем будем называть составляющую часть сложного поля. Пример: поле цитаты «страницы» со значением «С. 251-256» содержит подполя: «признак поля» - «С.», «начальная страница» - «251», «конечная страница» - «256».
Индикатором (или маркером) будем называть слова или словосочетания, которые характерны для значений или признаков некоторого поля и позволяют однозначно восстановить пару «поле - значение». Как правило, набор маркеров для некоторого поля - это набор значений подполя «признак поля». Пример: «http://» является маркером для URL в тексте.
1.2 Формальное представление статьи
Как уже упоминалось выше, всякое поле в цитате представлено своим значением, по этой причине цитату можно описать набором пар «атрибут - значение». Сама же обрабатываемая статья (см. Рис.1) содержит не только поля, она еще несет в себе набор отношений «ссылается на», связывающих ее с цитатами.
Рис.1. Формальное представление статьи
1.3 Обработка текста статьи
Обработку текста статьи можно разделить на несколько этапов:
Выделение вводной части текста, содержащей название статьи, ее авторов, ключевые слова и аннотацию.
Определение основной информации о статье по ее вводной части.
Выделение списка цитированной литературы из текста статьи.
Разбор списка, полученного в п.3 на отдельные цитаты.
Синтаксический разбор каждой из цитат, полученных в п.4.
Выделение вводной части текста статьи (далее шапки) производится на основе следующих посылов:
Предполагается, что вся основная информация о статье находится в ее первых строках.
Ключевые слова и аннотация находятся после авторов и названия.
На основе этих предположений были построены следующие методы отделения вводной значимой части текста:
Если имеются индикаторы начала первой главы в статье, как правило, это слова «Введение» или «Introduction», то часть текста до строки с этим индикатором отделяется как шапка.
Если имеются маркеры ключевых слов, такие как «Ключевые слова» или «Keywords», то часть текста, включая эту строку, считается шапкой.
В ходе изучения представительного множества научных статей, были выявлены конструкции-индикаторы для определения аннотации: как стандартные («Аннотация» или «Abstract»), так и используемые в определенной форме словосочетания, например, «статья содержит», «в работе рассматривается» и др. Здесь выделение шапки происходит аналогично п.2.
Пользуясь набором примитивных шаблонов для определения автора статьи, как например, «Фамилия И.О.» или «Фамилия Имя О.», можно определить строки, содержащие имена авторов.
В случае, если ни один из предложенных методов не отделяет шапку, то предполагается, что либо это не текст статьи, либо оформленная не по стандарту статья. Отделение начальной части в таком случае нужно сделать вручную. Дальнейшие шаги обработки текста будут продолжены, поскольку список литературы все равно может присутствовать в тексте.
После того, как шапка отделена, при помощи тех же шаблонов и маркеров происходит определение основных данных о статье.
Значимая часть текста со списком цитируемой литературы (далее хвост), как правило, находится в конце статьи, за исключением случая, когда статья содержит приложения, помещаемые после списка литературы. По этой причине выделение списка литературы разбивается на два этапа: отделение «сверху», т.е. нахождение первой строки списка, и отделение «снизу» - последней строки.
Выполнение отделения «сверху» - задача сравнительно более простая, чем отделение «снизу», ввиду того, что имеется ряд характерных признаков, по которым можно отыскать первую строку списка:
Существует набор маркеров, однозначно определяющих начало списка литературы: «Источники», «Список использованной литературы», «References» и др.
Список литературы обычно содержит очень много конструкций, подходящих под поле «автор», например, «Фамилия И.О.».
В случае, если подобные методы не отделяют никакой список литературы, делается вывод, что его либо нет, либо имеются серьезные ошибки в его описании. В последнем случае применяется ручное отделение «хвоста».
Отделение «снизу» применяется уже к отделенной «сверху» части текста и проводится на основе следующих эвристических признаков - список литературы заканчивается, если выполнено одно из условий:
Если в списке имеется нумерация, тогда список отделяется однозначно.
Нашлись две подряд идущих «пустых» строки (предполагается, что цитаты идут одна за другой).
Если «пустых» строк нет, значит, вся отделенная «сверху» часть является списком цитат.
После выделения списка литературы из текста его необходимо разделить на отдельные цитаты. В работе [Захарова, 2003] был предложен метод поиска начала цитаты по шаблону <перевод строки><номер цитаты><точка>, но этого, как показывают и практика, и многочисленные правила оформления библиографических ссылок, недостаточно.
Поэтому в дополнение к этому методу используются следующие методы разделения списка литературы на отдельные цитаты:
Разделение цитат на основе нумерации (это основной метод, так как большинство списков литературы нумеруется). При этом ведется счетчик цитат, что позволяет свести ошибки к минимуму.
Определение начала цитаты по комбинации полей «Фамилии авторов» + «год». В некоторых статьях библиографические ссылки именуются с помощью этой комбинации, например, «Guarino, 1998». Поэтому такое сочетание может служить основанием для определения начала цитаты.
Если строка начинается с комбинации слов, соответствующей полю «автор», то эта комбинация отбирается как начало ссылки.
Как показали эксперименты, этих методов достаточно для успешного отделения шапки и хвоста приблизительно у 95% статей.
2. Синтаксический разбор цитаты при помощи шаблонов
Под синтаксическим разбором цитаты [Захарова, 2003] мы будем понимать определение полей, входящих в нее, и нахождение их значений.
Согласно нашему подходу, синтаксический разбор осуществляется путем сопоставления цитаты различным шаблонам. В случае, если цитата подходит под какой-либо шаблон, то указанным в шаблоне полям ставится в соответствие их текстовое значение.
Каждый шаблон описывается упорядоченным набором блок-полей или символьных блоков.
<шаблон> ::= {<блок-поле>|<симв.блок>}+
Блок-поле в записи шаблона представляют собой имя поля, заключенное в угловые скобки. Определение в цитате значения некоторого блок-поля происходит при помощи других шаблонов (будем называть их частичными) путем нахождения им соответствий в цитате.
Частичные шаблоны описываются на языке PCRE (Perl Compatible Regular Expressions) [PCRE, 2010]. Редактирование и создание их требует от пользователя хорошего знания этого языка. Пример частичного шаблона «Фамилия И.О.» поля <Автор>:
[A-ZА-Я][a-zа-я]?[\'\-]?[A-ZА-Я]?[a-zа-я]+\s[A-ZА-Я]\.[A-ZА-Я]\.
В цитате может быть как один, так и несколько элементов, соответствующих указанному полю (например, у рассматриваемого источника может быть несколько авторов), при этом одно блок-поле может выделять из цитаты несколько значений этого поля.
В синтаксическом разборе мы используем следующие блок-поля: «Автор», «Название», «Год», «Название журнала», «Том», «Выпуск», «Стартовая страница», «Конечная страница», «URL» и другие.
Символьные блоки - это набор символов, как правило, присутствующий в шаблоне для описания характерных для библиографической ссылки элементов. Например, согласно [ГОСТ 7.1-84, 1984] название статьи и название журнала в библиографической ссылке разделяются комбинацией «//». Символьные блоки располагаются в шаблоне между блок-полями.
Синтаксический разбор цитаты можно разделить на три этапа:
Нормализация цитаты - это устранение из цитаты незначимых символов, приведение ее к виду, удобному для сопоставления с шаблонами.
Поиск цитаты в уже имеющейся библиографической базе данных.
Применение шаблонов.
Нормализация цитаты в предлагаемом нами варианте включает в себя:
Удаление всех повторяющихся пробелов.
Удаление и исправление некоторых комбинаций символов.
Приведение значений некоторых полей к удобному для сопоставления виду.
Замена сокращений на полные варианты слов [ГОСТ 7.12-93, 1994].
Наличие этого этапа необязательно, но в ряде случаев улучшает качество разбора цитаты.
После нормализации происходит проверка совпадения значений полей цитаты с уже имеющейся в библиографической базе данных информацией: фамилиями авторов, названиями и др. Если цитата уже имеется в базе, то она определяется однозначно, в противном случае делается попытка ее разбора с помощью шаблонов.
Разбор включает следующие действия:
Определение типа цитаты. Используется несколько типов цитат: журнальная статья (основной), труды конференций, книги, электронные источники, серийные издания. Каждому из типов соответствуют свои наборы полей, которые могут входить в ссылку. По их наличию и определяется тип цитаты.
Применение шаблонов в последовательности, зависящей от типа цитаты. Каждый из шаблонов соответствует определенному типу ссылки, поэтому с целью скорейшего и более точного разбора ссылки в первую очередь применяются шаблоны, соответствующие данному типу ссылки, а затем все остальные.
Отделение данных при помощи частичных шаблонов. Если никакой из имеющихся шаблонов не соответствует цитате, то делается попытка обнаружить хоть какую-нибудь информацию о ссылке при помощи частичных шаблонов.
Применение каждого шаблона происходит по следующему алгоритму:
Если в шаблон входят символьные блоки, проверяется их наличие и правильная последовательность в ссылке, иначе - переход к следующему шаблону.
Каждая из частей цитаты, заключенная между символьными блоками, проверяется на соответствие блок-полям, стоящим в шаблоне между ними, в случае несоответствия - переход к следующему шаблону.
Если всем полям установлены соответствия, то цитата считается разобранной.
Важным в описанном выше алгоритме является решение пункта 2.
Если в шаблоне нет символьных блоков, первым проверяется наличие блок-полей, соответствующих дополнительной информации, например, такой как «Выпуск», «Том». Если такие блок-поля отсутствуют в ссылке или находятся в неправильной последовательности, то отбор прекращается, иначе происходит переход к первостепенным блок-полям: «Автор», «Название», «Источник».
Поиск начинается с поля «Автор». Для него имеется широкий спектр шаблонов, позволяющих извлекать данные об авторах с высокой долей точности:
<Автор> ::= <Фамилия И.О.> |<И.О.Фамилия> |…
Далее, учитывая положение остальных первостепенных полей относительно поля «Автор», определяются их значения.
В качестве примера, рассмотрим применение к библиографической ссылке «Загорулько Ю.А., Боровикова О.И. Технология построения онтологий для порталов знаний по гуманитарным наукам // Труды Всероссийской конференции с международным участием “Знания-Онтологии-Теории” (ЗОНТ-07). Новосибирск, 2007. Т.1, С.191-200.» следующих трех шаблонов:
1: <Автор><Название>//<Источник>:<Выпуск><Год>
2: <Автор><Название>//<Источник><Том><Год>
3: <Автор><Название>//<Источник><Город><Год> <Том> <Страницы>
Первый шаблон отбрасывается ввиду отсутствия символьного блока «:» в тексте ссылки. Происходит переход ко второму шаблону. Его часть <Источник><Том><Год> справа от символьного блока «//» применяется к части цитаты «Труды Всероссийской конференции с международным участием “Знания-Онтологии-Теории ”(ЗОНТ-07). Новосибирск, 2007. Т.1, С.191-200.», но ввиду отличного порядка значений блок-полей в цитате, шаблон отбрасывается.
Третий шаблон срабатывает правильно, отделяя все элементы ссылки.
3. Программная реализация
На данный момент создана рабочая версия системы, использующая описанные методы и включающая в себя: пользовательский интерфейс, позволяющий редактировать и создавать формальные описания статей; конструкторский интерфейс, позволяющий редактировать полные и частичные шаблоны; редактор базы данных цитирования.
Система позволяет проводить обработку статьи в трех режимах: ручном, автоматическом и полуавтоматическом.
Полуавтоматический режим в данном случае - это совместное применение автоматического (выполняется автоматическая обработка текста) и ручного (данные предлагаются пользователю на редактирование в отдельном окне).
В ручном режиме в окно выводится полный текст статьи, в котором пользователь может при помощи выделения цветом пометить значимую информацию о статье, выделить элементы списка литературы и таким же образом отметить значения полей в них. Данный способ ручного создания формального описания статьи в отличие от простого ввода текста быстрее, нагляднее и удобнее. Дополнительную информацию, не представленную в тексте, пользователь может ввести посредством редактирования таблицы в главном окне программы.
В автоматическом режиме статья обрабатывается и помещается в таблицу, выводимую в главном окне программы.
Пользователь может управлять работой программы в автоматическом режиме путем включения/выключения некоторых шаблонов, а также редактирования полных и частичных шаблонов при помощи конструктора шаблонов. Полные шаблоны пользователь может задать, используя в качестве конструктивов уже имеющиеся в системе частичные шаблоны. Вид полных шаблонов показан в примерах из раздела 2.
Тестирование системы проводилось на материалах конференции «Диалог» за 2006-2009 гг. [Диалог, 2009].
Заключение
В докладе предложены принципы построения и алгоритмы работы системы, нацеленной на генерацию формальных описаний научных статей и создание локальной базы данных цитирования. Ввиду того, что правила оформления статей подвержены частым изменениям, обеспечивается настройка системы при помощи изменения набора шаблонов обработки.
В дальнейшем функциональность системы будет расширена за счет реализации ряда возможностей, характерных для менеджеров ссылок, как например, вставка цитат, имеющихся в базе данных ссылок, в документы в требуемых форматах, а также визуализации связей между статьями и авторами, обработки документов, представленных в других форматах (*.pdf, *.html, *.doc и др.), и поддержки конвертирования базы данных цитирования в стандартные форматы, например, XML, BibTex.
Благодарности
Работа выполнена при финансовой поддержке РФФИ (проект № 09-07-00400).
Список литературы
[ГОСТ 7.12-93, 1994] ГОСТ 7.12-93. Библиографическая запись. Сокращение слов на русском языке. Общие требования и правила. - М., 1994.
[ГОСТ 7.1-84, 1984] ГОСТ 7.1-84. Библиографическое описание документа. Общие требования и правила составления. - М., 1984.
[Диалог, 2009] Материалы конференции «Диалог». - http://dialog-21.ru.
[Захарова, 2003] Захарова И.В. Методы автоматического разбора списка цитат в научных статьях на составляющие библиографические элементы для построения базы данных цитирования. - Челябинск, 2003.
[Сонг, 2003] Дэвид Сонг. Новая модель базы данных цитирования на языке XML с использованием XQuery в качестве поискового языка // Сборник трудов десятой юбилейной международной конференции "Крым 2003. Библиотеки и ассоциации в меняющемся мире: новые технологии и новые формы сотрудничества". Украина, Крым, 2003.
[BiblioScape 8, 2010] BiblioScape 8. - www.biblioscape.com.
[I, Librarian, 2010] I, Librarian. URL: www.bioinformatics.org/librarian.
[Lawrence et al., 1999] Lawrence, S., Giles, C.L. & Bollacker, K. (1999). Digital libraries and autonomous citation indexing. IEEE Computer. 32(6).
[Mendeley Desktop, 2010] Mendeley Desktop. URL: www.mendeley.com.
[PCRE, 2010] Perl Compatible Regular Expressions (PCRE). - http://pcre.org.
Размещено на Allbest.ru
...Подобные документы
Выделение сущностей для создания структуры хранения данных. Выбор технологии ввода данных таксационных описаний. Разработка программного обеспечения для ввода данных таксационных описаний и его реализация. Безопасность геоинформационной системы.
дипломная работа [2,1 M], добавлен 20.07.2012Исследование основных преимуществ и недостатков применения серверных технологий динамической генерации HTML-страниц JSP и ASP.Net. Разработка и автоматизация информационной системы учета внешнеэкономической деятельности ЗАО "Крафт Фудз Украина".
статья [23,3 K], добавлен 27.11.2010Разработка и анализ интерфейса пользователя базы данных. Ознакомление с процессом поэтапного создания проекта и добавления файла локальной базы данных. Исследование и характеристика главных принципов программирования функциональной части интерфейса.
дипломная работа [3,0 M], добавлен 27.09.2017Исследование методов и способов разработки информационных систем. Автоматизация деятельности продовольственного магазина. Проектирование логической схемы информационной системы. Разработка модели базы данных и структуры вычислительно-локальной сети.
курсовая работа [389,2 K], добавлен 16.03.2017Характеристика существующих технологий для разработки информационной системы. Проектирование реляционной базы данных информационной системы учета научных публикаций в среде Adobe Dreamweaver. Оценка функциональных возможностей системы учета публикаций.
дипломная работа [2,0 M], добавлен 12.08.2015Разработка системы, автоматизирующей ведение базы данных библиотеки. Основные требования к программному обеспечению. Модели локальных представлений. Архитектура информационной системы. Хранимые процедуры. SQL-скрипт создания базы данных. Текст программы.
дипломная работа [2,2 M], добавлен 28.01.2014Разработка структуры базы данных. Этапы разработки информационной системы. Моделирование сигналов в MatLab. Обмен данными в SQL-сервером. Генерация схемы базы данных для целевой СУБД. Редактирование параметров таблицы. Установка параметров генерации.
курсовая работа [5,3 M], добавлен 01.02.2013Обзор существующих подходов в генерации музыкальных произведений. Особенности создания стилизованных аудио произведений на основе современных нейросетевых алгоритмов. Выбор средств и библиотек разработки. Практические результаты работы алгоритма.
дипломная работа [4,0 M], добавлен 13.10.2017Задачи, функции и структура филиала университета. Оценка информационных потоков и UML-моделирование. Анализ структуры информационной системы и системы навигации. Проектирование базы данных, физическая реализация и тестирование информационной системы.
дипломная работа [6,0 M], добавлен 21.01.2012Создание сайта в сети Интернет для информирования студентов и преподавателей о проходящих конференциях. Разработка модели "как будет" с учетом внедрения системы автоматизации. Описание сценариев элементарных функций и физической модели базы данных.
курсовая работа [2,4 M], добавлен 19.12.2015Автоматизация промежуточного и финального контроля результатов обучения учащихся различных учебных заведений. Тестирование, основанное на диалоге вычислительной системы с пользователем. Реализация приложения генерации тестов из базы данных на языке РНР.
курсовая работа [234,1 K], добавлен 04.08.2009Исследование современных технологий и средств разработки. Выявление и оценка информационных потоков и структуры информации. Выбор необходимой информации для информационной системы. Проектирование и анализ системы навигации. Проектирование базы данных.
дипломная работа [2,8 M], добавлен 21.01.2012Создание набора классов, реализующих функции генерации метаданых для заданного файла данных спутника MTSAT-1R. Существующие методы решения. Реализация алгоритма получения необходимых полей с нужными данными. Разработка структуры базы данных инвентаря.
курсовая работа [38,6 K], добавлен 17.07.2009Исследование системы функционирования зоомагазина "Дракоша" и схематическое описание бизнес-процессов предприятия. Генерация кода и разработка автоматизированной информационной системы магазина на языке программирования С+. Расчет диаграмм автоматизации.
курсовая работа [841,8 K], добавлен 07.08.2013История создания компьютерных информационных систем. Развитие системы управления базой данных. Принципы и правила построения и функционирования распределённых баз данных (РБД). Проблемы и особенности РБД. Использование Internet/Intranet технологий.
курсовая работа [1,1 M], добавлен 06.02.2011Опыт создания автоматизированных информационных систем. Разработка автоматизированной информационной системы для строительного предприятия ООО "СТК Дело". Этапы проектирования базы данных для учета хранения строительных материалов на складе предприятия.
курсовая работа [1,7 M], добавлен 15.03.2015Определение и примеры формальной системы. Понятия языка и метаязыка. Интерпретация формальной теории. Понятие изоморфизма в терминах теории формальных систем. Примеры продукционных правил, теория чисел. Исчисление предикатов первого и второго порядка.
лекция [201,4 K], добавлен 19.12.2013Понятие информационной системы. Этапы развития информационных систем. Процессы в информационной системе. Информационная система по отысканию рыночных ниш, по снижению издержек производства. Структура информационной системы. Техническое обеспечение.
реферат [340,3 K], добавлен 17.11.2011Понятие информационной системы и баз данных. Критерии классификации автоматизированных информационных систем. Примеры простых и сложных запросов. Характеристика и анализ возможностей справочно-правовых систем "Кодекс", "Консультант Плюс", "Гарант".
курсовая работа [40,3 K], добавлен 16.05.2017Наличие экономической информационной системы. Матрица организационных проекций. Разработка системы базы данных. Современные CASE-средства. Основные этапы разработки информационных систем. Абсолютный показатель и индекс снижения стоимостных затрат.
курсовая работа [1,1 M], добавлен 14.03.2011