Дэвид Вайнбергер, постоянный писатель, Google PAIR

AI Outside In - это серия колонок постоянного писателя PAIR Дэвида Вайнбергера, который предлагает свой посторонний взгляд на ключевые идеи машинного обучения. Его мнение является его собственным и не обязательно отражает точку зрения Google.

Как бы вы сказали, что эти два изображения похожи?

Они оба кажутся старыми или, по крайней мере, не новыми. Оба они могут представлять европейский исторический интерес. Оба они изображают человека. У обоих людей хорошая шевелюра. Если вы прочитали подписи, то узнали, что оба в некотором смысле французские. Изображения также длиннее по вертикали, чем по горизонтали. Если вы прочтете мелкий шрифт, вы увидите, что оба изображения взяты из Wikimedia Commons, и оба изображения находятся в общественном достоянии, хотя это выражается по-разному.

Что вы не можете сказать по изображениям или их ярлыкам, так это то, что они похожи в том, что я выбрал их, нажав кнопку Случайный файл Викимедиа. Также: оба являются видимыми записями прошлого, а не будущего, ни мои галлюцинации, и оба были созданы землянами. Кроме того, ни один из них не может нести мелодию.

В машинном обучении нет ничего естественного

Обычно нам не нужно говорить о том, что две вещи похожи друг на друга, потому что это ясно из контекста. Например, если ваша подруга попросит порекомендовать такой фильм, как «Укрощение строптивой», а вы порекомендуете «Молчание ягнят», она, скорее всего, вернется разочарованной и сбитой с толку. Объяснение того, что оба названия состоят из пяти слов и оканчиваются на животное, вероятно, означает, что ваш друг больше не будет просить вас рекомендовать фильмы.

Проблема в том, что вы смотрели на один конкретный аспект фильмов - закономерность в их названиях - и ваш друг ожидал, что вы посмотрите на другие аспекты, такие как автор (Шекспир), режим (киноверсия классической пьесы), тип истории (ромком, хотя и очень дофеминистский) и так далее. Ваш друг знает, что интересного в фильмах, а вы, по всей видимости, не знаете. Вам, вероятно, стоит над этим поработать.

То, что естественно понятно людям, не понятно системам машинного обучения, потому что для машинного обучения нет ничего естественного. Процесс под названием Тестирование с векторами активации концепций (TCAV), впервые предложенный Бин Ким и другими компьютерными учеными из группы PAIR, может помочь пользователям систем машинного обучения исследовать сходства, которые для них важны.

ML знает только о числах

Машинному обучению нужна эта помощь, потому что, оставленное само по себе, оно будет замечать много, много разных способов, которыми его данные могут быть похожими, большинство из которых не будет иметь для нас никакого отношения. Например, если вы загрузите тысячи фотографий животных в систему машинного обучения, она будет рассматривать каждую как сетку цветных пикселей. Фактически, ML даже не знает о цветах; они выражаются в виде простых чисел, обычно в виде тройки красного, зеленого и синего цветов, знакомой пользователям системы цветовой нотации RGB. ML проанализирует все эти числовые сетки и может заметить, что для некоторых изображений один конкретный пиксель имеет такое же (или почти такое же) число. Он может заметить, что в нижнем левом углу некоторых изображений есть строка более темных пикселей или что некоторые изображения имеют одинаковое распределение очень темных пикселей и очень светлых - хотя, опять же, ML знает только о числах, а не о яркости или тьма. Большинство из этих различий не представляют интереса и не используются для людей, но некоторые могут указывать на то, что набор изображений показывает то, что мы, люди, интерпретируем как прямые линии под прямым углом, или цветовые узоры, типичные для пляжных сцен, или диффузные цвета, которые мы читаем как туман.

Ученые-компьютерщики называют различные способы, которыми изображения (или что-либо еще) могут быть одинаковыми, как размеры. Одним из измерений может быть, скажем, цвет пикселя № 4365. Каждое изображение может быть расположено в этом измерении в соответствии с номером, связанным с этим пикселем. Другое измерение может представлять общий уровень контрастности каждого изображения. Обычно системы распознавания изображений настроены на создание определенного количества измерений, от маленького (скажем, 128) до большого (тысячи), в зависимости от задачи и имеющихся данных. Независимо от количества измерений, возникает вопрос: как система может определить те из них, которые наиболее полезны для человека, а затем преобразовать их из статистических моделей машинного обучения в термины и концепции, понятные людям?

