brunch

You can make anything
by writing

C.S.Lewis

by 서진호 Feb 05. 2020

텍스트 생성을 위한 제어가능한 효율적 접근

2020년 1월 31일(금) 구글 AI 리서치 블로그

Sequence-to-Sequence(seq2 seq) 모델들은 기계 번역 분야에 혁명을 가져왔으며, 요약(summarization), 문장 융합(sentence fusion) 및 문법 오류 수정과 같은 다양한 텍스트 생성 작업을 위한 선택 도구가 되었습니다. 모델 아키텍처(예 : Transformer)의 개선과 비지도 사전훈련(unsupervised pre-training)을 통해 주석이 없는 큰 텍스트의 집대성을 활용하는 기능은 최근 몇 년 동안 본 신경망 접근 방식의 품질 향상을 가능하게 했습니다.


그러나 텍스트 생성을 위한 seq2seq 모델의 사용은 input 텍스트(hallucination이라고 알려짐)에서 지원하지 않는 output 생성 및 좋은 성능을 내기 위한 많은 양의 훈련 데이터에 도달하는 것과 같은 사용 사례들에 따라 많은 실질적인 단점이 발생할 수 있습니다. 또한 seq2seq 모델은 일반적으로 출력별 단어 단위를 생성하므로 추론 시간(inference time)이 본질적으로 느립니다.


“Encode, Tag and Realize: High-Precision Text Editing” 논문에서, 우리는 텍스트 생성을 위한 새로운 오픈 소스 메서드를 제시합니다. 이 방법은 이러한 세 가지 단점을 구체적으로 해결하도록 설계되었습니다. LaserTagger라고 부르는 이 메서드는 속도와 정확성 때문에 그렇게 부릅니다. 처음부터 출력 텍스트를 생성하는 대신 LaserTagger는 예측된 편집 작업으로 단어에 태그를 지정하여 output을 생성한 다음 별도의 realization step에서 input 단어들을 적용합니다. 이 방법은 오류 발생이 적은 텍스트 생성 방식으로, 학습하기 쉽고 모델 아키텍처를 더 빠르게 실행하여 처리할 수 있습니다.


LaserTagger의 설계 및 기능

많은 텍스트-생성 작업들의 구분할 수 있는 특징은 input과 output 간에 겹치는 부분이 많다는 것입니다. 예를 들어, 문법적 실수를 감지하고 수정하거나 문장을 융합할 때 입력 텍스트의 대부분은 변경되지 않고 단어들의 일부만 수정하면 됩니다. 이러한 이유로 LaserTagger는 실제 단어 대신 일련의 편집 작업을 생성합니다. 우리가 사용하는 네 가지 유형의 편집 작업은 유지 (단어를 출력에 복사), 삭제(단어를 제거) 및 Keep-AddX/Delete-AddX(태그 된 단어 앞에 문구 X를 추가하고 선택적으로 태그가 있는 단어를 삭제)입니다. 이 프로세스는 아래 그림에 설명되어 있으며, 문장 융합에 LaserTagger를 적용한 것을 보여줍니다.


[그림 1]

[그림 1] 상세 설명 - 문장 융합에 LaserTagger가 적용되었습니다. 예측된 편집 작업은 "삭제에 해당합니다 ". Turing"을 입력하고 그 앞에 "and he"를 추가하십시오. input 텍스트와 output 텍스트가 크게 겹칩니다.


추가된 모든 문구는 제한된 어휘에서 나옵니다. 이 어휘는 (1) 어휘 크기를 최소화하고 (2) 대상 텍스트에 추가하는 데 필요한 단어만 어휘에서만 나오는 학습 예제 수를 최대화하는 최적화 프로세스의 결과입니다. 제한된 어휘를 사용하면 output 결정의 공간이 작고 모델이 임의의 단어를 추가하는 것을 방지하여 hallucination 문제를 완화할 수 있습니다. 입력 및 출력 텍스트의 높은 오버랩 속성에 대한 결과는 필요한 수정이 로컬에서 독립적인 경향이 있다는 것입니다. 즉, 편집 작업을 높은 정확도로 병렬로 예측할 수 있어 이전 회귀 예측에 따라 순차적으로 예측을 수행하는 autogressive seq2seq 모델에 비해 엔드-투-엔드 속도가 크게 향상됩니다.


결과

