Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Современные методы инженерии знаний в задачах машинного обучения

Покупка
Новинка
Основная коллекция
Артикул: 863624.01.99
Доступ онлайн
192 ₽
В корзину
Пособие посвящено изложению учебного материала, необходимого для освоения студентами практической части учебных курсов. В пособии описаны теоретические аспекты задач, рассмотрены примеры их решения, в том числе с применением языка программирования Python, а также дополнительных библиотек. Целью освоения дисциплины является приобретение студентами практических навыков решения задач инженерии знаний от формализации до программной реализации с применением современных технологий. Учебное пособие предназначено для студентов высших учебных заведений, обучающихся по образовательной программе «Информационно-аналитические системы финансового мониторинга» направления 10.03.01 Информационная безопасность по дисциплине «Модели и методы инженерии знаний».
Подоплелова, Е. С. Современные методы инженерии знаний в задачах машинного обучения : учебное пособие / Е. С. Подоплелова ; Южный федеральный университет. – Ростов-на-Дону; Таганрог : Издательство Южного федерального университета, 2025. - 130 с. – ISBN 978-5-9275-4882-8. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2220040 (дата обращения: 16.12.2025). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Содержание  
1 
МИНИСТЕРСТВО  НАУКИ  И  ВЫСШЕГО  ОБРАЗОВАНИЯ 
РОССИЙСКОЙ  ФЕДЕРАЦИИ 
Федеральное государственное автономное  
образовательное учреждение высшего образования 
«ЮЖНЫЙ  ФЕДЕРАЛЬНЫЙ  УНИВЕРСИТЕТ» 
Инженерно-технологическая академия 
 
 
 
Е. С. ПОДОПЛЕЛОВА 
 
 
СОВРЕМЕННЫЕ  МЕТОДЫ                                         
ИНЖЕНЕРИИ  ЗНАНИЙ  В  ЗАДАЧАХ                               
МАШИННОГО  ОБУЧЕНИЯ 
 
 
Учебное пособие 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Ростов-на-Дону – Таганрог 
Издательство Южного федерального университета 
2025 
 
 
 


Введе 
2 
УДК 004.415(075.8) 
ББК  32.973.202я73 
П44 
Печатается по решению кафедры информационно-аналитических                   
систем безопасности имени профессора Л. С. Берштейна                          
Института компьютерных технологий и информационной безопасности 
Южного федерального университета                                                      
(протокол № 12 от 13 июня 2024 г.) 
Рецензенты: 
доктор технических наук, профессор, заведующий кафедрой                         
информационно-аналитических систем безопасности имени профессора                  
Л. С. Берштейна Института компьютерных технологий и информационной 
безопасности Южного федерального университета А. Н. Целых 
доктор технических наук, профессор кафедры информатики                           
Таганрогского института имени А.П. Чехова (филиала) «Ростовского 
государственного экономического университета (РИНХ)» Г. А. Джанунц  
Подоплелова, Е. С. 
П44     Современные методы инженерии знаний в задачах машинного 
обучения : учебное пособие / Е. С. Подоплелова; Южный федеральный 
университет. – Ростов-на-Дону; Таганрог: Издательство Южного федерального университета, 2025. – 128 с. 
ISBN 978-5-9275-4882-8 
Пособие посвящено изложению учебного материала, необходимого для 
освоения студентами практической части учебных курсов. В пособии описаны 
теоретические аспекты задач, рассмотрены примеры их решения, в том числе с 
применением языка программирования Python, а также дополнительных библиотек. Целью освоения дисциплины является приобретение студентами практических навыков решения задач инженерии знаний от формализации до программной реализации с применением современных технологий.  
Учебное пособие предназначено для студентов высших учебных заведений, 
обучающихся по образовательной программе «Информационно-аналитические 
системы финансового мониторинга» направления 10.03.01 Информационная 
безопасность по дисциплине «Модели и методы инженерии знаний». 
УДК 004.415(075.8) 
ББК 32.973.202я73 
ISBN 978-5-9275-4882-8 
© Южный федеральный университет, 2025 
© Подоплелова Е. С., 2025 
© Оформление. Макет. Издательство  
    Южного федерального университета, 2025 
 
 


