NLP 특성 공학 소개

Python으로 배우는 NLP 피처 엔지니어링

Rounak Banik

Data Scientist

수치형 데이터

아이리스 데이터셋

sepal length sepal width petal length petal width class
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
Python으로 배우는 NLP 피처 엔지니어링

원-핫 인코딩

sex
female
male
female
male
female
...
Python으로 배우는 NLP 피처 엔지니어링

원-핫 인코딩

sex one-hot encoding
female
male
female
male
female
... ...
Python으로 배우는 NLP 피처 엔지니어링

원-핫 인코딩

sex one-hot encoding sex_female sex_male
female 1 0
male 0 1
female 1 0
male 0 1
female 1 0
... ... ... ...
Python으로 배우는 NLP 피처 엔지니어링

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'])
Python으로 배우는 NLP 피처 엔지니어링

텍스트 데이터

영화 리뷰 데이터셋

review class
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
Python으로 배우는 NLP 피처 엔지니어링

텍스트 전처리

  • 소문자로 변환
    • 예: Reductionreduction
  • 기본 형태로 변환
    • 예: reductionreduce
Python으로 배우는 NLP 피처 엔지니어링

벡터화

review class
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
Python으로 배우는 NLP 피처 엔지니어링

벡터화

0 1 2 ... n class
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
Python으로 배우는 NLP 피처 엔지니어링

기본 특성

  • 단어 수
  • 문자 수
  • 평균 단어 길이
  • 트윗

실버라도 레코즈 트윗

Python으로 배우는 NLP 피처 엔지니어링

품사 태깅

Word POS
I Pronoun
have Verb
a Article
dog Noun
Python으로 배우는 NLP 피처 엔지니어링

개체명 인식(NER)

  • 명사가 사람, 조직, 국가를 가리키는가?

사람, 국기, TED 로고

Noun NER
Brian Person
DataCamp Organization
Python으로 배우는 NLP 피처 엔지니어링

다룬 개념

  • 텍스트 전처리
  • 기본 특성
  • 단어 특성
  • 벡터화
Python으로 배우는 NLP 피처 엔지니어링

연습해 봅시다!

Python으로 배우는 NLP 피처 엔지니어링

Preparing Video For Download...