본문 바로가기
MLOps/NLP

NLP에 대한 기본 이해

by Finn# 2024. 11. 9.
728x90

Intro

학교에서 NLP의 세부 분야 중 NLU에 대한 내용에 대해서 수업시간에 다뤘습니다. 이전 Boostcamp AI Tech - NLP 과정을 공부할 때는 '이해'라는 과정에 초점을 맞추기보다는 특정 Task를 수행할 수 있는 모델 개발에 좀 더 초점을 맞춰서 공부했습니다. 그래서 이번 시간에는 NLP의 세부분야 중 NLU에 대한 정리를 해볼 생각입니다. 아마 정리가 끝난 후에는 실제 자연어 처리에 대한 여러 Task와 기술들을 정리하는 시간을 가져보도록 하겠습니다. 


Data Structure에 대한 이해

보통 Tabular 즉, Table 구조에 정의되어 있는 데이터를 우리는 Structure data라고 합니다.

정형데이터(Structured Data) 예시

 

이는 다른 말로 Formal data라고도 부릅니다. 하지만 모든 데이터가 이렇게 Tabular 데이터로 정리되어 있진 않습니다.

 

반정형 데이터(Semi-Structured Data) 예시

 

다른 관점에서 Tabular가 아니지만 구조가 있는 데이터들을 살펴보겠습니다. Web Scrapping을 통해 가져온 데이터를 보겠습니다. 데이터는 <tag> 별로 데이터들이 정리되어 들어가있는 것을 알 수 있습니다. 이런 Markdown Language로 정의된 문서나 Tabular가 아닌 json 등이 타입으로 정리된 데이터들은 Semi-Structured Data라고 부르며 한글로는 반정형 데이터라고 부릅니다. 

 

비정형 데이터(Un-Structured Data) 예시

 

 마지막으로 앞으로 공부할 Natural Data는 구조가 없는 Non-Formal Data이기에 Semi-Structured도 아닌 Un-strucutured Data로 분류됩니다. 이를 한글로 비정형 데이터라고 부릅니다.  이런 비정형 데이터는 데이터 자체가 가지고 있는 의미나 패턴 그리고 규칙 등을 이해하기 위해서는 사용가능한 데이터의 형태로 변환해주는 작업과 필요하고 데이터 속에 담겨있는 규칙을 찾아내는 작업이 매우 중요합니다. 또한 이런 데이터 타입에 맞는 적절한 전처리가 필요할 겁니다. 


Natural Language Processing

NLP는 NLU, NLG 등을 포괄하는 개념입니다. 비교 분석, 워드클라우드 등의 인사이트를 발굴하기 위한 분석에 초점을 두는 경우 보통 자연어 이해(NLU)라고 하며 이외, 생성을 포함한 자연어 처리를 일반적으로 NLP로 부르고 있습니다. 따라서 NLP라는 개념을 통해 어떤 처리들을 다루고 있는지 다음 자료를 통해 살펴봅시다. 아래 자료는 GPT를 통해 정리한 내용입니다.

 

NLU (Natural Language Understanding) - 자연어 이해

NLU는 언어의 의미문맥을 해석하는 작업입니다. 이전에 언급한 작업들 외에도, 여기에 추가할 수 있는 예시들을 정리했습니다.

 

대표적인 NLU 작업:

  1. 비교분석 (Comparative Analysis)
  2. 워드클라우드 (Word Cloud)
  3. 의미망 분석 (Semantic Network Analysis)
  4. 빈도 분석 (Frequency Analysis)
  5. 토픽 모델링 (Topic Modeling)
  6. 감정 분석 (Sentiment Analysis)
  7. 의도 인식 (Intent Recognition)

 

NLP (Natural Language Processing) - 자연어 처리

NLP는 자연어를 처리하고 기계가 이해할 수 있도록 변환하는 작업입니다. 여기에는 구문 분석, 형태소 분석 외에도 더 구체적이고 실용적인 작업들이 포함됩니다.

 

대표적인 NLP 작업:

  1. 구문 분석 (Syntactic Parsing)
  2. 명명된 엔티티 인식 (NER): 사람, 장소, 날짜 등의 엔티티 추출
  3. 품사 태깅 (POS Tagging)
  4. 의미 분석 (Semantic Analysis)
  5. 문서 분류 (Document Classification)
  6. 기계 독해(Machine Translation)
  7. 개체 간의 관계(Relation Extraction)
  8. 질문-답 (Question Answering)

 

NLG (Natural Language Generation) - 자연어 생성

NLG는 컴퓨터가 기계적으로 자연어를 생성하는 과정입니다. 텍스트를 요약하거나 번역하는 작업 외에도 대화형 시스템을 만드는 작업이 포함됩니다. 일반인 수준에서 이런 Generation 작업을 하려면 LLM의 도움이 필수적이고 그마저도 원하는 수준의 기능 구현이 어려울 수 있습니다.

 

대표적인 NLG 작업:

  1. 자동 텍스트 요약 (Text Summarization): 긴 텍스트에서 핵심적인 내용을 요약.
  2. 기계 번역 (Machine Translation): 한 언어에서 다른 언어로 자동으로 번역.
  3. 질문 응답 시스템 (Question Answering): 주어진 질문에 대한 정확한 답변을 생성하는 시스템.
  4. 대화형 에이전트 (Dialogue Systems): 사용자와의 대화를 통해 자연스러운 문장을 생성.
  5. 문서 생성 (Document Generation): 특정 정보를 바탕으로 자동으로 텍스트나 문서 생성.
  6. 스토리텔링 (Story Generation): 특정 주제나 상황에 대한 이야기를 자동으로 생성.

Outro

다음 칼럼에서는 NLU에 대해서 정리합니다.

 

인스타 주소 🎗

https://www.instagram.com/f.inn_sharp/

반응형