NL-043, Delete, Retrieve, Generate: A Simple Approach to Sentiment and Style Transfer (2018-NAACL)

Tencent + stanford에서 나온 논문인데 Tencent 논문은 처음 읽어보는 듯

0. Abstract

  • 이 논문은 text 속성을 transfer을 하는 연구이다.
    • ex) Screen is just the right size → Screen is too small
  • 학습 데이터는 (이전 연구들과 같이) non-parallel 데이터이다.
    • 따라서 disentangle attribute을 학습한다.
    • 즉 attribute에 independent한 content을 unsupervised way로 학습을 한다.
  • 이전 연구는 adversarial method을 사용하였다.
    • 이 논문에서는 문장의 속성과 관련있는 content words을 extract을 하여 deleting phrase 한다.
    • 그 다음 Target 속성과 관련있는 retrieve new phrase을 한다.
  • 모델의 성능은 이전 연구들보다 좋아지는데...
    • Human evaluation이 previous system보다 22% 향상
  • Transfer datasets은 3가지가 있다.
    • Sentiment of review on Yelp
    • Sentiment of reviews on Amazon
    • Image captions to be more romantic or humorous

1. Introduction

  • NLG는 "발화의 topic"뿐만 아니라 "attribute, style"도 잘 컨트롤하는 능력에 의존적이다.
  • 정교한 NLG를 위해 text 속성을 바꾸는 연구가 진행되는데, style, sentiment, tense을 바꾸는 연구로 다음과 같이 있다.
    • Hu et al., 2017 (Toward controlled generation of text, ICML)
    • Shen et al., 2017 (Style transfer from non-parallel text by cross alignment, NIPS)
    • Fu et al., 2018 (Style transfer in text: Exploration and evaluation, AAAI)
  • 각각의 경우 목표는 문장의 속성(예. 부정)을 다른 속성(예. 긍정)으로 바꾸는 것이다.
    • 이 때 속성에 independent한 content을 보존해야 한다.
    • 이 논문은 Multiple-attribute (NL-035) 이전의 논문이기 때문에 content preserving을 필수로 한다고 말을 하는 듯
  • 즉 모델이 하려는건 unaligned 문장들로부터 disentangle attribute and content을 해야한다.
    • 왜냐하면 일반적으론 parallel data가 주어지지 않으니깐,,
  • 이전의 연구에서 adversarial networks을 사용한 시도(Shen, Fu)은 사람이 평가하기에 수준이 낮은 경향을 보여줘서 여기서는 다른 방식으로 학습을 한다.
  • 이 연구에서는 쉽게 학습할 수 있는 시스템을 제안하는데 다음의 관찰에서 시작이 되었음.
    • attribute transfer은 몇 개의 attribute markers을 (문장에서 특정 속성을 가리키는 단어, 구) 바꾸면 가능하다.
    • 문장의 나머지는 바꾸지 않는다.
    • 다음의 그림 1이 이에 대한 예시이다.
  • 여기서 adversarial 방법론을 능가하는 간단한 baseline을 제시한다. (긍부정 task로 예시를 들어서 설명) 
    1. positive와 negative 문장에서 attribute markers을 찾아낸다. (worst, very disappointed 와 같은 것)
    2. 이러한 negative markers을 삭제하고(delete) 나머지 단어들을 content로 간주한다.
    3. positive corpus에서 비슷한 content을 가지는 문장을 검색한다.
    • 즉 attribute markers을 삭제하여 남은 단어들을 content로 간주하면, 같은 content을 가지는 긍부정 문장끼리 서로 매칭시킬 수 있다 이말인 듯
  • 향상된 시스템은 다음과 같이 진행이 된다. (그림 1에서 neural network)
    1. 일단 위에서 설명한 baseline처럼 content words을 추출한다.
    2. 그리고 이에 attribute content을 추가하여 RNN decoder을 태워서 문장을 생성한다.
    • 이렇게 학습을 게 되면 adversarial networks보다 상당한 장점으로는 content와 attribute을 구별하고 auto-encoder 학습을 시작하기 때문에 좋다는 것이다.
  • 3가지 데이터 세트에 대해서 실험을 진행한다.
    • sentiment of Yelp reviews
    • sentiment of Amazon reviews
    • image captions to be more romantic or humorous. 
  • 사람의 평가에 따르면 문법적으로 맞는 문장을 이 논문 방법은 content and attribute 23%을 생성하였고 best adversarial method는 12%을 달성했다고 한다.
  • 또한 평균 성공률(무얼 말하는 건지는...?) 34%을 달성했다고 한다.

