В начале этой недели важная глава в истории технологий незаметно подошла к концу. При запуске Тим О'Рейли описал Freebase Metaweb как систему для создания синапсов для глобального мозга, а почти десять лет спустя эту замечательную часть глобального мозга, которая с тех пор была поглощен сетью знаний Google - был отключен.

Видение

Томас Л. Фридман недавно заметил изобилия изобретений, произошедших в 2007 году:

В 2007 году Apple выпустила iPhone, положив начало революции смартфонов и приложений; в конце 2006 года Facebook открыл свои двери для всех, не только для студентов колледжей и старшеклассников, и взлетел, как ракета; Google выпустила операционную систему Android в 2007 году; Hadoop, запущенный в 2007 году, помог создать хранилище / вычислительную мощность для революции больших данных; Github, запущенный в 2007 году, масштабирует программное обеспечение с открытым исходным кодом; Twitter был выделен как отдельная платформа в 2007 году. Amazon выпустил Kindle в 2007 году. Airbnb начал свою деятельность в 2007 году.

Но он не обратил внимания на самое важное из событий 2007 года, связанных с Интернетом, - запуск Freebase компанией Metaweb в марте того же года. Значительный не с точки зрения популярности или узнаваемости бренда, а с точки зрения веса идей и видения сильно изменившегося будущего. Будущее за искусственным интеллектом.

Искусственный интеллект в последнее время добился значительных успехов и получил широкую огласку, в частности триумф AlphaGo от Google DeepMind над Ли Седол и IBM's Watson with Jeopardy!. Термин глубокое обучение стал модным в 2016 году, но, как заметил Александр Висснер-Гросс, алгоритмы, лежащие в основе глубокого обучения, существуют в различных формах уже несколько лет. Эти текущие достижения стали возможными только благодаря недавнему увеличению доступности информации по рассматриваемому предмету.

Я считаю, что это то, что Дэнни Хиллис, Веда Глубинка-Кук, Джон Джаннандреа и его коллеги воспринимали в годы вплоть до 2007 года. Они поняли, что искусственный интеллект может быть гораздо более мощным с большим количеством информации. В частности, они признали ограничения компьютеров: машины борются за усвоение знаний так же, как это делают люди. Если бы у компьютеров был доступ ко всему богатству человеческих знаний, возможности были бы почти безграничны - это была бы андроид Минерва. Все, что требовалось, - это средства для преобразования и хранения информации в форме, легко усваиваемой компьютерами. Это должна была быть Freebase.

Технология

Создатели Freebase понимали, что информация как длинный список фактов или данных сама по себе бесполезна. Что делает данные полезными, так это взаимосвязь между фактами; связь между фактами имеет такое же, если не большее значение, чем сам факт. Как знает каждый детектив в телешоу или фильме, аргумент в пользу доказательства составляет соединение частей; вы обращаетесь в суд только в том случае, если окончательно связали оружие с обвиняемым.

Это потребовало переосмысления того, как данные хранятся в компьютерах, таким образом, чтобы взаимосвязь между фактами стала такой же важной, как и сами факты. Типичный способ хранения данных, понятный компьютерам, - это использование реляционной базы данных. Эти типы баз данных используют таблицы данных, которые внешне очень похожи на электронную таблицу Excel. Они работают хорошо, когда тип информации, которую вы используете, известен заранее, например, о корпоративных финансах или покупках клиентов. Но когда вам приходится вводить различные типы фактов в существующую информацию с помощью типичного программного обеспечения, это быстро становится трудным, например «Я хотел бы добавить день рождения в свою базу данных клиентов, чтобы не забыть послать им подарок, и я хотел бы записать, какой подарок я посылал им каждый год» (вы можете услышать ИТ уже стонет, и вскоре ожидайте крупный счет от внешнего разработчика программного обеспечения). Для почти бесконечных типов связей, возможных между всеми фактами в сумме всего человеческого знания, это очень быстро становится непрактичным.

Размышления о том, как хранить все человеческие знания, приводят к более глубокому философскому самоанализу - «что есть факт?». Части этого вопроса хорошо изучены, и мы можем опираться на хорошо зарекомендовавшие себя школы мысли, такие как математическая теория графов. Здесь факт можно очень просто представить в виде двух точек, соединенных линией.

Если мы обозначим первую точку как «Bono», вторую точку как «U2», а строку как «Член», мы сможем представляют тот факт, что Боно является членом U2. Чтобы представить еще один факт о Боно, мы создаем еще одну точку («Ирландия») и еще одну линию («национальность») и так далее, пока не создадим сеть фактов. . Мы можем продолжать наращивать это до бесконечности, пока не достигнем суммы человеческих знаний.

График

