Опубликован: 30.05.2023 | Доступ: свободный | Студентов: 688 / 180 | Длительность: 16:08:00
Лекция 2:

Определения, структура и развитие систем ИИ

Два года спустя (в 1960 году) в Корнеллском университете был продемонстрирован первый нейрокомпьютер - "Марк-1", который был способен распознавать некоторые буквы английского алфавита. В современной терминологии перцептроны могут быть классифицированы как искусственные нейронные сети с одним скрытым слоем, с пороговой передаточной функцией и с прямым распространением сигнала.

В это же время шло развитие технологий в области символьного ИИ. В частности, на рис. 1.32 отмечен 1965 год - это год, в котором британский философ и логик Джон Алан Робинсон сформулировал правило резолюций - правило вывода, восходящее к методу доказательства теорем через поиск противоречий. Работы ученого были решающими в развитии языка логического программирования Пролог, оказавшего большое влияние на развитие символьного направления.

Следующее событие, отмеченное на временной шкале рис. 1.32, это 1969 год - год, когда Марвин Минский и Сеймур Пейперт написали книгу под названием "Перцептроны", в которой были отмечены некоторые ограничения перцептронов, публикация способствовала смещению интереса исследователей искусственного интеллекта в область символьных вычислений.

С середины 70-х годов прошлого столетия до начала восьмидесятых наблюдался, как мы уже упомянули, период охлаждения к теме ИИ. Выход из данной зимы искусственного интеллекта произошел на волне развития экспертных систем.

Однако в конце 1980-х и начале 1990-х годов индустрия ИИ испытала ряд финансовых неудач. На рис. 1.32 этот период обозначен как крах рынка LISP машин. В конце 80-х годов рынок специализированных аппаратных средств искусственного интеллекта испытал давление со стороны настольных компьютеров Apple и IBM, которые быстро набирали вычислительную мощность и вскоре сделали неэффективными более дорогие LISP-машины, что привело к закрытию целой индустрии.

1986 г. отмечен как год появления алгоритма обратного распространения ошибки - популярного алгоритма обучения нейронных сетей, в существенной мере способствовавшего распространению нейросетевых технологий. Алгоритм часто связывают с именем Румельхарта, который внес существенный вклад в развитие метода34Впервые метод был описан в 1974 г. А.И. Галушкиным, а также независимо и одновременно Полом Дж. Вербосом, далее существенно развит в 1986 г. Дэвидом И. Румельхартом, Дж. Е. Хинтоном .

С середины 90-х годов нейронные сети привлекают все больший интерес сообщества разработчиков ИИ.

Глубокие нейронные сети позволили получить ранее недостижимые результаты в задачах предсказания, однако они не дают объяснения человеку того, как именно был достигнут тот или иной результат (не являются интерпретируемыми), что ограничивает их применение особенно в таких приложениях, в которых принятие решения является критичным с точки зрения последствий при неверно принятом решении (например, постановка диагноза и выбор метода лечения).

Если логика семантической сети изначально понятна человеку, то с нейронными сетями такую логику проследить невозможно, что демонстрирует рис. 1.33.

 Сравнение символьного и коннекционистского подходов. Источник: Марвин Минский 1991 г.

Рис. 1.33. Сравнение символьного и коннекционистского подходов. Источник: Марвин Минский 1991 г.

Наличие недостатков и достоинств в нейросетевом и символьном подходах стимулировало исследователей к созданию гибридных решений. Гибридный подход, известный как нейросимвольный ИИ, сочетает в себе черты двух основных стратегий ИИ символьного и коннекционистского (рис. 1.34).

 Гибридный нейросимвольный ИИ. Источник: [46]

Рис. 1.34. Гибридный нейросимвольный ИИ. Источник: [46]

В символьном ИИ (вверху слева) человек-эксперт должен предоставить "базу знаний", которую ИИ использует для ответа на вопросы. Глубокие сети (вверху справа) обучаются для получения правильных ответов. Гибридное решение использует глубокие сети для того, чтобы генерировать части базы знаний, необходимые для ответа на заданный вопрос, или формируют признаки, использующиеся далее в процессе вывода.

