Недавно заместитель министра связи и массовых коммуникаций РФ Марк Шмулевич дал интервью журналу «Директор информационной службы», где, говоря о Больших Данных, отметил особое значение деятельности частных компаний (имеются в виду Cloudera и Palantir Technologies, финансируемые различными фондами, в том числе ЦРУ, через фонд In-Q-Tel, выполняющий посредническую функцию между ЦРУ США и научными организациями), обратив внимание на то, что и в России, как и в США, ожидается массовый спрос на технологии Больших Данных. В нашей стране он пока не так заметен, хотя мы наблюдаем тенденцию к росту. В область интересов In-Q-Tel, существующего с 1999 года, входят программное обеспечение, электроника, сенсорные сети, биотехнологии и другие современные направления исследований и разработок. В целом In-Q-Tel играет примерно ту же роль по отношению к разведслужбам, что DARPA по отношению к Пентагону, и, что еще важно отметить, результаты финансируемых In-Q-Tel и DARPA работ не замкнуты на особые задачи, а практически имеют двойное применение.
Государственный подход к Большим Данным
Интерес к технологиям Больших Данных в России достаточно велик, но практических результатов в этой области достигнуто пока немного. Почему? Михаил Зырянов |
О Cloudera в отечественной прессе написано немало, а о Palantir Technologies известно существенно меньше, обнаруживаются только отдельные отрывочные упоминания, хотя эта компания представляет интерес, причем с двух точек зрения: публичной и технологической.
Palantir Technologies привлекла к себе внимание в связи с широко известными утечками сведений о деятельности спецслужб США. Писали, например, о ее роли в обнаружении Усамы Бен Ладена. Компанию привлекают к программам, в основном организованным Агентством национальной безопасности, по сбору данных о сетевой активности, анализу данных методами data mining, изучению метаданных и обеспечению различного рода аналитики. Такой вид деятельности существовал давно — в 60-е годы он был ограничен социальной лингвистикой, но современные средства коммуникации вдохнули в него новую жизнь. Наибольшую известность приобрели программы Stellar Wind, Prism, EvilOlive и ShellTrumpet, они стартовали и развивались синхронно с появлением массового доступа к Сети.
О создании компании и роли, которую сыграли ее генеральный директор Алекс Карп и его многолетний друг, один из основных инвесторов Facebook Питер Тиль, детально написали сотрудники Forbes Энди Гринберг и Райан Мак в статье, в русском варианте озаглавленной «В поле зрения: зачем инвестор Facebook Питер Тиль создал прообраз Большого Брата». В других публикациях Карпа называют самым эксцентричным руководителем компании Креминиевой долины, подробно разбирая методы подбора кадров и описывая необычный хакерский социальный климат его фирмы. В этом отношении чрезвычайно интересны отзывы тех, кто некоторое время поработал в Palantir. Наиболее обстоятельный анализ «Palantir Technologies — модель, свет и тени истории успеха» (The Palantir Technologies model, lights and shadows on a case of success) помещен на сайте Infosec Intstitute. Пожалуй, главный вывод, который можно сделать из этих публикаций, состоит в том, что меняется основная парадигма создания оборонных технологий. Наряду с классическими закрытыми проектными и исследовательскими организациями со всеми атрибутами этого жанра появляются «конторы», в которых в свое удовольствие работают плохо управляемые и совершенно отвязные парни, способные сделать то, что ни одной зарегулированной компании не под силу. Чтобы понять, как такое возможно, достаточно посмотреть корпоративный блог Palantir и, в частности, страницу, посвященную «неделе хаков», когда прекращается любая обычная работа и весь коллектив переключается на самые немыслимые изобретения.
Атмосфера, созданная в таких «конторах», в ряде случаев помогает принимать нестандартные решения — например, по обнаружению потенциального террориста посредством аналитики. Допустим, нетипичный для законопослушного обывателя поступок привлекает внимание ЦРУ к какому-то персонажу: грубая езда, обналичивание крупной суммы денег в сомнительном банке, необычное поведение в местах развлечения и тому подобное. Это действие становится спусковым моментом для последующего аналитического расследования с использованием данных из общедоступных источников: миграционные данные, сведения об аренде автомобиля и гостиниц, снимки с камер наблюдения и т. п. Далее подключаются собранные данные об отпечатках пальцев, ДНК и разного рода агентурные сведения, в итоге набирается информация для вынесения того или иного суждения. Основная проблема состоит в том, что организации, подобные ФБР или ЦРУ, имеют тысячи различных баз данных, но собрать их вместе — непосильная работа, слишком велики объемы и слишком разные форматы. И вот тут-то и находится место для компаний типа Palantir, которые могут комбинировать содержимое различных баз, выделять связанные фрагменты и складывать из них общую картину. Отношение к этому виду деятельности зависит от гражданской позиции и выполняемой функции, поэтому нет ничего удивительного в том, что клиентами Palantir являются армейские, флотские и специальные службы, полиция, а в последнее время все чаще и различные финансовые институты. Кстати, несмотря на шпионское настоящее, предпосылки к созданию Palantir обнаруживаются именно в сфере финансов. Основатель компании Питер Тиль с конца девяностых входил в руководство созданного им же крупнейшего оператора электронных денежных средств PayPal. Его возможностями немедленно воспользовались криминальные структуры, в том числе и из России, которые настолько быстро меняли свою тактику, что традиционными ручными методами отследить их действия было невозможно. Программы, созданные специалистами PayPal, анализируют родословную каждой транзакции, выделяют подозрительные и передают сведения о сомнительных операциях аналитикам. После перехода PayPal в собственность eBay в 2004 году Тиль с коллегами создали Palantir.
Вызывает удивление тот факт, что специфика приложений не мешает продуктам Palantir быть неплохо документированными, а создаваемому ей ПО — открытым. Компания сосредоточена на создании аналитической платформы для комплексного анализа данных, позволяющей импортировать структурированные данные (базы данных, электронные таблицы) и неструктурированные (тексты, презентации, изображения) для их дальнейшего анализа с привлечением всех доступных средств: теории графов, теории множеств, классической статистики и др. Известно о двух версиях платформы — Palantir Gotham и Palantir Metropolis, хотя прежние названия продуктов точнее отражали их направленность: первая платформа изначально называлась Palantir Government, а вторая — Palantir Finance. У каждой из них свои потребители, у одной — государственные институты, у другой — финансовые.
Несмотря на кажущиеся фантастическими результаты, на концептуальном уровне все, что делает Palantir, довольно просто: сначала нужно собрать необходимый массив данных, интегрировать их и снабдить метками-тегами, выполняющими функцию метаданных, требуемых для анализа, а затем выполнять главную задачу — анализировать. Чтобы анализ был продуктивным, необходимы соответствующие аналитические алгоритмы, причем во многих случаях успех обеспечивает групповая работа экспертов. Деятельность Palantir разделяется на пять направлений.
- Интеграция данных. Для того чтобы извлечь из разнородных данных распределенную между ними общую информацию, их прежде всего следует собрать в одном месте и представить в общей форме. В распоряжении Palantir есть несколько способов для «всасывания» данных из множества разных мест в объектное хранилище, построенное на основе онтологий.
- Поиск и обнаружение. В арсенале Palantir имеется несколько поисковых механизмов, причем наибольший интерес представляют использование в них онтологий и способы составления сложных запросов с привлечением булевой логики, фонетических механизмов или metaphone, использующих индексирование слов по их звучанию и по близости по значению (word proximity), но без составления сложных запросов на языке.
- Управление знанием. В данном случае под управлением понимается практический подход, когда пользователь своими силами обнаруживает интересующую его информацию и данные, а Palantir добавляет к ним те сведения и факты, которые считает связанными.
- Взаимодействие аналитиков. Каждый из экспертов, участвующих в анализе данных, может следовать своим идеям, делиться ими с другими и использовать результаты коллег.
- Аналитические алгоритмы. В деятельности служб и компаний часто возникают проблемные зоны, и для них можно создавать генетические алгоритмы, то есть эвристические алгоритмы поиска и оптимизации, позволяющие разрешать проблемы.
Обе платформы Palantir не следует рассматривать как обычные инструментальные наборы, где каждое из средств может использоваться по отдельности — сила в комплексном подходе.
Онтологии
В компьютерной науке и в искусственном интеллекте под онтологией понимают некий подход к формализации знаний в определенной предметной области в виде схемы, отражающей структуру данных, состоящую из объектов, поделенных на классы, связей между ними, а также из правил и ограничений, принятых в этой области. Такую предельно простую интерпретацию онтологии с очень большой натяжкой можно связать с философским понятием об онтологии, как учении о бытии, еще сложнее отождествление онтологии с метафизикой бытия. У Palantir в этом отношении все предельно просто — онтология здесь всего лишь определение того, как данные структурируются при загрузке в систему. Любые такие онтологии строятся вокруг трех основных типов (объектов): Entity (сущность), Event (событие) и Document (документ), связей между ними и свойствами этих типов:
- сущность — персонаж или вещь, или еще что-то реальное, именуемое существительным; сущностью могут быть, например, персона, предмет или координаты;
- событие — действие, происходящее в некоторый момент времени в точке, имеющей координаты, — например выполнение заказа, доставка товара;
- документ — представление неструктурированных текстовых данных в формате HTML.
Структура объектов и их свойств такова, что любой объект может обладать только двумя собственными свойствами, а все остальные свойства хранятся отдельно и привязаны к объекту. Таким образом в Palantir обеспечивается мелкомодульное управление доступом (до уровня свойств) и множественность свойств объектов, то есть хранятся все возможные значения свойств, а не список свойств со списком значений каждого свойства. Удачной иллюстрацией такой организации может служить онтология газетной статьи о футбольном матче: свойства — имя, номер, команда, позиция, минута матча и название газеты; документ — репортаж о матче, включая название газеты и имя автора; сущности — команда с ее названием, персона с именем и принадлежностью к команде или без них, это может быть игрок, тренер или судья; события — предъявления карточек, забитый гол и т. п.; связи — кто предъявил карточку и кому, кто забил гол.
Очевидно, что, пользуясь такой онтологией, можно составить формальное описание матча и построить граф, отражающий ход событий.
Интеграция данных
Данные должны быть представлены в виде, приемлемом для анализа, — этот процесс сбора и перевода называют интеграцией, и для него существует несколько инструментов.
- Front End Import. Фронтальный импорт FEI — достаточно простой способ ввода в ручном или полуавтоматическом режиме с последующим применением процедур Crawl, Extract, Detect, Transform (CEDT). Процедура Crawl (в данном контексте «просмотр», «поиск») служит для определения того, где есть нужные данные; Detect определяет, как получить данные; Extract позволяет выделить нужные данные; Transform — преобразовать их в объекты.
- Kite. Приложение, преобразующее входные структурированные данные в собственный промежуточный формат Palantir XML (pXML) описания объектов, их свойств, требований к безопасности, дополнений к ним и связей. Формат pXML используется для импорта и экспорта данных, а также для связи с онтологиями. После того как создан репозиторий pXML, для улучшения данных могут быть использованы процедуры Import/Resync для его регистрации в системе.
- Raptor. Этот пакет используется для просмотра и индексации больших структурированных файлов как в автоматическом, так и в полуавтоматическом режиме.
- Phoenix. Средство обработки различных лог-файлов с выделением интересующих параметров: номеров телефонов, адресов и т. п.
- Plug-in Dev. Механизм для подключения способов интеграции, созданных для решения конкретной задачи.
Приложения-инструменты
Доступ к ресурсам Palantir предоставляется пользователю через несколько приложений.
Для входа в систему служит приложение Home, сообщающее пользователю о событиях, произошедших с момента его последнего вхождения, оно может быть адаптировано к предпочтениям пользователя. Далее пользователь переключается на приложение Browser, для которого точнее подходит слово dossier, то есть инструмент, обеспечивающий доступ к хранимым делам или досье. Этот этап работы служит для насыщения текстов метаданными в форме разметки и добавления в тексты тегов. Возможны два способа входа: по типу Document или по типам Entity и Event, они нужны для выполнения разного рода действий над текстами. Если выбран вход Document, то приложение превращает в сырой текст данные из форматов html, doc, docx, txt и pdf, после чего может быть выполнена необходимая разметка (tagging), включающая создание новых объектов, дополнение старых объектов новыми свойствами, установку связей между объектами. Разметка обеспечивает возможность для дальнейшей работы с документами в рамках системы Palantir. Для выполнения разметки, то есть для прикрепления к тому или иному фрагменту текста, используется ярлык-тег. В простейшем случае такой фрагмент выбирается вручную, можно использовать технологии NetQwl на базе языка описания онтологий QWL или SAP Text Analytics, а в последних версиях Palantir есть средства поддержки разметки, предлагающие разного рода подсказки. Если же вход осуществляется по типам Entities и Events, то разметка носит обратный смысл — с помощью метаданных осуществляется обобщение свойств объектов.
В Palantir используется приложение Graph для отображения событий, сущностей и документов в виде узлов, а связей между ними — в виде ребер. Это не граф в математическом смысле, а картинка, служащая для наглядного представления связей между объектами. Такой граф служит основным инструментом аналитика, который может выбрать автоматическое размещение (Auto Layout), если объектов немного, в других случаях он может использовать размещение по кругу (Circle Layout), в виде грида (Grid Layout) или по иерархическому принципу (Hierarchical Layout). Для управления созданным графом служит функция Ring Menu, объединяющая множество способов управления графом, позволяющих устанавливать связи, группировать их, дополнять объектами, уничтожать, накапливать историю изменений и др.
Приложение Collaboration позволяет пользователям объединяться в команды, обмениваться сообщениями, предоставлять другим полученные результаты, прежде всего графы и объекты. Для создания команды используется функция Create Team, присваивающая команде имя, ее описание, символ (icon) и составляющая список ее членов. Для подключения в команду служит функция Join a team.
Все программное обеспечение Palantir создано в расчете не на профессионала в ИТ, а на специалиста в своей прикладной области. Все используемые данные имеют простое и наглядное внешнее представление, что позволяет без особых сложностей интуитивно строить схемы и процессы их анализа. Графическая среда с удобным интерфейсом на порядки ускоряет процедуру анализа по сравнению с более традиционными системами.
Платформы Palantir Gotham и Palantir Metropolis открыты и могут быть расширены в соответствии с нуждами пользователей, адаптированы практически к любому программному и аппаратному обеспечению. Под открытостью понимается наличие открытого интерфейса программирования приложений (Public API) к любой функции, расширяемая архитектура, динамические онтологии, которые могут быть адаптированы к предметной области, возможность использования дополнительных способов интеграции данных, открытый экспорт данных и API к данным без каких-либо ограничений со стороны производителя.
***
В последнее время компания Palantir заметно расширила область применения своих аналитических платформ, прежде всего в сторону медицины, биотехнологий и финансов, наглядно иллюстрируя применимость технологий двойного назначения. В России, по мнению Шмулевича, скоро появится спрос на технологии, связанные с обработкой Больших Данных, и уже сегодня наблюдается тенденция к росту. Задача государства в этой ситуации состоит в поддержке рынка — например, путем подготовки необходимых специалистов.
Леонид Черняк (osmag@osp.ru) — научный редактор, «Открытые системы.СУБД» (Москва).