본문 바로가기
프로그래밍/김기현의 딥러닝을 활용한 자연어처리 입문과정

RNN이 쓰이는 어플리케이션(분야)은 어떤게 있을까?

by 노마드데이터랩 2020. 7. 3.
728x90
반응형

우선 RNN의 입력과 출력에 따른 모델을 한번 살펴보자.

다대일, 일대다, 다대다인 경우 RNN 모델

입력이 여러개이고 출력이 한개인 경우(Many to One), 텍스트 분류에 쓰인다고 한다. 즉, 이 텍스트가 뉴스 카테고리인지 연예 카테고리인지 자기계발인지 하는 텍스트가 속한 카테고리를 정해주는 것이라고 생각하시면 될 것 같다. 최종 출력만 필요하고 나머지 이전의 출력값은 다 버린다.

일대다(One to Many)의 모델의 경우에는 NLG와 Machine Translation이 있다. NLG는 Natural Language Generation 즉, 자연어 생성을 뜻한다. 예를 들어 '나는 멍멍이와 뛰고 싶다'라는 문장이 있을 때 '나는'이라는 단어를 입력하면 뒤에 '멍멍이와'라는 단어가 생성되고, 그 '멍멍이와'라는 출력이 다시 입력으로 들어가면 '뛰고'라는 단어가 생성되고. '뛰고'라는 단어가 또 입력으로 들어가면 '싶다'라는 단어가 생성되는 것을 말한다.

Machine Translation은 기계 번역이다. 기계 번역의 경우, 우리가 흔히 쓰는 구글 번역기. 네이버의 파파고 등을 떠올리면 쉽겠다. 내가 '나는 소년이다'라는 문장을 입력했을 경우, 영어로 번역을 원했을 때 출력이 'I am a boy'라는 결과로 나타나는 것을 Machine Translation의 한 예로 보면 되겠다.

다대다(Many to Many)의 경우 POS Tagging, MRC 등의 분야가 있다고 한다. POS Tagging의 경우에는 Part of Speech. 즉 한국어의 경우에는 형태소 단위로 분리하는 것이라고 보면 될 것 같다. 이 때도 문장이 들어가면 각각에 대한 출력이 나오게 된다. 자세한 건 POS Tagging을 검색해보시면 쉽게 이해하실 수 있을 것이다.

각각의 모델은 다음과 같다.

Many to Many(POS Tagging)
Many to One(Text Classification)
One to Many(Natural Language Generation)
One to Many(Machine Translation)

728x90
반응형

댓글