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

Введение
В науке о данных мы стремимся улучшить не самые лучшие характеристики нашей модели по мере подгонки имеющихся данных. Мы пробуем различные методы — от изменения сложности модели до обработки и предварительной обработки данных. Однако чаще всего нам советуют «просто» получить больше данных. Кроме того, это легче сказать, чем сделать, возможно, стоит остановиться и пересмотреть общепринятые взгляды. Другими словами,
Всегда ли добавление дополнительных данных приводит к повышению производительности?
В этой статье давайте проверим эту поговорку на практике, используя реальные данные и инструмент, который я разработал для таких исследований. Мы прольём свет на тонкости, связанные со сбором и расширением данных, оспаривая представление о том, что подобные усилия автоматически повышают производительность, и призывая к более осознанному и стратегическому подходу.
Что означает больше данных?
Давайте сначала определимся, что именно мы подразумеваем под «больше данных». В самом общем случае мы обычно представляем себе данные в табличной форме. И когда речь заходит о получении дополнительных данных, первое, что приходит на ум, — это добавление новых строк в таблицу данных (т.е. новых точек данных или выборок).
Однако альтернативный подход заключается в добавлении дополнительных столбцов (т. е. атрибутов или признаков). Первый подход расширяет данные по вертикали, а второй — по горизонтали.
Далее мы рассмотрим общие черты и особенности двух подходов.

Случай 1: Больше образцов
Рассмотрим первый случай добавления новых образцов. Обязательно ли добавление новых образцов улучшает производительность модели?
Чтобы разобраться в этом вопросе, я создал инструмент, размещенный на платформе HuggingFace. Этот инструмент позволяет пользователю экспериментировать с эффектами изменения набора атрибутов, размера выборки и/или сложности модели при анализе набора данных UCI Irvine – Predict Students' Dropout and Academic Success [1] с помощью дерева решений. Хотя и инструмент, и набор данных предназначены для образовательных целей, мы всё же сможем получить ценные выводы, выходящие за рамки этой базовой ситуации.

…


Допустим, декан университета предоставляет вам данные о студентах и просит определить факторы, предсказывающие отсев, чтобы решить эту проблему. Для начала вам предоставлены 1500 точек данных. Вы создаёте скрытый тестовый набор из 700 точек данных, а остальные используете для обучения. Предоставляемые вам данные содержат информацию о национальности студентов, роде занятий их родителей, а также данные о ВВП, инфляции и уровне безработицы.
Однако результаты не впечатляют. Оценка F1 низкая. Поэтому, естественно, вы просите своего декана воспользоваться какими-то связями, чтобы получить больше студенческих данных (возможно, прошлых лет или других вузов), что он и делает в течение пары недель. Вы повторяете эксперимент каждый раз, когда получаете новую партию студенческих данных. Общепринятая точка зрения подсказывает, что добавление новых данных постепенно улучшает процесс моделирования (результаты теста F1 должны монотонно расти), но вы этого не видите. Производительность хаотично колеблется по мере поступления новых данных. Вы в замешательстве. Почему увеличение количества данных вообще может негативно сказаться на производительности? Почему оценка F1 упала с 46% до 39% при добавлении одной из партий? Разве связь не должна быть причинно-следственной?

Что ж, вопрос в том, действительно ли дополнительные образцы дают больше информации. Давайте сначала рассмотрим природу этих дополнительных образцов:
- Они могут быть ложными (т.е. ошибка в сборе данных)
- Они могут быть предвзятыми (например, чрезмерно представлять особый случай, который не соответствует истинному распределению, представленному тестовым набором)
- Сам тестовый набор может быть предвзятым…
- В некоторых партиях могут быть введены ложные шаблоны , которые впоследствии могут быть отменены в других партиях.
- Собранные атрибуты практически не коррелируют или не связывают причинно-следственную связь с целевым объектом (то есть существуют скрытые переменные, которые не учитываются). Поэтому, сколько бы образцов вы ни добавили, они ни к чему не приведут!
Итак, да, добавление дополнительных данных, как правило, хорошая идея, но необходимо обращать внимание на несоответствия в данных (например, два студента одной национальности и социального статуса могут выбрать разные пути из-за других факторов). Также необходимо тщательно оценить полезность доступных атрибутов (например, возможно, ВВП никак не связан с уровнем отсева студентов).
Некоторые могут утверждать, что это не будет проблемой при наличии большого объёма реальных данных (в конце концов, это относительно небольшой набор данных). Этот аргумент имеет смысл, но только если данные хорошо гомогенизированы и учитывают различные изменчивости и «степени свободы» набора атрибутов (то есть диапазон значений, которые может принимать каждый атрибут, и возможные комбинации этих значений, наблюдаемые в реальном мире). Исследования выявили случаи, когда большие наборы данных, считающиеся эталонными, демонстрируют смещенности интересным и неочевидным образом, которые нелегко обнаружить на первый взгляд, что приводит к появлению вводящих в заблуждение отчётов о высокой точности [2].
Случай 2: Больше атрибутов
Теперь, говоря об атрибутах, давайте рассмотрим альтернативный сценарий: вашему декану не удаётся получить больше студенческих данных. Однако он приходит и говорит: «Эй, ты… Мне не удалось получить больше студенческих данных… но я смог с помощью SQL получить больше атрибутов для твоих данных… Уверен, теперь ты сможешь улучшить свою работу. Верно?… Верно?!»

