1.5. Вычисление: нисходящие и восходящие процедуры
1.5. Вычисление: нисходящие и восходящие процедуры
До сих пор было не совсем ясно, что именно я понимаю под термином «вычисление» в определениях позиций A, B, C и D, приведенных в §1.3. Что же такое вычисление? В двух словах: это все, что делает самый обычный универсальный компьютер. Если же мы хотим быть более точными, то следует воспринимать этот термин в соответственно идеализированном смысле: вычисление — это действие машины Тьюринга.
А что такое машина Тьюринга? По сути, это и есть математически идеализированный компьютер (теоретический предшественник современного универсального компьютера); идеализирован же он в том смысле, что никогда не ошибается, может работать сколько угодно долго и обладает неограниченным объемом памяти. Немного более подробно о точных спецификациях машин Тьюринга я расскажу в §2.1 и в Приложении А. (Интересующийся более полным введением в этот вопрос читатель может обратиться к описанию, приведенному в НРК, глава 2, а также к работам Клина [223] или Дэвиса [72].)
Для описания деятельности машины Тьюринга нередко используют термин «алгоритм». В данном контексте я считаю термин «алгоритм» полностью синонимичным термину «вычисление». Здесь необходимо небольшое разъяснение, так как в отношении термина «алгоритм» некоторые придерживаются более узкой точки зрения, нежели предлагаемая мною здесь, подразумевая под алгоритмом то, что я в дальнейшем буду более конкретно называть «нисходящим алгоритмом». Попытаемся разобраться, что же следует понимать в контексте вычисления под термином «нисходящий» и противоположным ему термином «восходящий».
Мы говорим, что вычислительная процедура имеет нисходящую организацию, если она построена в соответствии с некоторой прозрачной и хорошо структурированной фиксированной вычислительной процедурой (которая может содержать некий заданный заранее объем данных) и предоставляет, в частности, четкое решение для той или иной рассматриваемой проблемы. (Описанный в НРК на с. 31[5] евклидов алгоритм нахождения наибольшего общего делителя двух натуральных чисел представляет собой простой пример нисходящего алгоритма.) В противоположность такой организации существует организация восходящая, где упомянутые четкие правила выполнения действий и объем данных заранее не определены, однако вместо этого имеется некоторая процедура, определяющая, каким образом система должна «обучаться» и повышать свою эффективность в соответствии с накопленным «опытом». Иными словами, в случае восходящей системы правила выполнения действий подвержены постоянному изменению. Очевидно, что такая система должна пройти множество циклов, выполняя требуемые действия над непрерывно поступающими данными. Во время каждого прогона производится оценка эффективности (возможно, самой системой), после чего, в соответствии с этой оценкой, система так или иначе модифицирует свои действия, стремясь улучшить качество вывода данных. Например, на вход системы подаются несколько оцифрованных с некоторым качеством фотопортретов, и ставится задача — определить, на каких портретах изображен один человек, а на каких — другой. После каждого прогона результат выполнения задачи сравнивается с правильным, после чего правила выполнения действий модифицируются так, чтобы с некоторой вероятностью добиться улучшения функционирования системы при следующем прогоне.
Конкретные способы такого улучшения в какой-либо конкретной восходящей системе нас в данный момент не интересуют. Достаточно сказать, что количество всевозможных готовых схем весьма велико. Среди наиболее известных систем восходящего типа можно упомянуть так называемые искусственные нейронные сети (иногда их называют просто «нейронными сетями», что может ввести в некоторое заблуждение), которые представляют собой компьютерные самообучающиеся программы — или же особым образом сконструированные электронные устройства, — основанные на определенных представлениях о реальной организации системы связей между нейронами в мозге и о том, каким образом эта система улучшается по мере приобретения мозгом опыта. (Вопрос о том, как в действительности модифицирует самоё себя система взаимосвязей между нейронами мозга, приобретет для нас особую значимость несколько позднее; см. §7.4 и §7.7.) Очевидно также, что возможны системы, сочетающие в себе элементы как восходящей, так и нисходящей организации.
Для наших целей важно понимать, что и нисходящие, и восходящие вычислительные процедуры с легкостью выполняются на универсальном компьютере, а потому их можно отнести к категории процессов, названных мною вычислительными и алгоритмическими. Таким образом, в случае восходящих (или комбинированных) систем сам способ модификации системой своих процедур задается какими-то целиком и полностью вычислительными инструкциями, причем задается заблаговременно. Этим и объясняется возможность реализации всей системы на обычном компьютере. Существенная разница между восходящей (или комбинированной) системой и системой нисходящей состоит в том, что в первом случае вычислительная процедура должна подразумевать возможность сохранения «памяти» о предыдущем выполнении задачи (т.е. обладать способностью накапливать «опыт») с тем, чтобы эту память затем можно было использовать в последующих вычислительных действиях. Конкретные подробности сейчас не имеют особого значения, однако к обсуждению этого вопроса мы еще вернемся в §3.11.
Задавшись целью создать искусственный интеллект (сокращенно «ИИ»), человек пока лишь пытается сымитировать разумное поведение на каком угодно уровне посредством каких-то вычислительных средств. При этом часто используется как нисходящая, так и восходящая организация. Первоначально наиболее перспективными представлялись нисходящие системы{10}, однако сейчас все большую популярность приобретают восходящие системы типа искусственной нейронной сети. По всей видимости, получения наиболее успешных систем ИИ можно ожидать лишь при том или ином сочетании нисходящих и восходящих организаций. У каждой из них есть свои преимущества. Нисходящая организация наиболее успешна в тех областях, где данные и правила выполнения действий четко определены и имеют хорошо выраженный вычислительный характер, — при решении некоторых конкретных математических задач, создании вычислительных систем для игры в шахматы или, скажем, в медицинской диагностике, где определение того или иного заболевания происходит с помощью заданных наборов правил, основанных на общепринятых медицинских процедурах. Восходящая же организация оказывается полезной, когда критерии для принятия решений не слишком точны или не совсем ясны, — как, например, при распознавании лиц или звуков или, возможно, при поиске месторождений минералов, где основным поведенческим критерием становится повышение эффективности на основе накопленного опыта. Во многих подобных системах действительно присутствуют элементы и нисходящей, и восходящей организаций (например, шахматный компьютер, обучающийся на основе опыта, или созданное на базе какой-либо четкой геологической теории вычислительное устройство, помогающее в поисках месторождений минералов).
Я думаю, справедливым будет сказать, что лишь в некоторых примерах нисходящей (или по большей части нисходящей) организации компьютеры демонстрируют значительное превосходство над человеком. Самым очевидным примером может служить прямой численный расчет, где в наше время компьютеры побеждают человека без каких-либо усилий. То же самое относится и к «вычислительным» играм, типа шахмат и шашек, в которые у лучших компьютеров способны выиграть, возможно, лишь несколько человек (более подробно об этом в §1.15 и §8.2). В случае же восходящей организации (искусственной нейронной сети) компьютерам лишь в немногих специфических примерах удается достичь приблизительно уровня обычных хорошо обученных людей.
Еще одно отличие между видами компьютерных систем связано с различием между последовательной и параллельной архитектурами. Компьютер последовательного действия — это машина, выполняющая вычисления друг за другом, поэтапно, тогда как параллельный компьютер выполняет множество независимых вычислений одновременно, результаты же этих вычислений сводятся вместе лишь по завершении достаточно большого их количества. Кстати, у истоков разработки некоторых параллельных систем стояли все те же теории, описывающие предполагаемые способы функционирования мозга. Здесь следует отметить, что различие между вычислительными машинами последовательного и параллельного действия ни в коей мере не является принципиальным. Параллельное действие всегда можно смоделировать последовательно, хотя, конечно же, существуют некоторые типы задач (весьма немногочисленные), для решения которых эффективнее (в смысле затрат времени на вычисление и т.п.) будет параллельное действие, нежели последовательное. Поскольку в рамках настоящего труда меня занимают, главным образом, принципиальные вопросы, различия между параллельными и последовательными вычислениями не представляются в этом отношении особенно существенными.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Процедуры одитинга
Процедуры одитинга Все описываемые здесь требования к одитингу целиком относятся к процедурам и процессам. Под процедурой одитинга понимается общая модель того, как следует обращаться к преклиру. Сюда включается способность снова и снова задавать один и тот же вопрос,
Процедуры перехода к эмпирическим зависимостям и фактам
Процедуры перехода к эмпирическим зависимостям и фактам Переход от данных наблюдения к эмпирическим зависимостям и научному факту предполагает элиминацию из наблюдений содержащихся в них субъективных моментов (связанных с возможными ошибками наблюдателя, случайными
Процедуры конструктивного обоснования теоретических схем
Процедуры конструктивного обоснования теоретических схем Конструктивное обоснование обеспечивает привязку теоретических схем к опыту, а значит, и связь с опытом физических величин математического аппарата теории. Именно благодаря процедурам конструктивного
И макиавеллиевский, и купеческий ум разделяют веру в необходимость для власти процедуры сегментации — в силу дихотомии власти и морали, а также денег и морали
И макиавеллиевский, и купеческий ум разделяют веру в необходимость для власти процедуры сегментации — в силу дихотомии власти и морали, а также денег и морали Как утверждает Тейяр де Шарден в книге «Феномен человека», всякое новое изобретение представляет собой
Контрастные процедуры
Контрастные процедуры Чередование горячей и холодной воды, направляя кровоток то к коже, то к внутренним органам, способствует лучшему вымыванию всего ненужного и прекрасно тренирует сосуды, делая их более эластичными и проходимыми.И контрастные душ или ванна, и просто
1. Сознание и вычисление
1. Сознание и вычисление 1.1. Разум и наука Насколько широки доступные науке пределы? Подвластны ли ее методам лишь материальные свойства нашей Вселенной, тогда как познанию нашей духовной сущности суждено навеки остаться за рамками ее возможностей? Или, быть
1.3. Вычисление и сознательное мышление
1.3. Вычисление и сознательное мышление В чем же здесь загвоздка? Неужели все дело лишь в вычислительных способностях, в скорости и точности работы, в объеме памяти или, быть может, в конкретном способе «связи» отдельных структурных элементов? С другой стороны, не может ли
2.4. Как убедиться в невозможности завершить вычисление?
2.4. Как убедиться в невозможности завершить вычисление? Мы установили, что вычисления могут как успешно завершаться, так и вообще не иметь конца. Более того, в тех случаях, когда вычисление завершиться в принципе не может, это его свойство иногда оказывается очевидным,
3.27. Вычислительная математика: процедуры нисходящие или восходящие?
3.27. Вычислительная математика: процедуры нисходящие или восходящие? В предыдущем разделе мы могли убедиться, какую неоценимую помощь могут оказать компьютеры при решении некоторых математических задач. Во всех упомянутых успешных примерах примененные вычислительные
6.6. FAPP-объяснение процедуры R
6.6. FAPP-объяснение процедуры R Теперь давайте посмотрим, какую же, в самом деле, роль играют матрицы плотности в рамках стандартного (FAPP-) подхода к объяснению «наблюдаемой» природы процедуры R. Идея заключается в том, что квантовая система и измерительное устройство
2.2. Синтез и анализ как вербальномыслительные процедуры
2.2. Синтез и анализ как вербальномыслительные процедуры Мы не можем цельно мыслить… За что бы мы ни взялись, мы неизбежно дробим рассматриваемое, раскалываем изучаемое на несовместимые аспекты. П.А. Флоренский В философском наследии находим толкования понятий анализа и
Эволюционные процедуры U и R
Эволюционные процедуры U и R В приведенном выше описании временно?й эволюции волнового пакета неявно содержится уравнение Шредингера, которое говорит нам о том, как именно эволюционирует во времени волновой пакет. Действительно, уравнение Шредингера гласит, что каждая
Вычисление вероятности
Вычисление вероятности Вероятность принято определять так. Допустим, у нас в ящике стола лежат четыре красных презерватива и один синий. Тогда вероятность того, что мы вытащим синий презерватив — один к пяти, или 0,2.Ещё пример. Мы проснулись ночью от весёлых визгов на