serge_gorshkov


Сергей Горшков - о бизнесе в сфере ИТ

о семантической интеграции, программировании, управлении...


Previous Entry Share Next Entry
Познакомьтесь с семантической аналитикой
serge_gorshkov
Мощь семантических технологий пока не очевидна многим ИТ-профессионалам, а отраслевым специалистам - тем более. Скажем точнее: мало кто знает о существовании семантических инструментов аналитики, и их преимуществах. Мы создали демонстрационный стенд, на котором любой желающий может попробовать поработать с семантической базой данных через человеко-понятный (как мы надеемся) интерфейс. Стенд доступен по адресу http://kes.business-semantic.ru, там же можно скачать инструкцию-tutorial по инструменту.

В качестве предмета анализа мы выбрали область, понятную каждому: информацию о кадровых назначениях в энергетических компаниях России. Специальный робот собирает эти сведения из лент новостей, выделяет в них смысл (кто назначен, куда назначен), помещает в семантическую базу данных - ну, а дальше вам остается только задать ей вопрос, например: "Дайте мне список назначений в Ленэнерго", или "Покажите историю назначений Мишарина". Программка умеет рисовать "живой" граф, по элементам которого можно переходить от одного объекта к другому, рисовать события на оси времени, подкачивать proof links из интернета, и т.д. При этом, повторю, это не полноценный продукт, а стенд для демонстрации возможностей семантической аналитики.

Буду рад впечатлениям и предложениям по улучшению, особенно с точки зрения интерфейса построения запросов.

  • 1

Познакомьтесь с семантической аналитикой

Пользователь net_easy сослался на вашу запись в записи «Познакомьтесь с семантической аналитикой» в контексте: [...] Оригинал взят у в Познакомьтесь с семантической аналитикой [...]

Очень занятно, как раз сейчас всем этим интересуюсь.
Будет время - попробую.
На первый взгляд мордочка выглядит, мягко говоря, несовременно. Понимаю, что делали, скорее всего, без верстальщика и дизайнера. Но привлекательность главной страницы (верстка+дизайн+юзабилити) сейчас играет решающую роль (я так считаю) в борьбе за пользователя.

Юзкейс: когда мне нужна небольшая специфическая утилита, я ее гуглю, быстро просматриваю несколько аналогов. Сразу закрываю те, которые требуют (по ощущениям) ощутимое количество времени "на вникание". Затем те, интерфейс которых напоминает 90-е. Из оставшихся выбираю, чем буду пользоваться.

Вот очевидное: вместо предложения скачать инструкцию разместить 20-секундный ролик, где будет крутиться основной юзкейс. Юзеру ну вообще не хочется ничего читать, хочется, чтобы сразу было понятно, как работать. Сделать всплывающие подсказки.
Снимите барьер "на вникание" - количество желающих попробовать, думаю, сразу возрастет.

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

Как оптимизировать:
1) убрать всю лирику. Опционально: написать статью на хабр, например
2) заменить определения ссылками. Это позволит сократить объем. За него надо бороться, тк, полагаю, найдется мало желающих прочитать все 5 страниц инструкции. Например: "Facebook,
как и любая социальная сеть, в информационном смысле представляет собой граф, то есть
совокупность объектов-вершин (например, пользователей соцсети), и ребер – связей между ними
(«дружит», «нравится» и т.д.)." - сделать ссылкой на Вики слово "граф"
3) заменить все сложносочиненные и сложносочиненные предложения простыми. В техписательстве это почти что самое главное "правило хорошего тона"
4) структурировать текст. Сейчас он выглядит монолитным. Разбить на абзацы, между абзацами вставить пробелы. Переписать по схеме: "чтобы сделать то-то, выполните действия: список [описание- скриншот]. В результате будет то-то"

Пока что инструкция выглядит весьма сложной для восприятия

Спасибо за комментарии!
Ролик обязательно сделаем.
"Морду", конечно, делали без дизайнера - точнее, взяли css от панели управления нашей шины, и его немного реюзали. Конечно, есть проблема в том, что сейчас сама утилита совмещена с ее же "промо-страницей" - тоже исправим. Опять же, это не коммерческий продукт, т.е. в таком виде продаваться точно не будет; идея этой штуки - в том, чтобы объяснить людям идею, чем поиск по семантической базе данных отличается от, грубо говоря, работы с таблицами, или полнотекстового поиска.

