Классификация текста неверно классифицирует?

Вопрос или проблема

Я пытаюсь решить задачу бинарной классификации. Мои метки — абьюзивные (1) и не абьюзивные (0). Мой набор данных был несбалансирован (больше 1, чем 0), и я использовал увеличенное количество выборок для меньшинства (т.е. 1), чтобы сбалансировать мой набор данных. Я также провел предварительную обработку, выделение признаков с использованием TF-IDF и затем передал набор данных в конвейер, используя 3 алгоритма классификации, а именно: логистическую регрессию, SVM и дерево решений.

Мои метрики оценки:

    Логистическая регрессия:
[[376  33]
 [ 18  69]]
          точность    полнота  f1-мера   поддержка

       0       0.95      0.92      0.94       409
       1       0.68      0.79      0.73        87

точность                               0.90       496
макро среднее          0.82      0.86      0.83       496
взвешенное среднее       0.91      0.90      0.90       496

    SVM:
[[383  26]
 [ 23  64]]
          точность    полнота  f1-мера   поддержка

       0       0.94      0.94      0.94       409
       1       0.71      0.74      0.72        87

точность                               0.90       496
макро среднее          0.83      0.84      0.83       496
взвешенное среднее       0.90      0.90      0.90       496

    Дерево решений:
[[383  26]
 [ 28  59]]
          точность    полнота  f1-мера   поддержка

       0       0.93      0.94      0.93       409
       1       0.69      0.68      0.69        87

точность                               0.89       496
макро среднее          0.81      0.81      0.81       496
взвешенное среднее       0.89      0.89      0.89       496

Проблема, с которой я сталкиваюсь, заключается в том, что некоторые новые абьюзивные тексты классифицируются как не абьюзивные. Я думаю, что моя доля ложных срабатываний (FP) и ложных отрицаний (FN) слишком высока и их необходимо уменьшить. У вас есть какие-либо предложения, как уменьшить FP и FN или другие предложения для решения моей проблемы? Спасибо.

Все 3 алгоритма дают очень схожие результаты. И глядя на размер выборки для оценки, я думаю, что обучающая выборка не слишком велика. Это говорит мне о том, что если есть какая-либо возможность, то это
a) в выделении признаков
b) в том, чтобы не предсказывать менее уверенные случаи
c) получение большего объема данных для обучения более сложного алгоритма

a) Выделение признаков – TFIDF или счетчик векторов имеют реальную проблему, когда тестовые слова находятся за пределами словаря обучения. Если вы можете использовать общий языковой словарь для встраивания как обучающего, так и тестового наборов, то результаты должны улучшиться. Есть открытые предобученные встраивания, такие как USE, Glove и т.д., чтобы это сделать.

b) Доверие к предсказанию – наряду с предсказанием класса вы также можете получить вероятность классификации. Затем проверьте – ниже какого порога вероятности ваша f1-мера становится слишком низкой. Не предсказывайте для этих случаев с низкой вероятностью. Большинство практических систем принимают ограничения ИИ.

c) Большее количество данных позволит вам изучить более сложные алгоритмы, такие как бустинг, что может улучшить результаты. Надеюсь, вы уже проводите кросс-валидацию.

Кроме того, в зависимости от стоимости ошибки, вы можете определить, следует ли приоритизировать FP или FN. Соответственно оптимизируйте точность/полноту.

Ответ или решение

Ошибочная классификация текста в задачах бинарной классификации: Анализ и рекомендации

Ваша ситуация с ошибками классификации в задаче бинарной классификации, связанной с определением оскорбительного текста, является распространенной проблемой в области обработки естественного языка (NLP). Давайте проанализируем вашу текущую реализацию и предложим несколько стратегий, которые могут помочь улучшить результаты.

1. Анализ текущей ситуации

Вы использовали несколько алгоритмов классификации (Логистическая Регрессия, SVM, Дерево Решений) на сбалансированном наборе данных после применения метода переобучения для устранения дисбаланса классов. Однако, как вы отметили, все три алгоритма показывают схожие результаты, что указывает на возможные проблемы, связанные с качеством данных или с недостаточной сложностью модели.

2. Статистика ошибок

Ваши текущие показатели для классов "0" (неоскорбительный) и "1" (оскорбительный) показывают следующие результаты:

  • Логистическая Регрессия:

    • Точность (precision) для "1": 0.68
    • Полнота (recall) для "1": 0.79
  • SVM:

    • Точность для "1": 0.71
    • Полнота для "1": 0.74
  • Дерево Решений:

    • Точность для "1": 0.69
    • Полнота для "1": 0.68

Значения точности и полноты для класса "1" указывают на то, что модель неэффективно распознает оскорбительные тексты, что в свою очередь может увеличить количество ложных отрицаний (FN).

3. Рекомендации по улучшению

Вот несколько стратегий, которые могут помочь вам сократить количество ошибочных классификаций:

a) Улучшение обработки признаков

Текущая стратегия, основанная на TF-IDF, может не обеспечивать адекватного представления текста, особенно если в тестовой выборке присутствуют слова, которых не было в обучающей. Рассмотрите возможность использования предобученных векторных представлений, таких как Word2Vec, GloVe или BERT. Эти методы могут захватывать семантику слов и улучшить качество классификации.

b) Учитывайте уверенность предсказаний

Вы также можете установить порог уверенности для предсказаний. Вычисление вероятностей позволяет более четко определить, какие экземпляры являются «неопределёнными» (по вашему усмотрению), и избегать их классификации. Это может помочь вам избежать ошибок, особенно для идущих на грани предсказаний.

c) Увеличение объема данных

Вы отметили, что ваш объем выборки не слишком велик. При наличии дополнительных данных можно использовать методы улучшения качества модели, такие как алгоритмы бустинга (например, XGBoost или LightGBM), которые имеют большую вероятность достичь высоких результатов. Попробуйте также включить дополнительные данные для обучения, возможно, из источников, которые предоставляют оскорбительные комментарии или сценарии.

d) Усовершенствование метрических показателей

Будьте внимательны к выбору метрик. Если ваша задача особенно чувствительна к ложным отрицаниям, рассмотрите возможность использования F-beta-меры с потенциально высоким значением бета для акцента на полноте, или выбирайте метрики ROC-AUC для более глобального анализа.

4. Заключение

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

Если вам потребуется дополнительная помощь или рекомендации, не стесняйтесь обращаться!

Оцените материал
Добавить комментарий

Капча загружается...