Разработка и реализация системы семантически-ориентированного поиска с использованием Knowledge.NET Выполнил: Ким Сергей Владимирович Научный руководитель: Сафонов В.О.
Введение Локальные сети. Основные протоколы – SMB и FTP. Ресурсы, выложенные на общий доступ. Поиск с учетом смыслового содержания слов запроса пользователя и имен (содержания) проиндексированных информационных ресурсов Основа поиска по смыслу: иерархия папок всегда несет какую-то смысловую нагрузку
Подобные системы Системы, ведущие семантический поиск по содержанию проиндексированных ресурсов RetrievalWare компании Convera Семантический поиск, основанный на смысловых значениях слов в тексте Универсальная технология индексирования и поиска информации (APRP), которая позволяет поиск по содержанию текстовых документов, изображений, звука, видео и др. Обычные системы поиска Google Desktop, Spilight (для Mac OS 10.4 Tiger)
Работа с иерархией папок Основная часть – ресурсы, созданные человеком В зависимости от специфики сети четко прослеживаются общие свойтсва создания иерархии Ресурсы, созданные программами Avalanche - система управления Интернет-данными Концепция "умных папок" (Smart Folders) Семантическая рубрикация загруженных данных
Базовая поисковая система Система находится в рабочем состоянии Распределенность Модуль индексирования ресурсов (C#) Серверный логический модуль (Java) СУБД Oracle Прототип модуля, работающего со знаниями Реализованы разные подходы к ведению поиска ресурсов Реализован прототип поиска по смыслу
Необходимые программы JDK 1.4 и выше.NET Framework 2.0 Tomcat Oracle 9.2
Архитектура поисковой системы
База данных системы
Обычный поиск по названию
Поиск по смыслу
Требования Реализация полноценного поиска по смыслу, основанного на анализе иерархий папок для ресурсов Создание модуля, базирующегося на знаниях, с помощью системы Knowledge.NET Максимальная простота установки и использования системы Универсализация Создание документации Максимальная производительность работы системы
Универсализация Возможность работы системы с множеством СУБД Использование «наката» схемы БД Использование Hibernate Замена PL/SQL кода Переписывание модуля индексирования на Java Возможность работы системы на разных Java Web контейнерах
Создание онтологии С помощью Knowledge.NET для каждой конкретной локальной сети будет создаваться онтология Первоначальное задание множества концептов и их взаимосвязей Специалист в данной конкретной области или администратор поисковой системы Анализ хоста с «идеальными» и максимально полными иерархиями папок
Модуль работы со знаниями GUI приложение для Windows, написанное на.NET, с использованием Knowledge.NET Должно позволять пользователю создавать и обновлять концепты и взаимосвязи между ними в удобном виде Должно взаимодействовать с другими частями системы (по сокетам)
Обновление онтологии Впервые рассматриваемая папка для конкретной иерархии – это либо новый концепт, либо экземпляр уже существующего концепта Выбор зависит от файлов, которые содержатся в этой папке Необходимо ли сразу фиксировать множество имен только созданного концепта? Если «да», как это сделать, если не вручную?
Q & A