Учебники

Python — Chunk Classification

Разделение на основе классификации включает классификацию текста как группы слов, а не отдельных слов. Простой сценарий — разметка текста в предложениях. Мы будем использовать корпус, чтобы продемонстрировать классификацию. Мы выбираем корпус conll2000, в котором есть данные из корпуса Wall Street Journal (WSJ), используемые для фрагментирования именных имен.

Сначала мы добавляем корпус в нашу среду, используя следующую команду.

import nltk
nltk.download('conll2000')

Давайте посмотрим на первые несколько предложений в этом корпусе.

from nltk.corpus import conll2000

x = (conll2000.sents())
for i in range(3):
     print x[i]
     print '\n'

Когда мы запускаем вышеуказанную программу, мы получаем следующий вывод:

['Confidence', 'in', 'the', 'pond', 'is', 'widely', 'expected', 'to', 'take', 'another', 'sharp', 'dive', 'if', 'trade', 'figres', 'for', 'September', ',', 'de', 'for', 'release', 'tomorrow', ',', 'fail', 'to', 'show', 'a', 'sbstantial', 'improvement', 'from', 'Jly', 'and', 'Agst', "'s", 'near-record', 'deficits', '.']


['Chancellor', 'of', 'the', 'Excheqer', 'Nigel', 'Lawson', "'s", 'restated', 'commitment', 'to', 'a', 'firm', 'monetary', 'policy', 'has', 'helped', 'to', 'prevent', 'a', 'freefall', 'in', 'sterling', 'over', 'the', 'past', 'week', '.']


['Bt', 'analysts', 'reckon', 'nderlying', 'spport', 'for', 'sterling', 'has', 'been', 'eroded', 'by', 'the', 'chancellor', "'s", 'failre', 'to', 'annonce', 'any', 'new', 'policy', 'measres', 'in', 'his', 'Mansion', 'Hose', 'speech', 'last', 'Thrsday', '.']

Далее мы используем fucntion tagged_sents (), чтобы получить предложения, помеченные их классификаторами.

from nltk.corpus import conll2000

x = (conll2000.tagged_sents())
for i in range(3):
     print x[i]
     print '\n'

Когда мы запускаем вышеуказанную программу, мы получаем следующий вывод: