seq2seq RNN 모델의 점수를 매기려면 어떤 손실 함수를 사용해야합니까?


10

seq2seq 모델링을위한 인코더-디코더 아키텍처를 소개 한 Cho 2014 논문을 연구하고 있습니다.

이 논문에서 그들은 입력이 주어진 입력의 확률 을 길이 의 입력 와 길이 출력 에 대한 손실 함수로 사용하는 것처럼 보입니다 (또는 음의 로그 가능성) :M y NxMyN

P(y1,,yN|x1,,xM)=P(y1|x1,,xm)P(y2|y1,x1,,xm)P(yN|y1,,yN1,x1,,엑스미디엄)

그러나 이것을 손실 함수로 사용하는 데 몇 가지 문제가 있다고 생각합니다.

  1. 훈련 중에 교사 강제를 가정하는 것 같습니다 (즉, 다음 반복에 대한 입력으로 위치에 대한 디코더의 추측을 사용하는 대신 알려진 토큰을 사용합니다).
  2. 긴 시퀀스에는 불이익을주지 않습니다. 확률은 출력의 에서 까지이므로 디코더가 더 긴 시퀀스를 생성하면 첫 번째 N 이후의 모든 것이 손실을 고려하지 않습니다.1
  3. 모델이 초기 문자열 끝 토큰을 예측하는 경우 손실 함수는 여전히 단계를 요구 합니다. 이는 모델의 훈련되지 않은 "매니 폴드"를 기반으로 출력을 생성한다는 의미입니다. 부주의 한 것 같습니다.

이러한 우려 사항 중 유효한 것이 있습니까? 그렇다면 더 진보 된 손실 기능으로 발전한 적이 있습니까?

답변:


1

훈련 중에 교사 강제를 가정하는 것 같습니다 (즉, 다음 반복에 대한 입력으로 위치에 대한 디코더의 추측을 사용하는 대신 알려진 토큰을 사용합니다).

"교사 강제"라는 용어는 그 생각을 그리워하기 때문에 조금 귀찮게합니다. 다음 알려진 토큰을 RNN 모델에 공급하는 데 잘못되거나 이상한 것은 없습니다. 말 그대로 . 시퀀스에 대한 분포를 로 자동 회귀 적으로 정의하면 일반적으로 수행되는 것처럼 , 각 조건 용어가 RNN으로 모델링되는 경우 "교사 강제"가 참입니다. 로그 가능성을 올바르게 최대화하는 절차. ( 위 의 컨디셔닝 시퀀스 는 아무것도 변경하지 않으므로 쓰기를 생략합니다 .)로그(와이1,,와이)(와이)=나는(와이나는|와이<나는)엑스

MLE의 편재성과 좋은 대안이 부족하다는 점을 감안할 때,“교사 강제”가 불쾌하다고 생각하지 않습니다.

그럼에도 불구하고, 분명히 문제가 있습니다. 즉, 모델은 모든 데이터 포인트에 높은 가능성을 할당하지만 모델의 샘플이 실제 데이터 분포에 반드시있을 필요는 없습니다 ( "품질이 낮은"샘플이 됨). MLE를 포기하지 않고 적의 훈련 절차를 통해이를 완화시키는 "교수 강제"(Lamb et al.)에 관심이있을 수 있습니다.

긴 시퀀스에는 불이익을주지 않습니다. 확률은 출력의 1에서 N까지이므로 디코더가 더 긴 시퀀스를 생성하면 첫 번째 N 이후의 모든 것이 손실을 고려하지 않습니다.

모델이 초기 문자열 끝 토큰을 예측하는 경우 손실 함수는 여전히 N 단계를 요구합니다. 이는 모델의 훈련되지 않은 "매니 폴드"를 기반으로 출력을 생성한다는 의미입니다. 부주의 한 것 같습니다.

이들 중 어느 것도 훈련 중에 발생하는 문제가 아닙니다. 자동 회귀 적 시퀀스 모델을 예측을 출력하는 절차로 생각하는 대신 주어진 시퀀스가 ​​얼마나 가능한지 계산하는 방법으로 생각하십시오. 이 모델은 어떤 것도 예측하지 않습니다. 분포에서 시퀀스 또는 토큰을 샘플링하거나 다음 토큰이 무엇인지 물어볼 수는 있지만 예측과는 크게 다릅니다 (훈련 중에는 샘플링하지 않습니다) 어느 한 쪽).

그렇다면 더 진보 된 손실 기능으로 발전한 적이 있습니까?

다른 모델링 작업을 위해 사례별로 특별히 설계된 목표가있을 수 있습니다. 그러나 저는 MLE이 여전히 지배적이라고 말하고 있습니다. 최근 광범위한 GPT2 모델은 광범위한 자연 언어 모델링 및 이해 과제에서 최첨단 성능을 달성했습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.