Нейронная сеть Кохонена

Поделись знанием:
Перейти к: навигация, поиск

Нейронные сети Кохонена — класс нейронных сетей, основным элементом которых является слой Кохонена. Слой Кохонена состоит из адаптивных линейных сумматоров («линейных формальных нейронов»). Как правило, выходные сигналы слоя Кохонена обрабатываются по правилу «Победитель получает всё»: наибольший сигнал превращается в единичный, остальные обращаются в ноль.

По способам настройки входных весов сумматоров и по решаемым задачам различают много разновидностей сетей Кохонена[1]. Наиболее известные из них:





Слой Кохонена

Базовая версия

Слой Кохонена состоит из некоторого количества <math>n</math> параллельно действующих линейных элементов. Все они имеют одинаковое число входов <math>m</math> и получают на свои входы один и тот же вектор входных сигналов <math>x=(x_1,... x_m)</math>. На выходе <math>j</math>го линейного элемента получаем сигнал

<math>y_j=w_{j0} + \sum_{i=1}^m w_{ji}x_i,</math>

где:

  • <math>w_{ji}</math> — весовой коэффициент <math>i</math>-го входа <math>j</math>-го нейрона;
  • <math>i</math> — номер входа;
  • <math>j</math> — номер нейрона;
  • <math>w_{j0}</math> — пороговый коэффициент.

После прохождения слоя линейных элементов сигналы посылаются на обработку по правилу «победитель забирает всё»: среди выходных сигналов выполняется поиск максимального <math>y_j</math>; его номер <math>j_{\max}={\rm arg} \max_{j}\{y_j\}</math>. Окончательно, на выходе сигнал с номером <math>j_{\max}</math> равен единице, остальные — нулю. Если максимум одновременно достигается для нескольких <math>j_{\max}</math>, то:

  • либо принимают все соответствующие сигналы равными единице;
  • либо равным единице принимают только первый сигнал в списке (по соглашению).

«Нейроны Кохонена можно воспринимать как набор электрических лампочек, так что для любого входного вектора загорается одна из них»[5].

Геометрическая интерпретация

Большое распространение получили слои Кохонена, построенные следующим образом: каждому (<math>j</math>-му) нейрону сопоставляется точка <math>W_j = (w_{j1},...w_{jm})</math> в <math>m</math>-мерном пространстве (пространстве сигналов). Для входного вектора <math>x=(x_1,... x_m)</math> вычисляются его евклидовы расстояния <math>\rho_j(x)</math> до точек <math>W_j</math> и «ближайший получает всё» — тот нейрон, для которого это расстояние минимально, выдаёт единицу, остальные — нули. Следует заметить, что для сравнения расстояний достаточно вычислять линейную функцию сигнала:

<math>\rho_j(x)^2=\|x-W_j\|^2=\|W_j\|^2-2\sum_{i=1}^m w_{ji}x_i + \|x\|^2</math>

(здесь <math>\|y\|</math> — Евклидова длина вектора: <math>\|y\|^2=\sum_i y_i^2</math>). Последнее слагаемое <math>\|x\|^2</math> одинаково для всех нейронов, поэтому для нахождения ближайшей точки оно не нужно. Задача сводится к поиску номера наибольшего из значений линейных функций:

<math>j_{\max}={\rm arg} \max_{j}\left\{\sum_{i=1}^m w_{ji}x_i-\frac{1}{2}\|W_j\|^2\right\}.</math>

Таким образом, координаты точки <math>W_j = (w_{j1},...w_{jm})</math> совпадают с весами линейного нейрона слоя Кохонена (при этом значение порогового коэффициента <math>w_{j0} =-\|W_j\|^2/2 </math>).

Если заданы точки <math>W_j = (w_{j1},...w_{jm})</math>, то <math>m</math>-мерное пространство разбивается на соответствующие многогранники Вороного-Дирихле <math>V_j</math>: многогранник <math>V_j</math> состоит из точек, которые ближе к <math>W_j</math>, чем к другим <math>W_k</math> (<math>k \neq j</math>)[6].

Сети векторного квантования

Задача векторного квантования с <math>k</math> кодовыми векторами <math>W_j</math> для заданной совокупности входных векторов <math>S</math> ставится как задача минимизации искажения при кодировании, то есть при замещении каждого вектора из <math>S</math> соответствующим кодовым вектором. В базовом варианте сетей Кохонена используется метод наименьших квадратов и искажение <math>D</math> вычисляется по формуле

<math>D=\sum_{j=1}^k \sum_{x \in K_j}\|x-W_j\|^2,</math>

где <math>K_j</math> состоит из тех точек <math>x \in S</math>, которые ближе к <math>W_j</math>, чем к другим <math>W_l</math> (<math>l \neq j</math>). Другими словами, <math>K_j</math> состоит из тех точек <math>x \in S</math>, которые кодируются кодовым вектором <math>W_j</math>.

