Как стать автором
Обновить
5.2

Семантика *

Веб 3.0

Сначала показывать
Порог рейтинга
Уровень сложности

«Чем это сделать?»: поиск API — методики и проблемы

Время на прочтение5 мин
Количество просмотров6.4K
Современные программы в значительной степени строятся из готовых кирпичиков — библиотек. Уникального кода и архитектурных решений в каждой программе относительно мало. Очень часто бывает, что существующие библиотеки не слишком высокого качества, но даже самый крутой программист не станет их переписывать.

Этот факт находит отражение и в изменении учебных курсов. Сассман, автор SICP, самого известного курса по программирование, сказал: " инженерное дело в середине 90-ых, а уж тем более в 2000-ых сильно отличается от инженерного дела 80-ых. В 80-ых хорошие программисты проводили много времени в размышлениях, а потом писали немного кода, который работал. Код работал близко к «железу», даже Scheme — все было прозрачно на всех стадиях. Как с резистором, достаточно посмотреть на цветную маркировку, чтобы узнать номинальную мощность, допустимые отклонения, сопротивление и V=IR — это все, что нужно знать. 6.001 был задуман как курс для обучения инженеров тому, как из маленьких кубиков, в которых они досконально разбираются, посредством простых техник составлять сложные конструкции, которые делают то, что от них хотят. Но программирование сейчас далеко не то же самое. Теперь вы ковыряетесь в непонятной или несуществующей документацией для софта, даже неизвестно, кем написанного. Вы должны досконально исследовать библиотеки, чтобы узнать, как они работают, пробовать разные исходные данные и смотреть, как реагирует код. Это в корне иная работа, и для нее требуется иной курс обучения."

Строительные кирпичики стандартизированы — каменщику обычно не приходится выбирать подходящий именно для этого места кирпич. С библиотеками все наоборот — то, что предназначено для обработки PDF не подойдет для создания распределенной вычислительной системы. Возникает потребность найти нужную библиотеку, в ней нужную функцию и понять, как ее встроить в свою программу. Google, как и любая другая ориентированная на естественный язык поисковая система пока помогает мало. Так что рассмотрим другие подходы.
Подробности

Базы знаний. Часть 2. Freebase: делаем запросы к Google Knowledge Graph

Время на прочтение24 мин
Количество просмотров41K
image
Больше года назад Google объявил, что отныне в их поиске используется таинственная Сеть Знаний (официальный перевод Knowledge Graph). Возможно, не все знают, что значительная часть данных Сети доступна для использования всеми желающими и доступна по прекрасно описанному API. Этой частью является база знаний Freebase, поддерживаемая Google и энтузиастами. В этой статье мы сначала немного подурачимся, а потом попробуем сделать несколько простеньких запросов на языке MQL.
Эта статья — вторая из цикла Базы знаний. Следите за обновлениями.

  • Часть 1 — Введение
  • Часть 2 — Freebase: делаем запросы к Google Knowledge Graph
  • Часть 3 — Dbpedia — ядро мира Linked Data
  • Часть 4 — Wikidata — семантическая википедия

Читать дальше →

Базы знаний. Часть 1 — введение

Время на прочтение5 мин
Количество просмотров67K
Одной из причин слабого использования Linked Data-баз знаний в обычных, ненаучных приложениях является то, что мы не привыкли придумывать юзкейсы, видя перед собой только данные. Трудно спорить с тем, что сейчас в России производится крайне мало взаимосвязанных данных. Однако это не значит, что разработчик, создающий приложение для русскоязычной аудитории совсем уж отрезан от мира семантического веба: кое-что всё-таки у нас есть.
image
Основными источниками данных для нас являются международные базы знаний, включающие русскоязычный контент: DBpedia, Freebase и Wikidata. В первую очередь это справочные, лингвистические и энциклопедические данные. Каждый раз когда вам в голову приходит мысль распарсить кусочек википедии или викисловаря — ущипните себя как следует и вспомните о том, что всё, что хранится в категориях, инфобоксах или таблицах, уже распарсено и доступно через API с помощью SPARQL или MQL-интерфейса.

Я попробую привести несколько примеров полезных энциклопедических данных, которые вы не найдете нигде, кроме Linked Data.

Эта статья — первая из цикла Базы знаний. Следите за обновлениями.


Читать дальше →

Semantic Forms для MediaWiki

