Сбор данных

Этот пост является первым из серии. Код этого проекта можно найти на моем GitHub.

Кино и транспорт

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

Известный ученый Вольфганг Шивельбуш заложил основу для последующего анализа в своей основополагающей книге Железнодорожное путешествие: индустриализация времени и пространства в девятнадцатом веке (1977). Железнодорожное путешествие исследует, как поезд повлиял на исторический опыт посредством появления «панорамного восприятия». Некоторые киноведы распространили анализ Шивельбуша на кинематограф в отдельных моментах. Однако Линн Кирби подробно проанализировала отношения между поездом и немым кино в своей книге Параллельные пути: железная дорога и немое кино (1997). Хотя Кирби дает всесторонний отчет о роли железной дороги в немом кино, ее историческая сфера ограничена этими временными рамками. Даже во время большей части немого кино я готов поспорить, что автомобили представляли собой более значительное присутствие, чем поезда, что я мог бы вскоре проверить эмпирически.

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

Почему нас должно волновать влияние автомобилей на голливудские фильмы? Отслеживая, как железная дорога повлияла на общество девятнадцатого века, Железнодорожное путешествие показывает, как технологии влияют на человеческий опыт, и эти отношения находятся в центре многих современных публичных дебатов. Кино, как наиболее важное визуальное изобретение 20-го века, является идеальной технологией для изучения того, как автомобили повлияли на историческое восприятие.

Хотя поезд был современником кино, к моменту рождения кино он уже был относительно стар, по крайней мере, по сравнению с зарождающимся автомобилем. Аналогия тогда была бы такой: панорама для поездов, как кино для автомобилей. Однако панорама и поезд связаны лишь косвенно. Напротив, кино и автомобили напрямую связаны (например, автомобили используются в фильмах, фильмы используются для продажи автомобилей), что облегчает исследование отношений.

Одной из характерных черт «Нового Голливуда» является центральное место в автомобилях и место действия «дороги». Скорее всего, не случайно, что два фильма, названные провозвестниками Нового Голливуда (также известные как «Голливудская новая волна» или «Голливудский ренессанс») — Бонни и Клайд (1967) и Беспечный ездок (1969) — можно назвать «роуд-муви» в широком смысле. Такие фильмы, как Буллит (1968), подняли автомобильную погоню на новый уровень, разработав стратегии сочетания автомобильной погони с масштабными съемками на местности. Автомобильная погоня - основополагающий элемент боевика, появившегося в 1970-х и 1980-х годах и, возможно, фактически сыгравшего роль в популяризации самого жанра.

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

Сбор данных

Мне удалось использовать предварительно обученную модель в моем предыдущем проекте Использование Places365 Массачусетского технологического института для отслеживания съемок в американском кино. Хотя в открытом доступе есть много автомобильных наборов данных, в настоящее время нет общедоступной модели, которая могла бы точно маркировать мои целевые изображения. Предварительно обученных общедоступных моделей, специально предназначенных для обнаружения автомобилей, не так много, если они вообще есть.

Автомобильные наборы данных в основном содержат изображения более новых автомобилей, что может быть проблемой для моей выборки, поскольку многие фильмы относятся к гораздо более ранним историческим периодам. Тем не менее, прежде чем тратить часы и часы на маркировку изображений для обучения совершенно новой модели с нуля, мы должны сначала поискать существующие модели. Если нет предварительно обученных моделей, мы должны искать набор данных. Мы можем разделить наборы данных на две категории: общего назначения и специализированные. Существует множество специализированных наборов данных из-за усилий по созданию моделей для автономных транспортных средств. Кроме того, самые обширные наборы данных общего назначения — Common Objects in Context (COCO) от Microsoft, ImageNet» от Стэнфорда и OpenImages от Google — каждый содержит миллионы изображений из сотен различных классов изображений. В каждом из этих наборов данных общего назначения есть классы автомобилей.

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

Поскольку доступно так много наборов данных, создание модели машинного обучения для обнаружения автомобилей в голливудском кинотеатре поначалу казалось легким, поскольку я мог избежать такой большой работы по сбору и маркировке таких изображений. Я изучил доступные наборы данных и нашел довольно много со значительным количеством изображений. Наиболее важным является набор данных Stanford Cars, который содержит 16 185 изображений 196 классов автомобилей в различных контекстах и ​​условиях.

Модель, обученная на автомобилях из Стэнфорда, быстро достигла точности выше 95% на проверочном наборе. Однако, когда я применил эту модель к тестовым изображениям, которые я собрал и пометил вручную, ее точность упала до 62%, что немногим лучше случайной в такой задаче бинарной классификации. Возможно, из-за того, что фильмы, которые служили источниками, сильно различались по году их производства, от эпохи немого кино до цифрового настоящего, изменения во внешнем виде автомобилей привели к тому, что модели, обученные на современных изображениях, были неточными при оценке своих исторических аналогов.

Хотя точность является наиболее значимой метрикой, она сама по себе не дает полного представления о том, как работает модель. Мы можем проиллюстрировать ограничения точности как единственную метрику с помощью так называемой «матрицы путаницы». Матрица путаницы визуализирует как абсолютное количество истинно положительных (TP), ложноотрицательных (FN), истинно отрицательных (TN) и ложноположительных (FP), так и их частоты, как показано ниже. Другие наборы данных дали аналогичные результаты.

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

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

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

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

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

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

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

Я опробовал систему, в которой постепенно совершенствовал свою модель, используя ее для сбора большего количества изображений для набора данных. В начале я обучил модель из существующих автомобильных наборов данных, которая, хотя и не совсем точная, как обсуждалось выше, была немного лучше, чем совершенно случайное предположение. Затем я использовал эту модель для прогнозирования изображений, собранных из фильмов, которые, как я уже знал, содержали множество изображений автомобилей, таких как Безумное оружие (1950), Бонни и Клайд (1967). ) и Французская связь (1971). После маркировки этой партии изображений я затем повторно обучил модель и использовал эту обновленную версию для сбора новых кадров с большей частотой успеха. Я повторял этот процесс до тех пор, пока не получил достаточное количество изображений для обучения надежной модели, которая состояла примерно из 24 000 изображений, разделенных примерно на пятьдесят процентов между автомобилями и не автомобилями.

Для обучения модели может быть достаточно нескольких тысяч изображений или даже нескольких сотен, если объект достаточно уникален. Автомобили, однако, сложны и имеют характеристики, которые очень напоминают другие транспортные технологии, такие как самолеты, поезда, экипажи и даже лошади. Наличие 24 000 изображений может показаться большим, но это число слишком мало для такого проекта. Например, в своей книге Глубокое обучение с помощью Python Франсуа Шолле, один из создателей библиотеки глубокого обучения Keras, назвал набор данных из 4000 изображений маленьким. Для больших наборов данных с несколькими классами нередко бывает так, что большие наборы данных с несколькими классами содержат буквально миллионы изображений.

Для тех из вас, кто заинтересован, набор данных доступен здесь. Следите за следующей записью Обучение модели.