Дэнни Хиллис изложил свою идею в статье 2000 года, но всерьез эта технология началась в 2003 году и в 2005 году была выделена в отдельную компанию, Metaweb. База данных, на которой работает Freebase, была известна как graphd. Graphd представил ряд инновационных идей, которые в совокупности создали мощную систему, на которой можно построить мозг глобального масштаба.

В качестве примера некоторых из его функций каждому концепту в graphd был присвоен уникальный идентификационный номер, очень похожий на штрих-код; Итак, группа U2 была 0dw4g, а Джордж Клуни 014zcr. Без уникальных идентификаторов идеи с одинаковым названием - например, 41 место в США под названием Спрингфилд - невозможно было различить. Это привело бы к двусмысленности и неизбежной путанице для любого искусственного интеллекта, пытающегося разобраться в мире.

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

Самой мощной особенностью Graphd была возможность не беспокоиться о том, как данные могут быть связаны в будущем. В большинстве реляционных баз данных, особенно в тех, которые используются в крупных корпорациях, есть группы людей, работа которых состоит в том, чтобы определить, какие данные они хотят хранить и как их можно использовать в дальнейшем. Затем им приходится тратить много времени на разработку, простыми словами, какие таблицы базы данных требуются, как они будут связаны и как будут называться столбцы в каждой таблице (схема базы данных ). Все это необходимо определить и зафиксировать заранее, прежде чем можно будет использовать базу данных и добавлять в нее какие-либо данные. Graphd не требовал никаких предварительных работ. Это позволяло вам добавлять любые данные, которые вы хотели (с легким магическим действием для выявления потенциальных дубликатов и согласования их с существующими фактами), а затем, в удобное для вас время, и только если вы захотите, попробуйте для моделирования схемы, объясняющей более обширные связи между данными.

Пользовательский интерфейс

Один только Graphd не сделал Freebase отличным приложением, до него было много графовых баз данных - например, популярная база данных Neo4J была впервые выпущена в 2002 году. Что сделало Freebase великолепной, особенно для таких людей, как я, не являющихся программистами по профессии, - это относительно простой пользовательский интерфейс, доступный на Freebase.com. В качестве примера нововведения в пользовательском интерфейсе Freebase запустила в декабре 2007 года инструмент поиска с автозаполнением, Freebase Suggest. В то же время Google аналогичным образом работал над своей функцией Google Suggest, которая была запущена в августе 2008 года и позже стала функцией автозаполнения. знаком с.

Freebase предоставляет возможность одним щелчком мыши редактировать факты о сущности, так же как Википедия позволяет совместное редактирование статей.

Freebase позволяла любому создавать свою собственную схему, свою собственную интерпретацию того, как данные должны быть связаны. Freebase сделала эту сложную и эзотерическую задачу такой простой, как наведение и нажатие. Например, Freebase уже содержала статью о Дэвиде Бекхэме, но не могла показать, что он офицер Ордена Британской Империи. Спустя несколько лет после того, как информация о Дэвиде Бекхэме и Ордене Британской империи была добавлена ​​в Freebase, я создал схему, которая позволила соединить эти две темы - и сотни других получателей ВТО. Это инициированное сообществом усилие по созданию большего количества способов соединить точки - разновидность фолксономии - было новой и мощной особенностью Freebase, позволившей ему развить идею о том, что соединения добавляют гораздо больше ценности к данным.

Именно здесь, в задаче моделирования вашего собственного представления о том, как связаны факты, становится очевидным, что ваше понимание мира отличается от других. Особенно интересно поразмышлять о том, как язык - всего лишь одно из представлений информации - может быть таким двусмысленным и неясным. Было интересно встретить в сообществе Freebase и сотрудников Metaweb философов и лингвистов, работающих вместе с разработчиками программного обеспечения.

Die Grenzen meiner Sprache bedeuten die Grenzen meiner Welt. ( Границы моего языка означают пределы моего мира.) - Людвиг Витгенштейн

Веб-технологии

Freebase явно понравилась технически подкованным и представила ряд технологий, связанных с веб-разработкой. Metaweb создал свой собственный язык запросов для Freebase, MQL, который был ближе к синтаксису Datalog, чем SQL-запрос. Это давало преимущества для запроса базовой структуры графа; запросы согласовывались с формой ожидаемых данных, объединения были неявными, а шаблоны можно было применять для фильтрации или выбора переменных. По сути, MQL был похож на то, что мы теперь знаем как GraphQL. MQL был создан Metaweb примерно за 4 года до того, как GraphQL был разработан в Facebook, и за 8 лет до того, как Facebook выпустил GraphQL для широкой публики.

Metaweb также создал собственную платформу приложений Acre. Acre позволил быстро создавать и размещать приложения в сети для использования Freebase API. Это позволяло писать приложения как с клиентским, так и с серверным javascript. Примечательно, что Acre опередил Node.js в идее серверного javascript на несколько месяцев, но построен на основе движка javascript Rhino Mozilla, а не Webkit от Google. Летом 2009 года Acre был выпущен как программное обеспечение с открытым исходным кодом.

