์ธ๊ณต์ง๋ฅ
์ ์์ด ์์ฑ์ ์ํ ๋ฅ ๊ฐํ ํ์ต – ์ฌ๊ณ ์ง๋์

글을 쓰거나 말할 때 우리는 모두 더好的 방법으로 아이디어를 다른 사람에게 전달할 수 있는지 궁금해합니다. 어떤 단어를 사용해야 합니까? 생각을 어떻게 구조화해야 합니까? 그들은 어떻게 반응할까요? Phrasee에서 우리는 언어에 대해 많은 시간을 생각합니다. 무엇이 작동하고 무엇이 작동하지 않습니까?
10백만 명의 목록에 있는 사람들에게 보내지는 이메일 캠페인에 대한 제목 줄을 작성한다고 상상해 보세요. 새 랩톱에 20% 할인됩니다.
どちら의 줄을 선택하시겠습니까?
- 다음 주문에서 추가 20% 할인
- 준비되세요 – 추가 20% 할인
同じ 정보를 전달하지만 하나는 다른 하나보다 거의 15% 더 높은 열기率를 달성했습니다 (そして私は 우리의 모델이 어느 하나를 예측하는 데 실패할 수 없다고 생각합니다). 언어는 종종 A/B 테스트 또는 다중 무기 밴딧을 통해 테스트될 수 있지만 자동으로 유의어를 생성하는 것은 여전히 매우 어려운 연구 문제입니다.
두 문장이 서로의 유의어로 간주되면 동일한 의미를 공유하며 상호 교환 가능합니다. 또 다른 중요한 것은 기계가 생성한 문장이 유창한지 여부입니다.
감독 학습과는 달리 강화 학습(RL) 에이전트는 환경과 상호 작용하고 결과로 받은 보상을 관찰하여 학습합니다. 이 차이에는 알고리즘이 작동하고 모델이 훈련되는 방식에 대한重大한 의미가 있습니다. 딥 강화 학습은 에이전트가 고, 아타리, 스타크래프트 II와 같은 복잡한 환경에서 인간을 능가하는 방법을 배우는 데 신경망을 함수 근사자로 사용합니다.
이러한 성공에도 불구하고 강화 학습은 자연어 처리(NLP)를 포함한 실제 문제에 널리 적용되지 않았습니다.
제 데이터 과학 석사 학위 논문의 일부로 우리는 딥 RL을 사용하여 입력 텍스트의 자동 유의어 생성에서 감독 학습 방법을 능가하는 방법을 보여줍니다. 최상의 유의어를 생성하는 문제는 유창성을 유지하면서 문장 사이의 의미적 유사성을 최대화하는 단어 시퀀스를 찾는 것으로 볼 수 있습니다. RL 에이전트는 제어 환경에서 최대 예상 보상을 얻는 최상의 동작 세트를 찾는 데 적합합니다.
대조적으로 대부분의 기계 학습 문제에서 가장 큰 문제는 모델링에ではなく 평가에 있습니다. 현재 인간 평가가 NLG 평가의 금본으로 간주되고 있지만 비용이 많이 들고 시간이 많이 걸리고 조정하기 어렵고 실험 및 데이터셋 전체에서 재현성이 부족한重大한 단점이 있습니다 (Han, 2016). 따라서 연구자들은 인간의 판단을 반영하는 자동 메트릭을 찾기 위해 오랫동안 노력해 왔습니다 (Papineni et al., 2002).
기계 생성 이미지 캡션을 평가하는 가장 일반적인 자동 평가 방법은 다음과 같이 요약되며 각 방법의 장단점이 설명되어 있습니다.

강화 학습을 사용한 유의어 생성 파이프라인
우리는 높은 품질의 유의어를 생성하는 시스템인 ParaPhrasee를 개발했습니다. 시스템은 컴퓨터적으로 효율적인 방식으로 강화 학습을 적용하기 위해 여러 단계로 구성됩니다. 높은 수준의 파이프라인에 대한 간단한 요약은 아래에 나열되어 있으며 자세한 내용은 학위 논문에 있습니다.

데이터셋
연구에 사용되는 여러 유의어 데이터셋이 있습니다. Microsoft Paraphrase corpus, ACL의 의미적 텍스트 유사성 대회, Quora 중복 질문, 트위터 공유 링크 등이 있습니다. 우리는 크기, 깨끗함, 두 개의 유의어 생성 논문에서 벤치마크로 사용된 MS-COCO를 선택했습니다. MS-COCO에는 5개의 인간 주석자가 제공한 5개의 이미지 캡션과 함께 일반적인 장면이 포함된 120k개의 이미지로 구성됩니다.
컴퓨터 비전 연구를 위해 주로 설계되었지만 캡션은 높은 의미적 유사성을 가지고 있으며 흥미로운 유의어입니다. 이미지 캡션이 다른 사람들에 의해 제공되므로 세부 정보에 약간의 차이가 있으며 생성된 문장은 세부 정보를 상상합니다.

