Вопрос или проблема
Я новичок в статистике. У меня есть небольшая выборка из 646 образцов, на которой я обучил достаточно производительную модель (около 99% точности на тестовой и валидационной выборках). Чтобы усложнить задачу, классы немного несбалансированы. Это задача бинарной классификации.
Вот моя матрица ошибок на обучающих данных:
[[387 1]
[ 1 73]]
на тестовых данных:
[[74 1]
[ 0 10]]
на валидационных данных:
[[85 1]
[ 0 13]]
- Специфичность на обучении: .986
- Специфичность на тестировании: .909
- Специфичность на валидации: .928
Я считаю, что специфичность тестовой и валидационной выборок очень низкая, в то время как на обучении она сравнительно высокая. Однако, учитывая, что пропущен только один образец как в тестовой, так и в валидационной выборках, какая у меня настоящая специфичность в реальных условиях? Существует ли лучший показатель обобщаемости? Есть ли что-то, аналогичное p-значению, которое связано с надежностью специфичности, учитывая размер класса негативных образцов?
Спасибо!
Реальные данные – это “тестовая выборка”, верно?
Данные должны быть разделены таким образом, чтобы обучающая и валидационная выборки видели часть данных более одного раза, в то время как тестовые данные будут видны только один раз. В этом смысле, если модель достаточно устойчива, она будет хорошо работать даже на тестовых данных. Предполагается, что тестовые данные как можно ближе к реальным данным.
Для несбалансированной выборки используйте площадь под кривой точности и полноты в качестве численного измерения производительности. Вы также можете использовать F1-меру. Это учитывает специфику и чувствительность на разных порогах.
Как это будет выглядеть на больших реальных датасетах, сложно сказать, учитывая ограниченный размер имеющегося у вас датасета. Вам нужно иметь представление о том, как будут выглядеть реальные данные, с которыми вы столкнетесь, и насколько хорошо ваш текущий датасет представляет эти реальные данные.
Ответ или решение
Для оценки надежности специфичности модели с очень маленькими наборами данных (обучающим, тестовым и валидационным) важно учитывать несколько факторов, особенно в контексте имbalanced (несбалансированных) классов.
-
Специфичность и ее интерпретация: Специфичность измеряет способность модели правильно идентифицировать отрицательные примеры, и вы уже рассчитали ее для ваших наборов данных. Однако, как вы отметили, ваша специфичность, которую вы получили на обучающем наборе (0.986), значительно выше, чем на тестовом (0.909) и валидационном (0.928) наборах. Это может указывать на перенастройку модели на обучающем наборе данных и потенциально более низкую общую правильность на реальных данных.
-
Имбаланс классов: Вы упомянули, что ваши классы несбалансированные. В таких случаях специфичность может быть вводящей в заблуждение, особенно если один класс значительно преобладает. Вместо этого следует рассмотреть использование более подходящих метрик, таких как:
- Площадь под кривой прецизионно-отзывчивости (AUC-PR): Эта метрика лучше отражает производительность на несбалансированных наборах данных, показывая компромиссы между точностью и полнотой.
- F1-меру: Эта метрика сочетает в себе как точность, так и полноту и может быть полезной для оценки производительности модели, особенно когда акцент делается на меньший класс.
-
Проверка на реальных данных: Чтобы оценить, насколько ваша модель будет работать в реальных условиях, вы можете провести тестирование на более крупных и разнообразных наборах данных, когда это будет возможно. Попробуйте оценить, насколько ваш текущий набор данных представляет данные из реального мира, и используйте эту информацию для прогнозирования производительности вашей модели.
-
Статистическая надежность специфичности: Поскольку ваши наборы данных малы, важно учитывать размер выборки при интерпретации специфичности. Хотя нет точного аналога p-значения для специфичности, вы можете использовать биномиальные методы для вычисления доверительных интервалов, чтобы удостовериться в надежности полученных значений. Например, воспользуйтесь следующим подходом:
- Для расчета доверительных интервалов для специфичности можно использовать формулу для доверительного интервала пропорции:
[
CI = p \pm Z \sqrt{\frac{p(1 – p)}{n}}
]
где (p) — специфичность, (Z) — уровень значимости (например, для 95% уровня это приблизительно 1.96), а (n) — количество отрицательных образцов.
- Для расчета доверительных интервалов для специфичности можно использовать формулу для доверительного интервала пропорции:
-
Кросс-валидация: Несмотря на маленький размер вашего набора данных, применение методов кросс-валидации может дать более надежные оценки производительности модели. Направляясь к пересеченному изучению, вы сможете использовать всю доступную информацию и, возможно, улучшить устойчивость модели.
-
Анализ ошибок: Наконец, проанализируйте, какие именно примеры были ошибочно классифицированы, особенно в случаях неправильного предсказания отрицательных классов. Это может дать понимание о том, какие черты или признаки могут помочь улучшить модель.
Таким образом, для более обоснованной оценки надежности специфичности вашей модели с учетом ограниченных данных, вам следует использовать более широкий набор метрик и статистических методов, а также учитывать возможность тестирования на более крупных и разнообразных наборах данных в будущем.