Насчет текста инструкции - да, это моя специфика. Я люблю читать и писать сложные тексты :) Понятно, что читать такое человек без специальной мотивации. Но, впрочем, сейчас цитируем на аналитиках из знакомых промышленных предприятий - читают... Благодаря "подводке", которая дается в тексте письма со ссылкой на утилиту.

В общем, спасибо! Будем дорабатывать.

Спасибо за комментарий!
Пример выбран не случайно, т.к. именно такая аналитическая задача возникает у маркетологов почти всех промышленных предприятий. Это часть нашей целевой аудитории :)
Они уже что-то знают про аналитику, а мы им показываем для этого новую машинку.

А насчет того, что через интерфейс не понятна суть машинки - это больное... Тут действительно все не просто. Нормально объяснить суть построения запросов к семантической базе - на уровне теории - можно только математику. Но это не интересно, т.к. не они наша аудитория. Вот этот прототип как раз является попыткой объяснить суть метода чуть более широким кругам публики. Тут я понял, что пока не вышло :(
Будем думать дальше.

Аналогия такая: автофильтр в Excel'е, которым пользуются поголовно все, кто занимается хоть чем-то похожим на аналитику, тоже не то чтобы очень понятен с первого взгляда. Но, один раз его использовав - больше не забудешь, как он работает. Здесь у нас похожая задача: показать один раз, донести мысль, как работает - а дальше люди, по идее, смогут сами использовать инструмент для своих задач.

За неделю существенно обновили и "подтянули" машинку, в том числе - добавили "простой режим". Буду рад комментариям по новой версии :)
Наша цель - сделать так, чтобы было действительно понятно.

Вот только документацию еще не переписал, в сторону упрощения... Наоборот, она у меня разрастается чуть ли не в учебник. Зато планирую снять и озвучить диктором видеоролики про оба варианта интерфейса построения запроса - как только устаканится их функциональность.

Под капотом RDF/OWL/SPARQL?

Да, все данные хранятся в SPARQL точке доступа.
Кстати, сделали еще два стенда такого же типа, только побогаче функционально - для конкретных предметных областей: http://stroy.business-semantic.ru для базы стройматериалов, и http://geology.business-semantic.ru для геологической модели.

А какие-нибудь общеупотребимые компоненты использовали, или всё самописное? Вопрос именно про анализ модели данных, построение и обработку запросов, а не про onto.pro

Все свое, кроме SPARQL'а конечно.
Сейчас семантические технологии находятся в такой стадии развития, что проще (и правильнее) писать свое, нежели использовать сторонние решения, которые в большинстве случаев сами больше похожи на прототипы.

А данные сразу в триплсторе, или в реляционке через технологию типа D2RQ?

Не хватает возможности выбрать из списка возможных или имеющихся значений.
Например, чтобы указать что нужна разведочная скважина, нужно сначала выполнить запрос по скважинам вообще, увидеть что в выдаче есть "Разведочная" и уже вводить её в условие "имеет тип скважины".

Такая возможность есть в Режиме эксперта, когда выбор происходит из списка, содержащего не более 20 значений. В остальных режимах, когда начинаете вводить текст (например, "Тип скважины - имеет Название"), система выдает подсказки под полем ввода, по принципу живого поиска.

Режим эксперта не смог освоить ;-/ Подсказки хороши когда знаешь что искать. Я хотел найти поисковую, а у вас разведочная.
По своему опыту знаю, что пользователь захочет добывающую, когда в системе только нефтяные. Такие вот разночтения.

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

Сергей, а чем в принципе ваша система функциональнее QlikView, например? Там ведь подобная схема данных и строится (ассоциативная).

Re: Схема данных

Спасибо за вопрос! :)

В маркетинговых материалах QlikView говорится примерно о том же, о чем пишу я. Только мы идем дальше.

