Значица так. Классификацию НС можно проводить по разным основаниям. Что есть НС? Топология (элементы и связи между ними), динамика и правило обучения + базисы для аппроксимации. Исходя из этих критериев, мы и будем строить классификацию. Условимся называть НС любой алгоритм, способный обучаться в режиме on-line (чтобы отличить их от классических аналитических процедур стат. анализа типа линейной регрессии и т.п.). Вообще говоря, почти любому НС методу можно найти его аналог в классической статистике. Ну да фиг с ней. Не о том сейчас речь. С мат. точки зрения любая НС занимается ничем иным как функциональной аппроксимацией (function approximation). Всё остальное - от лукавого. Классическим примером ФА можно назвать спектральный анализ. Поехали.
I. Статические топологии:
1. Обучение с учителем (supervised learning):
а) глобальная аппроксимация:
- многослойный перцептрон (multilayer perceptron - MLP). В качестве базисов используются глобальные функции: обычно логистическая функция или гиперболический тангенс.
б) локальная аппроксимация:
- сети на радиальных базисных функциях (radial basis function - RBF). Используются гауссовы функции.
- вейвлет сети (wavelet). Новомодная хрень. Используются вейвлеты как базисы. Пока это экзотика.
В чём разница. RBF – быстрее обучаются, но требуют больше ресурсов памяти (при больших выборках могут быть проблемы), неспособны к экстраполяции (на самом деле это не страшно, поскольку прогноз – это интерполяции в большинстве случаев). В зависимости от формы функциональной зависимости между входом/выходом могут лучше работать те или иные топологии. Однозначного предпочтения отдать нельзя.
В зависимости от характера выхода эти топологии решают или задачу классификации или регрессии.
в) опорно-векторная машина (support vector machine). Один из лучших классификаторов на сегодня. Предложен Вапником (наш ученый!). Базисы – обычно RBF, но могут любые быть. Отличается от RBF правилом обучения. SVM проводит решающую поверхность посередине границы между классами (а MLP и RBF как попало). Это обеспечивает лучшую способность к обобщению. Может использоваться и для регрессии. Очень хорошо обучается. Проблемы - как и у RBF.
2. Обучение без учителя (unsupervised learning).
В отличие от 1 здесь нет желаемого сигнала на выходе. Сеть анализирует структуру самих входов. Если 1 решают задачи регрессии и классификации, то 2 – задачи понижения размерности и кластеризации.
а) обучение по Хеббу [канадский нейрофизиолог – светлая ему память, замечательный ученый был] (hebbian learning). Эти НС имеют несколько входов и несколько выходов (не больше чем входов). Они решают задачу понижения размерности входов, известную в статистике как анализ главных компонент [факторный анализ – по сути также хрень] (principal component analysis - PCA). На выходе эта сеть даёт координаты входных векторов в ортогональной координатной системе (количество выходных нейронов определяет итоговую размерность данных). Может использоваться для сжатия информации и предобработки (гадские корреляции исчезают).
*анти-Хебб (anti-hebbian learning). Тоже самое. Только размер шага (step size) задаётся отрицательным. Подробнее – в динамических топологиях.
б) обучение с конкуренцией (competitive learning). Задача кластеризации. Это тоже можно рассматривать как сжатие информации. Такие сетки находят скопления точек данных с высокой плотностью концентрации (т.н. «кластеры»), т.е. они делают как бы натуральную классификацию данных (объекты близкие в пространстве переменных считаются принадлежащими к одному классу-кластеру). Количество нейронов в выходном слое задаёт количество кластеров. Если на вход подавать различные ТА-индикаторы, то выделенные кластеры будут соответствовать некоторым типичным ситуациям на рынке, т.е. своего рода паттернам (может даже сопоставимым с классическими типа «голова и плечи» и т.п.). Это конечно в идеальном случае, т.е. если такие паттерны действительно имеются в действительности. В противном случае НС будет просто давать некие бессмысленные сигналы. [Ну в общем тут так же как и с прогнозом]. Каждый нейрон в выходном слое соответствует тому или иному кластеру, т.е. тому или иному состоянию, режиму рынка. Обычно competitive learning – это сети Кохонена, т.н. самоорганизующиеся карты [признаков] (self-organized [feature] map – SOM, SOMF). Но есть и более продвинутые методы. И они у меня есть в виде проги – если будет интерес расскажу подробнее и поделюсь ссылками. Вообще говоря, ещё выделяют «мягкое соревнование» (soft competition) – это и есть Кохонен и «твердое» (hard competition). Но это уже тонкости.
Пока всё. В сл. № НС-ликбеза рассмотрим динамические топологии, которые, вообще говоря, для нас представляют наибольший интерес, поскольку рынок – это динамика.
Отредактировано beholder22 (2006-09-19 19:25:33)