감독 모델
강화 학습은 샘플 효율성, 훈련 시간, 전체 최고의 관행 측면에서 크게 개선되었습니다. 그러나 RL 모델을 처음부터 훈련하는 것은 여전히 비교적 매우 느리고 불안정합니다 (Arulkumaran et al., 2017). 따라서 처음부터 훈련하는 대신에 우리는 먼저 감독 모델을 훈련하고然后 이를 RL을 사용하여 미세 조정합니다.
우리는 인코더-디코더 모델 프레임워크를 사용하고 여러 감독 모델의 성능을 평가합니다. RL을 사용하여 모델을 미세 조정할 때 우리는 디코더 네트워크만 미세 조정하고 인코더 네트워크를 정적으로 처리합니다. 따라서 우리는 두 가지 주요 프레임워크를 고려합니다:
- GRU를 사용하는 표준/바닐라 인코더-디코더와 함께 감독 모델을 처음부터 훈련
- 인코더에 대해 사전 훈련된 문장 임베딩 모델을 사용하는 것: GloVe, InferSent, BERT
감독 모델은 모델 간에 비교적 유사하게 수행되며 BERT와 바닐라 인코더-디코더가 최고의 성능을 달성합니다.

성능은 합리적이지만 세 가지 일반적인 오류源이 있습니다. 스텀블링, 문장 단편 생성, 상상입니다. 이것들이 RL을 사용하여 해결하려고 하는 주요 문제입니다.

강화 학습 모델
RL 알고리즘을 구현하는 것은 매우 어렵습니다. 특히 문제가 해결될 수 있는지 여부를 모를 때 더욱 어렵습니다. 환경, 에이전트, 하이퍼파라미터, 보상 함수 또는 모든 것의 구현에 문제가 있을 수 있습니다. 이러한 문제는 딥 RL을 수행할 때 신경망을 디버깅하는 재미를 추가로 제공하면서 악화됩니다.
모든 디버깅과 마찬가지로 간단하게 시작하는 것이 중요합니다. 우리는 RL 알고리즘을 테스트하고 감독 모델에서 지식을 전달하기 위한 반복 가능한 전략을 찾기 위해 CartPole 및 FrozenLake와 같은 두 가지 잘 이해된 玩具 RL 환경의 변형을 구현했습니다.
우리는 Actor-Critic 알고리즘이 이러한 환경에서 REINFORCE를 능가하는 것을 발견했습니다. 감독 모델에서 지식을 Actor-Critic 모델로 전달하는 경우에 대해 우리는 Actor의 가중치를 훈련된 감독 모델로 초기화하고 Critic을 사전 훈련함으로써 최고의 성능을 달성했습니다. 우리는 새로운 환경에 정교한 정책 증류 접근 방식을 일반화하는 것이 어려웠습니다. 이는 많은 새로운 하이퍼파라미터를 도입하기 때문입니다.
이러한 통찰력을 바탕으로 우리는 유의어 생성 작업에 대한 접근 방식을 개발하도록 전환했습니다. 먼저 환경을 생성해야 합니다.

환경을 통해 우리는 쉽게 다른 평가 메트릭을 보상 함수로 사용하는 영향을 테스트할 수 있습니다.
그런 다음 에이전트를 정의합니다. 여러 가지 장점이 있으므로 Actor-Critic 아키텍처를 사용합니다. Actor는 시퀀스의 다음 단어를 선택하는 데 사용되며 가중치는 감독 모델을 사용하여 초기화됩니다. Critic은 Actor가 학습하는 데 도움이 되도록 상태가 받을 것으로 예상되는 보상의 추정치를 제공합니다.
올바른 보상 함수 설계
RL 시스템을 설계하는 가장 중요한 구성 요소는 보상 함수입니다. 이는 RL 에이전트가 최적화하려고 하는 것입니다. 보상 함수가 잘못되면 결과가 손상됩니다. 즉, 시스템의 다른 모든 부분이 작동하더라도 그렇습니다.
클래식 예는 CoastRunners입니다. 여기서 OpenAI 연구원들은 보상을 총 점수를 최대화하는 것으로 설정했습니다. 경주를 이기는 것이 아니라 터보를 칠 때 얻을 수 있는 최고의 점수를 얻는 것입니다.
https://www.youtube.com/watch?time_continue=2&v=tlOIHko8ySg&feature=emb_title
유의어의 품질을 평가하는 것이 자체적으로 해결되지 않은 문제이기 때문에 이 목표를 자동으로 캡처하는 보상 함수를 설계하는 것은 더 어렵습니다. 언어의 대부분의 측면은 선형 메트릭으로 잘 분해되지 않으며 작업에 따라 다릅니다 (Novikova et al., 2017).
RL 에이전트는 평가 메트릭의 약점을 이용하여 보상을 최대화하는 흥미로운 전략을 종종 발견합니다. 이는 높은 품질의 텍스트를 생성하는 대신 평가 메트릭을 최적화하지 않는 경우 성능이 좋지 않게 됩니다.
우리는 세 가지 주요 접근 방식을 고려합니다:
- 단어 중복 메트릭
공통의 NLP 평가 메트릭은 생성된 유의어와 평가 문장 사이의 단어 중복의 비율을 고려합니다. 중복이 많을수록 보상이 많습니다. 단어 수준 접근 방식의 문제는 에이전트가 “a”, “is”, “on”, “of”와 같은 연결 단어가 너무 많고 유창성에 대한 측정이 없다는 것입니다. 이는 매우 낮은 품질의 유의어를 생성합니다.

