P-Tuning v2: 신속한 조정은 규모와 작업 전반에 걸쳐 보편적인 미세 조정과 유사할 수 있습니다.

1. 소개

큐 튜닝은 연속 큐를 튜닝하기 위해 고정된 언어 모델만 사용하므로 각 작업에 대한 저장 공간과 메모리 사용량이 크게 줄어듭니다. 그러나 NLU의 맥락에서 이전 연구에서는 즉석 튜닝이 보통 크기의 사전 훈련된 모델에 대해 잘 수행되지 않는 것으로 나타났습니다. 또한 기존 큐 조정 방법은 일반성이 부족함을 나타내는 어려운 시퀀스 라벨링 작업을 처리할 수 없는 것으로 나타났습니다. 이 논문에서는 적절하게 최적화된 프롬프트 조정이 일반적으로 광범위한 모델 크기 및 NLU 작업에 걸쳐 효과적일 수 있다는 새로운 경험적 발견을 제시합니다. 0.1%-3%의 미세 조정 매개변수만 사용하면서 미세 조정 성능과 일치합니다. P-Tuning v2는 NLU에 최적화되고 조정된 Deep Hint Tuning(Li and Liang, 2021; Qin and Eisner, 2021)을 구현한 것입니다.

사전 훈련된 언어 모델 (Radford et al., 2019; Devlin et al., 2018; Yang et al., 2019; Raffel et al., 2019)은 다양한 자연어 이해(NLU) 작업의 성능을 향상시킵니다. 널리 사용되는 방법인 미세 조정은 대상 작업에 대한 전체 모델 매개변수 세트를 업데이트합니다
. 미세 조정을 하면 좋은 성능을 얻을 수 있지만 모든 매개변수의 기울기와 최적화 상태를 저장해야 하므로 훈련 중에 메모리를 소비합니다. 게다가 사전 훈련된 모델의 크기가 크기 때문에 추론 중에 각 작업에 대한 모델 매개변수의 복사본을 유지하는 것은 불편합니다.

프롬프트 . 힌트는 사전 학습된 모델의 모든 매개변수를 동결하고 자연어 힌트를 사용하여 언어 모델을 쿼리합니다(Brown et al., 2020). 예를 들어 감정 분석의 경우 샘플(예: "놀라운 영화!")을 "이 영화는 [MASK]입니다"라는 프롬프트와 연결하고 사전 훈련된 언어 모델에 마스크 태그 "좋음"과 "나쁨"을 예측하도록 요청할 수 있습니다. ” 샘플의 라벨을 결정할 확률입니다. 힌트에는 교육이 전혀 필요하지 않으며 모델 매개변수의 복사본만 저장합니다. 그러나 미세 조정에 비해 개별 단서(Shin et al., 2020; Gao et al., 2020)는 많은 경우 최적이 아닌 성능으로 이어질 수 있습니다.
신속한 튜닝. 큐 조정은 연속된 큐만 조정하는 아이디어입니다. 구체적으로 Liu 등(2021), Lester 등(2021)은 입력 단어 임베딩의 원래 시퀀스에 훈련 가능한 연속성 임베딩(연속성 단서라고도 함)을 추가할 것을 제안합니다. 훈련 중에는 지속적인 프롬프트만 업데이트됩니다. 큐 튜닝은 많은 작업에서 큐보다 성능이 뛰어나지만(Liu et al., 2021; Lester et al., 2021; Zhong et al., 2021), 모델 크기가 크지 않고, 특히 매개변수가 100억 개 미만인 경우 여전히 성능이 좋지 않습니다. 나쁨(Lester et al.(2021)) 또한 실험적으로 볼 수 있듯이 프롬프트 조정은 추출 질문 답변과 같은 여러 하드 시퀀스 레이블 지정 작업에서 미세 조정에 비해 성능이 좋지 않습니다(섹션 4.2 참조).

이 문서의 주요 기여는 적절하게 최적화된 즉석 튜닝이 다양한 모델 규모 및 NLU 작업에서 일반적으로 수행되는 미세 조정과 유사하다는 새로운 경험적 발견입니다. 이전 연구의 관찰과 비교하여 우리의 연구 결과는 신속한 조정을 위한 NLU의 일반성과 잠재력을 보여줍니다.

