Токенизујте текст користећи НЛТК у Питхон-у
Токенизација текста је основна техника обраде природног језика (НЛП) и једна таква техника је Токенизација. То је процес поделе текста на мање компоненте или токене. То могу бити:
- Речи: Волим НЛП → ['Ја' 'волим' 'НЛП']
- Реченице: Волим НЛП. Питхон је одличан. → ['Волим НЛП.' „Питхон је одличан.“]
Са популарном библиотеком Питхон-а НЛТК (Алатке за природни језик) раздвајање текста на смислене јединице постаје једноставно и изузетно ефикасно.
Основна имплементација
Хајде да видимо имплементацију токенизације користећи НЛТК у Питхон-у
Корак 1: Инсталирајте и подесите
Инсталирајте тачка модели токенизера потребни за токенизацију реченица и речи.
Python ! pip install nltk import nltk nltk . download ( 'punkt' )
Корак 2: Токенизујте реченице
сент_токенизе() дели стринг на листу реченица које обрађују интерпункцију и скраћенице.
Python from nltk.tokenize import sent_tokenize text = 'NLTK is a great NLP toolkit. It makes processing text easy!' sentences = sent_tokenize ( text ) print ( sentences )
Излаз:
['НЛТК је одличан НЛП алат.' 'То олакшава обраду текста!']
Корак 3: Токенизујте речи
- ворд_токенизе() дели реченицу на речи и знакове интерпункције као засебне лексеме.
- Рукује контракцијским бројевима интерпункције и још много тога.
from nltk.tokenize import word_tokenize sentence = 'Tokenization is easy with NLTK's word_tokenize.' words = word_tokenize ( sentence ) print ( words )
Излаз:
['Токенизација' 'је' 'лака' 'са' 'НЛТК' ''с' 'ворд_токенизе' '.']
Хајде да видимо још неколико примера
1. ВордПунцтТокенизер
То Делује текст на абецедне и неазбучне знакове
- Одваја све низове знакова речи и интерпункције у лексеме.
- Нарочито раздваја контракције (Не постаје Не ’ не).
- Делује е-поруке у Е - поруке.
from nltk.tokenize import WordPunctTokenizer tokenizer = WordPunctTokenizer () tokens = tokenizer . tokenize ( 'Don't split contractions. E-mails: [email protected]!' ) print ( tokens )
Излаз:
['Немој' ''' 'не' 'делити' 'контракције' '.' 'Е' '-' 'мејлови' ':' 'здраво' '@' 'пример' '.' 'цом' '!']
2. ТреебанкВордТокенизер
Погодан је за лингвистичку анализу, обрађује интерпункцију и контракције.
- Имитира токенизацију у стилу Пенн Треебанк која се обично користи за НЛП лингвистичку анализу.
- Интелигентније рукује одређеним граматичким структурама енглеског језика.
from nltk.tokenize import TreebankWordTokenizer tokenizer = TreebankWordTokenizer () tokens = tokenizer . tokenize ( 'Have a look at NLTK's tokenizers.' ) print ( tokens )
Излаз:
['Погледајте' 'а' 'у' 'НЛТК' ''с' 'токенизерс' '.']
3. Регек токенизер
Прилагођава цепање на основу шаблона.
- Токенизује на основу обрасца регуларног израза.
- в+ подудара речи и бројеве потпуно изостављајући интерпункцију.
from nltk.tokenize import RegexpTokenizer tokenizer = RegexpTokenizer ( r 'w+' ) tokens = tokenizer . tokenize ( 'Custom rule: keep only words & numbers drop punctuation!' ) print ( tokens )
Излаз:
['Прилагођено' 'правило' 'задржи' 'само' 'речи' 'бројеве' 'испусти' 'интерпункцију']
НЛТК пружа користан и једноставан алат за токенизацију текста у Питхон-у који подржава низ потреба за токенизацијом од основног раздвајања речи и реченица до напредних прилагођених образаца.
Креирај квиз