Профессор computer science Университета Торонто, руководитель инженерно-технической службы компании GOOGLE, главный консультант научно-исследовательского центра Vector Institute
Мартин Форд: Широкую известность вам принесла работа над методом обратного распространения ошибки. Расскажите, пожалуйста, что это за метод?
Джеффри Хинтон: Проще всего объяснить от обратного. Считается, что существует четкий алгоритм обучения нейронных сетей. Есть сеть, состоящая из слоев нейронов, снизу – вход в нее, сверху – выход. Все связи между нейронами имеют свой вес. Каждый нейрон смотрит на нейроны нижнего слоя и умножает их активность на вес связей, затем складывает все это и выдает результат. Регулируя вес связей, можно заставить сеть выполнять нужные вам операции, например находить кота на изображении и добавлять соответствующую метку.
Но как с помощью регулировки весов добиться от сети нужного результата? Существует простой и эффективный, но невероятно медленный алгоритм. Всем связям присваиваются случайные веса, сети демонстрируются примеры, и вы смотрите, что получается. Затем один из этих весов немного меняется, и демонстрируется другой набор примеров. Если результат работы сети стал лучше, внесенные изменения сохраняются. В противном случае вес возвращается к исходному значению или меняется в противоположном направлении. Затем эта операция проделывается с весом следующей связи и т. д.
В результате работа сети оценивается для каждого веса, причем на ряде примеров. Каждый вес должен обновляться несколько раз. Это медленно, но результат гарантирован.
Метод обратного распространения ошибки, по сути, позволяет получить такой же результат намного быстрее. Скорость его работы зависит от количества связей. Для сети с миллиардом связей метод обратного распространения сработает в миллиард раз быстрее, чем описанный выше алгоритм.
Прямой алгоритм имитирует процесс эволюции, ведь то, как заложенная в генах информация реализуется в конкретном индивиде, зависит от среды, в которой он находится. По генотипу невозможно точно предсказать, как будет выглядеть фенотип или насколько он будет успешным, потому что на это влияет множество внешних факторов.
Поскольку корректность результатов определяется только весами, которые нам известны, процесс прохождения данных можно контролировать с помощью метода обратного распространения. Его суть состоит в передаче сигналов ошибки от выхода к входу. В процессе их прохождения вычисляется, как следует поменять вес каждой связи, чтобы улучшить выводимый результат.
Вместо того чтобы
М. Ф.: Метод обратного распространения ошибки изобрел Дэвид Румельхарт, а вы развили его?