Если совокупность <math>S</math> задана и хранится в памяти, то стандартным выбором в обучении соответствующей сети Кохонена является метод K-средних. Это метод расщепления:

  • при данном выборе кодовых векторов (они же весовые векторы сети) <math>W_j</math> минимизацией <math>D</math> находим множества <math>K_j</math> — они состоит из тех точек <math>x \in S</math>, которые ближе к <math>W_j</math>, чем к другим <math>W_l</math>;
  • при данном разбиении <math>S</math> на множества <math>K_j</math> минимизацией <math>D</math> находим оптимальные позиции кодовых векторов <math>W_j</math> — для оценки по методу наименьших квадратов это просто средние арифметические:
<math>W_j=\frac{1}{|K_j|}\sum_{x \in K_j} x,</math>

где <math>|K_j|</math> — число элементов в <math>K_j</math>.

Далее итерируем. Этот метод расщепления сходится за конечное число шагов и даёт локальный минимум искажения.

Если же, например, совокупность <math>S</math> заранее не задана, или по каким-либо причинам не хранится в памяти, то широко используется онлайн метод. Векторы входных сигналов <math>x</math> обрабатываются по одному, для каждого из них находится ближайший кодовый вектор («победитель», который «забирает всё») <math>W_{j(x)}</math>. После этого данный кодовый вектор пересчитывается по формуле

<math>W^{\rm new}_{j(x)}=W^{\rm old}_{j(x)}(1-\theta)+x\theta,</math>

где <math>\theta \in (0,1)</math> — шаг обучения. Остальные кодовые векторы на этом шаге не изменяются.

Для обеспечения стабильности используется онлайн метод с затухающей скоростью обучения: если <math>T</math> — количество шагов обучения, то полагают <math>\theta =\theta(T)</math>. Функцию <math>\theta(T)>0</math> выбирают таким образом, чтобы <math>\theta(T) \to 0</math> монотонно при <math>T \to \infty</math> и чтобы ряд <math>\sum_{T=1}^{\infty}\theta(T)</math> расходился, например, <math>\theta(T)=\theta_0/T</math>.

Векторное квантование является намного более общей операцией, чем кластеризация, поскольку кластеры должны быть разделены между собой, тогда как совокупности <math>K_j</math> для разных кодовых векторов <math>W_j</math> не обязательно представляют собой раздельные кластеры. С другой стороны, при наличии разделяющихся кластеров векторное квантование может находить их и по-разному кодировать.

Самоорганизующиеся карты Кохонена

Идея и алгоритм обучения

Задача векторного квантования состоит, по своему существу, в наилучшей аппроксимации всей совокупности векторов данных <math>k</math> кодовыми векторами <math>W_j</math>. Самоорганизующиеся карты Кохонена также аппроксимируют данные, однако при наличии дополнительной структуры в совокупности кодовых векторов (англ. codebook). Предполагается, что априори задана некоторая симметричная таблица «мер соседства» (или «мер близости») узлов: для каждой пары <math>j,l</math> (<math>j,l=1,...k</math>) определено число <math>\eta_{jl}</math> (<math>0 \leq \eta_{jl} \leq 1</math>) при этом диагональные элементы таблицы близости равны единице (<math>\eta_{jj}=1</math>).

Векторы входных сигналов <math>x</math> обрабатываются по одному, для каждого из них находится ближайший кодовый вектор («победитель», который «забирает всё») <math>W_{j(x)}</math>. После этого все кодовые векторы <math>W_l</math>, для которых <math>\eta_{j(x)l}\neq 0</math>, пересчитываются по формуле

<math>W^{\rm new}_l=W^{\rm old}_l(1- \eta_{j(x)l} \theta)+x\eta_{j(x)l} \theta,</math>

где <math>\theta \in (0,1)</math> — шаг обучения. Соседи кодового вектора — победителя (по априорно заданной таблице близости) сдвигаются в ту же сторону, что и этот вектор, пропорционально мере близости.

Чаще всего, таблица кодовых векторов представляется в виде фрагмента квадратной решётки на плоскости, а мера близости определяется, исходя из евклидового расстояния на плоскости.

Самоорганизующиеся карты Кохонена служат, в первую очередь, для визуализации и первоначального («разведывательного») анализа данных[7]. Каждая точка данных отображается соответствующим кодовым вектором из решётки. Так получают представление данных на плоскости («карту данных»). На этой карте возможно отображение многих слоёв: количество данных, попадающих в узлы (то есть «плотность данных»), различные функции данных и так далее. При отображении этих слоёв полезен аппарат географических информационных систем (ГИС). В ГИС подложкой для изображения информационных слоев служит географическая карта. Карта данных является подложкой для произвольного по своей природе набора данных. Карта данных служит заменой географической карте там, где географической карты просто не существует. Принципиальное отличие в следующем: на географической карте соседние объекты обладают близкими географическими координатами, на карте данных близкие объекты обладают близкими свойствами. С помощью карты данных можно визуализировать данные, одновременно нанося на подложку сопровождающую информацию (подписи, аннотации, атрибуты, информационные раскраски)[7]. Карта служит также информационной моделью данных. С её помощью можно заполнять пробелы в данных. Эта способность используется, например, для решения задач прогнозирования.