Узоры среди краев

На самом деле система машинного обучения не должна заботиться о размерах, которые полезны для нас, чтобы выполнять свою работу по нанесению правильных меток на изображения, которые пользователи просят ее идентифицировать. Система распознавания изображений учится классифицировать изображения, анализируя шаблоны в помеченных изображениях, на которых мы обучаем ее, независимо от того, значимы ли эти шаблоны для людей, при условии, что шаблоны позволяют ей более точно сопоставлять изображения с предоставленными нами этикетками.

Например, человеческое восприятие очень заботится о границах между вещами как о важных ключах к тому, что мы считаем объектами - деревьям, отличным от неба позади них. Но система машинного обучения не начинается с знания того, как определять края объектов на изображениях. По сути, ML учит себя этому, используя алгоритмы, которые замечают, что образцы смежных наборов пикселей, которые имеют существенно разные значения - то, что мы интерпретируем как край - помогают ему более успешно сортировать изображения. Он продолжит пробовать небольшие вариации на предыдущем проходе, вероятно, обнаружив, что закономерности среди этих «краев» помогают ему сортировать изображения еще точнее.

Иногда такие измерения могут соответствовать тому, как люди различают вещи. Например, если мы обучаем систему машинного обучения распознавать животных на изображениях, она может заметить, как и мы, что у кошек заостренные уши, а у панд - круглые. Но он может найти и другие сходства, которые мы не замечаем или о которых мы особо не заботимся. Например, если все фотографии панды сделаны на улице при дневном свете, а изображения кошек представляют собой смесь изображения в помещении и на улице, машинное обучение может принять яркость изображения в качестве важной информации для различения двух видов животных. Но мы, люди, считаем животных одинаковыми вне зависимости от того, находятся ли они в помещении или на улице; это различие, которое может оказаться полезным для машинного обучения, даже если оно вводит в заблуждение относительно реальных различий между кошками и пандами, не соответствует нашим человеческим представлениям.

Но определение тех измерений, которые полезны для нас, людей, может иметь решающее значение. Во-первых, он позволяет пользователям исследовать данные в соответствии с теми видами сходства, которые им важны. С другой стороны, это может позволить нам использовать машинное обучение для изучения неожиданных отношений, которые важны для нас. Увы, машинное обучение само по себе не знает, какое из этих различных сходств имеет значение для людей; он знает только, какие из них помогли ему более точно пометить данные обучения.

Сходства, о которых мы, люди, заботимся

Здесь на помощь приходит TCAV. Он позволяет пользователям указывать системе, какие изображения имеют для них значение. Итак, допустим, вам было бы полезно найти всех полосатых животных - зебр, чернополосых мидий, черно-белых камышевок и полосатых животных, о которых вы даже не слышали. С помощью TCAV вы предоставите уже обученному машинному обучению изображения полосатых животных - или, возможно, выберете некоторых из полосатых животных в обучающем наборе машинного обучения - и скажете ему, что это то, что мы, люди, называем «полосатым». (Вы можете сделать то же самое с пушистыми животными или даже с теми, которые мы, люди, считаем симпатичными.) TCAV затем анализирует шаблоны в отправленных вами образцах и проверяет, соответствуют ли они каким-либо из шаблонов, отмеченных ML, пока он тренировалась сама. Если да, то теперь он знает, что это особый тип сходства - полосатый, пушистый или милый - который нас волнует.

Дело не в том, что TCAV позволяет научить систему машинного обучения новой концепции, такой как «полосатая». Скорее, вы научили его связывать ярлык - слово «полосатый» - с подобием (размером), которое он уже обнаружил и нашел полезным для различения изображений. Если по какой-то причине ML во время тренировочного паттерна никогда не обращал внимания на паттерны из чередующихся цветных полос, тогда TCAV сказал бы вам, что очень жаль, но этот паттерн был бесполезен, когда он учился классифицировать изображения животных. Как говорит Бин Ким, руководитель проекта TCAV, «важно, чтобы система машинного обучения сообщала вам, когда она чего-то не может сделать».

Машинное обучение прекрасно помогает находить сходные черты. TCAV позволяет людям указывать машинному обучению то, что оно не может сделать само по себе: выяснять, какие сходства имеют значение.

Дополнительную информацию по этой теме см. в оригинальном исследовании о TCAV.