Страница 2 из 5 До сих пор все, казалось бы, шло хорошо. Тем не менее есть одна проблема: множество моделей первого порядка является бесконечным. Это означает, что, во-первых, суммирование может быть неосуществимым, и, во-вторых, задача определения полного, согласованного распределения на бесконечном множестве миров может оказаться очень трудной. Поэтому мы должны умерить наши амбиции, по крайней мере, на время. В частности, определим ограниченный язык, для которого интересующими становятся только модели, количество которых является конечным. Для этого можно использовать несколько способов. В этом разделе будут описаны реляционные вероятностные модели, или RPM (Relational Probability Model), идея которых заимствована из семантических сетей (см. главу 10) и из объектно-реляционных баз данных. Другие подходы обсуждаются в библиографических и исторических заметках в конце настоящей главы. Модели RPM допускают использование константных символов, которыми именуются объекты. Например, допустим, что ProfSmith— имя профессора, a Jones— имя студента. Каждый объект представляет собой экземпляр некоторого класса; например, ProfSmith относится к классу Professor (Профессор), Jones— к классу Student (Студент). Предполагается, что класс каждого константного символа известен. Применяемые нами функциональные символы будут подразделяться на два типа. Функции первого типа, простые функции, отображают объект не на другой структурированный объект, а на некоторое значение из фиксированной области значений, полностью аналогично случайной переменной. Например, значениями функций Intelligence (Jones) (Интеллект Джонса) и Funding (Prof Smith) (Финансирование профессора Смита) могут быть hi (высокий) или 1о (низкий), а значениями функций Success (Jones) (Успех Джонса) и Fame (Prof Smith) (Известность профессора Смита) могут быть true (истинный) или false (ложный). Функциональные символы не должны применяться к таким значениям, как true и false, поэтому вложение простых функций невозможно. Это позволяет исключить один из источников бесконечных ветвлений. Значение простой функции, применяемое к конкретному объекту, может быть наблюдаемым или неизвестным; для нашего представления эти значения будут служить значениями основных случайных переменных. Допускается также использование сложных функций, которые отображают объекты на другие объекты. Например, значением функции Advisor (Jones) (Консультант Джонса) может быть Prof Smith. Каждая сложная функция имеет заданную область определения и диапазон значений, которые являются классами. Например, областью определения функции Advisor является Student, а диапазоном значений — Professor. Функции применяются только к объектам соответствующего им класса; например, значение консультанта Advisor для Prof Smith не определено. Сложные функции могут вкладываться, например значением выражения DeptHead(Advisor(Jones) ) может быть ProfMoore. На данный момент предполагается, что для всех константных символов значения всех сложных функций известны. Поскольку база знаний является конечной, из этого следует, что каждая цепочка применений сложных функций приводит к получению одного объекта из конечного множества объектов.
|