Самоорганизующиеся карты и главные многообразия

Идея самоорганизующихся карт очень привлекательна и породила массу обобщений, однако, строго говоря, мы не знаем, что мы строим: карта — это результат работы алгоритма и не имеет отдельного («объектного») определения. Есть, однако, близкая теоретическая идея — главные многообразия (англ. principal manifolds)[8]. Эти многообразия обобщают линейные главные компоненты. Они были введены как линии или поверхности, проходящие через «середину» распределения данных, с помощью условия самосогласованности: каждая точка <math>x</math> на главном многообразии <math>M</math> является условным математическим ожиданием тех векторов <math>z</math>, которые проектируются на <math>x</math> (при условии <math>x=P(z)</math>, где <math>P</math> — оператор проектирования окрестности <math>M</math> на <math>M</math>),

<math>x=\mathbf{E}(z|P(z)=x).</math>

Самоорганизующиеся карты могут рассматриваться как аппроксимации главных многообразий и популярны в этом качестве[9].

Упругие карты

Метод аппроксимации многомерных данных, основанный на минимизации «энергии упругой деформации» карты, погружённой в пространство данных, был предложен А. Н. Горбанём в 1996 году, и впоследствии развит им совместно с А. Ю. Зиновьевым, А. А. Россиевым и А. А. Питенко[7]. Метод основан на аналогии между главным многообразием и эластичной мембраной и упругой пластиной. В этом смысле он является развитием классической идеи сплайна (хотя упругие карты и не являются многомерными сплайнами).

Пусть задана совокупность входных векторов <math>S</math>. Так же, как и сети векторного квантования и самоорганизующиеся карты, упругая карта представлена как совокупность кодовых векторов (узлов) <math>W_j</math> в пространстве сигналов. Множество данных <math>S</math> разделено на классы <math>K_j</math>, состоящие из тех точек <math>x \in S</math>, которые ближе к <math>W_j</math>, чем к другим <math>W_l</math> (<math>l \neq j</math>). Искажение кодирования <math>D</math>

<math>D=\sum_{j=1}^k \sum_{x \in K_j}\|x-W_j\|^2,</math>

может трактоваться как суммарная энергия пружин единичной жёсткости, связывающих векторы данных с соответствующими кодовыми векторами.

На множестве узлов задана дополнительная структура: некоторые пары связаны «упругими связями», а некоторые тройки объединены в «рёбра жёсткости». Обозначим множество пар, связанных упругими связями, через <math>E</math>, а множество троек, составляющих рёбра жёсткости, через <math>G</math>. Например, в квадратной решётке ближайшие узлы (как по вертикали, так и погоризонтали) связываются упругими связями, а ребра жёсткости образуются вертикальными и горизонтальными тройками ближайших узлов. Энергия деформации карты состоит из двух слагаемых:

энергия растяжения <math>U_{E}=\lambda \sum_{(W_i,W_j) \in E} \|W_i -W_j\|^2 ;</math>
энергия изгиба <math>U_{G}=\mu \sum_{(W_i,W_j,W_l) \in G} \|W_i -2W_j+W_l\|^2 ;</math>

где <math>\lambda, \mu </math> — соответствующие модули упругости.

Задача построения упругой карты состоит в минимизации функционала

<math>U=D+U_{E}+U_{G};</math>

Если разбиение совокупности входных векторов <math>S</math> на классы <math>K_j</math> фиксировано, то минимизация <math>U</math> — линейная задача с разреженной матрицей коэффициентов. Поэтому, как и для сетей векторного квантования, применяется метод расщепления: фиксируем <math>\{W_j\}</math> — ищем <math>\{K_j\}</math> — для данных <math>\{K_j\}</math> ищем <math>\{W_j\}</math> — для данных <math>\{W_j\}</math> ищем <math>\{K_j\}</math> — … Алгоритм сходится к (локальному) минимуму <math>U</math>.

Метод упругих карт позволяет решать все задачи, которые решают самоорганизующиеся карты Кохонена, однако обладает большей регулярностью и предсказуемостью. При увеличении модуля изгиба <math>\mu </math> упругие карты приближаются к линейным главным компонентам. При уменьшении обоих модулей упругости они превращаются в Кохоненовские сети векторного квантования. В настоящее время упругие карты интенсивно используются для анализа многомерных данных в биоинформатике.[10] Соответствующее программное обеспечение опубликовано и свободно доступно на сайте института Кюри (Париж)[11][12].

На рисунке представлены результаты визуализации данных по раку молочной железы. Эти данные содержат 286 примеров с указанием уровня экспрессии 17816 генов[13]. Они доступны онлайн как ставший классическим тестовый пример для визуализации и картографии данных[14].