2. Problem Statement

  • 레이블된 문장: 
  • attribute v를 가지는 데이터 세트 정의: 
  • 목표: 가 입력으로 들거사 y을 생성
    • 생성된 문장 y는 의 속성이 사라지고 의 속성을 가지는데 이 때 x의 content는 보존한다.

3. Approach

  • "The chicken was delicious" 문장을 positive에서 negative로 바꾼다고 해보자.
  • 이 때 감정을 담고 있는 단어는 delicious이고, 즉 이를 바꾸면 된다.
  • 일반적으로 attribute는 지역적으로 단어의 작은 부분에 속해있음을 발견했다.
    • 근데 이건 단지 지금까지 연구해오던 데이터세트에 대해서 그렇다는 것 아닌가?
    • 애초에 이런 방법으로 접근하면 rule-based 처럼 어떤 가정이 들어가는 것이기 때문에 장단점이 명확한듯
  • 그렇다면 삭제된 단어는 무엇으로 대체를 해야할까가 핵심이다.
    • "The chicken was ..."에서 ...부분에는 "bland"와 같이 맛과 관련된 단어는 적절하지만 "rude"와 같은 단어는 비적절하다.
    • 즉, 삭제된 감정 단어에도 non-sentiment information이 존재하고, 이 정보는 other content words(삭제되지 않은)을 이용하여 recovered 될 수 있다.
  • 여기서 4가지 시스템을 제안한다.
    • two baselines
      • RetrieveOnly
      • TemplateBased
    • two neural models
      • DeleteOnly
      • DeleteAndRetrieve
    • 자세한건 뒤에 나오지만, 그림만봤을때 느낌은 DeleteOnly가 가장 딥러닝느낌이 나는 듯
  • Delete
    • 4개의 시스템모두 x의 문장과 source의 attribute()으로부터 을 도출하여 삭제해서 만 남긴다.
  • Retrieve
    • 4개의 시스템중 3개에서 사용하는데(DeleteOnly는 사용 x)  와 비슷한 을 찾는다.
  • Generate
    • 와 (option)을 이용하여 문장 y를 생성한다.
    • 이 때 rule-based 방법 혹은 neural sequence-to-sequence model을 이용한다.

3.1 Delete

  • discriminator에 영향이 큰 attribute markers (n-grams) 을 삭제하는 간단한 방법을 제시한다. (이 부분을 gradCAM을 이용하면 되지 않을까 싶은데..?)
  • n-gram의 salience을 v에 관한 u의 값을 다음과 같이 정의한다.
    • 여기서 은 에서 n-gram 가 나타나는 횟수를 의미한다.
    •  는 smoothing parameter이다.
    • 즉 간단히, 어떤 문장 v에서 attribute markers을 생각해보자.
      • 1-gram으로 가정하자
      • 문장 v의 Discriminator의 결과를 positive라고 하자.
      • 그러면, 문장 s에서 어떤 한 단어 u가 나온 횟수가 분자
      • 분모는 Discriminator의 결과가 negative라고 나온 문장에서 u가 나온 횟수의 합이다.
      • 이것으로 구해진 s(u,v)의 결과가 크다는 것은 positive에서만 등장한다는 것이다.
      • 즉 s(u,v)가 크면 영향이 크다는 것이다.
    • 만약 s(u,v)가 일정 threshold 의 값보다 크면 u을 attribute marker라고 생각한다.
    • attributed marker은 discriminative features for Navie Bayes classifier라고 볼 수 있다. (추측으론 예전의 분류기로 Navie Bayes classifier에서 이 방법을 썼나봄..)
  • : x의 입력(문장)에서 source에 해당하는 attribute의 set라고 정의한다.
  • : x에서 을 delete하고 남은 것들이다.
    • 예) x: "The chicken was delicious"
      • : "delicious"
      • (after deleting): "The chicken was"

