Интеллектуальные системы и технологии
УДК 004.93'12
А.А. Хуршудов, В.Н. Марков
СПОНТАННОЕ ВыДЕЛЕНИЕ ИЕРАРХИИ ДВуМЕРНЬ1Х ПРИЗНАКОВ ДЛЯ КЛАССИФИКАЦИИ ИЗОБРАЖЕНИЙ
A.A. Khurshudov, V.N. Markov
UNSUPERVISED LEARNING OF HIERARCHICAL 2D FEATURES FOR IMAGE CLASSIFICATION
В задачах классификации и распознавания изображений одной из ключевых проблем является выделение компонентов (признаков), определяющих категорию классификации, устойчивых к инвариантным преобразованиям изображенного объекта. Предложен эффективный способ построения расширяемой многоуровневой модели, способной выделять такие признаки из обучающей выборки без использования учителя.
Рассмотрены преимущества иерархического подхода к выделению признаков и его способность к инкапсулированию структурно сложных компонентов изображения, обработка которых представляет значительные вычислительные трудности с использованием классических обучающих алгоритмов. Метод оперирует на плоских (двумерных) изображениях, но обладает потенциальной возможностью расширения для работы с трехмерными объектами. полученная модель может использоваться в качестве детектора признаков для множества различных методов обучения, таких как сверточные нейронные сети.
ИЕРАРХИЧЕСКАЯ МОДЕЛЬ; ГЛУБОКОЕ ОБУЧЕНИЕ; СПОНТАННОЕ ВЫДЕЛЕНИЕ ПРИЗНАКОВ; ОБНАРУЖЕНИЕ ПРИЗНАКОВ.
One of the key problems of image classification and pattern recognition domains is that of feature detection. The desired features are expected to be robust and invariant to a number of spatial transformations, compact enough to evade the «curse of dimensionality» which is a frequent obstacle when dealing with large natural images, and provide a characteristic relation to a classification category with high probability. There exists a number of approaches developed to reach the stated goals, including a variety of deep learning models, such as Restricted Boltzman Machines, convolutional networks, autoencoders, PCA, Deep Belief Networks, etc. However, most applications of the above-mentioned algorithms are often concentrated on obtaining the most accurate features for a chosen dataset rather than trying to extract the inner structure of the data. This paper suggest a slightly different approach, namely a method for building a hierarchy of meaningful features with each level composed of the features from a previous layer. Such model has multiple applications — it can serve as a composite feature detector in an unsupervised pre-training step of learning, or be itself a metric that answers the question of whether the same spatial structure is present across the dataset. The proposed approach exploits the idea of local connectivity supposing that multiple adjacent image parts which contain some meaningful features might present another, more high-level feature when composed together. We also discuss the advantages of a hierarchical feature model, such as the ability to guess a high-level feature presence by discovering a collection of low-level features concentrated in the same area, or its stability against noise and distortion which happens due to the fact that each feature level accepts a certain degree of deviation accumulating those to the top of the hierarchy. The resulting model operates
on 2D images, but can be easily extended in order to extract 3D features from a continuous data input, such as a movie, which promises to be a good way to deal with 3D transformations, which can drastically change the appearance of an object while preserving its identity.
HIERARCHICAL MODEL; DEEP LEARNING; UNSUPERVISED FEATURE LEARNING; FEATURE DETECTION.
Задача классификации объектов, представленных в виде изображений, состоит из конечного набора решений, каждое из которых соотносит выбранное изображение с соответствующей категорией классификации. Общепринятым подходом для принятия таких решений является метод выделения признаков, который используют как системы компьютерного зрения, так и естественный интеллект животных и человека [1]. Метод выделения признаков в свою очередь состоит в допущении того, что каждой категории классификации соответствуют некоторые устойчивые, повторяющиеся характеристики, которые с высокой вероятностью встречаются в изображениях, принадлежащих данной категории, и с низкой вероятностью — в изображениях других категорий. Однако по настоящее время не существует однозначного формализованного способа нахождения таких характеристик для произвольного набора категорий и изображений. Отдельную проблему представляет собой классификация изображений для задач компьютерного зрения в естественном окружении, с участием трехмерных объектов, эффектов освещения и пространственных преобразований, таких как вращение, масштабирование и трансляция. С учетом эффекта этих преобразований изображения одного и того же объекта могут значительным образом различаться цветом, формой или контурами, что существенно затрудняет распознавание. Нахождение метода выделения признаков, устойчивых к подобным преобразованиям, является глобальной задачей в области компьютерного зрения и распознавания изображений.
Иерархия признаков
Существует некоторое количество аргументов в пользу того, что эффективным кандидатом для искомого метода может быть метод построения многоуровневых
иерархий признаков, где более простые элементы изображения, такие как небольшие участки, содержащие штрихи и границы, локально (топографически) объединяются в устойчивые признаки более высокого уровня, представляющие собой контуры, геометрические фигуры и более сложные структурные компоненты. Среди свидетельств, подкрепляющих это предположение, следующие:
• в методах «глубокого обучения» («deep learning») — интенсивно развивающейся современной ветви машинного обучения — утверждается, что обучающиеся модели с преобладанием глубокой структуры, такие как многослойные нейронные сети, обладают большим потенциалом к выражению сложных, структурных признаков, которые неспособна представить одноуровневая модель [2]. Существует значительное количество алгоритмов, использующих этот подход в обучении, таких как ограниченная машина Больцмана, глубокие автоэнкоде-ры, сверточные нейронные сети, которые показали свою эффективность по сравнению с классическими перцептронами;
• существуют доводы в пользу того, что мозг человека и животных использует построение иерархии признаков. Так, во время классического эксперимента Хьюбе-ла и Визеля по поиску детекторов признаков в зрительной коре головного мозга [3] были обнаружены клетки, реагирующие на определенные сочетания клеток-детекторов признаков более низшего уровня. Организаторы эксперимента сделали предположение о существовании детекторов более высокого уровня и формировании иерархии зрительных признаков.
Для построения такой иерархии необходимо решить две подзадачи:
для отдельно взятого уровня иерархии, начиная с первого, выделить признаки одинаковой структурной сложности;
сформулировать правило группировки признаков и распространения их в более высокие уровни иерархии.
Выделение признаков на отдельном уровне иерархии
Рассмотрим в качестве обучающей выборки случайным образом выбранные фрагменты изображения размера n*n. Представим каждый фрагмент в виде матрицы соответствующего размера, где числа матрицы будут соответствовать интенсивности пикселей оригинального фрагмента. предположим, что каждую такую матрицу можно представить в виде линейной суммы компонентов следующим образом:
c
х = YFX , (1)
i=1
где х. — i-я матрица размера nxn; а. — i-й коэффициент; c — количество компонентов линейной суммы, в общем случае бесконечно большое.
Добавим к этому разложению следующее условие: должно существовать минимальное конечное число коэффициентов а,, отличных от нуля. Задача нахождения такой суммы для данной матрицы представляет собой задачу разреженной аппроксимации, которая может решаться различными способами, такими как метод покоординатного спуска или метод наименьших углов (LARS) [4].
Полученные в результате матрицы х0, х^ ..., хс будут представлять собой минимальный набор функционально различных (в силу условия разреженности) компонентов, которые могут использоваться для представления любого фрагмента размера п^п. Поиск такого разложения производится на выборке фрагментов оригинального изображения и с ограничением количества компонентов с некоторым эмпирически выбранным значением. Результат разложение показан на рис. 1.
При обработке небольших фрагментов изображения в результате получается набор детекторов границ, которые можно использовать в качестве примитивных признаков контура объекта. Сами по себе такие признаки малоинформативны и не несут информации, существенной для распознавания сложных объектов, однако могут послужить основой для признаков более высокого порядка [6].
Выделение признаков высокого уровня
Полученный набор компонентов позволяет представить любой фрагмент изображения размера п^п в виде вектора длиной с. Определим функции, позволяющие осуществлять преобразование фрагмента изображения в его кодированное представление, записанное в двумерном виде (в форме матрицы):
лаааиип
сакеиаи
ВиНИЕПй
□□ййван иизипася
ПППНЯИ
Рис. 1. Компоненты, найденные при обработке выборки фрагментов размера 10x10 (получены с использованием программного пакета зшЫЫеагп [5])
((x
Encode
x,
VV Xn1 Xn2
X1 x
x
nn
a,
a,
\4C 2 VC
(2)
V aTc 1 aTc 2
а также обратное преобразование:
Decode
ff
^ a г, a г 2
w SC 1 \C 2
"WT a24C
W
a
Рис. 2. Визуальное представление преобразования Encode Каждый пиксель правой части представляет собой значение коэффициента а. при соответствующем
компоненте
V Xn1
x.
x,
x.
•JC4C J
\
(3)
Полученные преобразования в общем случае не являются взаимно обратными. Функция Encode выполняется с помощью одного из семейств алгоритмов (Orthogonal matching pursuit, LASSO-LARS) [4], задачей которых является поиск наиболее точных
значений коэффициентов а,, чтобы линейная сумма соответствующих компонентов наиболее точно (с минимальным отклонением) представляла фрагмент xnn . Функция Decode тождественна формуле (1), с учетом того, что вектор (а1, а2, ..., ас) здесь представлен в форме матрицы размера 4cx-Jc. Для обучения второго уровня иерархии выберем случайное количество фрагментов изображения размера m, где m = kn, к с Z, после чего к каждому из них применим следующее преобразование:
ff
ff
Encode
VV xn1
x,
VV xm1 xm2
W
x
x
x
ff
Encode
nn / у
x
1(k—1)n
VV xn(k—1)n
x
x
ff
Encode
x
(k—1)n1
x
x
(k—1)nn
x
V
ff
Encode
x
//
(k—1)n(k—1)n
VV xkn(k—1)n
x
(k—1)nkn
x
//
(4)
В ходе этого преобразования фрагмент
Результат преобразования составляет
x„
разбивается на к2 малых фрагментов, обучающую выборку для второго уровня каждый из которых затем представляется в иерархии признаков, после чего для полу-
кодированной форме. Визуализация процесса показана на рис. 3.
ченной выборки решается соответствующая задача подбора компонентов (1). Закономер-
I к Ц В Я
Рис. 3. Визуализация преобразования (4). Фрагмент изображения разбивается на малые фрагменты и кодируется по частям
ности взаимного расположения малых фрагментов будут сохраняться в случае перевода их в кодированное представление и, таким образом, среди преобразованных фрагментов второго уровня будут наблюдаться повторяющиеся структурные элементы, такие как сочетания признаков первого уровня: линии, углы, детали геометрических фигур. Соответствующий принцип позволяет наращивать уровни иерархии и получать признаки более высоких уровней. Тестирование метода демонстрирует способность к отысканию структурно сложных признаков, таких как контуры человеческого лица, за приемлемое время (рис. 4).
Пример демонстрирует успешное соблюдение принципа подбора эффективного числа компонентов. Сохраняется максимальная независимость признаков друг от друга: присутствуют разные формы лиц, цвет кожи, ориентация в пространстве. Любую
фотографию обучающей выборки становится возможным представить в виде композиции полученного набора признаков.
Рассмотренный метод имеет следующие достоинства:
вычислительная простота: на аналогичном наборе данных извлечение признаков с помощью иерархии локальных фрагментов изображения выполняется в среднем быстрее, чем с использованием вычислительно дорогостоящих операций, характерных для сверточных сетей и БВМ;
масштабируемость: благодаря обработке локальных участков изображения метод может использоваться на изображениях любого размера. Единственное условие — возможность охватить за конечное число уровней иерархии фрагменты, содержащие искомые структурные признаки;
способность обучаться без учителя на
у 1 * 1 Й «V С1 1 1 .л. 1 1 3
й г 1 Б л ъ я Е 1 л
а Е 1 3 э Г г п 1 Е 1
ш Ш И 1 и 1 \ Е Я
га 1 б а 3 "Г! 1 1 1 я т
а к 1 1 1 а Г Г 1 н
1 □ 1 Е т ■ Щ 1 1 3
б 1 с I В Е У в
1 Р 1 л Е ■ 0 с 1
■ 1 Б 3 * г Г4 1 ] а
Рис. 4. Признаки третьего уровня иерархии, извлеченные из фотографий лиц
однородной выборке (изображений объектов одного типа). Первые уровни иерархии способны извлекать признаки даже из случайной выборки, концентрируясь на элементах геометрических форм;
эксплуатация принципов глубокого обучения — извлеченные иерархией признаки соответствуют отдельным структурным составляющим объекта. Такие признаки могут использоваться для выделения частей в сложных, составных объектах, таких как
элементы лица.
Недостаток метода на данном этапе — необходимость ручной настройки метапа-раметров, отвечающих за размер фрагмента и количество выделяемых компонентов.
перспективным направлением развития является обучение на выборке различных проекций трехмерных объектов для формирования признаков, инвариантных к пространственным преобразованиям в трехмерном пространстве.
СПИСОК ЛИТЕРАТУРЫ
1. Morrone M.C., Burr D.C. Feature detection in human vision: A phase-dependent energy model // Proc. of the Royal Society of London. Ser. B. Biological sciences. 1988. Pp. 221-245.
2. Bengio Y. Learning deep architectures for AI //Foundations and trends® in Machine Learning. 2009. T. 2. No. 1. Pp. 1-127.
3. Hubel D.H., Wiesel T.N. Receptive fields, binocular interaction and functional architecture in the cat's visual cortex // The Journal of physiology.
1962. Vol. 160. No. 1. P. 106.
4. Kreutz-Delgado K. et al. Dictionary learning algorithms for sparse representation // Neural computation. 2003. Vol. 15. No. 2. Pp. 349-396.
5. Pedregosa F. et al. Scikit-learn: Machine learning in Python // The Journal of Machine Learning Research. 2011. Vol. 12. Pp. 2825-2830.
6. Erhan D. et al. Why does unsupervised pre-training help deep learning? // The Journal of Machine Learning Research. 2010. Vol. 11. Pp. 625-660.
REFERENCES
1. Morrone M.C., Burr D.C. Feature detection in human vision: A phase-dependent energy model, Proceedings of the Royal Society of London. Series B, Biological sciences, 1988, Pp. 221-245.
2. Bengio Y. Learning deep architectures for AI, Foundations and trends® in Machine Learning, 2009, Vol. 2, No. 1, Pp. 1-127.
3. Hubel D.H., Wiesel T.N. Receptive fields, binocular interaction and functional architecture in the cat's visual cortex, The Journal of physiology,
1962, Vol. 160, No. 1, P. 106.
4. Kreutz-Delgado K. et al. Dictionary learning algorithms for sparse representation, Neural computation, 2003, Vol. 15, No. 2, Pp. 349-396.
5. Pedregosa F. et al. Scikit-learn: Machine learning in Python, The Journal of Machine Learning Research, 2011, Vol. 12, Pp. 2825-2830.
6. Erhan D. et al. Why does unsupervised pre-training help deep learning? The Journal of Machine Learning Research, 2010, Vol. 11, Pp. 625-660.
ХУРШУДОВ Артем Александрович — аспирант кафедры информационных систем и программирования Института компьютерных систем и информационной безопасности Кубанского государственного технологического университета.
350072, Россия, Краснодарский край, г. Краснодар, ул. Московская, д. 2.
E-mail: [email protected]
KHURSHUDOV, Artem A. Kuban State Technological University.
350072, Moskovskaya Str. 2, Krasnodar, Krasnodar krai, Russia.
E-mail: [email protected]
МАРКОВ Виталий Николаевич — профессор кафедры информационных систем и программирования Института компьютерных систем и информационной безопасности Кубанского государственного технологического университета, доктор технических наук.
350072, Россия, Краснодарский край, г. Краснодар, ул. Московская, д. 2.
E-mail: [email protected]
MARKOV, Vitaliy N. Kuban State Technological University.
350072, Moskovskaya Str. 2, Krasnodar, Krasnodar krai, Russia.
E-mail: [email protected]
© Санкт-Петербургский государственный политехнический университет, 2014