- 문장 수준 유사성 및 유창성 메트릭
생성된 유의어의 주요 속성은 유창해야 하며 입력 문장과 의미적으로 유사해야 한다는 것입니다. 따라서 우리는 이러한 것을 개별적으로 평가한 다음 메트릭을 결합하려고 합니다. 의미적 유사성에 대해서는 BERT를 포함한 사전 훈련된 모델의 문장 임베딩 사이의 코사인 유사성을 사용합니다. 유창성에 대해서는 GPT-2의 문장의 복잡성을 기반으로 하는 점수를 사용합니다. 코사인 유사성과 유창성 점수가 클수록 보상이 큽니다.
우리는 여러 가지 문장 임베딩 모델과 유창성 모델의 조합을 시도했으며 성능은 합리적이지만 에이전트가 직면한 주요 문제는 의미적 유사성과 유창성을ufficiently 균형 있게 조정하지 못하는 것이었습니다. 대부분의 구성에서 에이전트는 유창성을 우선시하여 세부 사항을 제거하고 대부분의 개체를 “중간에” 또는 “테이블 위에” 또는 “길가에” 이동했습니다.
다중 목표 강화 학습은 여전히 열린 연구 문제이며 이 경우 매우 어렵습니다.

- 적대적 모델을 보상 함수로 사용
인간이 평가의 금본으로 간주되므로 우리는 두 문장이 서로의 유의어인지 여부를 예측하는 별도의 모델인 판별기를 훈련합니다(인간이 평가하는 방식과 유사합니다). RL 모델의 목표는 이 모델을 속여 입력 문장의 유의어인 것처럼 보이게 하는 것입니다. 판별기는 두 문장이 서로의 유의어일 가능성이 있는지에 대한 점수를 생성하며 이를 사용하여 에이전트를 훈련하는 보상으로 사용합니다.
판별기는 5,000개의 추측마다 어느 유의어가 데이터셋에서 왔는지, 어느 것이 생성되었는지를 알 수 있도록 하여 미래의 추측을 개선할 수 있습니다. 이 과정은 에이전트가 판별기를 속이려고 하고 판별기가 생성된 유의어와 데이터셋의 평가 유의어를 구별하려고 하는 여러 라운드로 계속됩니다.
수많은 라운드의 훈련 후에 에이전트는 감독 모델과 다른 보상 함수를 능가하는 유의어를 생성합니다.

결론 및 제한
적대적 접근 방식(게임을 위한 셀프 플레이 포함)은 명시적인 보상 함수를 정의하지 않고도 특정 작업에서 인간의 수준을 초과하는 RL 알고리즘을 훈련하는 데非常한 약속을 보여줍니다.
RL이 이 경우 감독 학습을 능가했지만 대부분의 응용 프로그램에서는 성능 개선에 대한 추가 오버헤드가 코드, 계산, 복잡성 측면에서 가치가 없습니다. RL은 감독 학습을 쉽게 적용할 수 없으며 보상 함수를 쉽게 정의할 수 있는 상황에 가장 적합합니다(예: 아타리 게임). 접근 방식과 알고리즘은 감독 학습에서 훨씬 더 성숙하며 오류 신호가 훨씬 더 강력하여 훈련이 훨씬 더 빠르고 안정적입니다.
또 다른 고려 사항은 신경망 접근 방식과 마찬가지로 에이전트가 이전에 본 입력과 다른 입력에서 극적으로 실패할 수 있다는 것입니다. 이는 프로덕션 응용 프로그램에 추가적인 정상성 검사를 필요로 합니다.
최근 몇 년 동안 RL 접근 방식에 대한 관심과 계산 인프라의 발전은 특히 NLP 내에서 산업에서 RL을 적용할 수 있는巨大的 기회를 열어줄 것입니다.












