Чтобы распознать художника математическими методами, нужны некие величины, которые можно измерять. Базовый процесс похож на тот, который используется в алгоритме Spotify или Netflix, но вместо индивидуальных вкусов он должен определять отличительные черты. Если ввести измерение двух разных характеристик картин, включенных в массив данных, то каждую картину можно представить графически, в виде точки на двумерном графике. Что же такое следует измерять, чтобы картины Пикассо вдруг оказались собраны в одном углу графика, а картины Ван Гога – в другом?
Например, при измерении одной величины (скажем, количества желтого цвета на картине) можно расположить картины Пикассо (обозначены крестиками) и Ван Гога (обозначены ноликами) на координатной оси следующим образом:
Пока что измерение одной этой характеристики не позволяет нам отделить произведения одного художника от произведений другого. Иногда Пикассо использует небольшое количество желтого, как на картине Р1
, которая попадает на нашей шкале в точку с координатой 1. Но в других его работах желтый цвет более выражен, как на картине Р2, которая оказывается в точке 3. Две представленные на графике работы Ван Гога, VG1 и VG2, также содержат разное количество желтого цвета. Измерение желтого нам не помогает.А что, если мы решим измерить еще одну характеристику (например, количество синего цвета на картинах)? На этот раз мы расположим те же картины на вертикальной оси, по которой отложена величина этой новой характеристики.
От синего тоже выходит мало толку. Мы не можем четко отделить картины Пикассо от картин Ван Гога. Но посмотрите, что происходит, когда мы объединяем эти два измерения и переносим картины в двумерную систему координат. Картина Пикассо Р1
оказывается в точке с координатами (1,2), а картина Ван Гога VG1 – в точке (2,4). Но в этой двумерной системе координат можно построить прямую, отделяющую произведения этих художников друг от друга. Объединив измерения количества синего и желтого, мы получаем график, в нижней половине которого находятся картины Пикассо, а в верхней – картины Ван Гога.После того как алгоритм научится отличать Пикассо от Ван Гога по этим двум характеристикам, когда ему покажут новую для него картину и предложат определить, Ван Гог это или Пикассо, он измерит эти два параметра, отметит координаты картины на графике, и то, с какой стороны от разделительной линии окажется картина, позволит алгоритму предположить с наибольшей уверенностью, кто из художников был ее автором.
В этом простом примере я выбрал для различения художников цветовые характеристики. Но существует бесчисленное множество других характеристик, которые можно отслеживать. Преимущество машинного обучения состоит в возможности исследования всего пространства возможных измерений и выбора правильного сочетания характеристик, позволяющего отличать одних художников от других, – как мы это сделали в своем простом примере с желтым и синим цветами. Двух параметров будет недостаточно, так что нужно найти достаточное количество явно выраженных элементов, по которым одного художника можно отличить от другого. Введение каждой следующей измеримой переменной увеличивает размерность пространства, в котором мы находим координаты картин, и дает нам больше шансов определить стили художников. К концу этого процесса мы будем размещать картины на многомерном графике, а не в двух измерениях, которые мы видели в своем простом примере.
Выявление измеримых параметров может производиться двумя способами. Программист может внести в код определенные характеристики, которые, по его мнению, могут помочь различать художников: использование пространства, фактуру, форму, геометрию, цвета. Но системы машинного обучения особенно интересны своей способностью заниматься неконтролируемым обучением и самостоятельно находить характеристики, достойные внимания. Человеку, анализирующему дерево решений, иногда бывает трудно определить, на каких именно характеристиках сосредоточивается алгоритм при классификации картин. Самые современные системы компьютерного зрения оценивают более 2000 разных атрибутов изображений, которые называются теперь классемами. С этих атрибутов полезно начинать анализ картин, отобранных программистом в качестве тренировочного материала для алгоритма.
Из наброска графика, представленного выше, мы видели, что для различения Пикассо от Ван Гога достаточно и двумерного пространства. Чтобы подойти к распознаванию стилей в реальном наборе данных, алгоритму пришлось распределять картины по 400-мерному пространству, то есть измерять 400 параметров разного рода. Когда получившийся алгоритм протестировали на картинах, которых он до этого не видел, он сумел правильно определить художников более чем в 50 % случаев, но ему оказалось трудно различать таких живописцев, как Клод Моне и Камиль Писсарро. Оба они были импрессионистами, оба жили в конце XIX и начале XX века.