то, как автомобили отдаляются друг от друга по мере объединения все большего количества признаков в единое измерение под названием «эффективность»
Очевидная точка отсчета для данного исследования – расход топлива в милях на галлон (М/Г). Результат ранжирования автомобилей по данному показателю находится в левой части диаграммы на рис. 8.1. Как видите, если не считать лучшего и худшего автомобиля с точки зрения расхода топлива, большинство автомобилей оказалось сгруппировано в центре. Можем ли мы добавить дополнительную информацию для дальнейшего разделения данных? Перейдем к средней части диаграммы. Здесь мы создали составной признак: расход топлива минус вес автомобиля [74], М/Г – вес. Обратите внимание: простое объединение двух признаков в один составной обеспечивает гораздо больший разброс.
Теперь давайте сделаем еще один шаг и создадим третью метрику эффективности. Эффективность = М/Г – (Вес + Мощность). (Подобное выражение называется линейной комбинацией.) Эта комбинация столбцов позволила разделить данные сильнее, чем другие признаки. Благодаря большему разбросу она дает нам больше информации об автомобилях, открывая нечто интересное. Как видите, тяжелые, пожирающие бензин автомобили находятся внизу, а легкие и экономичные – вверху. По сути, объединив исходные измерения, мы создали новое измерение данных (эффективность), которое позволяет нам игнорировать три исходных измерения. В этом и заключается суть снижения размерности.
В этом примере мы заранее знали, что объединение расхода топлива, веса и мощности двигателя автомобиля в новую составную переменную позволит обнаружить кое-что интересное в совокупности имеющихся данных. Но что, если вы не знаете, как и какие признаки следует комбинировать? Именно так обстоят дела в случае неконтролируемого обучения, и здесь в игру вступает анализ главных компонент.
Анализ главных компонент (АГК) – это метод снижения размерности, изобретенный в 1901 году [75] задолго до того, как термины «дата-сайентист» и «машинное обучение» стали частью бизнес-терминологии. АГК до сих пор остается популярной, хотя и зачастую неправильно понимаемой техникой. Мы постараемся устранить эту путаницу и разъяснить, в чем суть данного метода и его полезность.
В отличие от подхода, использованного в примере с автомобилями, алгоритм АГК заранее не знает, какие группы признаков следует объединять в составные признаки, и потому рассматривает все возможности. С помощью особых математических приемов он создает разные конфигурации измерений в поисках линейных комбинаций признаков, обеспечивающих максимальный разброс данных. Лучшие из этих составных признаков называются главными компонентами. Более того, главные компоненты – это новые измерения данных, которые не коррелируют друг с другом. Если бы мы применили данный подход в примере с автомобилями, то помимо измерения «эффективность» мы могли бы выявить и такое измерение, как «производительность».
Вероятно, вы хотите узнать, как можно определить, позволит ли АГК объединить признаки набора данных в значимые группы, образующие главные компоненты. Что именно мы ищем с помощью АГК?
Попробуем ответить на эти вопросы с помощью следующего мысленного эксперимента. Поскольку авторы данной книги не разбираются в автомобилях, в следующем примере будет использоваться другой (гипотетический) набор данных.
Главные компоненты спортивных способностей
Представьте, что вы работаете в спортивном лагере. У вас есть электронная таблица с сотнями строк и 30 столбцами. Каждая строка содержит информацию о физической подготовке спортсмена: количество отжиманий, приседаний и повторений становой тяги, которые он может сделать за одну минуту; за сколько времени он пробегает 40 метров, 100 метров, 1600 метров; показатели жизненно важных функций, такие как пульс в состоянии покоя и артериальное давление; и еще несколько показателей физической подготовки и состояния здоровья. Ваш начальник дал вам расплывчатое задание «обобщить данные», но вы увязли в большом количестве столбцов электронной таблицы. Без сомнения, в ней содержится огромный объем информации. Но нельзя ли свести эти 30 признаков к более разумному количеству, которое можно было бы использовать для обобщения и визуализации имеющихся данных?
Первым делом вы замечаете несколько очевидных закономерностей. Спортсмены, которые могут сделать больше всего отжиманий, как правило, делают больше повторений становой тяги, а те, кто медленно пробегает стометровку, имеют ту же проблему в случае со спринтом на 40 метров. Похоже, что многие признаки коррелируют друг с другом, поскольку измеряют связанные между собой показатели физической подготовки. Эта корреляция заставляет вас задуматься о возможном способе их сжатия в меньшее число не коррелирующих друг с другом измерений, содержащих максимально возможное количество информации из исходных данных. В этом и заключается суть АГК!
Рис. 8.2. Анализ главных компонент позволяет сгруппировать и объединить столбцы набора данных в новые не коррелирующие между собой измерения
На рис. 8.2 в общих чертах представлено то, чего вы пытаетесь достичь. Однако вы не можете с легкостью исследовать корреляции между 30 переменными даже с помощью компьютера. (Для изучения каждой пары признаков потребовалось бы 435 отдельных диаграмм рассеяния [76].) Итак, вы прогоняете данные через алгоритм АГК, чтобы воспользоваться существующими в наборе данных корреляциями, и на выходе получаете два набора данных [77].
На рис. 8.3 показан первый набор. Строки таблицы содержат признаки спортсменов, а столбцы – веса этих признаков и их вклад в главную компоненту. Эти веса отражают важный шаг в процессе АГК, связанный с созданием новых измерений в данных. (Обратите внимание на то, что здесь слово «вес» – специальный термин, который имеет отношение к АГК, а не к поднятию тяжестей.) Мы визуализировали веса, однако имейте в виду, что в числовом выражении они представляют собой меру корреляции, значение которой находится в диапазоне от –1 до 1. Чем ближе ее значение к любому из экстремумов, тем сильнее корреляция и тем выше вклад исходного признака. Итак, вам нужно отыскать интересные закономерности в весах главных компонент (обозначенных на следующем рисунке аббревиатурой ГК). Веса, которые отклоняются далеко от вертикальной нулевой линии, могут рассказать много интересного.
Рис. 8.3. АГК находит оптимальные веса для создания составных признаков, которые представляют собой линейные комбинации других признаков. Иногда вы можете присвоить новому составному признаку описательное название
В первом столбце «Веса для ГК 1» вы видите большие веса для таких признаков, как отжимания, приседания и становая тяга; они, как отмечалось ранее, положительно коррелируют друг с другом. АГК обнаружил это автоматически. Эту комбинацию признаков можно назвать «Сила». Глядя на веса для ГК 2, вы замечаете связь отрицательных столбиков с показателями «Скорости» (низкий пульс в состоянии покоя, медленный бег на 40 метров, медленный бег на 100 метров). Аналогичным образом вы можете дать ГК 3 название «Выносливость», а ГК