3.2 Retrieve

  • Retrieve을 통해 하고자함은 에 단어를 삽입해서 속성이 target 속성처럼 보이게 하는 것이다.
  • 위의 예시에서 : "The chicken was"로 남겨졌는데 이를 부정문으로 보이게 하기 위해서는 "rude"보다는 "bland"을 삽입해야 자연스러워 보인다.
  • 즉, 부정단어를 암것이나 넣으면 안되고 content와 유사한 문장을 검색하여 그 문장의 attribute markers을 삽입해야 한다.
  • 식으로는 다음과 같다.
    • 즉 는 x와 가장 비슷한 다른 속성, 같은 content을 가지는 target domain의 문장이다.
    • d는 distance metric으로 두 개의 문장을 비교하는 메트릭으로 다음의 두개를 사용할 수 있다. (Figure 2, Step 2)
      1. TF-IDF weighted word overlap
      2. Euclidean distance using the content embeddings
      • (3.3에서 다룬다는데 일반적으로 2번을 쓰는게 나을 거 같은데...?)

3.3 Generate

  • Figure 2, Step 3에 해당하는 과정이다.
  • RetrieveOnly
    • 검색된 을 그대로 출력으로 내뱉는 식
    • 즉, 생성모델이 있는 것은 아닌 듯. 따라서 target 소스에 있는 데이터중에 하나를 고르는 것일 뿐
  • TemplatedBased
    • 이것은 attribute markers만을 대체하는 것인데, 즉 와 을 바꾼다는 것이다.
    • 이 전략은 두 개의 속성이 비슷한 상황에서 등장한다는 가정하에 가능한 방법이다.
    • 예를 들어, "love"와 "don't like"는 비슷한 context("i love this place", "i don't like this place")에서 등장하고 이 때, attribute marker을 교환하는 것은 괜찮다.
    • 그러나 이러한 방법은 문법적으로 문제가 생길 수가 있다.
    • 애초에 을 같은 context로 찾는 것이니까, x(source)와 에서 attribute marker은 비슷한 상황에서 등장한다는 가정은 맞을 수 있으나, 문법적으로는 충분 틀릴 수 있다.
  • DeleteOnly
    • 을 RNN에 넣어서 final hidden state vector을 끄집어 낸다.
    • 이 와 learned  embedding (아마 style-embedding 방식일 듯, not one-hot encoding)와 concatenate하여 decoder(RNN)에 넣어서 y를 생성한다.
    • 즉 기존의 방법들과 똑같다고 보면 될 것 같은데, content representation을 delete 방식으로 구한다고 보면 될 듯
  • DeleteAndRetrieve
    • DeletOnly와 비슷하지만, Retrieve까지 쓰는 것이 다르다.
    • 을 RNN에 넣어서 final hidden state vector을 끄집어 내는 것 똑같다.
    • 여기서부터가 다른데, 에 해당하는 을 찾아서 을 구한다.
    • 그리고 RNN2(위의 RNN과 다른)에 넣어서 을 encode한다.
    • 이 두개의 encoding된 것을 concatenate하여 decoder(RNN)을 이용하여 생성한다.
    • 즉 DeleteOnly와 다른 것은 style embedding대신 target attribute encoding을 쓰므로, 문장마다, 들어갈 style embedding이 달라지는 것이라고 볼 수도 있을 듯
  • 이 논문에서 말하길 DeleteAndRetrieve TemplatedBased DeleteOnly의 장점을 결합한 것이라고 한다.
    • 즉 attribute markers을 선택하여 이를 이용하여 추가할 단어를 고르니까 문법적으로 어느정도 보장이 되는 식이라고 함.
    • 즉 DeleteAndRetrieve는 target attribute markers을 사용했기 때문에 current context에 맞는 fit한 단어를 생성할 수 있다.
  • 이러한 방법은 Guu(2018)에서 생성 모델에 사용했다고 함.
  • 추가적으로 DeleteAndRetrieve는 감정의 정도, "good" 혹은 "fantastic" 무엇을 추가할 지 을 기반으로 컨트롤 할 수 있다고 함.

