Динамическая онтология. Как инженеры Palantir объясняют это ЦРУ, АНБ и военным

    Компания Palantir является четвертой по крутости частной компанией Кремниевой долины (после Uber, Xiaomi и Airbnb). Пока Palantir собирает информацию про все на свете, мы собираем информацию про него. Вместе с компанией Edison продолжаем расследование возможностей платформы Palantir.



    ИТишники додумались как эффективно «монетизировать математику и алгоритмы» (Сегалович, Бакунов), PayPal Mafia додумалась как монетизировать гаджеты Феанора философию (капитализация Palantir — 20 миллиардов долларов).

    В десятиминутной лекции сотрудник компании Palantir расскажет про центральную концепцию их системы — динамическую онтологию.


    0:00 Привет, я Ашер Синенски, инженер по развертыванию технологий Palantir. Я поговорю о динамической онтологии.
    0:08 Очевидно, сейчас, эти два слова выглядят для вас довольно туманно, надеюсь, что к концу разговора вы поймете, какой смысл мы в них вкладываем.
    0:17 Перед тем как переходить к делу, поясню: у многих людей проблемы со словом онтология. Что мы подразумеваем под этим словом?
    0:24 Если вы посмотрите на корни этого слова, то оно образовано от греческих «онтос» (бытие) и «логия» (изучение чего-либо). По сути, онтология – это категоризация мира.
    0:34 Есть много терминов, которые люди используют для описания этого: таксономия, схематизатор модели данных. Но мы используем это, в более широком смысле, как идею, что мы действительно категоризируем мир каким-то образом.
    0:43 Идея о построении онтологии для изучения мира не нова. Первым, кто утвердил эту идею, был мужик по имени Платон. Идея Платоновского реализма, в основном, о том, что есть реальные вещи, а есть наше представление о вещах.



    1:02 В его модели, вещи реального мира – это проявление неких образцов из мира идеального.
    1:07 Он рассуждал о всеобщем и частном; об онтологии и самом бытии; о форме и копии (возможно, идея и воплощение?). У компьютерщиков же, есть класс и объект.
    1:15 В общем-то, это идея о том, что есть концепция чего-то и само это нечто. И то, что делает это яблоком, приближает нас, к тому, что представляет собой концепция яблока (поправьте меня, люди, близко знакомые с философией Платона).
    1:29 Ну, это классная философия, но вопрос сейчас в том, как это можно использовать, как это поможет нам в создании инструмента, могущего быть полезным в информационном сообществе.



    1:36 Отличный пример удобной онтологической структуры – это периодическая таблица Менделеева. У нас здесь число десять (показывает на мышьяк, на атомную массу), оно что-то говорит о весе, о массе, но, то, что мы видим здесь, это же не само «десять», в нашем реальном мире, — это концептуализация того, что «десять» должно значить.
    1:56 Еще один известный пример онтологии, а точнее таксономии: это линейная таксономия, с латинскими наименованиями животных, и это хороший пример иерархической онтологии.



    2:06 Здесь вы можете двигаться вниз, к роду panthera (лат. пантеры), и вы можете использовать разделение на виды с латинскими названиями: leo, tigris, pardus. Вы можете создать объекты «лев» «тигр» «леопард».



    2:20 Очевидно, что panthera pardus – это не сам леопард, это концепция того, что есть леопард.
    2:25 Ну, и вы понимаете, есть живой леопард в реальном мире и panthera pardus в онтологии.
    2:29 Эти же концепции можно применить к сферам, более значимым, если мы говорим о человеке. Например, здесь модель онтологии человека (person): мы начали с объектов, перешли к сущностям, дальше к живым сущностям, затем к людям.



    2:43 Если мы хотим охарактеризовать человека дальше, то мы можем добавить такие понятия как: пилот, юрист и доктор, — эти понятия объединяет общая идея о выделении подвидов. Позже мы поговорим об этом еще.



    2:53 Итак, как вы на практике можете моделировать в онтологии? Как бы вы структурировали свою онтологию?



    2:58 Люди перепробовали несколько способов. Я перечислю четыре наиболее выраженных подхода.



    3:03 Верхний завязан на объектах. В объектных моделях, например таксономии животных по латинскому наименованию, мы имеем некие объекты, которые являются концепциями, которые должны соответствовать объектам реального мира. Вы можете добавить немного глубины, насыщенности, добавив признаки, и таким образом получите объекты с признаками.
    3:21 Для примера мы можем взять таблицу Менделеева, где у объектов есть, вес и количество протонов.
    3:28 Чего в этой таблице не хватает, так это указания на отношения. Некоторые отношения, можно понять, проанализировав структуру таблицы, но вы не можете знать, например, образуют ли эти два вещества сплав.
    3:40 Еще один способ, которым вы можете моделировать мир – это объекты и отношения, то есть у вас есть объекты и то, как они соотносятся друг с другом.
    3:47 И здесь упущены признаки, которые были в таблице Менделеева. Вы можете, получить представление о признаках, если опираетесь на связи между двумя объектами, например, один из объектов объектом данных (data object), и, если вы хотите сказать, что у Майка Фикри (вымышленный злодей из одного из первых роликов про Palantir) голубые глаза, вы создаете связь между объектами «Майк Фикри» и «голубые глаза».
    4:08 Это будет немного странно, но вы сможете составить довольно полное представление об объекте.
    4:13 Наконец, наиболее показательный способ, использующий и объекты, и связи, и признаки. Как вы можете догадаться, именно этот способ мы используем в Palantir.
    4:22 Давайте посмотрим немного глубже на онтологию в Palantir, как она применяется.


















    5:08 (Онтология пронизывает практически каждую функцию в рабочем пространстве Palantir. Следовательно, наличие должным образом оформленной онтологии критично для эффективного анализа.)



    5:15 Я сказал, что Palantir – это динамическая онтология, давайте поговорим о том, что я имею в виду под динамикой.
    5:21 Первое что имеем в виду, говоря о динамике, — это то, что онтология в Palantir не жестко закодированная. Например, так исполнен осевой слой, слой интерпретаций, надстройка над базами данных, слой анализа и взаимодействия с пользователем.
    5:33 Есть некоторые понятия, которые жестко закодены: объект, признак, взаимоотношение. Объекты так же жестко подразделяются на документы, сущности и события. И это всё, — вся онтология, заданная заранее. В действительности, это больше, чем онтологическая структура, к которой вы привязаны и которую вы привыкли использовать.
    5:50 Почему мягкое кодирование? Почему бы не закодировать онтологию жестко? Я расскажу о паре недостатков такого подхода.



    6:00 Проблема в том, что используя жестко закодированную онтологию, вы неизбежно попадаете в один из двух лагерей.
    6:06 Вы имеете либо очень обобщенную онтологию, либо очень специальную, и вам придется выбирать, где вы хотите быть.
    6:12 В обобщенной онтологии вы, в действительности, ничего не моделируете. Вы имеете объекты, признаки и отношения, и можете поместить что угодно внутрь такой онтологии, но, в общем-то, и все, моделировать там нечего.
    6:21 Некоторые пытаются создать очень специализированные онтологии, где вы можете смоделировать все что захотите. Проблема здесь в том, что семантика становится сверхпрописанной/сверхопределенной (over-defined).
    6:30 Что мы понимаем под сверхопределенной семантикой? Это ситуация, когда становится чрезмерно сложно понимать, как что-то должно быть смоделировано.
    6:35 Вы можете ввести понятие «уведомление» (citation – выписка, повестка в суд, упоминание), и тогда один скажет: «О, уведомление, это когда я парковочный талон получаю», — а другой, что уведомление приходит, когда человек получает премию.
    6:48 Если нужно моделировать похожие вещи в сверхопределенной онтологии, используя «уведомление», становится сложно разделять их.
    6:54 Если вы пользуетесь мягким кодированием, между нашими лагерями возникает спектр, и, начав с общей модели, вы дойдете до некой точки, отвечающей вашим задачам (sweet spot – сладкая точка).



    7:11 Еще одно существенное преимущество динамической онтологии в том, что это гибкая система: вы можете моделировать множество разных концепций, или одну концепцию множеством разных способов.



    7:19 Гибкость – давайте увидим, как это работает. Ответим на вопрос: «Как смоделировать род занятий человека?»




    7:28 На слайде написано: «Рабочая функция человека может быть классифицирована через определение объектов».
    Во первых, взглянем на объектную модель занятости человека. Мы классифицировали рабочие функции как объекты, и вы этот слайд уже видели.
    7:40 У нас есть человек наверху и пилот, юрист, доктор внизу, так что это похоже на модель животных с родами и видами.



    7:47 Каковы преимущества и недостатки этого способа? Недостатком будет то, что вы не сможете сделать человека юристом и врачом одновременно (как львом и тигром), вам придется выбирать.
    7:56 Преимущество в том, что у вас есть много признаков, специфичных для врача или для юриста, и вы можете использовать эти признаки.
    8:04 Медицинская специализация, очевидно, отличается от юридической, и вы легко можете использовать эту разницу, работая с объектами.
    8:12 На слайде написано: «Рабочие функции человека могут быть классифицированы определением признаков его занятости»
    Вы можете использовать признаки, для того чтобы получить представление о занятости человека.
    8:17 Мы можем сказать, что человек может обладать признаком «занятость» и разными значениями этого признака.



    8:24 Можно быть доктором, пилотом, юристом, и, если у вас есть идея о множественности признака, вы можете выбрать несколько значений. В Palantir это возможно: доктор и пилот, пилот и юрист, юрист и повар.



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



    8:58 Таким образом, вы можете сказать что, человек 1 является доктором по отношению к человеку 2, человек 1 пилот, потому что управляет самолетом, человек 1 – юрист, потому что оказывает юридические услуги человеку 3. Так, на самом деле, определяется карьера.



    9:08 Так что мы видим, здесь три концепции моделирования карьеры. Вы не сможете сделать так, если используете жестко закодированную онтологию, например нормы общества.



    9:21 Я поговорил о гибкости, о мягком кодировании, но не все эти вещи подразумевают под собой динамику. Так в чем действительно динамичность онтологии Palantir?
    9:31 Дело в том, что в Palantir онтология может быть изменена и после того как была развернута. Таким образом, онтология может развиваться вместе с тем, как развивается видение мира вашей организацией.



    9:41 Несколько примеров изменений, которые вы можете совершить:
    — любой объект, признак или отношение можно удалить или добавить;
    — функциональность объектов, признаков и отношений можно изменять, — и это, наверное, самое важное.
    9:54 Важное потому, что способ, которым большинство людей взаимодействует с онтологией – пытаться понять, за что здесь отвечают разные признаки и прочее.



    10:05 Вот на слайде, для примера, список некоторых из вещей, которые вы можете изменить:

    • добавить/изменить генераторы ярлыков;
    • добавить/изменить псевдонимы;
    • добавить/изменить синтаксические анализаторы;
    • добавить/изменить контрольные параметры;
    • добавить/изменить иконки;
    • добавить/изменить приблизительные значения;
    • добавить/изменить ограничения признаков;
    • добавить/изменить ограничения связей.


    10:08 Эти изменения оказывают существенное влияние на то, как люди будут взаимодействовать с онтологией и на то, как будет проходить анализ.
    10:15 Теперь быстренько подведем итоги. С помощью динамической онтологии вы можете смоделировать все, что нужно вашей организации, в вашей сфере интересов. Эта онтология не хардкода, а софткода.

    (За помощь в подготовке статьи отдельное спасибо Алексею Ворсину, российскому эксперту по системе Palantir)

    Еще про Palantir:
    Edison
    417,00
    Изобретаем успех: софт и стартапы
    Поделиться публикацией

    Комментарии 13

      0
      Дико и отчаянно напоминает статьи про IBM Watson: много текста, мало конкретной информации про архитектуру, принцип работы, инструменты, компоненты, стандарты, все, что может пригодится и раскрывает конкретные достоинства и недостатки системы. Словом, напоминает магистерскую диссертацию, где все задумано, но не очень-то реализовано… А очень хочется вкусной информации о том, как это все действительно работает, как решаются проблемы построения онтологий: омонимия, синонимия, составные идентификаторы, как наполняются эти онтологии.
        0
        Найду — обязательно выложу
          +1
          Вообще-то, если кодировать свои онтологии в RDF формате, вся эта «гибкость» добавление/изменение/удаление идёт «из коробки», просто по факту формата кодирования. Нет живых примеров, когда эта гибкость действительно пригодилась, и это грустно.
            0
            Может, в Palantir еще добавлено время? И за dynamics скрывается еще и управление жизненным циклом сущностей? Плюс всякие «темпоральные логики», «приближенные вычисления», «вероятностная логика», "теория очевидностей"…
            В обычном RDF с этим проблемы наблюдаются.
          +1
          Интересно, можно ли сделать некий аналог корпоративной PRISM используя
          1. Semantic MediaWiki (SMW) — для хранения и отображения данный
          2. PywikiBot — для наполнения wiki данными (загрузки с других сайтов и БД (например БД телефонов, адресов паспортных данных, данных налогоплательщиков и компаний)) для связывания их между собой?
            0
            А этот Палантир вообще доступен для простых пользователей? Демо версии с урезанным функционалом и т.п.?
              0
              Есть корпоративные версии для банков типа голдман сакс или ФБР. + это не коробочный продукт, там много берут за консалтинг при установке и настройке ПО + обучение. суммы порядка 1-25 млн$ с компании
                +1
                … за интеграцию к базам данных заказчика, скорее всего.
                0
                Википедия пишет:

                Analyzethe.us
                Продукт Analyzethe.us предназначался для анализа информации по американским открытым данным, в основном — по наборам, опубликованным на Data.gov, а также по источникам неправительственных организаций; основные предметные области — расходы федерального бюджета, госконтракты, лоббирование, финансирование избирательных кампаний[23]. Пользователям предлагалось бесплатно с сайта analyzethe.us запустить java-приложения (работавшие вследствие ошибки в используемой версии Java Web Start только под Windows), которые подключались к серверам Palantir для доступа к данным; такое распространение продукта было нацелено на популяризацию платформы Gotham, на основе которой сделаны приложения[23].

                По состоянию на 2016 год сайт не функционирует.
                0
                А что значит российский эксперт по системе Palantir?
                Он там работает, использует её или что-то ещё?
                  0
                  воду какую то налили
                  как я понял я примерно то же разрабатываю
                  скинул бы ссылку, боюсь сочтут за рекламу
                    +1
                    Не надо боятся. Очень хочется посмотреть.
                      0
                      ну вот тут можно поиграться
                      http://constructor.it-kip.ru
                      если разберёшься
                      описание где то было, но оно не полное и старое

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

                  Самое читаемое