Обработка естественного языка с использованием полиглота - Введение
В этой статье рассказывается о пакете Python NLP, известном как Polyglot, который поддерживает различные многоязычные приложения и предлагает широкий спектр анализа и широкий охват языков. Он разработан Рами Аль-Рфу. Он состоит из множества функций, таких как
- Определение языка (196 языков)
- Токенизация (165 языков)
- Распознавание именованных сущностей (40 языков)
- Часть речевых тегов (16 языков)
- Анализ настроений (136 языков) и многое другое
Для начала установим несколько необходимых пакетов:
Используйте Google Colab для простой и беспроблемной установки.
pip install polyglot
# установка пакетов зависимостей pip install pyicu
# установка пакетов зависимостей pip install Morfessor
# установка пакетов зависимостей pip install pycld2
Скачайте необходимые модели
Используйте Google colab для удобной установки моделей
%%bash polyglot download ner2.en # downloading model ner
%%bash polyglot download pos2.en # downloading model pos
%%bash polyglot download sentiment2.en # downloading model sentiment
Code: Language Detection
from polyglot.detect import Detector spanish_text = u """¡Hola ! Mi nombre es Ana. Tengo veinticinco años. Vivo en Miami, Florida""" detector = Detector(spanish_text) print (detector.language) |
Выход ::
Он обнаружил текст на испанском с уверенностью 98.
Код: токенизация
Tokenization is the process of splitting the sentences into words and even paragraphs into sentences.
# importing Text from polyglot library from polyglot.text import Text sentences = u """Suggest a platform for placement preparation?. GFG is a very good platform for placement preparation.""" # passing sentences through imported Text text = Text(sentences) # dividing sentences into words print (text.words) print ( "
" ) # separating sentences print (text.sentences) |
Выход :
Он разделил предложения на слова и даже разделил два разных предложения.
Код: Распознавание именованных сущностей:
Polyglot recognizes three categories of entities:
- Location
- Organization
- Persons
from polyglot.text import Text sentence = """Google is an American multinational technology company and Sundar Pichai is the CEO of Google""" text = Text(sentence, hint_language_code = "en" ) print (text.entities) |
Выход:
I-ORG относится к организации
I-LOC относится к местоположению
I-PER относится к человеку
Code: Part of Speech Tagging
from polyglot.text import Text sentence = """GeeksforGeeks is the best place for learning things in simple manner.""" text = Text(sentence) print (text.pos_tags) |
Выход:
Здесь ADP означает прилагательное, ADJ - прилагательное, а DET - определитель.
Code – Sentiment Analysis
from polyglot.text import Text sentence1 = """ABC is one of the best university in the world.""" sentence2 = """ABC is one of the worst university in the world.""" text1 = Text(sentence1) text2 = Text(sentence2) print (text1.polarity) print (text2.polarity) |
Выход:
1 указывает на то, что предложение находится в положительном контексте
-1 означает, что предложение находится в отрицательном контексте
Внимание компьютерщик! Укрепите свои основы с помощью базового курса программирования Python и изучите основы.
Для начала подготовьтесь к собеседованию. Расширьте свои концепции структур данных с помощью курса Python DS. А чтобы начать свое путешествие по машинному обучению, присоединяйтесь к курсу Машинное обучение - базовый уровень.