[NLP] 코퍼스와 데이터세트의 실제 이해

ssook·2021년 8월 20일
0

NLP

목록 보기
1/3
post-thumbnail

✋🏻 파이썬 자연어 처리의 이론과 실제를 읽고 정리한 내용입니다.

📍 코퍼스란 무엇인가?

  • 자연어 처리 관련 애플리케이션은 방대한 양의 데이터를 사용해 만든다.
    이런 많은 데이터 모음을 코퍼스라고 한다.
    코퍼스는 코퍼스 분석 뿐만 아니라 언어 분석에 사용되는 실제 언어의 체계적 디지털 모음이다. 둘 이상의 코퍼스가 있으면 코포라라고 부름

  • NLP 애플리케이션을 개발하려면 작성된 코퍼스나 말이 들어간 자연어 자료가 필요하다. NLP 애플리케이션은 코퍼스 하나만 입력으로 사용하기도 하지만 여러 코포라를 입력으로 사용할 때도 있음.

  • NLP 애플리케이션에 대한 언어 규칙을 정의하고 검증할 수 있으며, 언어 사용에 따라 특정 언어 규칙을 정의할 수 있음. 규칙 기반 시스템의 도움으로 언어 규칙을 정의하고 코퍼스를 사용해 규칙의 유효성을 검사할 수 있음.

코퍼스에서 데이터의 대량 수집은 아래와 같은 형식으로 이뤄질 수 있음.
1. 쓰인 자료를 의미하는 텍스트 데이터
2. 말하기 자료를 의미하는 음성 데이터

  • 어떤 경우에는 코퍼스를 데이터세트라고도 함.

코퍼스에는 다음과 같은 3개의 타입이 있음.
1. 단일 언어 코퍼스 : 하나의 언어로 이루어짐
2. 이중 언어 코퍼스 : 2개의 언어로 이루어짐
3. 다국어 코퍼스 : 3개의 이상 언어로 이루어짐

📍 왜 코퍼스가 필요한가?

  • 코퍼스는 NLP 애플리케이션을 만드는 데 사용되는 양적 데이터를 제공한다. NLP 애플리케이션에 대한 코퍼스 생성과 관련된 문제는 다음과 같음.
  1. 문제 진술을 해결하기 위해 필요한 데이터 타입 결정
  2. 데이터 가용성
  3. 데이터 품질
  4. 금액 측면에서의 데이터 적합성

📍 코퍼스 분석 이해

  • 코퍼스 분석
    : 진정한 의사 소통 상황의 맥락을 토대로 해서 언어 개념의 심층적인 조사를 수행하는 방법론

  • 텍스트 데이터에 대한 코퍼스 분석은 데이터세트를 통계적으로 면밀히 조사하고 조작하며 일반화하는 것으로 구성.

  • 일반적으로 코퍼스에 단어가 몇 개 나오는 지 코퍼스 내에 있는 특정 단어의 빈도수가 얼마인지를 분석한다. 코퍼스에 노이즈가 있으면 해당 노이즈를 제거하려고 시도해야 하며, 거의 모든 NLP 어플리케이션에서는 코퍼스를 잘 이해할 수 있게 기본적인 코퍼스 분석을 할 필요가 있다.

  • nltk는 몇 가지 내장 코퍼스를 제공. 어떤 타입의 코포라가 nltk에 있는지 잘 알아야 함.

nltk 내에 있는 4개 타입의 코포라
1. 아이솔레이트 코퍼스
: 텍스트 또는 자연어 모음
2. 카테고리화 코퍼스
: 다양한 타입의 부류로 그룹화된 텍스트 모음
3. 오버래핑 코퍼스
: 분류된 텍스트 모음이지만 카테고리가 서로 겹침
4. 템포럴 코퍼스
: 일정 기간 동안 자연어를 사용하는 모음

profile
1년차 주니어 개발자입니다~~~~

0개의 댓글