Маркиране на изречения
Маркирането на изречение в по-широк смисъл се отнася за добавяне на етикети на глагола, съществителното и т.н.в контекста на изречението. Идентифицирането на POS етикетите е сложен процес. По този начин общото маркиране на POS не е възможно ръчно, тъй като някои думи могат да имат различни (двусмислени) значения според структурата на изречението. Преобразуването на текст под формата на списък е важна стъпка преди маркирането, тъй като всяка дума в списъка се циклира и брои за определен маркер. Моля, вижте кода по-долу, за да го разберете по-добре
import nltktext = "Hello Guru99, You have to build a very good site, and I love visiting your site."sentence = nltk.sent_tokenize(text)for sent in sentence:print(nltk.pos_tag(nltk.word_tokenize(sent)))
ИЗХОД
[('Hello', 'NNP'), ('Guru99', 'NNP'), (',', ','), ('You', 'PRP'), ('have', 'VBP'), ('build', 'VBN'), ('a', 'DT'), ('very', 'RB'), ('good', 'JJ'), ('site', 'NN'), ('and', 'CC'), ('I', 'PRP'), ('love', 'VBP'), ('visiting', 'VBG'), ('your', 'PRP$'), ('site', 'NN'), ('.', '.')]
Обяснение на кода
- Код за импортиране на nltk (Инструментариум на естествен език, който съдържа подмодули като изречение tokenize и word tokenize.)
- Текст, чиито етикети трябва да бъдат отпечатани.
- Токенизация на изречението
- Цикълът For е реализиран, където думите се маркират от изречението и етикетът на всяка дума се отпечатва като изход.
В Corpus има два вида POS маркери:
- Въз основа на правила
- Стохастични POS маркери
1. POS-тагър, базиран на правила: За думите с двусмислено значение се прилага подход, основан на правила въз основа на контекстна информация. Това се прави чрез проверка или анализ на значението на предходната или следващата дума. Информацията се анализира от обкръжението на думата или от самата нея. Следователно думите са маркирани от граматичните правила на даден език като главни букви и пунктуация. напр. тагърът на Брил.
2. Стохастичен POS маркер: При този метод се прилагат различни подходи като честота или вероятност. Ако дадена дума е маркирана предимно с определен таг в обучителния набор, тогава в тестовото изречение се дава този конкретен таг. Думата маркер зависи не само от собствения си маркер, но и от предишния маркер. Този метод не винаги е точен. Друг начин е да се изчисли вероятността за поява на определен таг в изречение. По този начин крайният таг се изчислява, като се проверява най-голямата вероятност за дума с определен таг.
Скрит модел на Марков:
Проблемите с маркирането също могат да бъдат моделирани с помощта на HMM. Той третира входните маркери като наблюдаема последователност, докато маркерите се считат за скрити състояния и целта е да се определи последователността на скритото състояние. Например x = x 1 , x 2 , ..., x n, където x е последователност от символи, докато y = y 1 , y 2 , y 3 , y 4 ... y n е скритата последователност.
Как работи HMM моделът?
HMM използва разпределение на присъединяването, което е P (x, y), където x е входната последователност / последователност на маркера, а y е последователността на маркерите.
Последователността на маркерите за x ще бъде argmax y1 ... .yn p (x1, x2, ... .xn, y1, y2, y3, ...). Ние имаме категоризирани тагове от текста, но статистическите данни за тези етикети са жизненоважни. Следващата част е броенето на тези маркери за статистическо проучване.