NLP 인공지능 연구자들과의 대화를 위한 얕은 정리

최근 인공지능(AI)의 자연어처리(NLP) 성능이 비약적으로 향상됐다. 명료하게 떨어지지 않는 일상언어와 현실에 더 잘 적응하게 됐다는 뜻이다. 이런 실용적인 자연어처리 AI 기술이 제품화되면서 일반인들이 이를 경험할 기회도 많아졌다. 이는 자연어처리 AI가 앞으로 디지털·물리적 사물을 다루는 중요한 수단으로 확산될 것이라는 기대를 품게 한다.

IT분야 취재기자로서 연구자들과의 대화를 위한 교양지식 쌓기가 시급해졌다. 매일 경제효과가 얼마고 시장이 규모가 얼마고 관련 기업이 얼마를 벌고 종사자가 몇 명이고 이런 얘기에는 그다지 재미와 감동이 없기 때문이다. 학계와 연구계의 난제를 해결하기 위해 인생을 걸고 있는 연구자들에게 그게 얼마짜리냐고 묻는 것은 때로는 실례가 되기도 하고. 어지간하면 좀 다른 차원에서 뉴스거리가 되는, 할 만한 얘기가 되는 소재를 찾아야지 않겠나 싶다.

다만 그러기에는 아직 내 언어모델과 자연어처리 분야에 대한 관심이 너무 얕고 이해 수준도 낮은 수준이다. 일단 이런저런 용어의 의미를 정리해 보고 그 관계들을 연결짓기에 도움이 되도록 공부할 필요가 있다. 알아 둬야 할 키워드를 목록으로 정리해 이 아래를 채워 나가기로 한다. 지금의 내가 소프트웨어, 사이버보안, 데이터센터 인프라 쪽 관련 취재를 할 수 있는 수준만큼만 이 세계에 익숙해 진다면 대략 성공이다.

-자연어처리(NLP·natural language processing) : 사람의 일상언어인 자연어(natural language)를 컴퓨터가 처리할 수 있게 하는 일. 디지털 텍스트 자료를 분류, 요약, 번역하거나 정보를 추론, 재구성하거나, 주어진 단서나 조건에 맞는 새로운 문장이나 글을 지어내는 것 등을 포함한다.
[참조] 딥 러닝을 이용한 자연어 처리 입문
https://wikidocs.net/21690

-언어모델(language model)
단어 시퀀스에 확률을 할당하는 일을 하는 모델. 가장 확률이 높은 단어 시퀀스를 찾아내는 모델.
단방향 모델과 양방향 모델 존재. 단방향 모델은 앞에 주어진 단어로 뒤에 올 단어를 예측하는 순방향 모델과 뒤의 단어로 앞에 올 단어를 예측하는 역방향 모델. 양방향 모델은 주어진 공백의 앞과 뒤에 있는 단어로 공백에 올 단어를 예측하는 모델.
[참조] 1) 언어 모델(Language Model)이란?
https://wikidocs.net/21668

-사전학습(pre-training)과 태스크 특화학습·최적화(fine-tuning)

-매개변수·파라미터(parameter)

-단어집합·사전(vocabulary)
사전이라고 표현하는 경우가 있는데 사전에 대응하는 한국어는 dictionary이고 모델의 단어목록을 dictionary라고 하지는 않는 것 같음. 개념상 어휘집이 더 적절하지 않은가 싶음. 특히 중복이 없는 단어들의 집합을 의미함.

-토큰화(tokenization)
언어 데이터를 훈련과 추론에 효율적인 덩어리(토큰)로 만드는 절차.

-시퀀스(sequence)
모델에 입력하는 데이터 가운데 시작과 끝, 순서가 있는 유형.

-트랜스포머(transformer)
현대적인 딥러닝 모델 연구를 가능하게 한 구글 AI 연구진들이 고안한 알고리즘 또는 그 원형을 응용해 만든 모델.

-인코더(encorder)와 디코더(decorder)
트랜스포머와 그 이전 알고리즘을 사용하는 NLP 모델에 쓰인 데이터 처리 구조. 더 많은 하위 구성요소를 포함하고 있다. 인코더는 입력받은 시퀀스를 하나의 벡터 데이터로 만들어 디코더로 보낸다. 디코더는 전달받은 벡터 데이터를 다른 시퀀스로 만들어 출력한다.

-버트(BERT·Bidirectional Encoder Representations from Transformers)

-생성형 사전훈련 트랜스포머(GPT·Generative Pre-trained Transformer)

201011 최초 작성. 240209 보충.