«Цель этого курса — подготовить вас к вашему техническому будущему.»
Привет. Помните офигенную статью «Вы и ваша работа» (+219, 2442 в закладки, 389k прочтений)?
Так вот у Хэмминга (да, да, самоконтролирующиеся и самокорректирующиеся коды Хэмминга) есть целая книга, написанная по мотивам его лекций. Мы ее переводим, ведь мужик дело говорит.
Это книга не просто про ИТ, это книга про стиль мышления невероятно крутых людей. «Это не просто заряд положительного мышления; в ней описаны условия, которые увеличивают шансы сделать великую работу.»
Мы уже перевели 23 (из 30) главы. И ведем работу над изданием «в бумаге».
Глава 7. Искусственный Искусственный интеллект — II
В этой книге мы в основном затрагиваем вопрос о пользе компьютеров в интеллектуальной области, а не в механической, например, в производстве. В области механики компьютеры позволяют нам производить лучшие, предпочтительные и более дешёвые изделия. В некоторых сферах эта помощь весьма значительна, для полетов на Луну многое было бы тяжело делать без компьютеров. ИИ можно рассматривать как дополнение к роботизации — он в основном относится к интеллектуальной стороне человека, а не к физической, хотя безусловно обе части тесно взаимодействуют во многих проектах.
Давайте вернёмся к началу рассуждений и заново рассмотрим компоненты машины и человека. И машина, и человек состоят из атомов и молекул. И машина, и человек состоят из основных частей; у машин среди прочего есть устройства накопления и переключения (вентили), а человек состоит из органов. У машин есть большие структуры, арифметические блоки, память, блоки управления, устройства ввода-вывода, человек же состоит из костей, мускулов, кровяных сосудов, нервной системы и т.д.
Рассмотрим некоторые аспекты более внимательно. Известно, что в больших системах могут возникнуть новые эффекты. Например, считается, что между молекулам нет трения, но в больших системах этот эффект обнаруживается — это эффект, который проявляется при организации маленьких частей в большую систему.
Стоит отметить, что когда инженер разрабатывает устройство идентичное существующему в природе, он делает это по-другому. Например, у нас есть самолёты, в общем случае, с фиксированным крылом, в то время как птицы машут своими крыльями. Также мы сделали немного другое: самолёты определенно летают выше и быстрее птиц. Природа не изобрела колесо, а человек использует его во многих устройствах. Наша нервная система сравнительно медленная, передает сигналы со скоростью несколько сотен метров в секунду, в компьютеры передают сигналы со скоростью около 186000 миль в секунду.
В третьих, перед дальнейшими рассуждениями об ИИ отметим, что мозг человека состоит из многих и многих компонент, связанных друг с другом нервами. Мы хотим дать определение мышлению как некоторому процессу, который может совершать мозг человека. Объяснения прошлых неудач в программировании мышления у машин заключались в недостаточном размере машин, их скорости м т.д. Некоторые стали считать, что если машина будет достаточно большой, то она автоматически станет думать! Запомните, похоже, что проблема заключается в написании правильной программы, а не в построении и большой машины, в такой программе появится новый эффект — мышление из немыслящих деталей! Собственно, это все, что представляет из себя мышление! Это не что-то обособленное, а артефакт большой системы.
Вернёмся к приложениям ИИ. Существует программа доказательства геометрических теорем, изучаемых в курсе классической геометрии. Программе задали доказать известную теорему «Если в треугольнике равны две стороны, то равны два его угла», см. рис. 7.1.
Вероятно, вы пытаетесь разделить пополам верхний угол, доказать подобие двух треугольников и вывести из этого равенство двух углов. Некоторые возможно поделят пополам третью сторону треугольника, начертят отрезок к противоположному углу и также придут к выводу о подобии. Доказательство, которое вывела программа, не использовало дополнительных построений. При сравнении треугольников ABC и CBA был сделан вывод о самоподобии и равенстве углов.
Кто-то найдет это доказательство элегантным, корректным м неожиданным. Возможно, люди, которые написали программу доказательства теорем не знали его, оно широко неизвестно, хотя и обсуждается в сносках учебников по геометрии. Кто-то заявил, что программа показала «оригинальность», «новизну», которая не была в нее заложена разработчиками, «креативность» и прочие замечательные качества.
Более углубленный анализ показывает, что программисты заложили алгоритм, согласно которому программа вначале пытается доказать теорему, а потом строит дополнительные линии. Если бы вас учили действовать так же, многие из нашли бы это доказательство элегантным? Таким образом, это доказательство было запрограммировано. Как я и отмечал ранее, чем является курс по геометрии как не загрузкой в обучаемых программ по доказательству? Несущественно. Это касается людей, но для машины достаточно один раз загрузить программу и больше не надо бесконечно повторять и повторять, и все равно что-то забывать!
Показала ли шахматная программа Сэмюэла оригинальность, когда обыграла state vhecker champion, сделав неожиданный ход? Если нет, можно ли говорить, что у вас есть оригинальность? Каким должен быть тест, чтобы отделить вас от компьютерной программы?
Кто-то может утверждать, что шахматная программа научилась, а программа для доказательства теорем показала «креативность», «оригинальность» или что-то ещё. Это всего лишь пара примеров подобных написанных программ. Тяжело доказать, что у программы есть объявленные свойства; как только программа что-то исполняет, это немедленно соотносится с шагом заложенного в нее алгоритма, даже если в программу внесены случайные числа. Таким образом получается парадокс: сам факт существования программы подтверждает, что это некоторый механический процесс и отрицает проявления других свойств. С этой точки зрения машина никогда не продемонстрирует, что она больше, чем «машина» в классическом смысле; нет никакого способа продемонстрировать, например, что машина может «думать».
Сторонники hard AI считают, что человек является машиной и, следовательно, все возможные действия человека в интеллектуальной сфере можно скопировать машиной. Как я отметил ранее, прм демонстрации машиной некоторых свойств большинство читателей автоматически считают, что эти свойства не являются проявлениями человеческих черт. Сразу же возникает два вопроса. Во-первых, верно ли эт? Во-вторых, насколько вы сами уверены в том, что не являетесь всего лишь набором молекул в энергетическом поле, а весь мир всего лишь молекулой вращающейся вокруг другой молекулы? Если вы верите в какие-то потусторонние, мистические силы, то как они влияют на движение молекул, а если не влияют, то какии способом воздействуют на наш мир? Физики описали все существующие в природе силы или ещё есть неизученные силы? Это очень сложный вопрос. (В настоящее время, 1994 год, считается, что Вселенная на 90-99% состоит из так называемой темной материи, о которой известна лишь способность к гравитационному притяжению.
Перейдем к рассмотрению компьютерных приложений в области культуры. На заре компьютерной революции Макс Мэтью и Джон Пирс из Bell Telephone Laboratory изучали генерацию звука с помощью компьютера. Как стало понятно позднее, частота сэмплирования определяется максимальной частотой воспроизводимого звука. Люди могут слышать звук частотой до 18кГц и только в молодом возрасте, взрослые же разговаривают по телефону и распознают звук на частоте менее 8кГц. Квантизация звукового музыкального трека не предоставляет больших возможностей. Последовательность воспроизведения «музыки» представляется такой: компьютер вычисляет значения звукового трека в каждый временной интервал, представляет это значение в виде напряжения и применяет сглаживающий фильтр. Чистый тон представляет в виде простой синусоиды. Комбинация частот определяет инструмент и его характерное «звучание» (нарастание силы звука в начале и ноты и утухание в конце). С помощью различных программных инструментов возможно получить различные ноты и музыку, записанную для последующего воспроизведения. При ээтом необязательно создавать музыку в реальном времени, компьютер может воспроизводить музыку с той скоростью, с которой необходимо, необязательно с постоянной, действительная же скорость достигается после окончания редактирования и воспроизведения на аудиоустройстве.
Почему мы говорим только о воспроизведении нот? Почему бы не научить компьютер сочинять музыку? В конце концов, есть много правил для сочинения музыки. Исследователи возможности генерации звука научили компьютеры сочинять музыку с помощью таких правил и внесения случайностей генератором случайных чисел. Сейчас есть компьютеры, которые умеют воспроизводить музыку и сочинять музыку; по радио и ТВ воспроизводится много подобных треков. Такой подход более дешевый, контролируемый и позволяет создавать звуки, которые не издает ни один из существующих музыкальных инструментов. Любой звук из музыкального трека может быть создан компьютером.
Компьютеры поддерживают воспроизведение и создание музыки. За исключением небольших деталей (частота сэмплирования, число уровней квантизации, который можно увеличить за счет стоимости) у композиторов появился доступ к прослушиванию любых звуков, которые только могут существовать на любых частотах, в любых комбинациях, в любом темпе и громкости. В самом деле, «лучшее качество записанной музыки» — цифровое. В будущем в этой области не будет значительных улучшений в техническом плане. У многих появились цифровые плееры и они воспроизводят звук намного лучше старых аналоговых плееров.
Машины помогают композитору быстрее (практически мгновенно) услышать сочиненную музыку. Раньше композитору часто надо было ждать годы, пока он не станет знаменитым, а его музыка стала звучать со сцены, а не только в его воображении. Сейчас композиторы могут быстрее придумывать новые направления. При чтении журнала, посвященному компьютерной музыке у меня сложилось впечатление, что современные композиторы широко используют и настраивают компьютерные программы, и что появилось много способов для создания музыки совместно с машиной.
Появилось больше возможностей и у дирижёров. Раньше дирижёр при записи музыки пытался добиться от музыкантов лучшего, часто конечная запись получалась из нарезок различных записей, разных микрофонов. Сейчас дирижёр может получить именно ту запись, которую он хочет с точностью до миллисекунд, до нужного тона и с учетом индивидуальных понятий о качестве звучания того или иного инструмента. В конце концов, музыканты не всегда исполняют один и тот же пассаж (часть музыкального произведения) каждый раз идеально.
Продолжим рассматривать влияние компьютеров, как они возвращают нас из мира вещей в мир идей, как они дополняют и расширяют возможности людей.
Один из аспектов ИИ, которым я заинтересовался — что могут человек и компьютер делать вместе, при этом между ними не должно возникать соревнования. Конечно же, роботы заменять многих людей в части выполнения рутинной работы. Действительно, роботы выполняют рутинную работу намного лучше, при этом разгружая время людей для более «человеческих» задач. К сожалению, многие не готовы к такому соревнованию с машинами — многие ничего не могут делать кроме той или иной рутинной работы. Есть широко распространенное мнение, что при должной тренировке люди смогут соревноваться с роботами. Однако, я сомневаюсь, что можно взять, например, шахтёров и превратить их в полезных программистов. У меня есть некоторые оценки о проценте людей, которые могут заниматься программирование в классическом смысле; конечно же, если считать, что взаимодействие с банкоматом или телефоном является программированием (ввод данных от человека воздействует на исполняемую программу), то многих можно назвать программистами. Но если программированием считать классическую деятельность по вдумчивому анализу, детальной спецификации, то есть большие сомнения в оценки процента людей, которые могут конкурировать с компьютером наравне.
Использование компьютеров привело как уменьшению числа рабочих мест, так и к созданию новых, тяжело сказать, к чему больше. Но совершенно ясно, что в среднем появилось больше высокоуровневых рабочих мест и исчезло много низкоуровневых. Опять же, некоторые считают, что в будущем большинство людей можно будет подготовить к выполнению низкоуровневой работы, мне кажется, что это мнение бездоказательно.
Кроме программ в области игр, геометрии, музыки, появились программы в области алгебры: они более «управляемы», чем «одиночные» программы и зависят от взаимодействия с человеком на том или ином этапе. Любопытно, что оказалось возможным создать «одиночную» программу в области геометрии, и невозможно в области алгебры. Одна из нерешённых проблем — упрощение выражений. При изучении алгебры вы могли и не обратить внимание, что для действия «упростить выражение» не было четких правил для «упрощения»; а если и заметили, то эти правила были очевидно сложными. Например, считается, что выражение
нельзя упростить, а выражение
можно!
Мы постоянно используем слово «упростить», но его значение зависит от того, что мы собираемся делать дальше. Например, если при вычислениях вы собираетесь дальше интегрировать, что разбиваете выражение на маленькие части, одновременно комбинируя их в удобное произведение или отношение.
Также была разработана похожая «управляемая человеком» программа для синтеза химических соединений. Она оказалась очень полезной, так как рассчитывала: (1) возможные пути синтеза, (2) стоимость, (3) время, необходимое на реакции, (4) эффективный выход синтезируемого соединения. Таким образом, эта программа помогает открыть много различных способов синтеза новых соединений или переоткрыть старые по причине изменения стоимости необходимого сырья.
Машины заменили ненадежный взгляд человек через микроскоп при проведении большинства медицинских анализов. В большинстве случаев использование машинных методов быстрее, надёжнее и дёшевле. Возможно дальше машины смогут ставить диагнозы и таким образом заменят докторов. В самом деле, в таком случае машина вероятно будет ставить диагноз быстрее доктора! В этой идее нет ничего нового: продавались наборы для самодиагностики некоторых болезней. Этот подход просто являет улучшением набора для самодиагностики и способом назначения плана лечения.
Доктора являются людьми, следовательно, они ненадёжны. Часто в случае редких заболеваний доктор может впервые столкнуться с такой болезнью, но в машину можно ввести описания всех болезней, и она никогда не их забудет. Исходя из симптомов машина может или с некоторой вероятностью поставить диагноз, или назначить уточняющие анализы для дальнейшей постановки диагноза. В долгосрочной перспективе машина с учётом вероятности выставляемых диагнозов (которые можно корректировать во время эпидемий) может вести более качественный «прием пациентов», чем доктора средней или даже высокой квалификации. При этом не стоит забывать, что один доктор физически может лечить ограниченное число людей.
Среди прочих одна из основных проблем — юридическая. Закон прощает докторов при совершении ошибки, если те действовали, говоря юридическим языком, «с должной осмотрительностью» — они всего лишь люди. Но кто будет виноват при совершении ошибки машиной? Машина? Программист? Эксперты, которые сформировали правила? Те, кто более детально сформулировал эти правила? Те, которые переложили их в алгоритмы? Или те, кто их запрограммировал? В случае неверного диагноза, поставленного машиной, возможно провести подробный анализ всей программы, такого анализа нельзя провести в части принятия неверного решения доктором. Я считаю, что в будущем появится много вспомогательных программ для постановки диагноза доктором, но ещё долгое время между пациентом и машиной обязательно будет человек. Наблюдается некоторый рост программ, которые позволяют самостоятельно поставить диагноз, но для таких программ возникают правовые вопросы.
Например, я сомневаюсь, что у пациента будет возможность самостоятельно (через программу) выписать себе рецепт на необходимые лекарства без участия доктора. Вероятно, вы замечали, что во всех лицензиях на распространяемое ПО освобождено от любой, подчеркну еще раз, от любой ответственности! В этой области основной проблемой будет юридическая, а не инженерная.
В современных больницах можно увидеть большое проникновение машин в сферу медицины: медицина весьма агрессивно используют возможности машин для улучшения работы, уменьшения стоимости, улучшения точности и скорости. В больницах машины ведут учет финансов, расписания, хранят записи; даже частные доктора стали работать с применением тех или иных машин. В некоторой степени, в этом виноваты федеральные органы, которые обязывают вести бюрократическую переписку в электронном виде.
Во многих больницах в палатах реанимации и других при необходимости установлены компьютерные мониторы. Машины не скучают, быстро реагируют, мгновенно передают сигнал на пост медсестры при необходимости. Сомнительно, что медсестра смогла бы постоянно выполнять те обязанности, которые выполняет совместно с монитором.
В области математики одной из ранних программ по символьному преобразованию формул была программа дифференцирования для вычисления производных высшего порядка. С помощью этой программы возможно рассчитать первые 20 членов степенного ряда сложной функции. Как вы должны знать, дифференцирование — простая формальная задача с небольшим числом правил. При изучении могло так не показаться, но необходимо отличать задачу непосредственного дифференцирования от дальнейшего упрощения и работы с производными. Другой программой для работы с символьными формулами была программа для преобразования координат — необходима для управления спутниками, радарами и т.д.
Джеймс Слэгл (https://en.wikipedia.org/wiki/James_Robert_Slagle) написал программу аналитического интегрирования. Алгоритм программы похож на те алгоритмы, которым учат на курсах математики. Программа может конкурировать со средним выпускником MIT в части интегралов, которые может решить, и в части корректности и неизбыточности применяемых алгоритмов. С тех пор программы компьютерного интегрирования существенно улучшились, предполагалось, что появится программа на основе известного алгоритма Риша, которая смогла бы интегрировать любую функцию, если это возможно. Однако, после многих лет ожиданий, я не видел такой программы.Есть программы аналитического интегрирования, которые считают конечные интегралы или доказывают, что выражение нельзя проинтегрировать.
Компьютеры в форме роботов вторглись в производственные линии сложных товаров, таких как таблетки и т.д. Сейчас компьютеры собираются роботами, которые управляются другими компьютерами, чипы в интегральных схемах проектируются преимущественно компьютерами под управлением человека. Никакой человеческий разум не в состоянии качественно расположить миллионы транзисторов в чипе, это безнадежное занятие. Определенно в программы дизайна заложена некоторая степень искусственного интеллекта. В ограниченных областях, где нет случайностей, роботы эффективны, но там, где есть неожиданные события, роботы могут столкнуться с серьёзными проблемами. Рутинный ответ на нерутинное событие может привести к катастрофе.
Другая очевидная область применения компьютеров это робот, устойчивые к более агрессивной среде, чем даже экипированные в спецодежду люди, например, к огню. Если при выполнении подобных работ робот будет разрушен, то это не то же самое, что гибель человека. На вооружении морского флота появились минные тральщики с удаленным управлением, потеря корабля несоизмеримо меньше потери меньше команды и корабля. Флот постоянно использует роботов при прохождении глубоких морей, сейчас в море много неразминированных областей.
Давайте снова поразмышляем над игрой в шахматы компьютером. Роботы постоянно становились более эффективными и, пока не обыграли чемпиона мира по шахматам, казались тратой времени. Раньше считалось, что нужно анализировать все возможные комбинации ходов, а не способ, которым играет в шахматы человек. Компьютеры сейчас анализируют миллионы комбинации за секунду, человек же, согласно исследованиям психологов, для принятия решения о ходе анализирует до 50 максимум 100 комбинаций. Таким образом, по крайней мере, так считается, человек при игре в шахматы размышляет совершенно по-другому! Мы даже не знаем как!
В других играх машины оказались более успешны. Например, я всем рассказываю о роботе, играющим в нарды, который смог победить всех чемпионов. Но некоторые игры с простыми правилами, например, игра в Го оказались очень сложными для машинного решения.
Подводя итог, машины оказались способными для игры в игры и похожие активности, но для некоторых игр — абсолютно неспособными. Способ, которым играет машина, можно описать как «выполнить большое число вычислений», а не игра на основе понимания. Мы начинали обучать компьютер играм, чтобы понять процессы мышления человека, но начальная цель была искажена, и исследования продолжились в сторону разработки программ, которые могут выигрывать.
Позвольте мне повторится, вы не сможете позволить себе проигнорировать области искусственного интеллекта, использование знаний в или иной области может как улучшить компьютерные приложения, так и привести к большому фиаско!
Сейчас самое время объяснить разницу между логической и психологической новизной. В процессе своей работы не производит логическую новизну, но они определённо производят психологическую новизну. Программисты постоянно замечают новые эффекты у программ, которые они пишут! Но может ли человек произвести логическую новизну? Тщательный анализ историй о великих открытиях показывает, что они были сделаны на основе анализа прошлых опытов. К успеху привели обстоятельства; это всего лишь психологическая, а не логическая новизна. Разве все ваши новые достижения не исходят из прошлого опыта? Возможна ли логическая новизна в чистом виде?
Не нужно думать, что логическая новизна это нечто банальное. В любой науке после начального задания постулатов, определений и логики все дальнейшие выводы являются психологической новизной, в умозаключениях после начального задания нет логической новизны!
Считается, что если мы будем использовать генератор случайностей при принятии решений, то сможем разорвать порочный круг из двух молекул, а где мы можем взять случайный источник событий, как не из материального мира с молекулами?
Утверждается, информация содержится в источнике случайных событий. Это утверждение основываться на мысленном опыте с обезьянами и печатными машинками. Обезьяны напротив печатных машинок и в случайные моменты времени нажимают на случайные кнопки. Считается, в какой-то момент времени одна из них сможет напечатать все книги из британской библиотеки в том порядке, в котором они стоят на полках! Рано или поздно обезьяна нажмет правильно первую букву, в самом деле, при бесконечном числе попыток случаться бесконечно часто.
Среди этих попыток будут правильные со второй буквой, и так далее. При бесконечном времени работы обезьянок возникнет правильная комбинация символов.
Опыт является подтверждением того, что знание содержится в источниках случайных событий, и вы можете извлечь их, если напишите правильную программу по «распознаванию» информации. Например, рано или поздно новая физическая теория возникнет из потока шума, и вы сможете ее обнаружить, если отфильтруйте поток случайных чисел! Это логика неопровержима -в такую действительность сложно поверить! Правда в том, что вы не всегда можете распознать «информацию» даже если ее видите.
Давно считается, что " свободное волеизъявление" — это миф. В заданных обстоятельствах и в заданное время Вы являетесь тем, кем вы являетесь, и действуйте так, как вы действуете. Этот аргумент звучит убедительно на фоне того, что вы верите в свое свободное волеизъявление. Попробуем прояснить этот вопрос с помощью эксперимента. Похоже, что нельзя поставить убедительный эксперимент для иллюстрации этой проблемы. Правда в том, что мы постоянно выбираем между двумя линиями поведения. Учителю приходится верить в то, что он говорит правильные слова своим студентам. Родителям приходится верить в то, что они правильно воспитывают своих детей. Всё же чувство свободы сидит в нас глубоко, и мы неохотно от него отказываемся, но можем с легкостью отрицать у других!
Можно привести еще очень много примеров для обсуждения вопроса «Могут ли машины думать?»
В заключение, возможно мышление должна определяться не тем, о чём мы думаем, а тем, как мы думаем. Когда я наблюдаю над тем, как ребёнок учится умножать двух или трёх значные числа, то у меня создается впечатление, что он думает. Когда я делаю это сам, то это похоже на некоторый «условный рефлекс». Когда компьютер делает такое же умножение, непохоже, что он думает. Говоря словами старой песни «это не то, что вы делаете, а то, как вы делаете». Возможно, в области мышления мы путаем понятия результата и способа получения, что приводит к некоторым затруднениям в области исследований ИИ.
Сторонники жесткой теории искусственного интеллекта ту или иную теорию считают успешной только после подтверждения. Такой подход без должной оценки фактов повлиял на многих исследователей. Вера в то, что «результат является мерилом мышления» позволяет многим людям считать, что они могут думать, а машины нет.
Ситуация в отношении компьютеров и мышления стала неоднозначной. Мы одновременно можем считать, что компьютеры могут думать, а могут и не думать. Мы хотим верить в мышление машин, потому что они нам помогают. И не хотим верить, чтобы сохранить собственную значимость. Компьютеры обошли нас во многих областях, скорости, точности, надежности, стоимости, скорости реакции, они свободны от скуки, легко забывают старое и учатся новому, могут работать в агрессивной среде, свободны от личных проблем, мы хотели бы превосходить их в некоторых областях — они же при этом являются нашими творениями! Например, если некоторая компьютерная программа сможет делать работу значительно лучше, чем доктора, то где они останутся? А где останетесь вы?
Два главных вывода:
если машина это машина, она должна быть алгоритму и не может думать.
с другой стороны неясно, как наше мышление, наше сознание, наше самоосознание влияет на движение молекул.
В двух предыдущих главах я писал вопрос пределов аппаратуры и программного обеспечения, но в этих двух главах вопросы искусственного интеллекта затронуты поверхностно. Мы просто не знаем о чём говорим; понятия не определены и непонятно, будут ли они определены в ближайшем будущем. Мы вынуждены использовать язык для описания языка компьютера; это рекурсивность приводит к усложнению и уменьшению строгости. Главный вопрос глав об ИИ — вопрос пределов программного обеспечения- остаётся открытым должен быть очень важным в вашей карьере. Исследование области ИИ требует аккуратности и взвешенных выводов, так как многие исследователи делали очевидные неверные выводы.
Продолжение следует...
Кто хочет помочь с переводом, версткой и изданием книги — пишите в личку или на почту magisterludi2016@yandex.ru