Предварительное обучение и вывод векторов Doc2Vec

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

Примечание. Оба набора данных, то есть один, который используется для обучения doc2vec, а другой для вывода векторов, уникальны, но относятся к одной области верховного суда США.

Пожалуйста, поправьте меня, если я ошибаюсь по уважительной причине.


person shrikanth singh    schedule 20.03.2020    source источник


Ответы (1)


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

50000 - это немного для обучающего набора, но некоторые полезные Doc2Vec результаты были основаны на аналогичных наборах.

Векторный вывод, как и обучение, сокращает документы любой длины до вектора фиксированного размера. (Но обратите внимание: gensim молча ограничивает любой текст, передаваемый в модель 2Vec, до 10000 токенов.)

Но если вы обучили модель на документах, которые содержат около 1000 слов, а затем попробуйте сделать вывод на фрагментах из 10 слов, эти документы-векторы могут быть не такими полезными или полезными, как предполагаемые векторы в документах. аналогично тренировочному набору. Но вам все равно нужно попробовать, чтобы узнать. (Также обратите внимание: слова, не выученные во время обучения, полностью игнорируются во время вывода, поэтому последующие выводы в документах со многими / всеми неизвестными словами будут слабыми или бессмысленными.)

Так ли обстоит дело с вашими документами по выводам - ​​они сильно отличаются от учебных документов по размеру и словарному запасу? И если да, то почему? (Можете ли вы тренироваться с более репрезентативными документами?)

Если набор из 36000 документов зафиксирован до начала обучения, также может быть допустимо / оправданно включить их в неконтролируемое Doc2Vec обучение. Это данные, они помогают выучить жаргон предметной области, и в них нет никаких «правильных» ответов для классификации.

person gojomo    schedule 20.03.2020
comment
Спасибо за ваши предупреждения, и я позабочусь об этом в первую очередь. Одно уточнение, необходимое по последнему пункту, является ли технически правильным подавать документы, для которых я собираюсь вывести векторы во время неконтролируемого обучения doc2vec. Я вижу, вы заявили, что допустимо включать 36000 документов во время обучения, поскольку модель выучит словарь предметной области, а у них нет какой-либо формы принятия решения о ярлыках. Разве это не измена модели? Не могли бы вы подробнее остановиться на этом рассуждении. @gojomo - person shrikanth singh; 20.03.2020
comment
Это зависит от ваших конкретных целей. Является ли 36k документов всего лишь одной пробной партией, и вы хотите, чтобы ваши оценки точности системы и т. Д. Были достаточно надежными в отношении того, как она будет, исходя из замороженной модели, продолжать работать с аналогичными сериями в будущем? Получение такой точной оценки может оправдать отказ от данных от обучения без учителя. Но если конечной целью является классификация 36k, вам нужна лучшая производительность, а не теоретически объективные оценки будущей производительности. - person gojomo; 20.03.2020
comment
Или, если каждый раз, когда приходит новая N-тысяча документов, вы на законных основаниях можете переобучить все, чтобы ваша реальная производственная система могла узнать больше о домене (без присмотра) из еще не классифицированных документов, тогда, опять же, это может быть действительными, чтобы использовать их как часть неконтролируемого шага. Для сравнения, это то, что оригинальная статья «Вектор абзаца» (также известная как Doc2Vec) сделала в своем эксперименте над настроениями в обзорах IMDB. (Раздел 3.1 из ‹cs.stanford.edu/~quocle/paragraph_vector.pdf›.) - person gojomo; 20.03.2020