Страница 13 из 17
Описанные правила вывода основаны на обычной аристотелевой логике. Эти правила использовались в рассуждениях в виде отдельных типов силлогизмов ещё в античном мире. Реализация машины вывода, которая соблюдает такие правила, является делом достаточно простым. Тем не менее это очень мощный формализм, который позволяет решать многие задачи. Однако в конце XX века были предложены новые формализмы, которые расширяют аристотелеву логику и позволяют ещё более тонко подходить ко многим проблемным областям. Рассмотрим некоторые из них.
Первый важный формализм – нечёткая логика и связанные с ней понятия «лингвистическая переменная» и «нечёткая переменная». По мере осуществления попыток формализовать при помощи аристотелевой логики знания о более или менее сложной проблемной области становилось понятно, что простой «чёрно-белый» вариант логики с двумя значениями истинности не может описать всю гамму возможностей при рассмотрении человеком вариантов решения задач. Дело в том, что человек обычно решает задачи не в идеальном мире, а в условиях неполноты информации, нечёткости определений, неточности измерений и т. д. И все такие НЕ-факторы практически невозможно описать при помощи аристотелевой логики. На помощь пришли многозначные логики и, как их апофеоз, бесконечнозначная нечёткая логика. Последняя, к примеру, позволяет осуществлять логический вывод при наличии фактов, не совпадающих с посылками продукций, но машина вывода с возможностью обрабатывать нечёткость всё так же будет способна получить результат, чаще всего вполне приемлемый.
Нечёткий вывод тоже основан на правилах ModusPonens и ModusTollens, но они несколько модифицированы. Первое выглядит как: «Если есть правило, что из некоторого факта А следует заключение Б, и при этом имеется некоторый факт А*, не совсем совпадающий с фактом А, то можно сделать вывод, что заключение Б должно принять вид Б*». В качестве примера можно рассмотреть такой вывод. Пусть есть правило «Если температура окружающей среды низкая, то длительность прогулки короткая». На вход нечёткой машине вывода подаётся факт: «Температура окружающей среды очень низкая», – и при помощи имеющегося правила и этого факта машина вывода делает вывод: «Длительность прогулки очень короткая». Это довольно тривиальный пример, который тем не менее показывает, что нечёткий вывод при помощи небольшого количества правил охватывает огромное число возможностей, в том числе и таких, которые вообще не были ранее предусмотрены разработчиком базы знаний с продукциями. Нечёткий вывод нашёл широкое применение в системах автоматического управления, но он также применяется и в интеллектуальных системах иных классов.
Другим важным классом формальных логик являются так называемые модальные логики. Это довольно обширный класс, и даже простейшая аристотелева логика может быть представлена в виде модальной. Но формализм модальных логик хорош тем, что при помощи него можно обобщать различные понятия и отношения объективной реальности. В частности, такая частная логика, как темпоральная, позволяет формально рассуждать о вопросах, связанных со временем. В этой логике высказывания также имеют временную привязку – некоторые могут происходить одновременно, другие следовать друг за другом. Другой важной модальной логикой является пространственная логика, которая так же, как и темпоральная, имеет средства выражения пространственных отношений между объектами и высказываниями. Такие высказывания, как «Красный куб находится ближе синего цилиндра», просто формализуются при помощи пространственной логики и очень сложно при помощи аристотелевой. Существуют логики и иных модальностей, но не каждая из них общеприменима, а некоторые эффективны только для каких-либо узких проблемных областей.
Описанные модальные логики имеют важнейшее практическое применение в рамках так называемого пространственно-временного вывода. Чаще всего этот вариант машинного вывода используется в робототехнике, поскольку именно роботы (не только человекоподобные автономные, но и производственные манипуляторы) должны ориентироваться в пространстве и времени. Но также пространственно-временной вывод используется в сложных проблемных областях, в которых требуются рассуждения о том, что было или будет. Чаще всего такие проблемные области относятся к динамическим системам различной природы. В качестве примера можно привести медицину – динамика развития заболевания должна рассматриваться через призму временных отношений, а потому использование временной модальной логики неизбежно.
Важнейшим свойством символьных вычислений является возможность объяснить вывод, полученный при помощи них. Если есть начальные факты, есть последовательность рассуждений и есть множество правил вывода, то можно объяснить, почему из начальных фактов были получены такие-то результаты. Это очень важное свойство интеллектуальных систем, и оно в большей мере соответствует нисходящему подходу в построении искусственного интеллекта.
Раздел 2.2. Искусственные нейронные сети
Искусственная нейронная сеть – это в первую очередь математическая модель машинного обучения, которая решает задачи примерно по тем же принципам, что и биологические нейронные сети, состоящие из нервных клеток. Искусственные нейронные сети имеют программную или аппаратную реализацию, поэтому чисто абстрактная математическая модель воплощена в действительности в виде вычислительной системы. В то же самое время искусственные нейронные сети представляют собой самую широко распространённую модель машинного обучения и одновременно с этим являются типичным подходом в рамках восходящего искусственного интеллекта.
Искусственная нейросеть состоит из множества взаимодействующих друг с другом искусственных нейронов, чаще всего собранных в слои так, что нейроны одного слоя получают информацию только от нейронов предыдущего слоя и передают информацию на следующий слой. Сам по себе искусственный нейрон представляет собой очень упрощённую модель биологического нейрона. У искусственного нейрона есть множество входов, один выход, а также две функции: суммирования и активации. Впрочем, существуют и другие типы искусственных нейронов, в том числе и таких, работа которых зависит от времени. Фактически каждый искусственный нейрон решает задачу простой логистической регрессии (в случае если его функция активации представляет собой сигмоиду).
Первую модель искусственного нейрона предложили Мак-Каллок и Питтс в 1943 году. Эта модель выглядит следующим образом.
Чаще всего в качестве упрощения считается, что входные переменные x1, x2…, xn и выходное значение y принимают значения из интервала [0, 1]. Функция суммирования представляет собой обычную взвешенную сумму, результат которой равен сумме произведений каждого входного значения xi на свой вес wi, а некоторый специальный вес w0 добавляется всегда. Наибольший интерес представляет функция активации, которая может принимать различные формы, так что свойства как искусственного нейрона, так и всей нейросети часто зависят от выбора формы функции активации.
Результат функции суммирования передаётся на вход функции активации. В свою очередь, её результат является выходом нейрона y, который передаётся на вход следующим нейронам. Обычно, как уже было указано, функцию активации подбирают так, чтобы область её значений лежала в интервале [0, 1], хотя это и необязательно. В первых реализациях искусственных нейронных сетей функция активации вообще была дискретной с областью определения {0, 1}, и такие нейросети неплохо справлялись с задачами классификации. Сегодня в сетях глубокого обучения могут использоваться разные функции активации у разных нейронов, но обычно все они входят в класс сигмоид – это и логистическая функция, и гиперболический тангенс, и функция Гаусса, и многие другие. Выбор функции активации зависит от многих параметров задачи, и часто архитектор, проектирующий искусственную нейросеть, должен проявить для этого немалый уровень творчества.