Сети векторного квантования, обучаемые с учителем

Решается задача классификации. Число классов может быть любым. Изложим алгоритм для двух классов, <math>{\bold A}</math> и <math>{\bold B}</math>. Исходно для обучения системы поступают данные, класс которых известен. Задача: найти для класса <math>{\bold A}</math> некоторое количество <math>k_{\bold A}</math> кодовых векторов <math>W_j^{\bold A}</math>, а для класса <math>{\bold B}</math> некоторое (возможно другое) количество <math>k_{\bold B}</math> кодовых векторов <math>W_l^{\bold B}</math> таким образом, чтобы итоговая сеть Кохонена с <math>k_{\bold A}+k_{\bold B}</math> кодовыми векторами <math>W_j^{\bold A}</math>, <math>W_l^{\bold B}</math> (объединяем оба семейства) осуществляла классификацию по следующему решающему правилу:

если для вектора входных сигналов <math>x</math> ближайший кодовый вектор («победитель», который в слое Кохонена «забирает всё») принадлежит семейству <math>\{W_j^{\bold A}\}</math>, то <math>x</math> принадлежит классу <math>{\bold A}</math>; если же ближайший к <math>x</math> кодовый вектор принадлежит семейству <math>\{W_l^{\bold B}\}</math>, то <math>x</math> принадлежит классу <math>{\bold B}</math>.

С каждым кодовым вектором объединённого семейства <math>\{W_j^{\bold A}\} \cup \{W_l^{\bold B}\}</math> связан многогранник Вороного-Дирихле. Обозначим эти многогранники <math>V_j^{\bold A}</math>, <math>V_l^{\bold B}</math> соответственно. Класс <math>{\bold A}</math> в пространстве сигналов, согласно решающему правилу, соответствует объединению <math>\cup_j V_j^{\bold A}</math>, а класс <math>{\bold B}</math> соответствует объединению <math>\cup_l V_l^{\bold B}</math>. Геометрия таких объединений многогранников может быть весьма сложной (см. рисунок с примером возможного разбиения на классы).

Правила обучения сети онлайн строится на основе базового правила обучения сети векторного квантования. Пусть на вход системы подаётся вектор сигналов <math>x</math>, класс которого известен. Если он классифицируется системой правильно, то соответствующий <math>x</math> кодовый вектор <math>W</math>слегка сдвигается в сторону вектора сигнала («поощрение»)

<math>W^{\rm new}=W^{\rm old}(1-\theta)+x\theta,</math>

Если же <math>x</math> классифицируется неправильно, то соответствующий <math>x</math> кодовый вектор <math>W</math>слегка сдвигается в противоположную сторону от сигнала («наказание»)

<math>W^{\rm new}=W^{\rm old}(1+\theta)-x\theta,</math>

где <math>\theta \in (0,1)</math> — шаг обучения. Для обеспечения стабильности используется онлайн метод с затухающей скоростью обучения. Возможно также использование разных шагов для «поощрения» правильного решения и для «наказания» неправильного.

Это — простейшая (базовая) версия метода[15]. Существует множество других модификаций.

Напишите отзыв о статье "Нейронная сеть Кохонена"