Время на прочтение10 мин
Количество просмотров18K
В прошлый раз я описал функционал плагина Semantic MediaWiki, позволяющего управлять структурированными данными в вашей системе и создавать на их основе различные представления. Ложкой дёгтя здесь является то, что пользователям приходится учить дополнительные элементы разметки.
Сегодня мы поговорим про расширение Semantic Forms, позволяющее сделать вики совсем не похожей на вики и привлечь к работе более широкий круг пользователей.



Напомню, что сердцем Semantic MediaWiki является механизм семантических свойств. Назначение семантического свойства странице хоть и похоже на простое создание вики-ссылки [[имя свойства::значение свойства | что выводить на экран]], но, всё-таки, это новый синтаксис. Вдобавок даже если наши пользователи будут настолько дисциплинированы, что прочитают и вникнут в руководство по созданию свойств, они вряд ли будут называть все термины единообразно.
На моей вики, посвященной историческим личностям половина людей будет описана свойством время рождения, другие участники опишут людей свойством год рождения, а третьи дата рождения. Теперь для того, чтобы получить список исторических личностей и вывести их даты рождения, мне нужно написать три запроса вместо одного:

{{#ask:[[Категория Историческая личность]] | ?Время рождения }}
{{#ask:[[Категория Историческая личность]] | ?Год рождения }}
{{#ask:[[Категория Историческая личность]] | ?Дата рождения }}

Для решения этих проблем применяют шаблоны и формы.
Читать дальше →

Истории

Яндекс поддержал Wikidata

Время на прочтение7 мин
Количество просмотров22K
Сегодня на конференции SemTechBiz в Сан-Франциско было объявлено о том, что проект Wikidata получил от Яндекса грант в размере 150 тысяч евро.

Wikidata — проект Фонда Викимедиа, совместно редактируемая база знаний для централизованного хранения структурированных данных.

Яндекс поддержал Wikidata

Специально для нашего техноблога на Хабре мы расспросили Denny Vrandečić, одного из основателей этого проекта, о том, что такое Wikidata в подробностях, чем отличается от других похожих проектов и какую пользу может принести инфраструктуре будущего интернета и всем его пользователям.

Что такое Wikidata? Какие у этого проекта цели? Почему именно Wikidata стал первым проектом Фонда Викимедиа с 2006 года?

Wikidata — это новый проект Фонда Викимедиа. Главная задача последнего — предоставить каждому человеку на планете свободный доступ ко всем возможным знаниям. Самый известный наш проект — Википедия, открытая энциклопедия, доступная более чем на 200 языках.
Читать дальше →

ISO 15926 vs Семантика: сравнительный анализ семантических моделей

Время на прочтение16 мин
Количество просмотров17K
Идея применения семантических моделей в корпоративных информационных системах существует давно, но устойчивая практика такого их использования еще не сформировалась. Семантические модели можно применять для интеграции данных, аналитики, управления знаниями; однако, пока нет общепринятого мнения о том, как подходить к оценке их полезности, по каким методикам должны строиться такие модели.
Задача статьи — на практическом примере сравнить аналитический потенциал моделей, построенных по правилам интеграционного стандарта ISO 15926, который предписывает использование OWL и SPARQL для выражения моделей и работы с ними, и «обычных» семантических моделей, построенных без использования этого стандарта. Решение этого вопроса позволит выбрать диапазон задач, для решения которого целесообразно применять такие высокоуровневые парадигмы семантического моделирования, как ISO 15926.
Читать дальше →

Semantic MediaWiki

Время на прочтение6 мин
Количество просмотров43K

Semantic MediaWiki — это расширение, ради которого стоит ставить MediaWiki: оно помогает бороться с бардаком и хаосом, который рано или поздно воцаряется в любой вики-системе.

  • Оно позволяет поддерживать согласованность данных на вики.
  • С его помощью можно обращаться с вики как с базой данных.
  • С его помощью можно генерировать красивые графики, диаграммы и графы на основе вики-данных.
  • Оно позволяет пользователям возможность вводить данные с помощью форм, а не вики-разметки, понижая тем самым порог вхождения для пользователей.

SMW позволяет использовать вики как составную часть системы управления знаниями, с его помощью можно создавать коммерческие системы, которые сочетают простоту вики, четкость коллаборативных баз данных, и лучшее из мира Semantic Web. В общем, это вещь, более чем достойная пристального внимания и подробного обзора.
Читать дальше →

Редактор онтологий на естественном языке

Время на прочтение4 мин
Количество просмотров19K
На выставке CeBIT я познакомился с представителями польской компании Cognitum, которая разрабатывает семантический фреймворк Ontorion. Важнейшей частью этого фреймворка является редактор онтологий Fluent Editor, который показался мне замечательным и достойным обзора. Главное достоинство Fluent Editor'а состоит в том, что он позволяет создавать OWL-онтологии людям, не имеющим представления о синтаксисе OWL (хотя иметь представление о его концепциях, и о моделировании информационных структур, конечно, все равно нужно). Онтологии создаются на естественном языке, Controlled English — то есть на обычном английском, к которому применены определенные правила и ограничения. Приведу обзор основных возможностей синтаксиса этого языка, не забывая смотреть на то, в каком виде его основные выражения будут сохраняться в OWL.

Для примера начнем составлять онтологию, содержащую сведения о бизнесе некой компании. У этой компании, как у любой коммерческой организации, есть поставщики и покупатели. Те и другие являются организациями, причем одна и та же организация может быть одновременно и поставщиком, и покупателем. Запишем соответствующие выражения на Controlled English:

Every customer is a organization.
Every supplier is a organization.

Читать дальше →

Цитатник в облаках

Время на прочтение6 мин
Количество просмотров3.1K
Опишем концепт интерфейса контекстного ввода цитат. Речь будет не про те облака, о которых все подумали. Облака — типа бенчмарка «Heaven», 4-я версия которого недавно вышла (рис. слева) или Небесного замка Лапута, а цитатник — элемент интерфейса типа летающих островов. На поверхности этих островов теплится жизнь, а сами они могут летать. В нашем случае — перемещаться мышью. Опору их составляют камни, а у нас — контекстные кнопки.

Как создаётся летающий остров? Выделяем мышью контекст. Выделение создаёт основу поверхности — цитату. Под ней появляется кнопка, едва заметная, полупрозрачная, которую мы привыкли видеть в Ворде, начиная с «2007». Она может вскоре исчезнуть, и правильно, если выделение текста создавалось для других целей. Но если навести мышь — создаётся опора нашего будущего цитатника, парящего в облаках.

Зачем нужен цитатник? Оказывается,
целей может быть много.

Технологии Semantic Web для интеграции информационных систем

Время на прочтение5 мин
Количество просмотров9.8K
Технологии семантической паутины (Semantic Web) периодически привлекают внимание благодаря тому, что на их основе создаются новые интересные инструменты. Совсем недавно появился социальный поиск (Graph Search) в Facebook – первый инструмент поиска по графу, доступный действительно широкому кругу пользователей.
Однако, сфера применения семантических технологий не ограничивается социальными сетями и поисковыми сервисами. Идея применить эти технологии для организации обмена данными между информационными системами достаточно очевидна. Если одна система передает другой не только сами данные, но и информацию об их предметной сущности (смысле, семантике), это позволяет лучше абстрагировать обменивающиеся системы друг от друга, чем при использовании выгрузок в XML или веб-сервисов SOA.
Кодирование информации в семантическую форму при передаче
Сегодня существует несколько реализаций такого подхода. Большинство из них, конечно, сделано зарубежными компаниями, но есть и российские разработки. В этой статье я расскажу об архитектуре одной таких систем, которую реализовал на практике.
Читать дальше →

Как и для чего мы сделали свой валидатор микроразметки

Время на прочтение9 мин
Количество просмотров44K
Недавно мы писали о нашем валидаторе семантической разметки. А сегодня хотим рассказать, зачем и почему он был сделан, какие сложности возникли при разработке и как мы с ними справились. Одна из причин, по которой мы его сделали, конечно, в том, что мы хотели избавить роботов от встреч с ошибками вебмастеров. Но руководствовались мы не только этим.

Реакция роботов на ошибки в микроразметке

Медленно, но верно семантическая разметка набирает популярность. Чуть больше десяти лет назад (в мае 2001 года) впервые был введен термин «семантическая паутина». В 2004 году появилось первое упоминание формата RDFa, примерно тогда же начали развиваться микроформаты. В июне 2011 года был запущен стандарт schema.org. Сейчас семантическую микроразметку поддерживают и Яндекс, и другие ведущие мировые поисковые системы.

Однако вебмастера часто сталкиваются с тем, что валидаторы HTML выдают массу ошибок.
Читать дальше →

Создание частотного словаря на основе анализа библиотеки художественной литературы

Время на прочтение4 мин
Количество просмотров9K
Общий привет.

Недавно, для шлифовки морфологического словаря, способного (предположительно) генерировать все возможные формы слова из инфинитива — мне понадобился достаточно объемный частотный словарь русского языка. Частотный словарь — вещь очень простая, слова в нем упорядочены по частоте, с которой они встречаются в анализируемом тексте.
Читать дальше →

Text Mining Framework (Java)

Время на прочтение5 мин
Количество просмотров31K
Что это и для кого (вместо вступления)

В данной статье я бы хотел рассказать о небольших результатах своей научной деятельности в сфере Text Mining. Этими самыми «результатами» стал небольшой FrameWork, который, пока еще, и до либы то не очень дотягивает, но мы растем =). Данный проект — реализация на практике некоторых, разработанных мною, теоретических положений. Как следствие этого я представляю возможности, которыми он может потенциально обладать в конце внедрения всех идей. Названо сее творение: «Text Mining FrameWork»(TextMF). Давайте в кратце рассмотрим, что именно будет позволять TextMF в своей первой финальной версии и что работает уже сейчас.
Читать дальше →

Ближайшие события

25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань
20 – 22 июня
Летняя айти-тусовка Summer Merge
Ульяновская область

Идеальное хранилище документов

Время на прочтение5 мин
Количество просмотров56K
Иногда очень хочется быстро найти нужный файл. С учетом того, что файлов — сотни тысяч, а ты не знаешь ни его названия, ни содержания, ни типа — ничего. Зато приблизительно знаешь категории. И хочется его быстро вычислить и сразу же отредактировать и записать.
На сегодня удобных кросс-платформенных open-source файлопомоек с прямым доступом к файлам — НЕТ.
Далее речь пойдет не о медиабиблиотеке и не о semaweb — а о простой и удобной системе управления громадной файлопомойкой с прямым доступом к файлам.
Читать дальше →

Универсальный валидатор микроразметки в Яндекс.Вебмастере

Время на прочтение2 мин
Количество просмотров25K
В последнее время вебмастера используют семантическую микроразметку все чаще: по нашим данным, сейчас 10% страниц рунета размечены, и это число постоянно растет. А вслед за популярностью микроразметки растет и потребность вебмастеров в дополнительных ее видах. И не только тех, которые поддерживает Яндекс. Именно поэтому мы решили сделать валидатор микроразметки в Яндекс.Вебмастере универсальным. Для начала мы научили его проверять корректность всех типов разметки Schema.org и microdata.

Пример валидации разметки Product (Schema.org):валидатор микроразметки
Небольшая экскурсия в историю

SPARQL запросы к содержимому HTML страниц

Время на прочтение5 мин
Количество просмотров6.9K
Здравствуйте.
После посещения одной конференции у меня появилась идея, воплощение которой я и представляю.
Данный пост предоставляет пример работы с библиотеками grab и rdflib, а также готовый класс для выполнения SPARQL запросов к содержимому web-страниц.

Использовать данный инструмент предполагается для превращения информации с сайтов, которые не предоставляют её в структурированном виде (rdf-тройки, xml, json), в понятный «машинам» вид.
Читать дальше →

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

Время на прочтение6 мин
Количество просмотров5.7K
Пока семантическая паутина только-только развивается и захолустные веб-студии не взвинчивают цены за слова семантическая и семантический давайте посмотрим на инструменты для работы с этим зверем в php.
Читать дальше →

Немного о Microdata

Время на прочтение3 мин
Количество просмотров71K
Доброго времени суток! В этой статье я бы хотел рассказать о микроданных и о словаре schema.org. Об этой замечательной технологии уже рассказывали на хабре два раза, но в них не было освещено несколько важных моментов.

Читать дальше →

Wikidata: первый новый проект Wikimedia Foundation с 2006 года

Время на прочтение2 мин
Количество просмотров1.9K
Wikimedia Foundation собирается запустить сайт Wikidata — «открытую базу знаний о мире, которую могут читать и редактировать как люди, так и машины». Проект будут вести на всех языках, доступных в Wikimedia, и он должен стать неким центральным и единым хранилищем данных для всех проектов Wikimedia, примерно как Wikimedia Commons является центральным хранилищем мультимедийных файлов для всех остальных проектов.

Главная суть Wikidata — снабжать структурированной информацией компьютерные программы. Должен существовать некий единый формат и общий способ для всех компьютеров, как извлекать знания о мире, будь то информация о часовых поясах, координаты городов мира или дни рождения актёров. Все эти данные должны быть доступны компьютерам через единый интерфейс.
Читать дальше →

С чего начинаются онтологии

Время на прочтение5 мин
Количество просмотров28K
Для таких же начинающих, в онтологиях, как и я, а так же для тех, кто хочет начать, для тех, кто задаётся вопросом, что это, с чем это едят и с чего начать, предлагаю начинать с того, с чего начал и я, а именно:
так что же такое онтологии и с чего начать?