Выбрать главу

Всякий раз, когда сеть вырабатывает ошибочный ответ, самые главные нейроны, которые формируют окончательное решение на выходе сети, получают наказание — штраф. Они разбираются, какой из нейроновподчиненных способствовал принятию неправильного решения, и снижают такому уровень доверия, а тем, кто «голосовал» против, рейтинг повышают. Получившие по заслугам нейроны второго уровня аналогичным образом наводят порядок в своем хозяйстве, и так до тех пор, пока не дойдет до самых первых нейронов (предполагается, что циклов в нейронной сети нет). После этого процедуру обучения повторяют на новом примере.

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

Но как ей это удается? Возьмем отдельный нейрон из середины сети и попробуем понять: почему он реагирует на сигналы соседей так, а не иначе? Увы, в сложной сети это совершенно безнадежное дело. Ее «опыт» не локализован в отдельном нейроне, им обладает только сеть в целом. Можно перепрограммировать нейрон и посмотреть, какие ошибки станет делать сеть. Так изучают и человеческий мозг — смотрят, какие изменения вызывает стимуляция тех или иных центров. Но, даже поняв функции отдельных нейронов, обычно нельзя объяснить, почему эти функции выполняются именно при такой настройке.

До сих пор науке обычно удавалось находить простые закономерности, объясняющие сложные явления, подобно тому, как хаотическое поведение молекул газа удалось описать емкими формулами статистической физики. Но похоже, что происхождение и работу интеллекта, даже искусственного, нельзя объяснить, не воспроизведя этот интеллект «со всеми потрохами».

Генетические алгоритмы

Есть еще один способ создания систем ИИ, имитирующий биологическую эволюцию. Задача кодируется на специальном языке, напоминающем генетический код. В код случайным образом вносятся «мутации», и оценивается, насколько хорошо каждая из версий кода («особь») приспособлена для решения задачи. Наименее приспособленные «вымирают», а остальные «скрещиваются», обмениваясь фрагментами кода, порождая новое «поколение» кодов, которое подвергается новому циклу отбора. Так повторяется, пока не исчерпается время, отпущенное на эволюцию. Генетические алгоритмы применяются для задач оптимизации, таких как поиск кратчайшего пути, составления расписаний, выбора игровой стратегии. Отличительная особенность таких задач — существование огромного числа возможных решений, найти которые очень просто, но среди них нужно выбрать как можно лучшее. Применение искусственного интеллекта

Игры и игрушки. ИИ наделяет игровых персонажей способностью к нешаблонному поведению, которое сложным образом связано с действиями играющего. Это делает игру намного интереснее. Распознавание образов и речи. Человек и животные легко узнают окружающие предметы и сигналы, но мы не отдаем себе отчета, как это получается. Для компьютера, который воспринимает только массивы чисел, распознать в них осмысленные образы — сложная задача. Машинный перевод и обработка текстов на естественном языке. ИИ необходим для учета контекста при выборе из множества возможных значений переводимых слов и грамматических конструкций. ИИ используют для быстрой тематической классификации текстов, например, сообщений информагентств, для автоматического реферирования — выделения главных фраз, позволяющих решить, тратить ли время на детальное ознакомление с документом. Выявление закономерностей в массивах данных. Интеллектуальный анализ крупных баз данных (например, продаж в сети супермаркетов или расшифрованного генома) иногда выявляет закономерности, которых никто не предполагал. Эта сфера получила название data mining (добыча данных). Классический пример: обнаружение корреляции продаж памперсов и пива. Жены отправляют мужей за памперсами, а те заодно «утешают» себя покупкой пива. Поставив стеллажи с пивом и памперсами рядом, удалось заметно поднять продажи. Адаптация к поведению пользователя. Программы могут анализировать привычки пользователя и приспосабливаться к нему, заранее готовясь к выполнению наиболее вероятных действий или убирая из поля зрения лишние детали. Многофакторная оптимизация. Частый вопрос: как найти оптимум, когда на результат влияет очень много параметров? ИИ позволяет значительно сузить область поиска, ускоряя принятие решений и повышая их качество. Оценка рисков, прогнозирование. Оперативное построение прогноза с учетом предшествующей истории, например, на бирже; оценка рисков, связанных с разными вариантами поведения. Особый случай: интеллектуальные системы безопасности для автомобилей, реагирующие на опасные дорожные ситуации быстрее водителя. Диагностика. Быстрое выявление заболеваний и неисправностей по совокупности признаков. Последние три сферы применения часто объединяют под названием «поддержка принятия решений».