Как стать автором
Обновить

Мультиклассовая классификация текста. Дисбаланс тренировочных данных и их генерация. Особенности взвешивания TF-IDF

Время на прочтение10 мин
Количество просмотров7.7K
Всего голосов 3: ↑3 и ↓0+3
Комментарии7

Комментарии 7

Классная статья! Как интерпретировать "Confusion Matrix"? Можете подсказать хорошую статью на эту тему? По содержанию статьи: кто-нибудь может подробнее объяснить почему нормальное распределение дало результат хуже?

Спасибо! Матрица здесь используется в качестве метрики взаимотношения между классами при предсказание, визуализироемое с помощью тепловой карты - на ней показано кол-во предсказаний класса всеми имеющимися классами. То есть к примеру в последней картинке: 5ый класс предсказан 5ым (верно) 3266 раз, а 4ым (не верно) 344 раза.

По поводу нормального распределения мне бы тоже было интересно услышать предположения)

Я перепробовал кучу вариантов, почему выстрелил именно этот объяснить не могу((

Хотел бы задать пару вопросов.

Вы пишите, что

То есть, если мы имеем корпус с текстами с сильно различным количеством слов, мы рискуем получить завышенный показатель IDF если слово встречается только в маленьких текстах и наоборот если слово часто встречается много раз только в одном крупном тексте.

но ведь IDF не зависит от длинны документа.

И еще, вы далее даете пояснения

Первый случай. Слово t встречается пять раз в тексте длинной 500 слов: знаменатель формулы IDF получит 5 балов и снизит показатель самого IDF, а следовательно, общий вес слова.

Второй случай. Слово t встречается по одному разу в пяти текстах длинной 100 слов: знаменатель формулы IDF получит 1 балов и завысит показатель самого IDF, а следовательно, общий вес слова.

Но ведь расшифровка формулы знаменателя IDF, которую вы приводите, на русском звучит как мощность множества документов d_i, входящих в корпус D, таких, что в документе d_i содержится токен t хотя бы один раз. И тогда, в первом случае, если мы берем текст из 500 слов как корпус, то idf каждого слова в принципе будет 1. А во втором случае мы имеем корпус из 5 текстов и, если слово встречается во всех 5 текстах, то знаменатель будет равен 5.

Опять же, замечу, что знаменатель IDF не зависит от количества слов в самом документе, поэтому не понятно как количество слов влияет на показатель IDF.

Хорошо что вы спросили. Спасибо за вопрос!

Вся соль заключается в этой фразе из вашего замечания " А во втором случае мы имеем корпус из 5 текстов и, если слово встречается во всех 5 текстах, то знаменатель будет равен 5. " . Вы не учитываете числитель - то есть кол-во текстов в коллекции (корпусе).

Давайте на примере. Предположим слово t - "бедолага" - редкое слово с негативной эмоциональной окраской, которое редко встречается в текстах, допустим 3-го класса, всё как в примерах из статьи.

Считаем его idf. Кол-во документов в колл. для 3-го класса - 40000 - это числитель.

первый случай - пять раз в одном тексте (500 слов) - в знаменателе 1. 40000/1 = 40000

второй случай - по одному разу в пяти текстах длинной 100 слов - в знаменателе 5. 40000/5 = 8000.

Есть разница? Стоит упомянуть что

Для каждого уникального слова в пределах конкретной коллекции документов существует только одно значение IDF.

Можно посмотреть подробно описание формулы tfidf в вики

Вы не учитываете числитель - то есть кол-во текстов в коллекции (корпусе).

Числитель IDF все еще не зависит от длины документов в коллекции) В том числе, в ваших вычислениях.

Далее, вы пишете

первый случай - пять раз в одном тексте (500 слов) - в знаменателе 1.

А в статье написано

Первый случай. Слово t встречается пять раз в тексте длинной 500 слов: знаменатель формулы IDF получит 5 балов и снизит показатель самого IDF, а следовательно, общий вес слова.

И еще вы описываете в комменте

второй случай - по одному разу в пяти текстах длинной 100 слов - в знаменателе 5. 40000/5 = 8000

А в статье написано

Второй случай. Слово t встречается по одному разу в пяти текстах длинной 100 слов: знаменатель формулы IDF получит 1 балов и завысит показатель самого IDF, а следовательно, общий вес слова.

Вот она где собака зарыта)) Это я описался! Как обычно, смотрю в книгу и вижу фигу...

Спасибо вам большое за то что поправили меня! Дико извиняюсь что завёл вас в заблуждение. Статью поправил

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории