Классификация текста: необработанный словарный ввод и векторизация текста - PullRequest
0 голосов
/ 03 июня 2019

Я работаю с некоторой обработкой текста, используя серию классификаторов sklearn.В примере , который я нашел в Интернете, я заметил, что ввод классификатора представляет собой серию элементов словаря:

({'my': True, 'first': True, 'visit': True, 'was': True, ...}, 'pos')

({'wowjust': True, 'wow': True, 'who': True, 'would': True,..}, 'pos')

Эти элементы передаются в классификационную модель (например, sklearn LinearSVC).На сайте sklearn я обнаружил, что в текстовой классификации текстовые данные преобразуются в вектор с использованием некоторой техники, например, HashingVectorizer, но я не смог найти никакой документации о том, как обрабатывается вышеупомянутый словарный ввод.Можно ли дать какое-то объяснение того, какая процедура используется в этом случае ввода?

1 Ответ

0 голосов
/ 04 июня 2019

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

В отличие от CountVectorizer , вы всегда уверены, что у вас есть ровно n_features функций, но вы действительно рискуете хэшировать коллизии.

...