Автоматические боты извлекали информацию из Википедии и других баз данных и пытались понять, где эти факты связаны с Freebase. Как показывает рост популярности чат-ботов, большая часть этой работы выполняется людьми. Freebase создала приложение, которое использовало силу краудсорсинга и задавало вопросы людям: Дэвид Бекхэм футболист? Умер Уинстон Черчилль в 1965 году? . Freebase открыла API для этого приложения, RABJ, чтобы другие разработчики могли задавать вопросы в конкретных областях, которые их интересовали. В результате сотен тысяч вопросов, на которые ответили участники сообщества и подрядчики, объем и качество базы данных Freebase выросло.

Семантическая сеть

Первоначальное видение Дэнни Хиллиса обсуждало идею разделяемой сети знаний, возможно, основанной на идее Тима Бернерса-Ли о семантической сети, которую он описал в 2006 году как:

[Семантическая сеть] предназначена для создания ссылок, чтобы человек или машина могли исследовать сеть данных.

Для Metaweb это означало не просто потребление данных для интеграции в Graphd, но поиск других баз данных и создание ссылок непосредственно между темами в другом месте. Идея уникального идентификатора для каждого факта, встроенного в технологию Graphd, нашла отражение в API Freebase и на веб-сайте. У каждой темы был свой URL-адрес, по которому другие могли напрямую ссылаться на контент. API Freebase RDF был запущен в октябре 2008 года и обеспечивает совместимый с W3C машинный интерфейс для передачи данных через Интернет.

OpenRefine

Не все издатели данных, на самом деле очень немногие, придерживаются правил связанных открытых данных и семантической сети. Вместо этого большая часть публикуемых данных хранится в текстовых файлах, электронных таблицах Excel и дампах баз данных; он часто бывает ошибочным, двусмысленным и неполным. Короче говоря, многие данные беспорядочные и непригодны для использования без особых усилий, затраченных на их приведение в порядок. Стало очевидно, что большая часть сообщества, предоставляющего массовые данные для Freebase, боролась с этими проблемами, и не существовало хорошего метода их решения. В результате этой борьбы возник Gridworks, позже переименованный в OpenRefine, инструмент с открытым исходным кодом, созданный в сотрудничестве между сотрудниками Metaweb, в частности Дэвидом Хьюном и Стефано Маццокки, и сообществом разработчиков Freebase. Это программное обеспечение для настольных ПК с открытым исходным кодом позволяет любому открывать файл, заполненный данными, и визуально проверять данные о проблемах. Freebase еще больше снизила барьер для внесения данных в свою базу данных и, в свою очередь, предоставила новый инструмент, который можно использовать различными способами.

Сегодня

Metaweb был приобретен Google в июле 2010 года. Технология, команда и данные были частично интегрированы в сеть знаний Google и другие поисковые технологии.

Многие приложения Freebase, включая ее веб-сайт, были выпущены как программное обеспечение с открытым исходным кодом. Такие инструменты, как OpenRefine, по-прежнему поддерживаются активным сообществом, а Graphd был передан сообществу с открытым исходным кодом Google. Подобные идеи баз данных - только добавление, ACID, графовая база данных последней схемы, использующая запросы типа журнала данных - можно найти в таком программном обеспечении, как Datomic Рича Хики и Cayley Барака Миченера.

На момент закрытия Freebase в базе данных было 1,9 миллиарда фактов. Вся его база данных по-прежнему доступна для скачивания, а также была сделана доступной в виде открытых данных для проекта Викиданных.

Coda

Впервые я столкнулся с Freebase в 2008 году, когда искал общедоступный проект, который собирал необработанные данные. Я только что прочитал Программирование коллективного разума Тоби Сегарана (все еще хорошая книга и рекомендованная. По совпадению, Тоби позже работал с Metaweb) и искал данные, с которыми можно было бы поиграть. С этого момента я на несколько лет погрузился в кроличью нору, будучи частью общественного сообщества добровольцев, которые вносят свой вклад, поддерживают и исследуют Freebase. Я нашел в Freebase поддерживающее сообщество единомышленников, которые по самым разным причинам работали вместе над этим чрезвычайно амбициозным проектом.

Freebase.com закрылся на этой неделе не потому, что он потерпел неудачу, а потому, что он был успешным. В авангарде машинного обучения и семантической паутины Freebase показала путь вперед для подобных Google Knowledge Graph и Wikidata, в которые она теперь включена.

Благодарности

Спасибо Тому Моррису, Спенсеру Келли и Таду Гидри за рецензирование черновика. Все ошибки и упущения, конечно же, мои.

И спасибо всем, кто был частью замечательного сообщества Freebase за последнее десятилетие.