본문 바로가기
정보토픽

인공지능(AI) 자연어 처리(NLP) 개요와 사용모델, 트랜스포머와 딥 러닝의 적용

by 호외요! 2023. 7. 5.
반응형

자연어 처리(NLP)는 컴퓨터가 인간의 언어를 이해하고 생성하는 분야로, 대화형 챗봇, 번역, 감성 분석 등 다양한 응용 프로그램에 활용된다.

컴퓨터와 인간 사이의 상호작용을 개선하는 역할로 빠르게 발전하고 있는 자연어 처리의 개요와 작업내용, 적용 모델들을 살펴본다.

 

인공지능(AI) 자연어 처리(NLP) 개요와 사용모델, 트랜스포머와 딥 러닝

     

    자연어 처리(NLP)의 개요


    NLP(Natural Language Processing)

    자연어 처리(NLP)는 인공 지능(AI)과 언어학을 결합하여 컴퓨터가 인간의 언어를 이해, 해석 및 생성할 수 있도록 하는 연구 분야로 NLP에는 인간 언어와 컴퓨터 이해 간의 격차를 해소하는 것을 목표로 하는 광범위한 작업과 기술이 포함된다.

    일반적인 자연어 처리분야의 하위분류로는 다음과 같은 작업들이 속한다.


    1) 정보검색(Information Retrieval)

    구글, 빙, 네이버 등 검색 엔진을 만드는 학문으로, 넓은 의미로는 수많은 문서 중에서 유저가 원하는 문서를 빠른 속도로 찾아내는 과정을 말한다.


    2) 음성인식(Speech Recognition)

    컴퓨터가 인간의 음성 언어를 이해하게 만드는 학문으로 음성을 인식하고 문자로 표현하는 Speech-to-text (STT)까지 포함한다.


    3) 텍스트 분류

    스팸 탐지 또는 감정 분석(텍스트가 긍정적 또는 부정적인 감정을 표현하는지 여부 결정)과 같은 사전 정의된 범주 또는 클래스로 텍스트를 분류한다.


    4) 명명된 엔터티 인식(NER)

    사람, 조직, 위치 또는 날짜의 이름과 같은 텍스트에서 특정 명명된 엔터티를 식별하고 추출한다.


    5) 감정 분석

    긍정적, 부정적 또는 중립적일 수 있는 텍스트 조각에 표현된 감정 또는 의견을 판별한다.


    6) 정보 추출

    뉴스 기사에서 이름과 날짜를 추출하는 것과 같이 구조화되지 않은 텍스트에서 구조화된 정보를 추출한다.


    7) 자동대화시스템(Dialogue System)

    사용자가 입력한 문장에 대해 컴퓨터가 자동으로 가장 적합한 문장을 생성하여 사용자와 대화하는 시뮬레이션을 연구한다.(음성으로 입력하고 음성으로 대답하는 것을 포함)

    오픈 AI의 챗 GPT, 마이크로소프트의 BING, 구글의 BARD 등이 여기에 속한다. 유저의 의도를 파악하는 것이 관건이고 감정 분석과 의미역 결정 과정이 전처리 과정으로 사용된다. 학습에는 주로 HMM기반 머신 러닝(기계학습) 방법론이 사용된다.


    8) 기계 번역

    영어를 프랑스어나 독일어 등 다른 언어로 번역하는 것과 같이 텍스트를 한 언어에서 다른 언어로 자동 번역하는 분야이다.

    언어 문화권에 따라 상당한 이질성을 보이는 언어의 번역은 복잡한 과정이며 여러 한계를 내포하고 있다. 최근에는 이미지와 텍스트를 등 서로 다른 종류의 데이터를 취합하여 학습하는 기계학습 기법인 멀티 모달 러닝(Multi-Modal Learning)이라는 뉴럴 기계 번역 방법론이 기계 번역 분야의 새로운 방향으로 급부상하고 있다.

    기계 번역 방법론은 규칙/패턴 기반 방법론, 예시/검색 기반 방법론, 통계 기반 방법론, 인공신경망 기반 방법론 등으로 새로운 시도가 나타나고 있다.

    그중 인공 신경망 기반 방법론은 딥 러닝(심층학습) 덕에 빠르게 연구 중인 방법론으로, 시퀀스를 처리하기 용이한 순환 신경망 (RNN)이 사용되며 소스언어를 처리하는 인코더와 타겟언어를 생성하는 디코더로 구성되어 있다. 번역하고 표현하는 성능은 우수하지만 인공 신경망의 학습 처리를 위해서는 대용량의 GPU서버가 필요하다.

    자연어_처리_과정
    자연어 처리 과정

    Freepik, CC BY-SA 4.0, via Wikimedia Commons

     

    자연어 처리(NLP) 모델


    수년에 걸쳐 개발된 여러 자연어 처리(NLP) 모델은 각각 고유한 강점과 특징이 있으며, 모델 선택은 당면한 특정 작업과 사용 가능한 리소스에 따라 다르다.


    Bag-of-Words(BoW)

    문법과 단어 순서를 무시하고 텍스트를 개별 단어의 모음으로 나타내는 기본 모델이다. 각 차원이 고유한 단어를 나타내고 값이 텍스트에서 단어의 빈도 또는 존재를 나타내는 텍스트의 희소 벡터 표현을 만든다.


    Word2 Vec

    Word2 Vec은 연속 벡터 공간에서 밀집된 벡터 표현으로 단어를 표현하는 인기 있는 단어 임베딩 모델이다. 단어 사이의 의미론적 관계를 포착하고 신경망을 사용하여 대량의 텍스트 데이터에 대해 학습한다.


    순환 신경망(RNN)

    RNN은 NLP에서 시퀀스 모델링 작업에 일반적으로 사용되는 일종의 신경망 아키텍처로, 시간 단계에 걸쳐 정보가 지속되도록 하는 반복 연결이 있어, 언어 모델링과 텍스트 분류 및 기계 번역과 같은 작업에 적합하다.


    LSTM (Long Short-Term Memory)

    LSTM은 기울기 소실 문제를 해결하는 RNN의 변형으로, 모델이 입력 시퀀스에서 장기 종속성을 캡처할 수 있도록 한다. LSTM은 감정 분석, 명명된 엔터티 인식 및 언어 생성과 같은 다양한 자연어 처리 작업에서 성공적이었다.


    트랜스포머(인공신경망)

    Transformer 모델은 어텐션 메커니즘을 도입하여 보다 효율적인 방식으로 단어 간의 종속성을 캡처할 수 있다. 많은 자연어 처리 작업, 특히 기계 번역 및 언어 이해 작업에서 최첨단 성능을 달성했다. 주목할 만한 트랜스포머 기반 모델에는 BERT 및 GPT-3가 있다.

    - BERT(Bidirectional Encoder Representations from Transformers)
    구글에서 개발한 자연 언어 처리 모델로, 트랜스포머 구조에 인코더를 여러 층 더한 모델이다.

    - GPT-3(Generative Pre-trained Transformer 3)

    GPT-3는 OpenAI에서 개발한 가장 큰 언어 모델 중 하나입니다. 1,750억 개의 매개변수가 있으며 방대한 양의 텍스트 데이터에 대해 사전 학습된다. GPT-3는 인상적인 언어 생성 기능을 보여주며 텍스트 완성, 요약 및 질문 답변을 포함한 다양한 자연어 처리작업을 수행할 수 있다.



    마치며


    자연어 처리(NLP)
    알고리즘 및 모델은 기계 학습 기술, 통계 모델 및 언어 규칙의 조합을 사용하여 구축된다. 자연어 처리과정은 패턴을 학습하고 보이지 않는 새로운 데이터로 일반화하기 위해 주석이 달려 있거나 레이블이 지정된 텍스트의 대규모 데이터 세트에 의존한다.

    순환 신경망(RNN) 및 변환기와 같은 딥 러닝 아키텍처는 최근 몇 년 동안 많은 자연어 처리 작업을 혁신하여 보다 발전된 언어 이해 및 생성을 가능하게 했다. NLP는 고객 서비스 챗봇, 가상 비서, 정보 검색 시스템, 소셜 미디어 모니터링을 위한 감정 분석, 언어 번역 서비스 등 다양한 도메인에서 많은 애플리케이션을 생성하고 점차 활용도를 넓혀가고 있다.

    자연어 처리(NLP)에 대한 연구와 발전이 계속됨에 따라, 컴퓨터와 인간 간의 자연스러운 대화 및 컴퓨터의 인간과 유사한 상호 작용이 더욱 실현 가능해지며 인공지능(AI)의 시대를 견인하고 있다.

    반응형

    댓글