QlikView все равно основан на таблицах, кубах, реляционных данных. Да - они предоставили более удобный способ работы с кубами, нежели традиционные BI приложения. Можно видеть связи между данными - это здорово, но это только один шаг к их пониманию. Да, при определенных усилиях можно управлять схемой данных, не привлекая программистов. Правда, на мой взгляд, возможности так себе - я попробовал загнать туда несколько Excel-файлов, описывающих работу отдела техподдержки в моей прошлой компании. Результаты не впечатлили, поскольку QlikView рассчитывает "увидеть" в файле простую плоскую таблицу, а это далеко не так. "Плоскую" таблицу, с другой стороны, нет никаких проблем анализировать и в самом Excel'е - автофильтры и диаграммы там вполне интуитивны. Решить проблему импорта сложных данных, похоже, можно только при помощи скриптов, что обесценивает главное заявленное преимущество (возможность обойтись без программистов). Импорт из баз данных тоже делается через скрипты. А для импорта, скажем, из лент новостей - даже страшно представить, что потребуется. Нужен будет скрипт, который разбирает новости, представляет их в виде квази-таблицы, и дает к ним доступ через ODBC или другой драйвер БД. Брррр.

Но это все техника. Главная проблема в ограниченности реляционной модели данных.
- Можем мы приписать разным клиентам разные наборы свойств (например, у клиента А есть свойство "конечный бенефициар", и больше ни у одного клиента такого свойства нет; а у клиента Б есть свойство "принадлежит сестре нашего директора", которого тоже ни у кого больше нет - и, конечно, заводить поля для этих свойств в базе данных нельзя, но и писать эту информацию текстом в поле "Комментарий" не хотелось бы)? Не можем.
- Можем мы присвоить одному полю сразу несколько значений (одному актеру - несколько имен (псевдонимов), в демонстрационном примере QlikView)? Нет, не можем. Возможности поиска, кстати, тоже ограничены - в демо примере можно выбрать фильмы, снятые режиссером А ИЛИ режиссером Б, но не "А и Б", не "А и не Б" (может быть, это как-то можно решить настройками, но сходу не видно, как).
- Можем ли присвоить одной сущности сразу несколько типов - импортировав таблицу клиентов и таблицу поставщиков, ассоциировать, что компания А, присутствующая в обоих списках, является одновременно и клиентом, и поставщиком, и видеть при анализе, что это одна и та же компания? Похоже, что не можем.

Короче говоря, мы все равно находимся в рамках реляционного куба, хотя и можем расширять этот куб импортом дополнительных данных (создавая тем самым новые измерения). Да, работать с кубом при помощи QlikView - удобно и наглядно.

Инструмент "мастера запросов", реализованный в прототипе http://kes.business-semantic.ru, о котором был пост - в QlikView не воспроизводим. Воспроизвести в нем можно часть функционала режима "Поиска по параметрам", который можно увидеть в другом нашем прототипе, http://geology.business-semantic.ru, но для семантической модели такой поиск - упрощение и частный случай.

То есть, свободный поиск по данным, представленным в виде "открытой" модели (т.е. модели с динамическим набором свойств, индивидуальным набором свойств и связей каждого объекта, множественной классификацией каждого объекта, множественными значениями каждого свойства или связи) - в QlikView не реализуем. Управление моделью и ее наполнение данными, соответственно, тоже ограничены.


Сергей, а есть ли возможность использования вашей системы в учебном процессе ВУЗа? То есть будет ли возможность дать студентам задание, чтобы они сами подобрали данные, построили модель, может донастроили интерфейс?

Re: Схема данных

Почему бы нет. Прототип можно использовать.
Какой предмет/специальность? Они информатики или экономисты?

Экономисты. В QlikView документы из нескольких таблиц делают сами, хотелось бы подобное задание на семантической платформе. Они смогут наполнять систему своими данными и строить модель?

Re: Схема данных

Хм, здесь будет посложнее.
Наши инструменты не настолько зрелые с точки зрения интерфейса, как QlikView. То есть, с точки зрения использования для анализа - все достаточно просто, а вот наполнение требует определенных ИТ знаний.
Как минимум, надо понимать основные концепции семантических технологий (класс, индивид, свойство-литерал, свойство-объект). Как это все выглядит в нашем редакторе онтологий - можно посмотреть здесь: http://kes.business-semantic.ru/images/onto.jpg
В принципе, модель можно подготовить в любом другом онтологическом редакторе, например Protege, но они еще более ИТ-ориентированные.

Доступ в редактор могу предоставить. Напишите в почту, так будет проще общаться. Мой адрес: serge - собака - business-semantic.ru.


  • 1
?

Log in

No account? Create an account