우리는 문장 융합, 분할 및 구문 변경, 발췌 요약 및 문법 수정의 네 가지 작업에 대해 LaserTagger를 평가했습니다. 작업 전반에 걸쳐 LaserTagger는 많은 수의 훈련 예제를 사용하는 강력한 BERT기반 seq2seq 기준과 비슷한 성능을 발휘하며, 훈련 예제 수가 제한될 때 이 기준을 분명히 능가합니다. 아래에서는 WikiSplit 데이터셋에 대한 결과를 보여줍니다. 여기서 작업은 긴 문장을 두 개의 일관된 짧은 문장으로 바꾸는 것입니다.


[그림 2]

[그림 2] 상세 설명 - 백만 개의 예에 대한 전체 데이터셋에서 모델을 훈련할 때 LaserTagger와 BERT기반 seq2seq baseline 모델은 모두 비슷한 성능을 발휘하지만 10,000개 이하의 부 샘플에 대해 훈련할 때 LaserTagger는 기준 모델보다 분명히 성능이 뛰어납니다 (SARI score가 높을수록 더 좋음).



LaserTagger의 주요 장점

기존 seq2seq 방법과 비교하여 LaserTagger는 다음과 같은 장점이 있습니다.


제어: 수동으로 편집하거나 큐레이트 할 수 있는 출력 문구 어휘를 제어함으로써 LaserTagger는 seq2seq baseline보다 hallucination에 덜 민감합니다.

추론 속도: LaserTagger는 seq2seq baseline보다 최대 100배 빠른 예측을 계산하여 실시간 응용 프로그램에 적합합니다.

데이터 효율성: LaserTagger는 수백 또는 수천 건의 훈련 예제만 사용하여 훈련하더라도 합리적인 출력을 생성합니다. 우리의 실험들에서, competitive seq2seq baseline은 비슷한 성능을 얻기 위해 수만 개의 예제들이 필요했습니다.


이것이 중요한 이유

응답 길이를 줄이고 반복 횟수를 줄임으로써 일부 서비스에서 음성 응답의 공식화를 향상하는 것들과 같이, LaserTagger의 장점은 대규모로 적용할 때 더욱 두드러집니다. 높은 추론 속도를 통해 사용자 측에서 눈에 띄는 지연 시간을 추가하지 않고도 모델을 기존 기술 스택에 연결할 수 있으며, 향상된 데이터 효율성으로 여러 언어에 대한 교육 데이터를 수집할 수 있으므로 다른 언어 배경의 사용자에게 도움이 됩니다.


현재 진행 중인 작업에서 자연어를 생성하는 다른 Google 기술과 유사한 개선 사항을 제공하기 위해 노력하고 있습니다. 또한 텍스트를 처음부터 새로 작성하는 대신 텍스트를 편집하면 사용자 쿼리가 길어지고 복잡해지고 대화 대화의 일부로 제공될 때 사용자 쿼리를 더 잘 이해하는 데 도움이 되는 방법을 모색하고 있습니다. LaserTagger의 코드는 GitHub repo를 통해 커뮤니티에 공개 소스로 제공됩니다.


감사의 말

이 연구는 Eric Malmi, Sebastian Krause, Sascha Rothe, Daniil Mirylenka 및 Aliaksei Severyn이 수행했습니다. Enrique Alfonseca, Idan Szpektor 및 Orgad Keller와의 유용한 토론에 감사드립니다.


게시자 : Eric Malmi와 Sebastian Research, Google Research 소프트웨어 엔지니어
lasertagger: https://github.com/google-research/lasertagger


원본 제목: 인코딩, 태그 및 실현 : 텍스트 생성을 위한 제어 가능하고 효율적인 접근(Encode, Tag and Realize: A Controllable and Efficient Approach for Text Generation)
원본 링크: https://ai.googleblog.com/2020/01/encode-tag-and-realize-controllable-and.html
이 블로그는 2020년 1월 31일(금), Google AI Research Blog 기사를 영어에서 우리나라 말로 번역한 것입니다. 또한 이 번역 글은 정보 공유 목적으로만 작성했으므로 어떠한 상업용으로 사용할 수 없으며, 원본 저작물 모두 구글에게 저작권이 있음을 알려 드립니다. (First Draft Version)
매거진의 이전글 무슨 대화든 할 수 있는 에이전트를 향하여

작품 선택

키워드 선택 0 / 3 0

댓글여부

afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari