Читаем ГЕДЕЛЬ, ЭШЕР, БАХ: эта бесконечная гирлянда полностью

На заре исследований по ИИ считалось, что знание расфасовано «пакетами» размером с предложение, и что лучшим способом ввода знаний в программу был бы некий метод, позволяющий переводить факты в пассивные пакеты данных. Таким образом, каждый факт соответствовал бы куску данных, которые могли бы использоваться программой. Примером такого подхода являлись шахматные программы, в которых позиции на доске были закодированы в форме матриц или неких списков и записаны в памяти, откуда они могли быть вызваны и обработаны с помощью подпрограмм.

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

В самом деле, наивному предположению о том, что все знание должно быть закодировано в виде пассивных фрагментов данных, противоречит основной факт конструкции компьютеров: их умение складывать, вычитать, умножать и так далее не является закодированным в пакеты данных и записанным в памяти; это знание находится не в памяти, а в самих схемах аппаратуры. Карманный калькулятор не хранит в памяти умения складывать; это знание закодировано в его «внутренностях». В памяти нет такого места, на которое можно было бы указать, если бы кто-нибудь спросил: «Покажите мне, где в этой машине находится умение складывать?»

Тем не менее, в ИИ был проделан большой объем работы по изучению систем, в которых большинство знаний хранится в определенных местах — то есть декларативно. Само собой разумеется, что какое-то знание должно заключаться в программах — иначе у нас была бы не программа, а энциклопедия. Вопрос в том, как разделить знание между программой и данными (которые далеко не всегда легко отличить друг от друга). Надеюсь, что это было достаточно хорошо объяснено в главе XVI. Если в процессе развития системы программист интуитивно воспримет некий объект как часть данных (или как часть программы), это может иметь значительное влияние на структуру системы, поскольку, программируя, мы обычно различаем между объектами, похожими на данные, и объектами, похожими на программу.

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

ДНК и белки дают некоторую перспективу

Этот довод звучит весьма убедительно; тем не менее, если интерпретировать его немного свободнее, он может быть понят как аргумент против ДНК и РНК. Зачем кодировать генетическую информацию в ДНК, если, сохраняя ее прямо в белках, можно избежать не одного, а двух лишних уровней интерпретации? Оказывается, что иметь одну и ту же информацию, закодированную в нескольких разных формах для разных целей, очень полезно. Одно из преимуществ кодирования генетической информации в ДНК в модулярной форме (в форме данных) заключается в том, что таким образом два индивидуальных гена могут быть скомбинированы для формирования нового генотипа. Это было бы очень трудно, если бы информация содержалась только в белках. Вторым доводом в пользу хранения информации в ДНК является то, что это облегчает транскрипцию и трансляцию ее в белки. Когда информация не нужна, она не занимает много места; когда она нужна, она извлекается и служит эталоном. Не существует механизма для копирования одного белка на основе другого — их третичная укладка сделала бы такое копирование слишком громоздким. Кроме того, генетическая информация почти неизбежно должна быть представлена в трехмерных структурах, таких, как энзимы, поскольку узнавание молекул и манипуляция ими по природе являются трехмерными операциями. Поэтому в контексте клеток довод в пользу исключительно процедурного представления информации кажется неверным. Это говорит о том, что в возможности перехода от процедурной к декларативной информации и обратно есть свои преимущества. Это, возможно, верно и для ИИ.

Этот вопрос был затронут Фрэнсисом Криком на конференции по общению с внеземными культурами:

Перейти на страницу:

Похожие книги

"Теорія та методика навчання математики, фізики, інформатики. Том-1"
"Теорія та методика навчання математики, фізики, інформатики. Том-1"

"Теорія та методика навчання математики, фізики, інформатики. Том-1" Теорія та методика навчання математики, фізики, інформатики: Збірник наукових праць: В 3-х томах. – Кривий Ріг: Видавничий відділ НацМетАУ, 2002. – Т. 1: Теорія та мето-дика навчання математики. – 444 с. Збірник містить статті з різних аспектів дидактики мате-матики і проблем її викладання в вузі та школі. Значну увагу приділено проблемам розвитку методичних систем навчання ма-тематики та застосування засобів нових інформаційних техно-логій навчання математики у шкільній та вузівській практиці. Для студентів вищих навчальних закладів, аспірантів, наукових та педагогічних працівників.

Неизвестен Автор

Математика / Физика / Руководства / Прочая научная литература / Прочая справочная литература