기술적으로 말하면 P-tuning v2 는 새로운 개념이 아닙니다. 이는 생성 및 지식 탐색을 위해 설계된 딥 큐 컨디셔닝(Li and Liang, 2021; Qin and Eisner, 2021)의 최적화되고 적응 가능한 구현으로 볼 수 있습니다. 가장 중요한 개선은 입력 레이어뿐만 아니라 사전 학습된 모델의 모든 레이어에 지속적인 힌트를 적용한 결과입니다. 깊이 신호 조정은 특히 소형 모델의 경우 다양한 설정 간의 미세 조정을 위해 지속적으로 신호를 보내고 간격을 줄이는 기능을 향상시킵니다. 또한 비슷한 성능을 위한 미세 조정을 보장하기 위해 최적화 및 구현에 대한 일련의 주요 세부 정보가 제시됩니다.

실험 결과에 따르면 P-tuning v2는 300M에서 10B 매개변수까지 다양한 모델 규모와 추출 질문 응답 및 명명된 엔터티 인식과 같은 다양한 시퀀스 라벨링 작업에서 미세 조정 성능과 일치하는 것으로 나타났습니다. 미세 조정과 비교하여 P-tuning v2는 작업당 훈련 가능한 매개변수가 0.1%~3%이므로 작업당 훈련 시간 메모리 비용과 저장 비용이 크게 줄어듭니다.

2 준비

NLU 작업. 이 작업에서 NLU 과제는 단순 분류 작업과 시퀀스 라벨링 작업의 두 가지 범주로 나뉩니다. 간단한 분류 작업에는 레이블 공간에 대한 분류가 포함됩니다. GLUE(Wang et al., 2018) 및 SuperGLUE(Wang et al., 2019)의 데이터 세트 대부분이 이 범주에 속합니다. 시퀀스 라벨링 작업에는 명명된 엔터티 인식 및 추출 질문 응답과 같은 토큰 시퀀스 분류가 포함됩니다.

프롬프트 튜닝. V를 언어 모델 M의 어휘라고 하고 e를 M의 임베딩 레이어라고 둡니다. 개별 프롬프트(Schick and Schütze, 2020)의 경우 프롬프트 태그 {“It”, “is”, “[MASK]”}⊂V를 사용하여 영화 리뷰를 분류할 수 있습니다. 예를 들어 입력 텍스트 x = "Amazing movie!"가 주어지면 입력 임베딩 시퀀스는 [e(x), e("It"), e("is"), e("[MASK]")로 공식화됩니다. ].

Lester 등(2021)과 Liu 등(2021)은 자연어 단서를 대체하고 전처리 언어 모델의 매개변수를 고정하기 위해 훈련 가능한 연속 단서를 도입했습니다. 훈련 가능한 연속 임베딩 [h0,…,hi]가 주어지면 입력 임베딩 시퀀스는 그림 2와 같이 [e(x),h0,..,hi,e(“[MASK]”)]로 작성됩니다. 간단한 분류 작업의 경우 프롬프트 조정은 100억 개의 매개변수 모델을 미세 조정하는 것과 비슷한 것으로 나타났습니다(Lester et al., 2021; Kim et al., 2021; Liu et al., 2021).

3 P-튜닝 v2

3.1 보편성 부족

Lester 등(2021), Liu 등(2021)은 많은 NLP 애플리케이션에서 상당히 효과적인 것으로 입증되었습니다(Wang 등, 2021a, b, Chen 등, 2021, Zheng 등, 2021, Min et al., 2021) 그러나 일반성이 부족하여 아래에서 논의하는 바와 같이 교체 미세 조정에는 여전히 단점이 있습니다.

규모에 따른 일반화가 부족합니다. Lester et al.(2021)은 모델의 매개변수가 100억 이상으로 확장되면 빠른 조정이 미세 조정과 비슷할 수 있음을 보여줍니다. 그러나 널리 사용되는 중형 모델(100M~1B)의 경우 신속한 조정이 미세 조정보다 성능이 훨씬 나쁩니다.

교차 작업 다양성이 부족합니다. Lester et al.(2021), Liu et al.(2021)은 일부 NLU 벤치마크에서 우월성을 보여주었지만 하드 서열 라벨링 작업을 빠르게 조정하는 효과는 검증되지 않았습니다. 시퀀스 태깅은 각 입력 태그에 대한 태그 시퀀스를 예측하는데, 이는 동사와 더 어렵고 호환되지 않을 수 있습니다(Schick and Schütze, 2020). 실험(섹션 4.2 및 표 3 참조)에서 Lester 등(2021), Liu 등(2021)은 미세 조정에 비해 일반적인 서열 라벨링 작업에서 성능이 떨어지는 것으로 나타났습니다.

이러한 과제를 고려하여 심층 프롬프트 튜닝(Li and Liang, 2021; Qin and Eisner, 2021)을 채택한 Ptuning v2는 규모와 NLU 작업 전반에 걸친 범용 솔루션으로 권장됩니다.

3.2 딥 프롬프트 튜닝

