Простая двоичная текстовая классификация
Я ищу наиболее эффективный и простой способ классифицировать научные статьи на 800 000+ как релевантные (1) или нерелевантные (0) по отношению к определенному концептуальному пространству (здесь: обучение в том, что касается работы).
Данные: заголовок и аннотация (среднее =1300 символов)
Любые подходы могут использоваться или даже комбинироваться, включая контролируемое машинное обучение и / или путем установления функций, которые приводят к некоторым пороговым значениям для включения, среди прочего.
Подходы могут опираться на ключевые термины, которые описывают концептуальное пространство, хотя простое подсчет частот слишком ненадежно. Потенциальные возможности могут включать скрытый семантический анализ, n-граммы, ..
Генерирование обучающих данных может быть реалистичным для 1% корпуса, хотя это уже означает ручное кодирование 8000 статей (1= релевантное, 0= неактуальное), будет ли этого достаточно?
Конкретные идеи и некоторые краткие рассуждения очень ценятся, поэтому я могу принять обоснованное решение о том, как поступить. Большое спасибо!
1 ответ
Несколько идей:
Запустите LDA и узнайте, как распространяются темы документов и тематические слова (20 тем в зависимости от охвата набора данных различными темами). Присвойте верхний r% документов с наивысшей релевантной темой как релевантные и низкие nr% как не относящиеся к делу. Затем обучите классификатор этим помеченным документам.
Просто используйте пакет слов и извлеките самые близкие к вашему запросу (ваше концептуальное пространство) лучшие и близкие к ним проценты, а не проценты и обучите их классификатору.
Если у вас есть цитаты, вы можете запустить распространение меток по сетевому графику, пометив очень мало статей.
Не забудьте отличить заглавные слова от абстрактных, изменив заглавные слова на title_word1, чтобы любой классификатор мог придать им больше веса.
Сгруппировать статьи, скажем, в 100 кластеров, а затем выбрать, а затем вручную пометить эти кластеры. Выберите 100 на основе освещения различных тем в вашем корпусе. Для этого вы также можете использовать иерархическую кластеризацию.
Если это так, что количество релевантных документов намного меньше, чем несоответствующих, тогда лучший способ - найти ближайших соседей в вашем концептуальном пространстве (например, с помощью поиска информации, реализованного в Lucene). Затем вы можете вручную перейти к ранжированным результатам, пока не почувствуете, что документы больше не актуальны.
Большинство из этих методов - Bootstrapping или Weakly Supervised - подходы к классификации текста, о которых вы можете узнать больше.