Сетевые модели успешно применяются в разных областях искусственного интеллекта и смежных науках. Машинное зрение — самая естественная область применения параллельных вычислений. В статье Бллларда и Брауна отражены результаты, достигнутые при решении задач машинного зрения. Однако эта же методика весьма эффективна и для исследования естественного языка, где также получены неплохие результаты. Методы параллельной обработки данных особенно хороню подходят для решения проблемы лингвистической многозначности. Задумайтесь, что происходит, когда нам, например, говорят такую фразу: «Боб бросил шар».
Вы автоматически приписываете значение каждому слову: «бросил» - скорее всего понимаете как «метнул», а «шар» сразу же представляете себе как сферу, несмотря на то что большинство слов в языке имеет по нескольку значений. Например, в предложении «Боб бросил шар в его пользу» слона «бросил шар» имеют совсем другое значение. (Здесь скорее всего нет никакого шара, т. к. речь идет о голосовании и чью-то пользу.) Задача состоит в том, чтобы разработать алгоритм, который имитировал бы речевое поведение человека и мог бы его объяснить. В лингвистике и теории познания на основании длительного изучения этих вопросов были созданы весьма сложные теории. Вклад ИИ в решение данной задачи состоит в разработке программ, воплощающих эти теории, которые легко проверить и использовать на практике. Как и для куба Некера, параллельные вычисления дают здесь наилучшие результаты.
Как в языке, так и в зрении теория предполагает наличие нескольких уровней представления и обработки информации. На рис. 3 показаны 3 из них. После того как отдельные буквы или звуки объединены в слова, идет лексический уровень, представляющий слова так, как мы их видим в словаре. Семантический уровень даст нам перечень всех смысловых значений слов, и трудность здесь заключается, конечно, в том, чтобы найти нужное значение слова. Уровень так называемых глубинных падежей различает роли, которые слова могут играть в предложении. В этом предложении употреблены следующие падежи:
- агент - человек или предмет, производящий действие1;
- объект - то, на что направлено действие;
- получатель - тот, для кого выполнялось действие.
Рис. 3. Сетевая модель понимания предложения «Боб бросил шар (в его пользу)». Модель имеет три уровня представления и обработки информации.
Основная лингвистическая идея понимания многозначных слов заключается в том, что падежные роли ограничивают разнообразие возможных значений слов, которые подходили бы в каждом конкретном предложении. Например, в сочетании «бросил шар» глагол не может иметь того значения, которое он имеет в предложении: «Боб бросил друга в беде». Кроме этого мы используем в модели еще и тот факт, что одни значения слова встречаются чаще, другие - реже.
Теперь можно объяснить, как построена сетевая модель разрешения многозначности. Как и в случае куба Некера, сочетающиеся элементы имеют положительные связи, а несовместимые — отрицательные связи типа «победитель получает все». Модель работает так, что как только слово попадает на лексический уровень, оно активизирует все значения, с которыми это слово связано. Более распространенные значения будут иметь больший вес и оказывать большее влияние. Когда появляется следующее слово, активизируется еще больше значений и ролей.
Простое предложение «Боб бросил шар» активизирует только согласующиеся между собой элементы, и мы даже не заметим всех других возможностей. Но когда в сеть для анализа поступает оставшаяся часть предложения «в его пользу», она активизирует у слова «шар» только одно его значение — «голос при голосовании» — и уменьшает активность других значений этого слова—«сфера» и «игрушка». Вслед за этим уменьшается активность всех значений глагола «бросить», кроме переносного— «проголосовать», так как в предложении больше нет объекта, который можно бросать в прямом смысле этого слова.
Таким образом, в ходе анализа развился новый вариант понимания данного предложения, вытеснив первоначальную интерпретацию. Два участка сети, представляющие два прочтения этого предложения, напоминают два варианта ориентации куба Некера. Это не случайно: идея сетей кооперирующихся или конкурирующих элементов характерна для параллельных моделей. Разрешение многозначности и другие лингвистические задачи довольно хорошо разработаны для таких моделей и позволяют найти простые объяснения многим явлениям в языке. Например, легко показать на модели, как слушающий понимает по контексту, что «шар» значит «игрушка». В этом случае происходит конкуренция альтернативных вариантов, начиная с вершины «шар», что очень просто делается с помощью параллельных вычислений на сетях.