OLAP.ru OLAP, data mining, analysis, данные, СУБД, генераторы отчетов, проектирование, принятие решений, оптимизация, хранилише, извлечение, поиск, Crystal, Business Objects, Cognos, SAS...
Полный список »
Business intelligence - effective data mining & analysis
Вход Регистрация Новости сайта Карта сайта/поиск RSS
 
OLAP и Business Intelligence
SUBSCRIBE.RU
 
 

Базовая самоформирующаяся онтология

Проект "Базовая самоформирующаяся онтология"

ToDo:

  1. Составить базовую онтологию
  2. Выбрать модель хранения ont в памяти, научиться считывать онтологию в память
  3. Составить список базовых сайтов
  4. Настроить crawler4j на обход п.3
  5. Сделать алгоритм "разумного" пополнения данных. Например, как написано ниже.

Тестовый запуск: человек + фирма. Ч.1

Решено работать в онлайн режиме: все черновые записи - в блоге, все тестовые запуски и полученные результаты (или не полученные :-) ) - на соответствующие страницы сайта. А почему бы и нет? Возможно, только алгоритмы будут закрытыми, хотя на текущий момент закрывать особо нечего

Итак, эксперимент №1
Имеется набор данных ("триплетов", "троек") по а) человеку и б) организации. Представим этот набор данных следующим образом:
Человек

  • Фамилия
  • Имя
  • Отчество
  • Дата рождения
  • ИНН

Организация

  • Название
  • Организационно-правовая форма
  • Дата регистрации
  • ИНН

Данные связаны следующим образом:
Субъект Связь Объект Примечание
Человек имеет_имя Имя  
Человек имеет_фамилию Фамилия  
Человек имеет_отчество Отчество  
Человек родился Дата_рождения  
Человек имеет_инн ИНН_человека  
Человек владелец Организация  
Организация имеет_название Название  
Организация зарегистрирована_как Орг_прав_форма  
Организация зарегистрирована_когда Дата_регистрации  
Организация имеет_инн ИНН_организации  

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

Задача семантического паука - на основе имеющихся данных (онтология частично заполнена, т.е. присутствует A-Box и частично Е-box) и массива данных постараться заполнить остальные поля.
В случае спорных моментов данные должны предоставляться человеку-эксперту. ​Алгоритм работы семанического паука должен быть в разумных пределах общим, однако это не должно мешать заложить разумные подсказки типа использования соцсетей и реестров налоговых служб.

Для начала предположим, что нам известны ФИО человека и название компании, далее в схему должны быть добавлены шаблоны, потом - словари синонимов и т.д.

Вопрос 1: По каким страницам искать.
Очевидно, что на данном этапе выпускать маленького и неокрепшего паучка на просторы интернета глупо и бессмысленно. Да и задача такая, что можно не задумываясь выделить несколько ресурсов (сайтов), которые в первую очередь необходимо изучить. Итак, решение первое: жестко ограничим набор целевых сайтов:

  • facebook.com
  • vk.com
  • odnoklassniki.ru
  • реестры налоговой и регистрации юр.лиц

Вопрос 2: хранение "онтологии" и найденных данных
Очевидно, что с точки зрения дальнейшей совместимости не стоит пренебрегать стандартами. Следовательно, и А-box, и начальные, и получаемые данные следует хранить в owl-файле.

Вопрос 3: алгоримт перебора страниц и выделения релевантных данных
Самый сложный вопрос, но, так как сравнивать все равно не с чем, пусть будет такой алгоритм:

  1. Берем первый сайт из списка
  2. Делаем поиск по этому сайту первой тройки из онтологии (возможно, стоит ввести поисковые коэффициенты-веса??)
  3. на первых n страницах из выдачи ищем все оставшиеся тройки
  4. В случае обнаружения данных дописываем их в онтологию
  5. В случае подозрения на обнаружение данных выводим запрос эксперту
  6. Переходим к следующему сайту и пункту 2.

Тестовый запуск: человек + фирма. Ч.2

Мини-онтология, несмотря на то, что она мини, будет у нас носить все черты полноценной предметной онтологии - т.е. разрабатываться в protege, храниться в owl-файле и обрабатываться по правилам и логике "больших" баз знаний.
В первом приближении выглядит это так:


Рекомендовать Обсудить материал Написать редактору Распечатать   Дата публикации: 28.02.2014  
Хостинг: SiliconTaiga    Поддержка: Interface Ltd. Обратиться по техническим вопросам     
Rambler's Top100 TopList