Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 13. Аналитические технологии и нейронные...docx
Скачиваний:
2
Добавлен:
18.09.2019
Размер:
171.79 Кб
Скачать

Лекция 13. Что такое аналитические технологии Аналитические технологии - это методики, которые на основе каких-либо моделей, алгоритмов, математических теорем позволяют по известным данным оценить значения неизвестных характеристик и параметров. Простейший пример аналитической технологии - теорема Пифагора, которая позволяет по длинам сторон прямоугольника определить длину его диагонали по известной формуле с22+b2.  Другим примером являются способы, с помощью которых обрабатывает информацию человеческий мозг. Даже мозг ребенка может решать задачи, неподвластные современным компьютерам, такие как распознавание знакомых лиц в толпе или эффективное управление несколькими десятками мышц при игре в футбол. Уникальность мозга состоит в том, что он способен обучаться решению новых задач - игре в шахматы, вождению автомобиля и т.д. Тем не менее, мозг плохо приспособлен к обработке больших объемов числовой информации - человек не сможет найти даже квадратный корень из числа 463761 в уме, не используя калькулятора или алгоритма вычисления в столбик. На практике же часто встречаются задачи о числах, гораздо более сложные, чем извлечение корня. Таким образом, человеку для решения этих задач необходимы дополнительные методики и инструменты.

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

Детерминированные технологии

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

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

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

Задача: Имеется инвестиционный капитал, который нужно распределить среди 10 проектов. Для каждого проекта задана функция зависимости прибыли от объема вложения. Требуется найти наиболее прибыльный вариант распределения капитала, при условии, что заданы минимальный и максимальный объем инвестиций для каждого проекта.  Традиционное решение: Чаще всего решение в данном случае принимает руководитель, основываясь только на личных впечатлениях о проектах. Размеры упущенной выгоды при этом не подсчитывают, и неоптимальность решения может остаться незамеченной.

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

Детерминированный алгоритм для поиска оптимального решения применим только в том случае, если все данные функции линейны. В реальных задачах бизнеса это условие не выполняется. Хотя данные функции можно аппроксимировать линейными, решение в этом случае будет далеким от оптимального.

Если одна из функций нелинейна, то остается два традиционных пути решения этой задачи.

А) использовать метод градиентного спуска для поиска максимума прибыли. В данном случае область определения функции прибыли имеет сложную форму, а сама функция - несколько локальных максимумов, поэтому градиентный метод может привести к неоптимальному решению.  Б) провести полный перебор вариантов инвестирования. Если каждая из 10 функций задана в 100 точках, то придется проверить около 1020 вариантов, что потребует не менее нескольких месяцев работы современного компьютера.

Вероятностные технологии

На практике часто встречаются задачи, связанные с наблюдением случайных величин - например, задача прогнозирования курса акций. Для подобных задач не удается построить детерминированные модели, поэтому применяется принципиально иной, вероятностный подход. Параметры вероятностных моделей - это распределения случайных величин, их средние значения, дисперсии и т.д. Как правило, эти параметры изначально неизвестны, а для их оценки используются статистические методы, применяемые к выборкам наблюдаемых значений (историческим данным). Такого рода методы также предполагают, что известна некоторая вероятностная модель задачи.

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

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

По данным фирмы Ward Systems Group, уже в 1998 году программные продукты на основе нейронных сетей использовались более чем в 500 крупнейших компаниях мира из списка Fortune 1000. 

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

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

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

Рассмотрим строение биологического нейрона. Каждый нейрон имеет отростки нервных волокон двух типов - дендриты, по которым принимаются импульсы, и единственный аксон, по которому нейрон может передавать импульс. Аксон контактирует с дендритами других нейронов через специальные образования - синапсы, которые влияют на силу импульса.

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

Некоторое время она не способна генерировать новые импульсы. Благодаря этому клетки работают по тактам, наподобие дискретных автоматов, а сеть в целом передаёт направленную волну импульсов.

Скорость распространения нервного импульса составляет приблизительно

100 м/с, что в миллион раз меньше скорости распространения электрического сигна-

ла в медной проволоке. Тем не менее, сложные задачи распознавания человек реша-

ет за десятые доли секунды. Это означает, что нейровычисления требуют порядка

N=сотни последовательных тактов и выполняются с большой степенью параллелизма.

Кора головного мозга человека содержит порядка 1011 нейронов, и каждый нейрон связан с 103 –104 других нейронов. Это обеспечивает высокую взаимозаменяемость нервных клеток и надежность нервной системы в целом. Отказ даже существенной доли нейронов не нарушает нормального хода распространения нервного импульса.