Примечания

  1. [www.faqs.org/faqs/ai-faq/neural-nets/part1/section-11.html How many kinds of Kohonen networks exist? Internet FAQ Archives. Online Education]
  2. Hecht-Nielsen, R. (1990), Neurocomputing, Reading, MA: Addison-Wesley, ISBN 0-201-09355-3.
  3. Kohonen, T. (1989/1997/2001), Self-Organizing Maps, Berlin — New York: Springer-Verlag. First edition 1989, second edition 1997, third extended edition 2001, ISBN 0-387-51387-6, ISBN 3-540-67921-9
  4. Kohonen, T. (1988), Learning Vector Quantization, Neural Networks, 1 (suppl 1), 303.
  5. Уоссермен, Ф. [evrika.tsi.lv/index.php?name=texts&file=show&f=410 Нейрокомпьютерная техника: Теория и практика] = Neural Computing. Theory and Practice. — М.: Мир, 1992. — 240 с. — ISBN 5-03-002115-9.
  6. [www.cs.cornell.edu/Info/People/chew/Delaunay.html Real time interactive Voronoi and Delaunay diagrams with source code]
  7. 1 2 3 Зиновьев А. Ю. [pca.narod.ru/ZINANN.htm Визуализация многомерных данных]. — Красноярск: Изд. Красноярского государственного технического университета, 2000. — 180 с.
  8. Диссертация T. Хасти: Hastie T., [www.slac.stanford.edu/pubs/slacreports/slac-r-276.html Principal curves and surfaces], Ph.D dissertation, Stanford Linear accelerator center, Stanford University, Stanford, California, US, November 1984. [pca.narod.ru/HastieThesis.htm А также на сайте PCA]. С этой работы началось изучение главных многообразий.
  9. Yin H. [pca.narod.ru/contentsgkwz.htm Learning nonlinear principal manifolds by self-organising maps], In: Gorban A. N. et al (Eds.), LNCSE 58, Springer, 2007. ISBN 978-3-540-73749-0
  10. Gorban A. N., Kegl B., Wunsch D., Zinovyev A. Y. (Eds.), [www.springer.com/west/home/math/cse?SGWID=4-10045-22-173750210-0 Principal Manifolds for Data Visualisation and Dimension Reduction], [www.springer.com/west/home/math/cse?SGWID=4-10045-69-173622682-0 Series: Lecture Notes in Computational Science and Engineering] 58, Springer, Berlin — Heidelberg — New York, 2007, XXIV, 340 p. 82 illus. ISBN 978-3-540-73749-0 (а также [pca.narod.ru/ онлайн]).
  11. [bioinfo-out.curie.fr/projects/vimida/ VIMIDA: a Java-applet for VIsualization of MIcroarray DAta]
  12. [bioinfo-out.curie.fr/projects/vidaexpert/ ViDaExpert: a software for multidimensional vectorial data visualization]
  13. Wang Y., Klijn J.G., Zhang Y., Sieuwerts A.M., Look M.P., Yang F., Talantov D., Timmermans M., Meijer-van Gelder M.E., Yu J. et al. Gene-expression profiles to predict distant metastasis of lymph-node-negative primary breast cancer. Lancet 365 (2005), 671—679.
  14. Principal manifolds for data cartography and dimension reduction, Leicester, UK, August 2006. [www.ihes.fr/~zinovyev/princmanif2006 A web-page with test microarrays datasets provided for participants of the workshop].
  15. [xml.nada.kth.se/~orre/snns-manual/UserManual/node160.html DLVQ Fundamentals]

См. также

Отрывок, характеризующий Нейронная сеть Кохонена

– Sire! Je ne m'attendais pas a moins qu'a vous trouver aux portes de Moscou, [Я ожидал не менее того, как найти вас, государь, у ворот Москвы.] – сказал Боссе.
Наполеон улыбнулся и, рассеянно подняв голову, оглянулся направо. Адъютант плывущим шагом подошел с золотой табакеркой и подставил ее. Наполеон взял ее.
– Да, хорошо случилось для вас, – сказал он, приставляя раскрытую табакерку к носу, – вы любите путешествовать, через три дня вы увидите Москву. Вы, верно, не ждали увидать азиатскую столицу. Вы сделаете приятное путешествие.
Боссе поклонился с благодарностью за эту внимательность к его (неизвестной ему до сей поры) склонности путешествовать.
– А! это что? – сказал Наполеон, заметив, что все придворные смотрели на что то, покрытое покрывалом. Боссе с придворной ловкостью, не показывая спины, сделал вполуоборот два шага назад и в одно и то же время сдернул покрывало и проговорил:
– Подарок вашему величеству от императрицы.
Это был яркими красками написанный Жераром портрет мальчика, рожденного от Наполеона и дочери австрийского императора, которого почему то все называли королем Рима.
Весьма красивый курчавый мальчик, со взглядом, похожим на взгляд Христа в Сикстинской мадонне, изображен был играющим в бильбоке. Шар представлял земной шар, а палочка в другой руке изображала скипетр.
Хотя и не совсем ясно было, что именно хотел выразить живописец, представив так называемого короля Рима протыкающим земной шар палочкой, но аллегория эта, так же как и всем видевшим картину в Париже, так и Наполеону, очевидно, показалась ясною и весьма понравилась.
– Roi de Rome, [Римский король.] – сказал он, грациозным жестом руки указывая на портрет. – Admirable! [Чудесно!] – С свойственной итальянцам способностью изменять произвольно выражение лица, он подошел к портрету и сделал вид задумчивой нежности. Он чувствовал, что то, что он скажет и сделает теперь, – есть история. И ему казалось, что лучшее, что он может сделать теперь, – это то, чтобы он с своим величием, вследствие которого сын его в бильбоке играл земным шаром, чтобы он выказал, в противоположность этого величия, самую простую отеческую нежность. Глаза его отуманились, он подвинулся, оглянулся на стул (стул подскочил под него) и сел на него против портрета. Один жест его – и все на цыпочках вышли, предоставляя самому себе и его чувству великого человека.
Посидев несколько времени и дотронувшись, сам не зная для чего, рукой до шероховатости блика портрета, он встал и опять позвал Боссе и дежурного. Он приказал вынести портрет перед палатку, с тем, чтобы не лишить старую гвардию, стоявшую около его палатки, счастья видеть римского короля, сына и наследника их обожаемого государя.
Как он и ожидал, в то время как он завтракал с господином Боссе, удостоившимся этой чести, перед палаткой слышались восторженные клики сбежавшихся к портрету офицеров и солдат старой гвардии.
– Vive l'Empereur! Vive le Roi de Rome! Vive l'Empereur! [Да здравствует император! Да здравствует римский король!] – слышались восторженные голоса.
После завтрака Наполеон, в присутствии Боссе, продиктовал свой приказ по армии.
– Courte et energique! [Короткий и энергический!] – проговорил Наполеон, когда он прочел сам сразу без поправок написанную прокламацию. В приказе было:
«Воины! Вот сражение, которого вы столько желали. Победа зависит от вас. Она необходима для нас; она доставит нам все нужное: удобные квартиры и скорое возвращение в отечество. Действуйте так, как вы действовали при Аустерлице, Фридланде, Витебске и Смоленске. Пусть позднейшее потомство с гордостью вспомнит о ваших подвигах в сей день. Да скажут о каждом из вас: он был в великой битве под Москвою!»
– De la Moskowa! [Под Москвою!] – повторил Наполеон, и, пригласив к своей прогулке господина Боссе, любившего путешествовать, он вышел из палатки к оседланным лошадям.
– Votre Majeste a trop de bonte, [Вы слишком добры, ваше величество,] – сказал Боссе на приглашение сопутствовать императору: ему хотелось спать и он не умел и боялся ездить верхом.
Но Наполеон кивнул головой путешественнику, и Боссе должен был ехать. Когда Наполеон вышел из палатки, крики гвардейцев пред портретом его сына еще более усилились. Наполеон нахмурился.
– Снимите его, – сказал он, грациозно величественным жестом указывая на портрет. – Ему еще рано видеть поле сражения.
Боссе, закрыв глаза и склонив голову, глубоко вздохнул, этим жестом показывая, как он умел ценить и понимать слова императора.