3.4 Training

  • 학습할 때, target 속성을 가지는 문장의 출력은 알 수 가없다.(because of non-parallel)
  • DeleteOnly는 reconstruction을 하는 과정만 학습을 다음과 같이 하게 된다.
    • 즉 context와 attribute을 넣어서 재구성 하는 과정. (attribute marker은 사용안하네)
  • DeleteAndRetrieve에서는 단순히 auto-encoder 방식으로 와 을 이용하여 reconstruction을 하는 방식으로 하면 안된다.
    • 왜냐하면 이는 사실 와 이를 단순히 끼워 맞추기만 하면, 되는 문제이기 때문에(어떠한 smoothing 없이) 사소한 문제라는 것이다.
    • 따라서 이렇게 학습하고 test을 할 때는 와 을 이용해서 문장을 생성하는데 유창하지가 못하다는 것이다.
    • 즉 train/test mismatch의 문제라고 보고 이 논문에서는 DAE(denoising auto-encoder)을 사용하였다. (이 논문에서 discriminator을 이용한 학습안하고 이것을 이용했다는게 다른 점의 하나라고 보임)
    • noising 과정은 을 확률 0.1을 가지고 랜덤으로 다른 attribute marker로 대체하는데 이 때, 같은 attribute을 가지고 word-level의 수정이 1로 제한을 두었다고 한다.
    • 예) "was very rude" → "very rude"
      • 이 예시처럼 단어가 한개만 수정이 되는 식인 것 같은데 삭제하거나 "is very rude", "was very bad" 이렇게 바꾼다는 식 아닐까 싶음...
    • 따라서 학습 식은 다음과 같이 가진다.
  • 참고로 RetrieveOnly와 TemplateBased는 학습 방법이 아님.

4. Experiments

  • Yelp / Amazone / Captions (romantic or humorous) 의 데이터로 실험 (대부분 이 데이터로 함)
  • 이전 연구 3개 adversarial 방법들과 비교함.
    • 사람의 평가: 이 논문에서 제시한 2가지 방법이 3개의 adversarial 방법보다 좋음.
    • Automatic 평가: DeleteAndRetrieve 방법이 3개의 adversarial 방법보다 좋음.

4.1 Datasets

  • Yelp (음식점관련)
    • Yelp에서 business 리뷰로 positive or negative 문장들
  • Amazon (상품관련)
    • Yelp와 비슷하고 Amazon에서 리뷰로 positive or negative 문장들
  • Captions (이미지 설명, romantic or humorous)
    • 그림을 설명하는 문장들로 factual, romantic or humorous의 스타일임.
    • factual 문장을 romantic or humorous로 바꾸는 task을 진행
    • 이 데이터세트는 Yelp와 Amazon과 달리 style alignment가 되어있으나 학습시에는 이용을 안함.
    • 그러나 alignment가 되어있기 때문에 gold reference for evaluation에는 사용.
    • 이 데이터세트로 학습할 때는 romantic과 humorous 스타일에 해댕하는 문장들을 재구성하는 것으로 학습
    • 테스트할때는 factual captions가 주어져서 style을 입히는 것
    • 즉 factual captions는 content만 담고있다고 가정을 하는 것이고, 즉 attribute marker가 없는 것임, 여기에 적절한 attribute marker을 (romantic or humorous) 주어서 문장을 생성하도록 하였음.

4.2 Human References

  • Amazon Mechanical Turk에서 crowdworkers을 고용하여 테스트에 해당하는 gold output 문장을 만들도록 하였음.
  • 자세한 것은 생략.. (나중에 직접 사람 써서 평가를 해야할 때 정도 읽어보면 될 듯)

4.3 Previous Methods

  • 세 개의 이전 모델과 비교하였음.
  • Gra는 문법적, Con은 content 보존, Att는 속성 변환 성공으로 1점부터 5점으로 점수를 매긴 것이다.
  • Suc는 전체적인 성공에 대한 퍼센트임.
  • 사람의 평가 결과임

