정제(Cleaning), 정규화(Normalization)

ganta·2021년 3월 2일
0

자연어 전처리

목록 보기
3/8
post-thumbnail

이 글은 Wikidocks의 딥 러닝을 이용한 자연어 치리 입문을 공부한 내용을 정리 한 글입니다.

정제(Cleaning), 정규화(Normalization)


✔️ 정제(Cleaning)
갖고 있는 코퍼스로부터 노이즈 데이터를 제거한다.

✔️ 정규화(Normalization)
표현 방법이 다른 단어들을 통합시켜서 같은 단어로 만들어준다.

규칙 기반 표기가 다른 단어들을 통합


✔️ 필요에 따라 직접 코딩을 통해 정의할 수 있는 정규화 규칙의 예로서 같은 의미이나 표기가 다른 단어들을 하나의 단어로 정규화하는 방법을 사용

✔️ 예시
USA - US는 같은 의미를 가지는 단어

대, 소문자 통합


✔️ 단어의 개수를 줄일 수 있는 또다른 정규화 방법

✔️ 검색엔진에도 유용하다.

✔️ 무작정 통합 해서는 안된다.
가령, 미국을 뜻하는 US와 우리를 뜻하는 us, 회사이름이나 사람이름등은 재문자로 유지되는 것이 옳다.

✔️ 토큰 모두를 소문자로 만드는 것이 문제라면 또 다른 대안은 일부만 소문자로 변환하는 방법으로써 문장의 맨 앞에서 나오는 단어의 대문자만 소문자로 바꾸고, 다른 단어들은 전부 대문자인 상태로 놔두는 방법을 생각 해 볼 수 있다.

✔️ 입력값어 따라 변수가 많기 때문에 전수 소문자로 바꿀 때가 좋을 때도 있다.

불필요한 단어의 제거(Removing Unnecessary Words)


✔️ 자연어가 아니면서 아무 의미도 갖지 않는 글자들(특수 문자 등)을 의미하기도 하지만, 분석하고자 하는 목적에 맞지 않는 불필요 단어들이다.

등장 빈도가 적은 단어 제거

✔️ 텍스트 데이터에서 너무 적게 등장하여 자연어 처리에 도움 되지 않는 단어들이 존재함으로 이러한 단어들을 삭제

길이가 짧은 단어 제거

✔️ 영어권 언어에서는 길이가 짧은 단어를 삭제하는 것만으로도 어느정도 자연어 처리에서 크게 의미가 없는 단어들을 제거하는 효과를 볼 수 있다. => 대부분 stopword에 해당

✔️ 영어 단어의 길이는 한국어 단어의 길이보다 평균적으로 길다. => 이에 따라, 길이가 짧은 단어를 제거하는 것이 학습에 도움이 된다.

✔️ 코퍼즈에서 노이즈 데이터의 특징을 잡아낼 수 있으면 정규 표현식을 사용하여 제거할 수 있다. => HTML에서 정규식을 이용하여 태그 제거

profile
한걸음씩 꾸준히

0개의 댓글