Введение  
3 
СОДЕРЖАНИЕ 
ВВЕДЕНИЕ ......................................................................................................... 4 
ГЛАВА 1. ОНТОЛОГИИ .................................................................................... 6 
1.1. Реализация семантического поиска ..................................................... 15 
1.2. Создание правил на языке OWL .......................................................... 24 
1.3. Оценка онтологии .................................................................................. 26 
Лабораторная работа № 1. Построение онтологии в Protégé 5 .............. 28 
ГЛАВА 2. АНАЛИЗ ТЕКСТОВЫХ ДАННЫХ .............................................. 39 
2.1. Анализ текста. Регулярные выражения ............................................... 39 
Лабораторная работа № 2. Работа с регулярными выражениями .......... 48 
2.2. Контекстно свободные грамматики ..................................................... 55 
ГЛАВА 3. АНАЛИЗ ДАННЫХ НА PYTHON ............................................... 64 
3.1. Источники данных ................................................................................. 64 
3.1.1. Requests в Python ............................................................................... 65 
Лабораторная работа № 3. Парсинг данных ............................................ 71 
3.1.2. Работа с готовыми данными .......................................................... 72 
3.2. Алгоритмы классификации ................................................................... 75 
ГЛАВА 4. ОСОБЕННОСТИ И ПРОБЛЕМЫ АНАЛИЗА ............................. 80 
4.1. Методы сбалансирования данных ........................................................ 81 
4.2. Оценка эффективности методов ........................................................... 88 
4.3. Способы снижения размерности .......................................................... 93 
ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ НА PYTHON............................................. 107 
Пример 1. Факторный анализ .................................................................... 107 
Пример 2. Классификация и балансировка данных ................................ 113 
Лабораторная работа № 4. Анализ данных. Классификация ................. 123 
ЗАКЛЮЧЕНИЕ ............................................................................................... 125 
СПИСОК ЛИТЕРАТУРЫ ............................................................................... 126 
 
 
 
 


Введе 
4 
ВВЕДЕНИЕ 
Информационные технологии уверенно развиваются во всех направлениях, внедряются повсеместно, затрагивая все сферы жизни людей.     
Искусственный интеллект успешно показывает себя на различных задачах 
от чатов помощников до сложной аналитики. Алгоритмы совершенствуются, разрабатываются новые подходы, порождающие необходимость в 
новых знаниях. Уже определено такое понятие, как Big Data или «Большие 
данные» – огромные объемы гетерогенной, структурированной и слабоструктурированной информации, требующие новые подходы к ее представлению, хранению и обработке. Инженерия знаний является важным 
аспектом в разработке интеллектуальных систем, потому как без знаний 
нельзя назвать систему интеллектуальной. Представление знаний в системе различно, но едино одно – любые знания требуют предварительной 
формализации, иначе их невозможно использовать. Для этого используются как фундаментальные подходы: логика предикатов при помощи правил вывода, фреймовые модели, так и более совершенные: онтологии, когнитивные графы.  
Отдельным примером является машинное обучение. По сути, этот подход является той связкой между формальными моделями и реальным работающим продуктом.  
В данном пособие акцент поставлен на практическую часть применения известных и современных методов искусственного интеллекта со стороны инженерии знаний. Мы должны пройти путь от постановки задачи до 
реализации механизма ее решения. Начнем с онтологического подхода, который не требует отдельных навыков, затем перейдем к инструментам, которые предоставляет нам язык Python и его библиотеки.  
По завершению курса студент должен овладеть такими навыками, как: 
− построение онтологии предметной области, построение правил поиска, проверка на противоречивость, построение графа; 
− использование регулярных выражений, извлечение данных с сайтов, 
их обработка; 
− работа с различными источниками данных, выгрузка необходимой 
информации, формирование выборки для обучения; 
 


Введение  
5 
− проведение разведочного анализа данных (EDA), визуализация ключевых показателей, предобработка датасетов; 
− работа с размерностью, решение проблем дисбаланса классов; 
− применение моделей классификации, оценка результата по ключевым метрикам, применение способов улучшения показателей.
 