4.4  Experimental Details

  • 128 dim word vectors
  • single-layer GRU with 512 hidden units
  • maxout activation function (굳이 이것을..?)
  • 모든 파라미터는 uniform 분포 -0.1~-0.1을 가지도록 샘플링됨.
  • Adadelta optimization with a minibatch size of 256
  • Attribute marker을 뽑기 위해 4 words 까지 span하여 고려. (smoothing parameter = 1)
  • attribute marker threshold 는 precision과 recall을 컨트롤 하는 것으로 Yelp(15), Amazon(5.5), Caption(5)을 사용.
    • 즉 데이터 세트에 따라 다르게 사용했다는 것.
    • 이는 dev set을 이용해서 찾음
    • 와는 3.1을 참고
  • Retrieval을 위하여 TF-IDF weighted word overlap score을 이용하여 DeleteAndRetrieveTemplateBased에 사용하였고 Euclidean distance of content embeddings을 RetrieveOnly만을 위해 사용하였음.
    • Retrieval을 한다는 것은 비슷한 문장을 찾는다는 것이고 RetrieveOnly는 delete한 것과 비슷한 content을 찾는 것이므로 content embedidng을 한 것 같음.
    • 그러나 DeleteAndRetrieveTemplateBased는 content와 비슷한 것을 찾아 거기의 attribute marker을 이용하는 것임.
    • 어찌되었든 이 두가지가 비슷한 score을 매기고, 그의 결과를 비슷하게 보여준다고 함.
    • 참고로 DeleteOnly는 content을 뽑아내고 attribute을 넣어서 생성하기 때문에 retrieval을 할 필요가 없음.
  • 모든 모델에서 beam search을 beam size of 10으로 하였음.
  • DeleteAndRetrieve에서는 10개의 beam search로 생성한 다음, 따로(분리되어) target domain에서 학습된 neural language model으로 봤을 때 PPL이 가장 작은 문장을 선택했다고 한다. (약간, 편법 느낌이긴한데.. 기억해둘 필요가 있는 스킬인 듯)

4.5 Human Evaluation

  • Table 2처럼 Gra, Con, Att, Suc에 대해 1~5점으로 평가하였음.
  • 데이터는 각 도메인에서 속성당 200개씩 400개로 테스트 샘플을 뽑음.
  • 근데 살짝 웃긴게, RetrieveOnly는 실제로 학습 방법은 아니고 단순 테스트 데이터세트에서 가장 비슷한 content을 뽑는 개념이므로 결국 Gra와 Att는 높을 수 밖에 없는 구조임.
  • 즉 RetireveOnly는 진정한 content 보존과 style transfer가 아닌 느낌임.
  • 내 생각엔 DeleteOnly와 DeleteAndRetrieve가 진정한 방법인데, Suc측면에서 DeleteAndRetrieve가 젤 높긴한데, DeleteAndRetrieve는 bean search의 스킬을 이용하였기 때문에 살짝 의심스러움.
  • 정확히 비교하려면, DeleteAndRetrieve에서 beam search을 안하거나 다른 모델에서도 beam search을 한 후 비교해보는게 진짜 비교일 듯.
  • 추가적으로 Retrieve에 대한 생각은 Analysis 밑 부분에 적어둠.

4.6 Analysis

  • Adversarial method인 CrossAligned와 Mutlidecoder은 source 문장의 content을 잃어버리는 경향이 있다.
  • StyleEmbedding은 입력 문장의 paraphrase을 생성한다. 즉 style 변환이 잘 안일어난다는 뜻
  • 기존의 adversarial 학습 모델들은 content preserving과 attribute 변환 사이의 trade-off 처럼 서로를 희생하는 느낌이 있다고 느껴진다.
  • RetrieveOnly은 문법적인 것과 target attribute을 가지는 것에 높은 점수를 가진다.
    • 그러나 이는 content 변환에서 정확히 align되지 않는 문제점이 있다.
  • 반면, TemplateBased는 preserving content에는 좋은데 이는 content words가 유지되는 것을 보장하기 때문이다.
    • 그러나 이 방법은 content와 attribute 단어간의 unsmoothed 결합이기 때문에 문법적인 문제가 있다.
  • DeleteAndRetrieve와 DeleteOnly는 문법적인 것과 preserving content, attribute 변화 사이의 적절한 밸런스를 가지고 있다.
    • 둘 다 강하게 어떤 단어를 바꿔야하는지 inductive bias을 가지고 있으나 문장을 유연하게 생성한다.
    • 두 방법의 가장 큰차이는 target attribute/retrieved attribute words 어느 것을 이용하냐에 차이다.
    • Caption 데이터 실험와 같이 다양한 pharse의 set가 채워질 때, retrieved attribute words가 좀 더 구체적인 설명이기 때문에 긴 문장을 생성하는데에 도움이 된다고 한다.
  • Analysis을 읽고 든 생각이 Retrieve는 사실 상, inference할 때 사용할 수 없거나 불안전한 방법이 아닌가 싶다.
    • 왜냐하면 이는 target domain의 데이터에서 비슷한 content을 찾는 것이기 때문이다.
    • 즉 만약 입력의 content와 같은 content가 target data에 없다면, 제대로 된 content가 아닐 것이고 제대로 된 attribute word가 아닐 수도 있다는 문제점이 있을 것 같다.
    • 이 문제는 test sample시에 좀 더 클 것 같고 결국 Retrieve 없이, DeleteOnly의 방향이 맞지 않나 싶음!!

