Введение в конструирование признаков для NLP

Конструирование признаков для NLP на Python

Rounak Banik

Data Scientist

Числовые данные

Набор данных Iris

длина чашелистика ширина чашелистика длина лепестка ширина лепестка класс
6.3 2.9 5.6 1.8 Iris-virginica
4.9 3.0 1.4 0.2 Iris-setosa
5.6 2.9 3.6 1.3 Iris-versicolor
6.0 2.7 5.1 1.6 Iris-versicolor
7.2 3.6 6.1 2.5 Iris-virginica
Конструирование признаков для NLP на Python

Унитарное кодирование (one-hot encoding)

пол
female
male
female
male
female
...
Конструирование признаков для NLP на Python

Унитарное кодирование (one-hot encoding)

пол one-hot encoding
female
male
female
male
female
... ...
Конструирование признаков для NLP на Python

Унитарное кодирование (one-hot encoding)

пол one-hot encoding sex_female sex_male
female 1 0
male 0 1
female 1 0
male 0 1
female 1 0
... ... ... ...
Конструирование признаков для NLP на Python

One-hot encoding с помощью pandas

# Import the pandas library
import pandas as pd

# Perform one-hot encoding on the 'sex' feature of df df = pd.get_dummies(df, columns=['sex'])
Конструирование признаков для NLP на Python

Текстовые данные

Набор данных с рецензиями на фильмы

рецензия класс
This movie is for dog lovers. A very poignant... positive
The movie is forgettable. The plot lacked... negative
A truly amazing movie about dogs. A gripping... positive
Конструирование признаков для NLP на Python

Предобработка текста

  • Приведение к нижнему регистру
    • Пример: Reductionreduction
  • Приведение к базовой форме
    • Пример: reductionreduce
Конструирование признаков для NLP на Python

Векторизация

рецензия класс
This movie is for dog lovers. A very poignant... positive
The movie is forgettable. The plot lacked... negative
A truly amazing movie about dogs. A gripping... positive
Конструирование признаков для NLP на Python

Векторизация

0 1 2 ... n класс
0.03 0.71 0.00 ... 0.22 positive
0.45 0.00 0.03 ... 0.19 negative
0.14 0.18 0.00 ... 0.45 positive
Конструирование признаков для NLP на Python

Базовые признаки

  • Количество слов
  • Количество символов
  • Средняя длина слова
  • Твиты

Твит Silverado Records

Конструирование признаков для NLP на Python

POS-теггинг

Слово Часть речи
I Местоимение
have Глагол
a Артикль
dog Существительное
Конструирование признаков для NLP на Python

Распознавание именованных сущностей

  • Существительное обозначает человека, организацию или страну?

Человек, флаг страны и логотип TED

Существительное NER
Brian Человек
DataCamp Организация
Конструирование признаков для NLP на Python

Пройденные темы

  • Предобработка текста
  • Базовые признаки
  • Словарные признаки
  • Векторизация
Конструирование признаков для NLP на Python

Давайте потренируемся!

Конструирование признаков для NLP на Python

Preparing Video For Download...