Глава 1. Онтологии 
6 
ГЛАВА 1 
ОНТОЛОГИИ 
Онтология как понятие в информатике несёт в себе философский 
смысл этого понятия – учение о бытие. Имея цель представлять знания в 
каком-либо формализованном виде и был использован этот подход. Таким 
образом, онтология в информатике – структура (форма) представления 
знаний о предметной области. 
Согласно общепринятому определению в компьютерных науках, онтология – это способ формализации знаний, абстрактных или специфических, 
в какой-либо предметной области, реализованный на основе формального 
описания объектов, фактов и отношений между ними. Для формализации 
используется концептуальная схема – семантическая сеть из взаимосвязанных по определенным правилам понятий и концепций. Обычно такая 
схема состоит из структуры данных, содержащей все релевантные классы 
объектов, их связи и правила (теоремы, ограничения), принятые в этой области. Ниже представлены основные компоненты онтологий (табл. 1.1).  
Таблица 1.1 
Основные компоненты онтологии 
Название 
Описание 
Пример 
Экземпляры  
(объекты) 
Базовые или "наземные" объекты                    
(индивиды) 
Петр, 35, Марс 
Классы          
(понятия) 
Наборы, коллекции, концепции, классы в программировании, типы объектов или виды вещей 
Человек, число, 
планета 
Атрибуты 
Аспекты, свойства, признаки, характеристики 
или параметры, которые могут иметь объекты 
(и классы). Могут быть логическими (да/нет), 
числовыми, а также словом или фразой 
Возраст: 31, чётность числа: нет 
номер по удаленности от 
Солнца: 4  
Отношения Способы, которыми классы и индивиды могут 
быть связаны друг с другом  
Петр является 
врачом 
Правила 
Высказывания в форме "Если ..., то ..." (антецедент-консеквент), описывающие логические выводы, которые могут быть сделаны из 
утверждения в определенной форме 
Если 34 четное,  
то 34 делится 
на 2 без остатка 
 


Глава 1. Онтологии 
7 
Окончание табл. 1.1 
Название 
Описание 
Пример 
Правила 
Высказывания в форме "Если ..., то ..." (антецедент-консеквент), описывающие логические выводы, которые могут быть сделаны из 
утверждения в определенной форме 
Если 34 четное,  
то 34 делится 
на 2 без остатка 
Аксиомы 
Утверждения (включая правила) в логической 
форме, которые вместе составляют общую теорию, описываемую онтологией в её области применения. Это определение отличается от определения "аксиом" в формальной логике. В ней аксиомы включают только утверждения, утверждаемые как априорное знание. Здесь же "аксиомы" 
также включают в себя теорию, полученную из 
аксиоматических утверждений 
Человек смертен. Петр – человек 
События 
Изменение атрибутов или отношений 
XX умер 
(XX больше не 
является живым) 
Онтологии обычно кодируются с помощью языков онтологий –   
OWL, KIF, Common Logic, CycL, DAML+OIL. Для их использования необходима среда для редактирования, например открытая кроссплатформенная среда Protégé. 
Платформа Protégé поддерживает два основных способа моделирования онтологий посредством редакторов Protégé-Frames и Protégé-OWL. Онтологии, построенные в ней, можно экспортировать в несколько форматов, 
например RDF (RDF Schema), OWL и XML Schema. 
С деталями работы в каждой версии можно ознакомиться на официальном сайте (на английском языке) – https://protege.stanford.edu/publications/ontology_development/ontology101-noy-mcguinness.html. А также в открытом доступе существует немало подробных инструкций. Для выполнения практической работы рекомендуется использование официальной документации и дополнительной литературы. В данном разделе мы опустим 
детали установки и практические шаги, а перейдем к прикладной части. 
Рассмотрим два примера подходов к построению онтологии: формализация 
предметной области и поиск ответа на вопрос.  
В первом случае задача звучит как создание онтологии по любой предметной области. Цель – представление исчерпывающих знаний о конкрет-  
ной области, включая понятия, явления, процессы. Используется, например, 