4.7 Automatic Evaluation

  • Attribute classifier을 이용한 classifier score
    • (같은) 학습 데이터로 bidirectional LSTM with an average pooling을 이용하여 학습시킴
  • BLEU score
    • output과 human reference 사이의 BLEU을 계산하였음.
    • 높은 BLEU score은 시스템이 preserve content을 옳바르게 한다는 것을 가리킨다.
    • 이 논문은 이 것이(BLUE) fluency와 연관성이 있길 희망하지만, 그 연관성은 작다고 한다.
    • classifier score와 human judgments of attribute transfer 간의 상관 관계
    • BLEU와 human judgments of content preservation and grammaticality의 상관 관계
    • 가로축이 사람의 평가고 세로축이 automatic 점수로 정비례 관계여야 밀접한 관계가 있음.
    • 결과를 보면 데이터마다 연관성이 다르고, Amazon 같은 경우는 classifier score와 human evaluation간의 연관성이 없다.
    • 논문에서 말하길 상품의 장르에 따라 긍부정이 연관성이 있다는데??? 뭔말인지 모르겠음
    • 어찌되었든 Amazon 데이터에서는 classifier score가 사람 평가랑 연관성이 없다.
    • BLEU는 예상했듯이 grammaticality score와 큰 연관성이 없다.
    • automatic fluency 부족한 평가는 인위적인 TemplatedBased 시스템을 더 좋아하게 되는데 이는 문법적인 문제가 없기 때문이다.
    • 즉 여기서 내린 결론은, automatic evaluation 방법은 좋은 모델을 만드는데 유용은 하지만, 실제 human evaluation을 대체할 수는 없다...
      • 결국 automatic evaluation이 좋다고 더 좋은 모델이라 말할 수는 없고 연구가 좀 더 되야한다라는 것..

4.8 Trading off Content versus Attribute

  • 이 논문의 방의 장점은 target attribute와 preserving content의 trade-off을 조절할 수 있다는 것이다.
  • Trade-off 커브를 조절하기 위해, 을 변화시키면 된다
    • tf-idf의 비율을 조절하는 파라미터를 조정하면 된다는 것
    • 이 조정으로 얼마나 많은 attribute markers을 컨트롤할 지, 삭제할 지 정하는 것.
    • 반면 다른 방법들은 모델 자체를 학습해야 하기 때문에 차별화가 있다.
    • 그림은 trade-off curve for DeleteAndRetrive, DeleteOnly, TemplatedBased on Yelp에 대한 것
    • 보면, classifier 정확도가 올라갈 수록 BLEU score은 떨어진다.
    • 어찌보면 당연한 것이 classifier 정확도를 올리려면, source attribute words을 많이 삭제해야하고, 그러면 당연히 BLEU scroe은  떨어지는 것!

5. Related Work and Discussion

  • 이전의 관련 연구들의 주요 방법은 adversarial training으로 attribute와 content을 분리하고 content가 attribute discriminator가 구별을 못하도록 하는게 핵심이었다.
  • 하지만 이 논문의 방법론으로 경험적으로 discriminator 학습 없이 이를 분리하기가 쉽다.
  • 최근 연구에는 번역 모델쪽에서 cycle loss(back-translation 기법)을 이용하여 content preserving을 할 수 있음이 밝혀졌다.
  • 이 논문에서도 이를 cycle loss을 이용하면 성능이 좋아질 것으로 기대해볼 수 있다고 한다.
  • 여기서 Deleting 과정은 Navie Bayes classifier가 분류를 못하게 속이는 과정으로 볼 수 있고 이는 adversarial method의 방법과 비슷하다고 하다.
    • 단지 모델과 함께 이것이 학습되지 않는 것이 다를 뿐.
  • 결론적으론 이 논문의 방법이 좋다고 말하고 있다.
  • 이전의 연구에서도 종종 말하지만, attribute와 content은 완벽히 분리될 수 없다고 한다. (논문 Multiple-attribute style transfer에서 말한 것이 이미 어느 정도 알려져 있었나 봄..)
  • n-grams의 일반적인 속성 개념을 develop하는 것이 좋은 발전이 될 것이다.
Reference

댓글