Мы уже говорили, что там, где критичность принятия решения высока, необходимо решение, где человек контролирует ИИ. Те же соображения справедливы в отношении объяснимости ИИ там, где решение критично с точки зрения недопустимости ошибки, там требуется объяснение - как, на основании чего ИИ принял решение.

Объяснимый искусственный интеллект, или XAI (сокращение от Explainable Artificial Intelligence), - одно из относительно молодых и быстро развивающихся направлений в области ИИ, о котором речь еще будет идти в данном курсе.

Эволюционизм

Эволюционизм можно определить как научное направление, в рамках которого разрабатывается совокупность алгоритмов, моделирующих эволюционные процессы (и механизмы их реализации), наблюдаемые в живой природе. Эти механизмы обеспечили возникновение сложнейших живых организмов на Земле, приспособленных к самым разным условиям обитания. Исследование и использование данных механизмов позволило человеку создать искусственные системы, проявляющие способности достижения оптимальных стратегий поведения в разных внешних условиях. Подобно тому как искусственные нейронные сети получили начало на основе изучения работы нейронов в живых организмах, так эволюционные алгоритмы базируются на наблюдаемых в живой природе процессах наследования, мутации и отбора.

Отметим, что идея построения эволюционных алгоритмов ненамного моложе идеи построения искусственных нейронных сетей. Первые попытки использования цифровых компьютерных моделей для изучения процессов естественной эволюции использовались уже с середины 1950-х годов [47].

В начале 60-х годов прошлого столетия Ганс-Иоахим Бремерманн представил одни из первых попыток применить моделируемую эволюцию для решения задач численной оптимизации, а также разработал некоторые из ранних теорий эволюционных алгоритмов.

В 1967 году Джоном Генри Холландом были разработаны наиболее значимые генетические алгоритмы (подмножество эволюционных алгоритмов), на базовых принципах работы которых мы коротко остановимся.

Генетический алгоритм - это эвристический поисковый алгоритм35Эвристический алгоритм не гарантирует нахождение лучшего решения, даже если оно существует, но в ряде случаев позволяют получить приблизительное решение, если точное не может быть найдено аналитически или численно при имеющихся вычислительных ресурсах, который базируется на идеях теории эволюции Дарвина, которая в самом общем плане утверждает, что эволюция обусловлена небольшими вариациями признаков особей, которые усиливаются под воздействием естественного отбора. Особи с полезными признаками имеют больше шансов размножиться и передать эти признаки потомству, чем организмы с вредными признаками.

Генетический алгоритм моделирует процесс естественного отбора, в котором наиболее приспособленные особи отбираются для производства потомства следующего поколения. Эти наиболее приспособленные особи из популяции производят потомство, которое наследует характеристики родителей, и эти характеристики передаются следующему поколению. Данный процесс продолжается при смене поколений (итерационно) и в конце концов приводит к "искомому" поколению с наиболее приспособленными особями. По сути, этот процесс можно рассматривать как итерационный процесс нахождения наилучшего решения задачи.

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

Можно сказать, что генетический алгоритм позволяет заменить процесс моделирования объекта, отвечающего некоторым требованиям, на процесс моделирования эволюции, приводящий к появлению подобного объекта.

Рассмотрим принципы работы генетического алгоритма на упрощенном наглядном примере.

Задача формулируется так, что ее решение может быть представлено в виде вектора генов (генотипа 36Напомним, что в биологии генотип определяется как совокупность генов данного организма и, в отличие от понятия генофонд, характеризует особь, а не вид ), где каждый ген может быть представлен некоторым объектом (числом или битом). На рис. 1.35 показана схема, поясняющая соотношение понятий ген, хромосома, популяция, используемых в генетическом алгоритме. Подобно тому как в алгоритмах на базе искусственных нейросетей базовый термин "нейрон" заимствован из нейробиологии, в генетических алгоритмах применяется целый ряд терминов, изначально введенных в генетике (популяция, особь, ген, хромосома, генотип).