Полак__Применение_вычислительной_математики_в_химической_и_физической_кинетике (972294), страница 54
Текст из файла (страница 54)
д. Более того, человек не смог бы узнать уже встречавшихся ему животных, если бы они представали перед ним в новом ракурсе, или в ином освещении, илн на ином расстоянии. Ясно, что человек не запоминает все виденные им изображения, а хранит лишь обобщенные признаки кошек, собак, деревьев, позволяющие отнести вновь встретившийся объект к классу кошек, собак или деревьев. Весьма важно то, что никому в детстве не сообщают признаки в готовом виде, а каждый ребенок сам находит их в процессе обучения на примерах.
Точно так же ребенок обучается азбуке. Учитель не объясняет ученикам разницу между графической формой букв а и б, а просто показывает: вот это буква а и это буква а, и это а, а это буква б и это б и т. д. Очень скоро ребенок научается отличать эти буквы и в дальнейшем почти безошибочно узнает их, даже если они написаны незнакомым почерком, т.
е. если точно таких букв он прежде не видел. На основании этих общих соображений перед машиной была поставлена следующая аадача. Пусть имеется некоторое количество картинок, каждая из которых принадлежит к некоторому классу. В простейшем случае таких классов два (рассмотрение такого случая не является принципиальным ограничением). Такими классами могут быть кошки и собаки, буквы а и б, треугольники и квадраты и т. п. Необходимо, чтобы машина умела правильно классифицировать эти картинки. Однако признаков, по которым можно эту классификацию провести, машине не сообщают.
Машина должна выработать эти признаки, после того как ей покажут некоторое количество примеров из каждого класса (после обучения). Оказалось, что решение этой задачи представляет не только научный, но и практический интерес. Дело в том, что бурное развитие вычислительной техники очень остро поставило проблему общения человека с машиной, в частности, проблему ввода информации. Очень часто окааывается, что процесс переноски данных из таблиц на перфокарты или перфоленту занимает гораздо больше времени, чем дальнейшая обработка данных на машине. Поэтому возникла идея использовать для чтения данных сами машины. Для этого необходимо, чтобы машина умела распознавать буквы и цифры.
Первоначально эту задачу пытались решать в лоб. В память машины закладывались обраацы каждой из букв (цифр.) Подлежащий распознаванию знак сравнивали с каждым образцом в памяти машины и по совпадению с образцом опознавали букву или цифру. Однако надежность такого распознавания оказалась невелика. Машина хорошо различала стандартный шрифт, если знаки были одного размера, хорошо центрированы, не имели наклона, помарок, были полностью пропечатаны. Если же условия отличались от идеальных (что неизбежно на практике), то машина начинала часто ошибаться. Стало ясно, что машина для чтения текста должна обладать большой гибкостью, и инженеры пошли по пути создания машин, использующих не жестко заданные признаки, а признаки, вырабатываемые самой машиной в процессеобучения.
Первым устройством для распознавания изображений, действовавшим на основе обучения с помощью показов, был персептрон Розенблата (1]. Устройство представляло модель нервной сети, организация которой должна была в основных чертах повторять организацию зрительного анализатора человека. Действительно, персептрон после соответствующего обучения умел решать некоторые задачи распознавания: отличать большие цифры от маленьких, фигуры, расположенные в правой части поля,от фигур, расположенных в левой части, и некоторые другие. Математическое описание принципов работы персептрона было дано несколько позднее (2!.
В дальнейшем появились другие программы, предназначенные для решения этой задачи, и число их растет с каждым годом (списоклитературы по этому вопросу см. в работе (3)). Наиболее целесообразно познакомиться с принципами построения распознающих программ на примере алгоритма, предложенного Браверманом ]4], так как он допускает весьма наглядную геометрическую интерпретацию.
Прежде всего необходимо показать,как воспринимает машина зрительные образы. Черно-белое изображение проектируется на растр, т.е. на поле, состоящее из (ро) фотоэлементов (кли фотосопротнвлений). Если на фотоэлемент попадает светлый участок изображения, то на выходе его возникает сигнал «1», если на фото- 256 элемент попадает темный участок, то на выходе возникает сигнал «О». Если просматривать фотоэлементы один за другим, ряд за рядом и записывать их выходные сигналы, то каждое черно-белое изображение будет преобразовано в последовательность нулей и единиц 0,1,1,0,0,0,1,0..., 0,1,0 (всего рд двоичных знаков), т.
е. в п-разрядный двоичный код. Ках«дый такой п-разрядный двоичный код можно рассматривать как точку (или вектор) и-мерного пространства. Таким образом, каждому изооражению, проектируемому на растр, будет соответствовать определенная точка в этом п-мерном пространстве. Так как каждая из координат может принимать только два значения (1 или О), то каждому двоичному коду (каждому изображению) будет соответствовать одна из вершин и-мерного куба. Работа программы распознавания, предложенной Браверманом, основана на гипотезе, согласно которой точки, принадлежащие изображениям различных классов (например, буквам а и б), группируются в различных областях рассматриваемого и-мерного пространства, так что они могут быть рааделены с помощью не слишком сложной поверхности.
Иначе говоря, с помощью этой гипотезы утверждается соответствие понятий «сходства» изображений и «близости» соответствующих им точек в п-мерном пространстве. А из этого и следует, что вполне очевидное утверждение — «картинка из данного класса более похожа на картинки из своего класса, чем на картинки иэ чужого» вЂ” должно означать следующее: «точки, принадлежащие объектам одного класса, расположены ближе друг к другу, чем к точкам другого класса». На основе этой гипотезы был создан алгоритм процесса обучения машины распознаванию изображений с помощью показов. Согласно этому алгоритму, в процессе обучения в машину вводят некоторое количество векторов из каждого класса, и машина проводит поверхность, разделяющую точки, принадлежащие различным классам.
На этом процесс обучения заканчивается и машина готова проводить узнавание новых объектов. Отнесение нового объекта к тому или иному классу производится в зависимости от того, по какую сторону от разделяющей поверхности, построенной в результате обучения, попадает соответствующая точка. С помощью этого алгоритма машину обучали различать цифры и она после обучения разчичала их в 98 случаях из 100 (правда, картинки эти были строго определенного размера). Однако можно привести множество задач на распознавание, которые человек решает с легкостью, а такого рода программе они не под силу. Поэтому, несмотря на явные успехи, проблема далека от решения.
За последние годы был создан ряд обучающихся программ для решения задач узнавания. Все они основывались на предположении, что в исходном и-мерном пространстве точки из различных 7Ы классов могут быгь разделены. Различие этих программ в том, что они использовали илн различные классы разделяющих поверхностей, или различные методы их отыскания (включая методы проверки статистических гипотез). Вместе с тем стало ясно, что основные трудности в задачах узнавания как раз связаны с выбором исходного пространства, в котором было бы легко произвести разделение. Среди первых работ, посвященных моделированию процессов узнавания, нужно выделить одну — работу Бонгарда [5], опубликованную в 196т г.
Первая ее особенность состоит в том, что предложенный алгоритм в процессе обучения вырабатывал разделяющее правило не в виде некоторой поверхности, а в виде набора логических комбинаций. Другая особенность этой работы заключается в том, что была поставлена задача распознавания не изображений, а арифметических законов, точнее распознавания таблиц, построенных по различным арифметическим законам. Это был первый шаг на пути, который выводил проблему узнавания из рамок узнавания зрительных образов.
Еще один шаг на этом пути был сделан, когда задача классификации геологических объектов по комплексу геологических, геофизических и геохимических данных была сформулирована как задача распознавания ]6!. В последнее время программы распознавания стали широко применяться для решения задач геологической, медицинской и технической диагностики ]7]. б. Возможности постановки некоторых кинетических задач в качестве задач распознавания Примерами класса кинетических задач, которые можно решать с помощью методов распознавания, являются следующие: определение порядка реакции и оценка значений констант скоростей химических реакций (в особенности их элементарных стадий) по совокупности (комплексу) кривых зависимостей различных параметров от времени, определяемых экспериментально. На основании этого же комплекса данных (например, зависимости давления в реакционном сосуде, состава гааовой смеси и т.
д. от времени) можно пытаться решать задачи классификации реакций по типам, выявление присутствия того или иного типа в механизме сложной, многостадийной химической реакции и др. Характерной особенностью этих задач в отличие от большинства задач, которые решались методом распознавания до сих пор, является явная зависимость всех исходных параметров от времени. Рассмотрим, как это может отразиться на программе распознавания.
Можно исходную информацию записать следующим образом: разбить временной интервал на конечное число з отрезков и для каждого из них составитьтп-мерный вектор значений~всех параметров и объединить их затем в один пз-мерный вектор, который и будет объектом распознавания. Другая возможность со- стоит в том, чтобы исходные кривь1е описывать не по точкам, а с помощью набора обобщенных характеристик, например, число максимумов на кривой к их амплитуда и т.