Вход
Регистрация

Распознование букв с помощью нейронных сетей. Срочно!

Здравствуйте. Имеется: нейронная сеть с одним внутренним слоем, для расспознования букв, рисунок с буквой приводится к нормализованному виду - матрице-свертке 10х10,где каждый элемент 0.5 если процент заполнения в этом секторе больше чем общий процент заполнения, или -0.5 если в этом секторе -пустота, итого входной вектор из 100 элементов + ещё 1 для нейронного смещения вводится для всех слоев кроме выходного, вообщем всё как из книги С. Короткого. На вход случайно выбираются и подаются буквы из обучающего множества, алгоритм обучения - обратное расспространение ошибки. Так вот, когда количество различных букв в обучающей выборке не много, к примеру в ней различные изображения только для 2 или 3 букв допустим -различные изображения А,В или А,В,С то после обучения нейронной сети, а это в среднем 1000-1300 итераций и подстойки весовых коэффициентов, сеть работает приемлемо, и достаточно точно распознаёт тестовые образцы, хотя всё время не может расспознать одно из предствалений буквы - А, Но почему? Ведь во время обучения, сети подаётся достаточно похожий на это образ... Но если в обучающей выборке количество различных букв увеличивается к примеру А,B,C,D и т.д, то обучившить (сужу по значению минимизируемой функции она меньше или равна ошибке погрешности достаточно малая 0.0005), сеть расспознаёт входные образы уже хуже, чаще ошибается, путает одни с другими,путает даже те буквы на которых ранее обучалась, или вообще не может распознать символ (все значения нейронов в выходном слое - отрицательные), а некоторые распознаёт правильно. В чём здесь может быть причина?! - программу 100 раз внимательно проссматривал, весь алгоритм реализован правильно, всё как из книги С. Короткого. Тогда в чём причина?! Может точнее и надёжнее передавать не свётку - матрицу 10х10, а всё изображение буквы скажем 30х30 (смущает то что для 1-го слоя массивы весов для каждого нейрона будут иметь по 900 входов!!!!!)или увеличить нормализованное предстваление символа до 16х16 - вроде это считается стандартом. Вообщем помогите пожалуйста, в чём причина увеличение ошибок, ведь мне кажется что сама сеть функционирует правильно.......