2015-05-26 3 views
5

Я пытаюсь найти правильные части речи для каждого слова в параграфе. Я использую Stanford POS Tagger. Тем не менее, я застрял в какой-то момент.Определите препозиции и отдельные POS

Я хочу определить предлоги из абзаца.

Penn Treebank говорит, что множества ярлыков:

IN Preposition or subordinating conjunction 

, как я могу быть уверен, что, если текущее слово будет Предлог или подчиняя конъюнкции. Как я могу извлечь только предлоги из абзаца в этом случае?

ответ

2

У меня был некоторый прорыв, чтобы понять, действительно ли это слово предлог или подчиняющий союз.

Я разобран следующее предложение:

Она ушла рано, потому что Майк прибыл со своей новой подругой.

(здесь, потому что это подчиняя конъюнкция)

После POS мечения

She_PRP left_VBD early_RB because_IN Mike_NNP arrived_VBD with_IN his_PRP $ new_JJ girlfriend_NN ._.

здесь, чтобы убедиться, что потому это предлог или нет, я разобрал предложение.

Parse Tree for Sentence 1

здесь потому что имеет прямой родителю после IN как СБАР (придаточное) в качестве корня.

с также подпадает под действие IN, но его прямой родитель будет PP так это предлог.

Пример 2:

Держите руку на рану, пока медсестра не просит вас принять его. (здесь до тех пор, пока координирует конъюнкция)

POS тегирование:

Keep_VB your_PRP $ hand_NN on_IN the_DT wound_NN until_IN the_DT nurse_NN asks_VBZ you_PRP to_TO take_VB it_PRP off_RP ._.

Таким образом, до и после обозначены как IN.

Однако изображение становится яснее, когда мы фактически разбираем предложение.

Итак, я завершаю, потому что подчиняет соединение и с предлогом.

Пробовал для многих вариаций фраз .. работал почти все, за исключением некоторых случаев для перед тем и после. Example 2

+0

Это, безусловно, дорогостоящее, но сложное решение. – lenz

+0

Мы можем использовать Tregex или Tsuggeon для дальнейшего сокращения вычислительного времени. – swapyonubuntu

+0

Я имею в виду, что разбор самого себя (не поиск дерева) стоит в первую очередь дорого. В этом нет ничего плохого, это действительно зависит от сценария. Если вам нужно постоянно обрабатывать огромные объемы текста, пометка PoS должна быть по-прежнему возможна, но синтаксический анализ может и не быть. – lenz

2

Вы не можете быть уверены. Причиной этого несколько странного PoS является то, что действительно сложно автоматически определить, является ли, например, для предлогом или подчиненным соединением. Поэтому для того, чтобы автоматические метки были лучше, это различие просто игнорируется. Обратите внимание, что есть также тег TO, который присваивается любому вхождению в, независимо от его функции в качестве предлога, инфинитивной частицы или любого другого (я думаю, что есть другие).

Если вам нужно правильно идентифицировать предлоги, вам необходимо переустановить теггер с измененным набором тегов или, может быть, подготовить классификатор, который принимает текст с пометкой PoS и только делает это окончательное значение.

Смежные вопросы