Educational Technology & Society 6(3) 2003 ISSN 1436-4522
Перспективы использования web-онтологий в учебном процессе
И.Л. Кафтанников, Коровин С.Е.
Южно-уральский государственный университет, Челябинск, Россия [email protected], [email protected]
АННОТАЦИЯ
В данной статье приводится краткий обзор языка web-онтологий (OWL - Web Ontology Language), как механизма представления и совместного использования знаний. Обсуждаются слабые (невысокая выразительность) и сильные (высокая эффективность совместного использования) стороны языка и делается вывод о перспективности его практического использования. Рассматриваются два базовых направления использования языка web-онтологий в учебном процессе. Первое направление охватывает построение иерархически организованных баз знаний курсов и дисциплины, являющихся информационной основой учебного процесса. Второе направление предполагает создание программных агентов для интеллектуального контроля знаний.
Ключевые слова
онтология, знания, OWL, контроль знаний.
Введение
В последние несколько лет беспрецедентное влияние интернет-технологий на все сферы применения вычислительной техники вызвало к жизни новую тенденцию, заключающуюся в переносе акцента с традиционных методов представления информации на представление информации в форме, удобной для ее использования в среде Интернет. В частности, очень бурно развивается технология Интранет, основная идея которой - построение информационной системы организации на базе web-протоколов и, таким образом, включение этой системы в Интернет. Все разработчики коммерческих СУБД уже включили и активно развивают поддержку импорта и экспорта данных с использованием технологии XML. Более того, вполне серьезно обсуждается использование XML, как основного формата хранения данных (выбор в пользу XML, если таковой будет сделан, приведет к очень серьезным изменением в технологии СУБД, поскольку изменит не только физический формат -с бинарного на текстовый, но и модель данных - с реляционной на иерархическую).
Данная тенденция затронула и сферу технологий искусственного интеллекта. Развитие технологии RDF на базе XML, позволило существенно упростить взаимодействие интересов специалистов и объединить специфические формы и форматы представлений объектов и процессов в таких предметных областях как представление знаний, обработка естественно-языковой информации, принятие решений, экспертные системы и др. на базе форматов интернет-технологий. Как показывает практика, сближение с интернет-технологиями практически любой научной сферы существенно ускоряет темпы ее развития, что подтверждается, в частности, наблюдаемой в данный момент вспышкой интереса к проблеме представления знаний. Одной из самых последних разработок в этой области, базирующейся на направлении Semantic Web, поддерживаемом www-консорциумом, является язык web-онтологий OWL.
Поскольку, знания являются неотъемлемой частью любого учебного процесса, возникает закономерный вопрос-каким образом можно использовать результаты этих исследований в интернет-технологиях обучения, когда предполагается опосредованное взаимодействие учителя и обучаемого посредством множества форм общения, предоставляемого интернет-технологиями. В данной статье приводится
краткий обзор языка OWL и обсуждаются перспективы его использования для информационной поддержки учебного процесса.
Обзор языка web-онтологий (OWL)
Из основ философии известно, что термин “онтология” используется для обозначения системы знаний, относящихся к окружающему нас миру (в противовес системе знаний о внутреннем мире человека). Другими словами, онтология - это наука о бытии, наука о природе вещей и взаимосвязях между ними. В контексте информационных технологий представления знаний, термином “онтология” можно определить некоторый механизм, способ, используемый для описания некоторой области знаний (предметной области), в частности - базовых понятий этой области и связей между ними. В приложении к web-технологиям, можно сказать, что основная цель онтологий заключается в представлении смысла понятий, используемых в конструкциях RDF (фактически, RDF - это язык общения программных систем, работающих в среде Интернет, а онтологии составляют его словарь-тезаурус). Для достижения этой цели язык web-онтологий должен решить следующие задачи:
- обеспечить такой синтаксис описания понятий, который был бы
достаточно удобен всем участникам взаимодействия в сети Интернет (и людям, и программным системам);
- обеспечить максимальную выразительность механизмов описания
понятий и связей между ними;
- обеспечить механизмы эволюции описаний и совместного
использования онтологий в среде Интернет.
Далее мы кратко рассмотрим, как решается каждая из этих трех задач в рамках языка OWL.
Поскольку язык OWL является составной частью системы технологий
Semantic Web, он, так же как и RDF, использует в качестве своего синтаксиса язык XML. Это позволяет решить первую задачу, так как теговые конструкции, активно используемые в высокоуровневых web-протоколах (языках HTML, XML), являются своего рода оптимальными соглашениями в настоящее время для форм представления информации, ориентированными одновременно и на программные системы, и на человека. Использование стандартного для WWW синтаксиса позволяет применять уже существующие xml-анализаторы для синтаксического разбора web-онтологий и сосредоточиться, тем самым, на анализе их семантики. Уже один этот факт стандартности синтаксиса языка OWL и его ориентированности на web, может нивелировать недостатки web-онтологий и явиться решающим при его выборе в качестве механизма представления знаний конкретной предметной области. Тем более, что современная наука и образование, так же как и другие сферы человеческой деятельности, подвергаются влиянию всеобщей глобализации. Стандарт www-консорциума на язык XML уже переведен на русский язык и доступен для ознакомления [Тим Брэй и др., 2000].
Решение второй задачи непосредственно связано с теориями представления знаний. На данный момент существует несколько подходов к описанию объектов и явлений окружающего мира и достаточно большее количество языков представления знаний, реализующих эти подходы. В языке web-онтологий используется в несколько упрощенном виде один из наиболее популярных (и интуитивно понятных) сегодня подходов - объектно-ориентированный метод описания окружающего мира. Базовые идеи языка OWL - свойства, классы, объекты и ограничения реализуют представление о мире, как о множестве сущностей (объектов), характеризуемых некоторым набором свойств. Эти сущности состоят между собой в определенных отношениях и объединяются по определенным признакам (свойствам и ограничениям) в группы (классы).
Создание онтологии начинается с описания иерархий классов понятий, составляющих данную предметную область. Вот небольшой фрагмент такого описания для онтологии “учебные заведения”:
<owl:Class М^ГО=”УчебноеЗаведение”/>
<owl:Class М^ГО=”Университет”>
<rdfs:subClassOf rdf:resource="#УчебноеЗаведение"/>
</owl:Class>
<owl:Class rdf:ID=”РоссийскийУниверситет”>
<rdfs:subClassOf rdf: resource="#У ниверситет"/>
</owl:Class>
Для того, что бы понятия предметной области были наполнены определенным смысловым содержанием, они должны характеризоваться конкретными наборами свойств и состоять в определенных связях друг с другом. Эту задачу в языке OWL решают механизмы свойств и ассоциированных с ними ограничений. Свойства подразделяются на два вида: свойства-характеристики и свойства-связи. Первые характеризует объекты (классы) и принимают в качестве своих значений данные определенных типов. Вторые ассоциирует объекты (классы) друг с другом и соответственно принимают в качестве своих значений объекты (классы). На свойства накладываются ограничения двух типов глобальные и локальные. К глобальным ограничениям относятся домены (классы, объекты которых могут обладать этими свойствами) и диапазоны (классы, объекты которых могут выступать в качестве значений этих свойств). Локальные ограничения накладываются на свойства в рамках определенного класса и могут еще более сужать диапазоны для свойств в рамках этого класса, определять мощность свойств и их виды. Далее приведен фрагмент описания свойств и их ограничений в онтологии “учебные заведения”:
<owl:Class М^ГО=”РегионМира”/>
<owl:Class М^ГО=”РегионРоссии”>
<rdfs:subClassOf rdf:resource="#РегионМира"/>
</owl:Class>
<owl:ObjectProperty М^ГО="РасположенВ">
<rdfs:domain rdf:resource="#Университет" />
<rdfs:range rdf:resource="#РегионМира" />
</owl:Obj ectProperty>
<owl: DatatypeProperty rdf :ID=" ГодОснования ">
<rdfs:domain rdf:resource="#Университет" />
<rdfs:range rdf:resource="&xsd;positiveInteger"/>
</owl:DatatypeProperty>
<owl:Class rdf:ID=”РоссийскийУниверситет”>
<rdfs:subClassOf rdf:resource="#Университет"/>
<rdfs:subClassOf>
<owl:Restriction>
<owl: onProperty rdf :resource="#РасположенВ "/>
<owl:allValuesFrom rdf:resource="#РегионРоссии" />
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
В этом фрагменте мы описали два свойства. Свойство-характеристика “ГодОснования” имеет в качестве ограничений: домен - класс “Университет” (это свойство может быть только у объектов данного класса) и диапазон - тип данных “целый положительный” (поскольку речь идет о годе основания университета). Свойство-связь “РасположенВ” имеет в качестве глобальных ограничений: домен -класс “Университет” и диапазон - класс “Регион” (данное свойство связывает университет с некоторым регионом). Кроме того, мы определили для этого свойства локальное ограничение, переопределив описание класса “РоссийскийУниверситет”. В контексте этого класса свойство “РасположенВ” имеет диапазон “РегионРоссии”.
Определив, таким образом, классы и свойства с ограничениями, мы имеем возможность описывать конкретные объекты. Например так:
<РоссийскийУниверситет М^ГО="ЮУрГУ" >
<ОснованВ rdf:datatype="&xsd;positiveInteger">1943</ОснованВ> <РасположенВ rdf:resource="#ЮжныйУрал"/>
</РоссийскийУниверситет>
Описав все классы, свойства, ограничения и объекты предметной области, мы получаем сложную систему иерархий, являющуюся основой для построения программных систем, способных осуществлять операции определенного интеллектуального уровня над информацией, содержащейся в онтологии. К этим операциям можно отнести, например, семантический поиск или определение целостности и достоверности информации на основе ограничений, заложенных в онтологии (последнее явно ассоциируется с автоматическим контролем знаний).
С точки зрения полноты выразительных возможностей язык OWL не может конкурировать со многими существующими языками представления знаний уже хотя бы потому, что в текущей версии не рассчитан на описание динамических явлений (его основа - это объекты и связи). В то же время тот факт, что этот язык является элементом стека web-протоколов, то есть, расположен “на гребне” развития информационных технологий, позволяет рассчитывать, что в ближайшее время ограничения на его выразительные возможности будут сняты.
Третья задача web-онтологий, связанная с поддержкой их развития и совместного использования, решается при помощи введения специальных механизмов в язык OWL. К ним, в частности, относятся механизмов описания версий онтологий и механизмы агрегирования данных, содержащихся в онтологиях. Первые позволяют описывать ссылки на предыдущие версии онтологии и изменения, сделанные в данной версии по отношению к предыдущей. Это позволяет прослеживать эволюцию онтологий, а так же оперировать онтологиями разных авторов для одной и той же предметной области. Механизмы агрегирования данных решают задачи объединения различных онтологий, размещенных в среде Интернет. В частности, задачи ссылок из одной онтологии на классы и объекты другой онтологии. Все это позволяет выстраивать онтологии в единую базу знаний, в которую в перспективе и должен превратится Интернет или, по крайней мере, Интранет-системы организаций. В этом случае, программные системы будут способны ориентироваться в глобальной сети и осуществлять различные интеллектуальные операции над размещенной в ней информацией.
Таков, в очень кратком изложении, язык описания web-онтологий (OWL). Наш обзор ставил своей целью скорее заинтересовать читателя новой технологией, нежели предоставить сколько-нибудь полную информацию о ней. Поэтому для дальнейшего ознакомления мы рекомендуем обратиться к материалам, размещенным на сайте www-консорциума [Michael K. Smith et al., 2003].
Оценивая достоинства и недостатки языка OWL, следуют еще раз отметить тот факт, что этот язык является развитием технологий XML и RDF и входит в разрабатываемый сегодня новый стек web-протоколов. Наряду с замечательными возможностями по совместному использованию OWL-онтологий, этот факт, на наш взгляд, может стать решающим при выборе языка OWL в качестве механизма построения базы знаний или экспертной системы. Это преимущество позволяет не обращать большого внимания на невысокие пока выразительные возможности этого языка, особенно, учитывая скорости появления новых версий программных интернет-приложений. Следует так же отметить, что в отличие от многих языков представления знаний, язык OWL не является “академическим” (представляющим, в основном, теоретический интерес и мало пригодным для решения практических задач). В его развитие вкладываются немалые деньги, для его поддержки создается множество программных инструментов. И уже сегодня есть примеры его практического использования. Поэтому стоит всерьез задуматься о построение базы знаний своей дисциплины, курса, науки - инструмент для этого уже существует. И использовать как представленную в базе информацию, так и ее структуру как инструменты технологий обучения. О том, как можно использовать подобную базу знаний - несколько слов ниже.
Два направления использования языка web-онтологий в учебном процессе
Что такое база знаний? Существует множество определений этого понятия, но давайте, не претендуя на особую научную глубину, остановимся на следующем, удовлетворяющем нас, определении: база знаний - это база данных плюс мета-
данные. Под мета-данными здесь понимаются правила синтаксической и семантической обработки данных. Таким образом, база знаний - это, во-первых, источник информации, а во-вторых, основа для построения программных систем (программных агентов), способных обрабатывать эту информацию. Исходя именно из этого, и следует искать направления использования базы знаний в конкретной предметной области (в нашем случае - в технологиях обучения).
Не секрет, что в рамках многих учебных процессов существуют проблемы разобщенности дисциплин. Так, при системном изучении компьютерных технологий система курсов распадается на аппаратный цикл, цикл операционных систем и системного программного обеспечения, цикл прикладного программного обеспечения, цикл вычислительных сетей. На сегодняшний день, пожалуй, наиболее структурно отработанным является аппаратный цикл. Остальные же циклы имеет чрезвычайно сложную и запутанную (во многом - искусственно) структуру. Особенно это касается цикла прикладного программного обеспечения и вычислительных сетей. От количества уже существующих и постоянно появляющихся новых технологий и аббревиатур у кого угодно зарябит не только в глазах, но и в голове. А между тем все эти дисциплины, курсы и циклы связаны множеством прямых и обратных связей, и должны составлять единую, прозрачную, хорошо структурированную систему. Понимание этой системы - необходимое условие для современного специалиста в области информационных технологий. В этой связи возникает вопрос - почему бы ни попробовать создать некую базу знаний, которая станет цементирующим средством, механизмом объединяющим огромное количество существующей информации в единую систему, основой для ориентирования в области компьютерных технологий. При этом в качестве основы можно использовать документ Computing Curricula 2001 Конечно, построить такую сложную систему одному человеку или одной кафедре вряд ли удастся. Однако механизмы языка OWL позволяют строить базу знаний индуктивно - начинать можно со своей дисциплины, со своего цикла. Подобная база знаний может стать для преподавателей - ориентиром при построении новых и развитии старых курсов, а для студентов - принципиально новым, с точки зрения своих возможностей, источником информации. В далекой перспективе, возможно, будут построены программные агенты, которые смогут автоматически пополнять подобную базу знаний, информацией, вновь появляющейся в Интернет, таким образом, автоматически поддерживая ее актуальность. Таково, на наш взгляд, основное направления использования языка OWL в учебном процессе.
Второе направление использования языка OWL связано с построением программных систем, оперирующих знаниями, содержащимися в онтологиях. Имея базу знаний дисциплины или курса, мы уже сегодня можем строить тестирующие программные системы, которые по своим возможностям, очевидно, превзойдут существующие на сегодняшний день тесты, ориентированные на выбор одного из нескольких вариантов. Новые тестирующие агенты будут способны сами сформулировать вопрос и оценить ответ на него с точки зрения ограничений, описанных в онтологии. Эти агенты могут быть, очевидно, использованы так же и для тренинга, и для учебного моделирования.
Эти два направления использования web-онтологий в учебном процессе, на наш взгляд, являются сегодня наиболее очевидными, но ими не ограничивается список возможностей онтологий. Как инструмент для описания знаний, онтологии должны заинтересовать всех специалистов, сталкивающихся в своей практике с проблемой представления и использования знаний. К этим специалистам, вне всякого сомнения, относятся и преподаватели.
Литература
[Тим Брэй и др., 2000] Тим Брэй, Джин Паоли, С.М. Сперберг-Макквин, Ив Мэйлер. Расширяемый язык разметки (XML) 1.0 (вторая редакция). Перевод Радика Усманова.// http: //www. citforum. ru/ internet/xml spec/index. shtml.
[Michael K. Smith et al., 2003] Michael K. Smith, Chris Welty, Deborah McGuinness. OWL Web Ontology Language Guide// http://www.w3 .org/TR/owl-guide/.