Весь этот день 25 августа, как говорят его историки, Наполеон провел на коне, осматривая местность, обсуживая планы, представляемые ему его маршалами, и отдавая лично приказания своим генералам.
Первоначальная линия расположения русских войск по Ко лоче была переломлена, и часть этой линии, именно левый фланг русских, вследствие взятия Шевардинского редута 24 го числа, была отнесена назад. Эта часть линии была не укреплена, не защищена более рекою, и перед нею одною было более открытое и ровное место. Очевидно было для всякого военного и невоенного, что эту часть линии и должно было атаковать французам. Казалось, что для этого не нужно было много соображений, не нужно было такой заботливости и хлопотливости императора и его маршалов и вовсе не нужно той особенной высшей способности, называемой гениальностью, которую так любят приписывать Наполеону; но историки, впоследствии описывавшие это событие, и люди, тогда окружавшие Наполеона, и он сам думали иначе.
Наполеон ездил по полю, глубокомысленно вглядывался в местность, сам с собой одобрительно или недоверчиво качал головой и, не сообщая окружавшим его генералам того глубокомысленного хода, который руководил его решеньями, передавал им только окончательные выводы в форме приказаний. Выслушав предложение Даву, называемого герцогом Экмюльским, о том, чтобы обойти левый фланг русских, Наполеон сказал, что этого не нужно делать, не объясняя, почему это было не нужно. На предложение же генерала Компана (который должен был атаковать флеши), провести свою дивизию лесом, Наполеон изъявил свое согласие, несмотря на то, что так называемый герцог Эльхингенский, то есть Ней, позволил себе заметить, что движение по лесу опасно и может расстроить дивизию.
Осмотрев местность против Шевардинского редута, Наполеон подумал несколько времени молча и указал на места, на которых должны были быть устроены к завтрему две батареи для действия против русских укреплений, и места, где рядом с ними должна была выстроиться полевая артиллерия.
Отдав эти и другие приказания, он вернулся в свою ставку, и под его диктовку была написана диспозиция сражения.
Диспозиция эта, про которую с восторгом говорят французские историки и с глубоким уважением другие историки, была следующая:
«С рассветом две новые батареи, устроенные в ночи, на равнине, занимаемой принцем Экмюльским, откроют огонь по двум противостоящим батареям неприятельским.
В это же время начальник артиллерии 1 го корпуса, генерал Пернетти, с 30 ю орудиями дивизии Компана и всеми гаубицами дивизии Дессе и Фриана, двинется вперед, откроет огонь и засыплет гранатами неприятельскую батарею, против которой будут действовать!
24 орудия гвардейской артиллерии,
30 орудий дивизии Компана
и 8 орудий дивизии Фриана и Дессе,
Всего – 62 орудия.
Начальник артиллерии 3 го корпуса, генерал Фуше, поставит все гаубицы 3 го и 8 го корпусов, всего 16, по флангам батареи, которая назначена обстреливать левое укрепление, что составит против него вообще 40 орудий.
Генерал Сорбье должен быть готов по первому приказанию вынестись со всеми гаубицами гвардейской артиллерии против одного либо другого укрепления.
В продолжение канонады князь Понятовский направится на деревню, в лес и обойдет неприятельскую позицию.
Генерал Компан двинется чрез лес, чтобы овладеть первым укреплением.
По вступлении таким образом в бой будут даны приказания соответственно действиям неприятеля.
Канонада на левом фланге начнется, как только будет услышана канонада правого крыла. Стрелки дивизии Морана и дивизии вице короля откроют сильный огонь, увидя начало атаки правого крыла.
Вице король овладеет деревней [Бородиным] и перейдет по своим трем мостам, следуя на одной высоте с дивизиями Морана и Жерара, которые, под его предводительством, направятся к редуту и войдут в линию с прочими войсками армии.
Все это должно быть исполнено в порядке (le tout se fera avec ordre et methode), сохраняя по возможности войска в резерве.
В императорском лагере, близ Можайска, 6 го сентября, 1812 года».
Диспозиция эта, весьма неясно и спутанно написанная, – ежели позволить себе без религиозного ужаса к гениальности Наполеона относиться к распоряжениям его, – заключала в себе четыре пункта – четыре распоряжения. Ни одно из этих распоряжений не могло быть и не было исполнено.
В диспозиции сказано, первое: чтобы устроенные на выбранном Наполеоном месте батареи с имеющими выравняться с ними орудиями Пернетти и Фуше, всего сто два орудия, открыли огонь и засыпали русские флеши и редут снарядами. Это не могло быть сделано, так как с назначенных Наполеоном мест снаряды не долетали до русских работ, и эти сто два орудия стреляли по пустому до тех пор, пока ближайший начальник, противно приказанию Наполеона, не выдвинул их вперед.
Второе распоряжение состояло в том, чтобы Понятовский, направясь на деревню в лес, обошел левое крыло русских. Это не могло быть и не было сделано потому, что Понятовский, направясь на деревню в лес, встретил там загораживающего ему дорогу Тучкова и не мог обойти и не обошел русской позиции.
Третье распоряжение: Генерал Компан двинется в лес, чтоб овладеть первым укреплением. Дивизия Компана не овладела первым укреплением, а была отбита, потому что, выходя из леса, она должна была строиться под картечным огнем, чего не знал Наполеон.
Четвертое: Вице король овладеет деревнею (Бородиным) и перейдет по своим трем мостам, следуя на одной высоте с дивизиями Марана и Фриана (о которых не сказано: куда и когда они будут двигаться), которые под его предводительством направятся к редуту и войдут в линию с прочими войсками.
Сколько можно понять – если не из бестолкового периода этого, то из тех попыток, которые деланы были вице королем исполнить данные ему приказания, – он должен был двинуться через Бородино слева на редут, дивизии же Морана и Фриана должны были двинуться одновременно с фронта.
Все это, так же как и другие пункты диспозиции, не было и не могло быть исполнено. Пройдя Бородино, вице король был отбит на Колоче и не мог пройти дальше; дивизии же Морана и Фриана не взяли редута, а были отбиты, и редут уже в конце сражения был захвачен кавалерией (вероятно, непредвиденное дело для Наполеона и неслыханное). Итак, ни одно из распоряжений диспозиции не было и не могло быть исполнено. Но в диспозиции сказано, что по вступлении таким образом в бой будут даны приказания, соответственные действиям неприятеля, и потому могло бы казаться, что во время сражения будут сделаны Наполеоном все нужные распоряжения; но этого не было и не могло быть потому, что во все время сражения Наполеон находился так далеко от него, что (как это и оказалось впоследствии) ход сражения ему не мог быть известен и ни одно распоряжение его во время сражения не могло быть исполнено.


