Если опубликованные вами данные представляют классы, которые вы пытаетесь различить, функции на основе ключевых слов могут быть не самыми эффективными.Похоже, некоторые термины, которые иногда рассматриваются как стоп-слова, будут очень хорошими подсказками относительно того, что является частным, а что открытым.
Вы упоминаете местоимения, я думаю, что это, вероятно, все еще хороший путь вперед.Если вы используете функции типа unigram / bag-of-words, убедитесь, что ваш векторизатор не удаляет их.
Выполнение подсчета экземпляров местоимений от первого лица (I
, my
, I've
, mine
) дает 13 для частного дела и 2 для общественного дела.
В открытом примере есть местоимения от второго лица (например, you
), а в первом - нет.Так что, возможно, будут эффективны функции о количестве или сглаженных соотношениях местоимений от первого до второго лица.
Если у вас есть синтаксическая структура или вы отслеживаете позиционную информацию через n-граммы или подобное представление, тогда функции, включающиеместоимения человека и ваши ключевые слова могут быть эффективными.
Кроме того, структуры предложений с начальным глаголом (Don't be ...
, Having an...
) характерны для языка, ориентированного на второе лицо, и могут отображаться в большей степени, чем частныеtext.
Последняя умозрительная мысль: настроения двух отрывков довольно разные, поэтому, если у вас есть доступ к анализу настроений, это может дать дополнительные подсказки.Я ожидаю, что класс Public будет более нейтральным, чем класс Private.
Подключение вашего примера Public к демонстрации Watson Tone Analyzer дает такой заметный результат:
{
"sentence_id": 3,
"text": "I am now scared and afraid of cancer.",
"tones": [
{
"score": 0.991397,
"tone_id": "fear",
"tone_name": "Fear"
}
]
},
Публичное заявление также содержит предложение, помеченное страхом, но оно не оценивается так высоко, сопровождается другими аннотациями и содержит явное отрицание в предложении.Так что, возможно, стоит использовать и их как функции.
"sentences_tone": [
{
"sentence_id": 0,
"text": "Don’t be scared and do not assume anything bad as cancer.",
"tones": [
{
"score": 0.874498,
"tone_id": "fear",
"tone_name": "Fear"
},
{
"score": 0.786991,
"tone_id": "tentative",
"tone_name": "Tentative"
},
{
"score": 0.653099,
"tone_id": "analytical",
"tone_name": "Analytical"
}
]
},