(Lester et al., 2021) 및 (Liu et al., 2021)에서는 연속적인 단서가 입력 임베딩 시퀀스에만 삽입됩니다(그림 2(a) 참조). 이로 인해 두 가지 과제가 발생합니다. 첫째, 시퀀스 길이의 제한으로 인해 조정 가능한 매개변수의 수가 제한됩니다. 둘째, 입력 임베딩은 모델 예측에 상대적으로 간접적인 영향을 미칩니다.

이러한 문제를 해결하기 위해 P-tuning v2는 심층 프롬프트 튜닝 아이디어를 채택합니다(Li and Liang, 2021; Qin and Eisner, 2021). 그림 2에 표시된 것처럼 서로 다른 레이어의 팁이 접두사 태그로 추가됩니다. 한편으로 P-tuning v2에는 매개변수 효율성으로 더 많은 작업당 용량을 허용하기 위해 더 조정 가능한 작업별 매개변수(0.01% ~ 0.1%-3%)가 있습니다. 반면에 더 깊게 추가하면 더 직접적인 영향을 미칩니다. 모델 예측에 대해

3.3 최적화 및 구현

최적의 성능을 위한 최적화 및 구현에 대한 몇 가지 유용한 세부 정보가 있습니다.

재매개변수화: 이전 작업에서는 훈련 가능한 임베딩을 변환하기 위해 MLP(Li and Liang, 2021; Liu et al., 2021)와 같은 재매개변수화 인코더를 활용하는 경우가 많습니다. 그러나 NLU의 경우 유용성을 찾는 것은 작업 및 데이터 세트에 따라 다릅니다. 일부 데이터 세트(예: RTE 및 CoNLL04)의 경우 MLP는 일관된 개선을 가져오고, 다른 데이터 세트의 경우 MLP는 결과에 최소한 또는 심지어 부정적인 영향을 미칩니다(예: BoolQ 및 CoNLL12).

프롬프트 길이. 큐 길이는 P-Tuning v2에서 중요한 역할을 합니다. 다양한 NLU 작업은 일반적으로 다양한 힌트 길이에서 최상의 성능을 달성하는 것으로 나타났습니다. 일반적으로 간단한 분류 작업에는 짧은 프롬프트(20개 미만)가 선호됩니다. 시퀀스 라벨링 작업은 더 긴 작업(약 100개)을 선호합니다.

다중 작업 학습. 다중 작업 학습은 개별 작업을 미세 조정하기 전에 공유된 순차 단서를 통해 여러 작업을 공동으로 최적화합니다. 멀티태스킹은 P-Tuning v2의 선택 사항이지만 더 나은 초기화를 제공하여 성능을 더욱 향상시킬 수 있습니다(Gu et al., 2021).

분류 책임자. 언어 모델 헤더를 사용하여 언어화자를 예측하는 것(Schick and Schütze, 2020)은 프롬프트 조정(Liu et al., 2021)의 핵심이었는데, 이 논문에서는 전체 데이터 환경에서 불필요하고 시퀀스 라벨링과 호환되지 않는 것으로 나타났습니다. P-tuning v2는 BERT(Devlin et al., 2018)에 표시된 것처럼 토큰 위에 무작위로 초기화된 분류 헤더를 적용합니다(그림 2 참조).

P-Tuning v2의 주요 기여를 설명하기 위해 기존 On-The-Fly 튜닝 방법의 개념적 비교가 표 1에 수행됩니다.

4번의 실험

P-tuning v2의 효율성을 검증하기 위해 일반적으로 사용되는 다양한 사전 훈련 모델과 NLU 작업에 대한 광범위한 실험이 수행됩니다. 본 연구에서는 Fine-tuning을 제외한 모든 방법이 고정된 언어 모델 백본을 사용하여 수행되는데, 이는 (Lester et al., 2021)의 설정과 일치하지만 (Liu et al., 2021).

작업별 매개변수의 비율(예: 0.1%)은 연속 프롬프트의 매개변수와 변환기의 매개변수를 비교하여 도출됩니다. 또 한 가지 주목할 점은 실험이 모두 몇 번의 샷이 아닌 완전히 감독된 환경에서 수행되었다는 점입니다.

NLU 작업. 첫째, P-tuning v2의 일반적인 NLU 기능을 테스트하기 위해 SuperGLUE(Wang et al., 2019)의 데이터 세트가 포함되었습니다. 또한 개체명 인식(Sang and De Meulder, 2003; Weischedel et al., 2013; Carreras and Màrquez, 2004), 추출적 질문 답변(Rajpurkar et al., 2016)을 포함한 일련의 서열 라벨링 작업이 도입되었습니다. 그리고 의미론적 역할 주석(Carreras and Màrquez, 2005; Pradhan et al., 2012).

