Архитектура и основные составные части систем ИИ

Основные понятия и история развития систем ИИ. Подходы к построению систем ИИ, архитектура, основные части и особенности.

Лыкошин Александр

2022-24

#### Нейробионическое направление - Первый экспериментальный нейрокомпьютер Snark был построен Марвином Минским в 1951 году - 40 искусственных нейронов ![misky-maze-sover.webp](img/misky-maze-sover.webp)
#### Нейробионическое направление - Первые успехи нейрокомпьютинга связывают с разработкой персептрона (от английского perception — восприятие) американцем Френком Розенблаттом. - Одна из первых моделей нейронных сетей, которая вызвала большой интерес из-за своей способности обучаться распознаванию простых образов. - Персептрон состоял из бинарных нейроподобных элементов и имел простую топологию, что позволило достаточно полно проанализировать ее работу и создать многочисленные физические реализации. - Работы Минского и Пейперта, доказавшие ограниченные возможности простейшего персептрона, погасили энтузиазм большинства исследователей на два десятилетия.
#### Нейробионическое направление - Широкий интерес научной общественности к нейросетям начался в начале восьмидесятых годов после теоретических работ физика Хопфилда - коллективное взаимодействие нейронов, энергия сети, температура обучения и т. д. - Практическое применение нейросетей началось после публикации Румельхартом метода обучения многослойного персептрона, названного ими методом *обратного распространения ошибки*. - Таким образом, ограничения персептронов, доказательства которых представили Минский и Пейперт, оказались преодолимыми.
#### Нейробионическое направление ##### Классификация систем нейронной обработки - Системы нейронной обработки - Специализированные системы (нейрокомпьютеры) - Нейроэмуляторы - Нейропакеты общего назначения - Системы разработки нейроприложений - Системы готовых решений на основе нейросетей ![Классификация систем нейронной обработки](./img/Классификация%20систем%20нейронной%20обработки.png)
#### Нейробионическое направление - Доступность и возросшие вычислительные возможности современных компьютеров привели к широкому распространению программ, использующих принципы нейросетевой обработки данных, но исполняемых на последовательных компьютерах. - Этот подход не использует параллелизм, но ориентируется исключительно на способность нейросетей решать неформализованные задачи и реализуется нейроэмуляторами.
#### Нейробионическое направление - Нейропакеты общего назначения — законченные независимые программные продукты, предназначенные для широкого класса задач (например, статистической обработке данных). - Бесплатные и условно-бесплатные пакеты; как правило, это обычные многослойные персептроны с одним или несколькими правилами обучения. - Коммерческие пакеты (BrainMaker Professional, NeuroForecaster и т.п.)
#### Нейробионическое направление - Системы разработки нейроприложений — это программное обеспечение, способное генерировать программный код, использующий обученные нейросети для обработки данных. - Пример - MATLAB с прилагающимся к нему нейросетевым инструментарием, ограниченно вписавшимся в матричную идеологию этой системы. - среда для синтеза нейросетевых методик с прочими методами обработки (wavelet — анализ, статистика, финансовый анализ и т. п.).
#### Информационное направление 1. Эвристическое программирование — это разработка оригинальных методов, алгоритмов решения задач, подобных человеческим, а в некоторых случаях даже и лучших. - Под эвристикой понимается правило, стратегия, метод или прием, используемые для повышения эффективности системы, которая пытается найти решения сложных задач. - Эвристическая программа — это программа для компьютера, использующая эвристики. _Словарь Вебстера: «эвристический» означает «способствующий открытию»._
#### Эвристическое программирование - Всякая предметная (проблемная) область деятельности может быть описана в виде некоторой совокупности сведений о структуре этой области, основных ее характеристиках, процессах, протекающих в ней, а также о способах решения возникающих в ней задач. - Все эти сведения образуют знания о предметной области. - При использовании интеллектуальных систем для решения задач в данной предметной области необходимо собрать о ней сведения и создать концептуальную модель этой области.
#### Эвристическое программирование - В области извлечения знаний можно выделить два основных направления: формализация качественных знаний и интеграция знаний. - Первое направление связано с созданием разнообразных методов, позволяющих переходить от знаний, выраженных в текстовой форме, к их аналогам, пригодным для ввода в память интеллектуальной системы. - В связи с этой проблемой развивались не только традиционные методы обработки экспериментальных данных, но и совершенно новое направление, получившее название нечеткой математики. Возникновение этого направления связано с именем американского специалиста Л. Заде. - Нечеткая математика и ее методы оказали существенное влияние на многие области искусственного интеллекта и, в частности, на весь комплекс проблем, связанных с представлением и переработкой качественной информации.
#### Эвристическое программирование - Полученные от экспертов знания нужно оценить с точки зрения их соответствия ранее накопленным знаниям и формализовать их для ввода в память интеллектуальной системы. - Кроме того, знания, полученные от различных экспертов, надо еще согласовать между собой; эти знания могут быть внешне несовместимыми и даже противоречивыми; инженер по знаниям должен устранить эти противоречия.
#### Эвристическое программирование - Следующая большая проблема, изучаемая в искусственном интеллекте, — это представление знаний в памяти системы. - Для этого разрабатываются разнообразные модели представления знаний. В настоящее время в интеллектуальных системах используются четыре основные модели знаний. - Первая модель, возможно, наиболее близка к тому, как представляются знания в текстах на естественном языке. - В ее основе лежит идея о том, что вся необходимая информация может быть описана как совокупность троек вида: (a R Ь), где а и h два объекта или понятия, a R — двоичное отношение между ними. - Такая модель графически может представляться в виде сети, в которой вершинам соответствуют объекты или понятия, а дугам — отношения между ними. Дуги помечены именами соответствующих отношений. - Такая модель носит название семантической сети.
## 3. Интеллектуальное программирование - Это направление в искусственном интеллекте соответствует программистскому взгляду на эту область. Трудоемкость разработки интеллектуальных приложений зависит от использованного языка, инструментальных систем, парадигмы программирования, средств разработки ИИС и приобретения знаний, систем когнитивной графики
#### 3. Интеллектуальное программирование - Среди огромного количества языков программирования в работах по искусственному интеллекту используется небольшая часть. 1) Традиционные языки программирования типа С, C++, но ограниченно, - как правило, для создания инструментальных средств. 2) Специализированные языки программирования: - LISP и все его многочисленные версии, ориентированные на обработку списков; - язык логического программирования PROLOG. - язык рекурсивных функций РЕФАЛ. 3) Отдельно стоят языки для представления знаний. Это языки, ориентированные на фреймы K.L-1, K.RL, FRL или язык ПИЛОТ, ориентированный на модель знаний в виде продукций