При обратном распространении ошибки вес, обновляемый для каждого нейрона, высчитывается так, чтобы уменьшить, но не устранить полностью ошибку нейрона в обучающем экземпляре. Причина этого заключается в том, что цель обучения сети — дать ей возможность сделать выводы, которых нет в данных обучения, а не просто запомнить эти данные. Таким образом, каждое обновление весов продвигает сеть к такому их набору, который лучше всего подходит к набору данных, и на протяжении многих итераций сеть постепенно сужает значения весов в наборе, которые учитывают общее распределение данных больше, чем характеристики обучающих объектов. В некоторых версиях обратного распространения ошибки веса обновляются только после того, как несколько объектов (или пакет объектов) были представлены сети, а не после ввода каждого обучающего объекта. Единственная настройка, необходимая для этого, заключается в том, чтобы алгоритм использовал среднюю ошибку сети для этих объектов в качестве меры ошибки на выходе для процесса обновления веса.
Одним из наиболее удивительных технических достижений последних 10 лет стало появление глубокого обучения. Сети глубокого обучения — это те же нейронные сети, имеющие несколько[19] слоев скрытых юнитов, — другими словами, они
Подобно предыдущим сетям, которые мы рассматривали, это также полностью подключенная сеть с прямой связью. Однако не все сети являются таковыми. Было разработано множество типов сетевых топологий. Например, рекуррентные нейронные сети (РНС) вводят в сетевую топологию петли: выходное значение нейрона возвращается на один из входов в процессе обработки следующего набора входных значений. Этот цикл дает сети память, которая позволяет ей обрабатывать каждый вход в контексте предыдущих, уже обработанных ею раньше. Следовательно, РНС подходят для обработки последовательных данных, таких как естественный язык[20]. Другой популярной архитектурой глубоких нейронных сетей являются сверхточные нейронные сети (СНС). СНС были первоначально разработаны для использования с данными изображений{1}. Сеть распознавания изображений должна обнаруживать на изображении визуальный признак независимо от того, в какой части изображения он встречается. Например, если сеть выполняет распознавание лиц, она должна уметь распознавать форму глаза, где бы он ни находился — в верхнем правом углу или в центре изображения. СНС достигают этого за счет групп нейронов, которые имеют одинаковый набор весов на своих входах. В этом контексте набор входных весов определяет функцию, которая возвращает истинное значение, если в наборе поступающих в нее пикселей появляется определенный визуальный признак. Это означает, что каждая группа нейронов с одинаковыми весами учится идентифицировать определенный визуальный признак и каждый нейрон в группе действует как детектор этого признака. В СНС нейроны в каждой группе расположены так, чтобы каждый исследовал свой фрагмент изображения, а вместе группа охватывала бы его целиком. Таким образом, если заданный визуальный признак присутствует на изображении, один из нейронов в группе идентифицирует его.