사전 훈련된 모델. Bert-Large(Devlin et al., 2018), Roberta-Large(Liu et al., 2019), Deberta-XLarge(He et al., 2020), GLMXLarge/XXLarge(Du et al., 2021)를 포함하여 평가합니다. . 둘 다 NLU 작업용으로 설계된 양방향 모델로 약 300m에서 10b까지 다양한 크기를 포괄합니다.

다중 작업 학습. 다중 작업 설정의 경우 각 작업 유형에서 데이터세트의 훈련 세트를 결합합니다(예: 의미론적 역할 라벨링을 위해 모든 훈련 세트를 결합합니다). 각 데이터세트에 별도의 선형 분류기를 사용하세요.

4.1 P-튜닝 v2: 다양한 규모

표 2는 모델 규모에서 P-tuning v2의 성능을 보여줍니다. SuperGLUE에서는 Lester et al.(2021)과 소규모 P-튜닝의 성능이 상당히 낮을 수 있습니다. 이와 대조적으로 P-tuning v2는 모든 작업에 걸쳐 더 작은 규모로 성능을 미세 조정합니다. P-tuning v2는 RTE의 미세 조정보다 훨씬 뛰어난 성능을 발휘합니다.

GLM(Du et al., 2021)의 대형 모델(2B~10B)의 경우 Lester et al.(2021), Liu et al.(2021)과 미세 조정 간의 격차가 점차 좁아집니다. 10B 규모에서는 Lester et al.(2021)이 보고한 것처럼 신속한 조정이 미세 조정과 경쟁하는 유사한 관찰이 있습니다. 즉, P-tuning v2는 모든 규모에서 항상 미세 조정과 비슷하지만 미세 조정에 비해 작업별 매개변수가 0.1%만 필요합니다.

4.2 P-튜닝 v2: 교차 작업

표 3에서 P-tuning v2는 일반적으로 모든 작업에 대한 미세 조정과 유사하다는 것을 알 수 있습니다. Ptuning 및 Lester et al.(2021)은 특히 QA에서 훨씬 더 낮은 성능을 발휘하는데, 이는 아마도 세 가지 작업 중 가장 어려운 작업일 것입니다. 또한 Lester et al.(2021)과 SKuAD 2.0의 P-tuning에서 몇 가지 비정상적인 결과가 나온 것으로 나타났습니다. 이는 SQuAD2.0에 단일 레이어 실시간 튜닝에 대한 최적화 문제를 야기할 수 있는 답할 수 없는 질문이 포함되어 있기 때문일 수 있습니다. 다중 작업 학습은 일반적으로 QA를 제외한 대부분의 작업에 비해 P-Tuning v2에 상당한 개선을 가져옵니다.

4.3 절제 연구

LM 헤드가 있는 Verbalizer와 선형 헤드가 있는 [CLS] 라벨. 이전 힌트 튜닝 방법에서는 LM 헤더가 포함된 디스크립터가 핵심 구성 요소였습니다. 그러나 감독 설정의 P-tuning v2의 경우 선형 헤드는 약 수천 개의 매개변수를 사용하여 튜닝할 수 있습니다. 다른 하이퍼파라미터는 유지하고 선형 헤드가 있는 [CLS] 레이블만 LM 헤드가 있는 버바이저로 변경된 비교는 표 4에 나와 있습니다. 여기서는 단순화를 위해 SST-2, RTE 및 BoolQ에 대해 "true" 및 "false"를 사용하고, CB에 대해 "true", "false" 및 "neutral"을 사용합니다. 그 결과, 디스크립터와 [CLS]의 성능에는 큰 차이가 없는 것으로 나타났습니다.

프롬프트 깊이. Lester et al.(2021), (Liu et al., 2021)과 P-tuning v2의 주요 차이점은 다층 연속 단서입니다. 정확한 영향을 확인하려면 팁을 추가할 특정 수의 k 레이어가 주어지면 오름차순 및 내림차순으로 선택하여 팁을 추가합니다. 나머지 레이어는 그대로 둡니다. 그림 3에서 볼 수 있듯이 동일한 수의 매개변수(즉, 힌트를 추가할 Transformer 레이어 수)에 대해 내림차순으로 추가하는 것이 오름차순으로 추가하는 것보다 항상 좋습니다. RTE의 경우 레이어 17~24에만 힌트를 추가하면 모든 레이어에서 매우 유사한 성능을 얻을 수 있습니다.

おすすめ

転載: blog.csdn.net/lsb2002/article/details/135389054