Многие историки говорят, что Бородинское сражение не выиграно французами потому, что у Наполеона был насморк, что ежели бы у него не было насморка, то распоряжения его до и во время сражения были бы еще гениальнее, и Россия бы погибла, et la face du monde eut ete changee. [и облик мира изменился бы.] Для историков, признающих то, что Россия образовалась по воле одного человека – Петра Великого, и Франция из республики сложилась в империю, и французские войска пошли в Россию по воле одного человека – Наполеона, такое рассуждение, что Россия осталась могущественна потому, что у Наполеона был большой насморк 26 го числа, такое рассуждение для таких историков неизбежно последовательно.
Ежели от воли Наполеона зависело дать или не дать Бородинское сражение и от его воли зависело сделать такое или другое распоряжение, то очевидно, что насморк, имевший влияние на проявление его воли, мог быть причиной спасения России и что поэтому тот камердинер, который забыл подать Наполеону 24 го числа непромокаемые сапоги, был спасителем России. На этом пути мысли вывод этот несомненен, – так же несомненен, как тот вывод, который, шутя (сам не зная над чем), делал Вольтер, говоря, что Варфоломеевская ночь произошла от расстройства желудка Карла IX. Но для людей, не допускающих того, чтобы Россия образовалась по воле одного человека – Петра I, и чтобы Французская империя сложилась и война с Россией началась по воле одного человека – Наполеона, рассуждение это не только представляется неверным, неразумным, но и противным всему существу человеческому. На вопрос о том, что составляет причину исторических событий, представляется другой ответ, заключающийся в том, что ход мировых событий предопределен свыше, зависит от совпадения всех произволов людей, участвующих в этих событиях, и что влияние Наполеонов на ход этих событий есть только внешнее и фиктивное.
Как ни странно кажется с первого взгляда предположение, что Варфоломеевская ночь, приказанье на которую отдано Карлом IX, произошла не по его воле, а что ему только казалось, что он велел это сделать, и что Бородинское побоище восьмидесяти тысяч человек произошло не по воле Наполеона (несмотря на то, что он отдавал приказания о начале и ходе сражения), а что ему казалось только, что он это велел, – как ни странно кажется это предположение, но человеческое достоинство, говорящее мне, что всякий из нас ежели не больше, то никак не меньше человек, чем великий Наполеон, велит допустить это решение вопроса, и исторические исследования обильно подтверждают это предположение.
В Бородинском сражении Наполеон ни в кого не стрелял и никого не убил. Все это делали солдаты. Стало быть, не он убивал людей.
Солдаты французской армии шли убивать русских солдат в Бородинском сражении не вследствие приказания Наполеона, но по собственному желанию. Вся армия: французы, итальянцы, немцы, поляки – голодные, оборванные и измученные походом, – в виду армии, загораживавшей от них Москву, чувствовали, что le vin est tire et qu'il faut le boire. [вино откупорено и надо выпить его.] Ежели бы Наполеон запретил им теперь драться с русскими, они бы его убили и пошли бы драться с русскими, потому что это было им необходимо.
Когда они слушали приказ Наполеона, представлявшего им за их увечья и смерть в утешение слова потомства о том, что и они были в битве под Москвою, они кричали «Vive l'Empereur!» точно так же, как они кричали «Vive l'Empereur!» при виде изображения мальчика, протыкающего земной шар палочкой от бильбоке; точно так же, как бы они кричали «Vive l'Empereur!» при всякой бессмыслице, которую бы им сказали. Им ничего больше не оставалось делать, как кричать «Vive l'Empereur!» и идти драться, чтобы найти пищу и отдых победителей в Москве. Стало быть, не вследствие приказания Наполеона они убивали себе подобных.
И не Наполеон распоряжался ходом сраженья, потому что из диспозиции его ничего не было исполнено и во время сражения он не знал про то, что происходило впереди его. Стало быть, и то, каким образом эти люди убивали друг друга, происходило не по воле Наполеона, а шло независимо от него, по воле сотен тысяч людей, участвовавших в общем деле. Наполеону казалось только, что все дело происходило по воле его. И потому вопрос о том, был ли или не был у Наполеона насморк, не имеет для истории большего интереса, чем вопрос о насморке последнего фурштатского солдата.
Тем более 26 го августа насморк Наполеона не имел значения, что показания писателей о том, будто вследствие насморка Наполеона его диспозиция и распоряжения во время сражения были не так хороши, как прежние, – совершенно несправедливы.
Выписанная здесь диспозиция нисколько не была хуже, а даже лучше всех прежних диспозиций, по которым выигрывались сражения. Мнимые распоряжения во время сражения были тоже не хуже прежних, а точно такие же, как и всегда. Но диспозиция и распоряжения эти кажутся только хуже прежних потому, что Бородинское сражение было первое, которого не выиграл Наполеон. Все самые прекрасные и глубокомысленные диспозиции и распоряжения кажутся очень дурными, и каждый ученый военный с значительным видом критикует их, когда сражение по ним не выиграно, и самью плохие диспозиции и распоряжения кажутся очень хорошими, и серьезные люди в целых томах доказывают достоинства плохих распоряжений, когда по ним выиграно сражение.
Диспозиция, составленная Вейротером в Аустерлицком сражении, была образец совершенства в сочинениях этого рода, но ее все таки осудили, осудили за ее совершенство, за слишком большую подробность.
Наполеон в Бородинском сражении исполнял свое дело представителя власти так же хорошо, и еще лучше, чем в других сражениях. Он не сделал ничего вредного для хода сражения; он склонялся на мнения более благоразумные; он не путал, не противоречил сам себе, не испугался и не убежал с поля сражения, а с своим большим тактом и опытом войны спокойно и достойно исполнял свою роль кажущегося начальствованья.


Вернувшись после второй озабоченной поездки по линии, Наполеон сказал:
– Шахматы поставлены, игра начнется завтра.
Велев подать себе пуншу и призвав Боссе, он начал с ним разговор о Париже, о некоторых изменениях, которые он намерен был сделать в maison de l'imperatrice [в придворном штате императрицы], удивляя префекта своею памятливостью ко всем мелким подробностям придворных отношений.