Что ж, давайте проверим это. Рассмотрим следующий пример, где мы постепенно добавляем атрибуты, расширяя профиль студентов и включая их семейное положение, финансовое положение и иммиграционный статус . Каждый раз, когда мы добавляем атрибут, мы заново обучаем дерево и оцениваем его эффективность. Как видите, некоторые изменения улучшают эффективность, а другие наоборот ухудшают . Но опять же, почему?
При более внимательном рассмотрении набора атрибутов мы обнаруживаем, что не все атрибуты действительно несут полезную информацию . Реальный мир непрост… Некоторые атрибуты (например, пол) могут создавать шум или ложные корреляции в обучающем наборе, которые не будут хорошо обобщены на тестовом наборе (переобучение).
Кроме того, хотя общепринятая точка зрения гласит, что по мере добавления данных следует увеличивать сложность модели, этот подход не всегда даёт наилучший результат. Иногда, при добавлении атрибута, снижение сложности модели может помочь избежать переобучения (например, при добавлении Course).

Заключение
Оглядываясь назад и оценивая общую картину, мы видим, что, хотя сбор новых данных — благородное дело, не следует автоматически предполагать, что производительность улучшится. Здесь играют роль два фактора: насколько хорошо модель соответствует тренировочным данным и насколько надёжно это соответствие обобщает и распространяется на ранее неизвестные данные.
Давайте подведем итоги того, как каждый тип «дополнительных данных» влияет на эти силы — в зависимости от того, являются ли добавленные данные хорошими (репрезентативными, последовательными, информативными) или плохими (предвзятыми, зашумленными, непоследовательными):
| Если качество данных хорошее … | Если качество данных низкое … | |
| Больше образцов (строк) | • Ошибка обучения может немного возрасти (большее количество вариаций затрудняет подгонку). • Ошибка тестирования обычно снижается . Модель становится более стабильной и уверенной. | • Ошибка обучения может колебаться из-за противоречивых примеров. • Ошибка теста часто возрастает . |
| Дополнительные атрибуты (столбцы) | • Ошибка обучения обычно снижается (больше сигнала приводит к более богатому представлению). • Количество ошибок в тесте уменьшается , поскольку атрибуты кодируют истинные и обобщаемые шаблоны. | • Ошибка обучения обычно снижается (модель запоминает шумовые закономерности). • Ошибка теста возрастает из-за ложных корреляций. |
Обобщение касается не только количества, но и качества и правильного уровня сложности модели.
В заключение: в следующий раз, когда кто-то предложит вам «просто» получить больше данных, чтобы волшебным образом повысить точность, обсудите с ним все тонкости такого плана. Обсудите характеристики полученных данных с точки зрения характера, объёма и качества. Укажите на тонкости взаимодействия между данными и сложностью модели. Это поможет сделать их усилия полезными!
Уроки для усвоения:
- По возможности не верьте чужим (или моим) словам на слово. Экспериментируйте сами!
- Добавляя новые точки данных для обучения, спросите себя: представляют ли эти выборки явление, которое вы моделируете ? Демонстрируют ли они модели более интересные и реалистичные случаи? Или же они предвзяты и/или непоследовательны?
- Добавляя больше атрибутов , спросите себя: предположительно ли, что эти атрибуты несут информацию , которая повышает нашу способность делать более качественные прогнозы, или это в основном шум?
- В конечном итоге проведите настройку гиперпараметров и надлежащую проверку, чтобы исключить сомнения при оценке информативности новых обучающих данных.
Попробуйте сами!
Если вы хотите самостоятельно изучить динамику, представленную в этой статье, я разместил интерактивный инструмент здесь . Экспериментируя с размером выборки, количеством атрибутов и/или глубиной модели, вы будете наблюдать влияние этих изменений на её эффективность. Такие эксперименты расширяют ваши горизонты и понимание механизмов, лежащих в основе науки о данных и аналитики.
Ссылки:
[1] М.В.Мартинс, Д. Толледо, Х. Мачадо, Л.М.Т. Баптиста, В.Реалиньо. (2021) «Раннее прогнозирование успеваемости студентов в высших учебных заведениях: пример из практики» «Тенденции и применение в информационных системах и технологиях», т. 1, в серии «Достижения в интеллектуальных системах и вычислениях». Springer. DOI: 10.1007/978-3-030-72657-7_16. Этот набор данных лицензирован по лицензии Creative Commons Attribution 4.0 International (CC BY 4.0). Это позволяет распространять и адаптировать наборы данных для любых целей при условии указания источника.
[2] Чжан Лю и К. Хэ, Десятилетняя борьба с предвзятостью наборов данных: мы уже достигли цели? (2024), arXiv: https://arxiv.org/abs/2403.08632
Источник: towardsdatascience.com



