Глава 1. Онтологии 
8 
как вспомогательный инструмент в интеллектуальных системах с целью 
обеспечения пользователя источником знаний, например экспертных.  
Во втором случае сначала возникает конкретная задача/вопрос поиска 
взаимосвязей между каким-то концептами, а вот их характер и влияние уже 
и будет результатом создания онтологии. Она охватывает, в первую очередь, исследуемые стороны, а не ставит задачу построить исчерпывающую 
модель, описывающую какое-либо понятие.  
Иными словами, мы хотим формализовать все, что мы знаем о какомто вопросе. Я использовала термин «вопрос» неспроста. Дело в том, что 
предметная область является чем-то статичным, по факту это просто 
настройка терминов и связей, из которых можно найти ответ на заданный 
вопрос. Использование онтологии для формализации какой-то области 
тоже используется, однако это не единственное назначение. Онтологию 
можно использовать как инструмент визуализации связей, как ответ на поставленный вопрос или задачу. Например, в работе «A Semantic Approach 
to Describe Social and Economic Characteristics That Impact Health Outcomes 
(Social Determinants of Health): Ontology Development Study1»  авторы используют онтологию для обнаружения неявных факторов на социальные 
детерминанты здравоохранения (совокупность условий, при которых люди 
рождаются, живут, работают и умирают – СДЗ). Эти условия группируют в 
три взаимосвязанных уровня: макроуровень (общественный), мезоуровень 
(общество), микроуровень (уровень индивида).  
Цель работы: предоставление вычислимого артефакта, который сможет связать данные о здоровье с концепциями, связанными с различными 
уровнями детерминант, что улучшит наше понимание влияния СДЗ на население человека. Моделирование этого вопроса может помочь уменьшить 
существующие пробелы в литературе посредством явных связей между детерминантами и биологическими факторами. Это, в свою очередь, может 
позволить исследователям и клиницистам лучше понять данные и открывать новые знания с помощью семантических связей.  
 
1 Daniela Dally. A Semantic Approach to Describe Social and Economic Characteristics That Impact Health Outcomes (Social Determinants of Health): Ontology Development Study/Daniela Dally, Muhammad Amith, Rebecca L Mauldin, Latisha Thomas, 
Yifang Dang, Cui Tao//Online Journal of Public Health Informatics. Volume 16. 2024 


Глава 1. Онтологии 
9 
Экспериментальная онтология была разработана для представления 
знаний о социальных и экономических характеристиках СДЗ в Protégé на 
языке OWL2. 
 
Рис. 1.1. Фрагмент концептуальной схемы онтологии 
Не вдаваясь в детали вопроса, рассмотрим то, что удалось получить 
таким подходом. На рис. 1.1. показан фрагмент концептуальной схемы, которая отражает четыре обобщенных отношения, связывающих различные 
понятия: тип (type of), часть (part of), зависимость (dependency) и причинная 
связь (causal). В дополнение к идентифицированным отношениям, на схеме 


Глава 1. Онтологии 
10 
видны еще два вида обозначений: Continuant – постоянный и occurrent – непостоянный. Постоянной определяется сущность, которая сохраняется или 
продолжает существовать во времени при сохранении своей идентичности». Непостоянная сущность – это та, которая разворачивается во времени 
или это мгновенная граница такой сущности (например, начало или окончание), или это временная или пространственно-временная область, которую такая сущность занимает, в основном событие или процесс.  
Концепции были собраны авторами работы из литературы, из чего 
была создана онтология, состоящая из 383 классов, 109 свойств объекта и 
748 логических аксиом (правил). Испытание на согласованность не выявило противоречий. 
В качестве второго примера я взяла реализацию медицинской онтологии предметной области, а конкретно – раздел «детская шизофрения». 
В данном случае разработанная онтология (фрагмент) является как раз частью системы поддержки принятия решений.  
Описание этого раздела является сложной задачей, требующей эксперта-психиатра. Поэтому для демонстрации идеи в работе реализованы 
только общие аспекты и несколько примеров правил и параметров. В реальности их намного больше. Онтологии пополняются, масштабируются и 
«настраиваются» на протяжении всего жизненного цикла под четким контролем эксперта по знаниям и врача-эксперта. Но полученная часть работы 
в полной мере демонстрирует применение онтологического подхода к формализации знаний, а также применение правил вывода, имеющихся в качестве дополнительных функций в Protégé.  
Перейдем к описанию модели, являющейся первым этапом построения 
системы. Для определения общей концепции мною были определены следующие классы, необходимые для описания пациента, подходящего под 
одну из четырех моделей, предложенных в источнике «Шизофрения у детей»2 рис. 1.2. 
 
2 Шизофрения у детей. Клинические рекомендации РФ 2024 (Россия). [Электронный 
ресурс] 
URL: 
https://diseases.medelement.com/disease/%D1%88%D0% 
B8%D0%B7%D0%BE%D1%84%D1%80%D0%B5%D0%BD%D0%B8%D1%8F-%D1 
%83-%D0%B4%D0%B5%D1%82%D0%B5%D0%B9-%D0%BA%D1%80-%D1%80% 
D1%84-2024/18185  


Доступ онлайн
192 ₽
В корзину