NL-238, Language Models (Mostly) Know What They Know, Anthropic 2022

◼ Comment

  • LLM이 자기가 아는 지식의 범위를 제한할 수 있다는 ref 논문
  • 자세하게 읽는다기보단, 핵심만 보려고하는데..
  • 여기서 크게 LLM의 2가지 능력을 평가하는거 같음
    • 1) P(True) 라고해서 모델이 답변한게 정답일 확률을 예측하는 모델의 self-evaluation
    • 2) P(IK)는 I Know라고해서, 답변이 틀렸을지어도 실제로는 알고있는지를 판단하는 것 (즉 인퍼런스 전에 알수 있는 것)
  • 1) P(True)
    • 자기가 생성한 답변을 제대로 답변한건지 평가해보면, 올바른 샘플과 잘못된 샘플을 준수하게 구분한다고 한다.
    • 물론 자신의 샘플을 더 그럴듯하다고 판단하는 경향이 있다고 함
    • 그림 1을 보면, 파란색(잘못된 답변)은 왼쪽으로 치우쳐져 있는데, 이는 P(True)의 확률이다. 즉 잘못된 답변은 P(True)의 확률이 낮게 예측된다는 소리
    • 모델의 크기가 커지면, 생성 품질도 당연 증가하겠지만 이보다 검증 품질이 더 빠르게 개선이 된다고 한다.
      • 작은 모델로 응답 생성하고 큰 모델로 검증을 하는 것 vs 큰 모델로 응답 생성하고 작은 모델로 검증하는 것
      • 둘 중에서는 전자가 효과적이지 않을까? (생성 차이가 검증 차이보다 비교적 크지 않다는 것이니까)
    • few-shot을 하면 self-evaluation가 더욱 향상된다고 함

    • 프롬프트를 위처럼, LLM에게 던지는 것 같음.
    • 아마 P(Ture)은 True token의 확률값을 추출하는 것 같음
  • 2) P(IK)
    • 이는 모델을 학습시켜서 확인해보는 것임 (부록 A.6 참고)
    • LLM이 스스로 질문에 올바르게 답할 수 있는지 예측하도록 훈련해서 동작하는지 확인해보는 과정
    • 즉 P(IK)는 모델이 질문에 답변할 수 있는지 없는지를 알 수 있다는 것
    • OOK 데이터에서는 P(IK) 보정에 어려움을 격는다.
      • TriviaQA로 학습된 P(IK)는 수학, Lambada, 코드 질문에서 잘 작동했지만, 다른 분포에서는 보정이 잘 안된다는 것을 보여줌
    • P(IK) 학습 데이터는 단순히 질문만으로 학습되었지만, 관련 소스자료가 제공되거나 수학 문제에 대한 힌트가 주어진다면 P(IK) 확률이 증가한다는 점 (나름의 일반화려나)

Abstract 

우리는 언어 모델이 자신의 주장에 대한 타당성을 평가하고, 자신이 올바르게 답할 수 있는 질문을 예측할 수 있는지 연구합니다. 먼저, 더 큰 규모의 모델은 적절한 형식으로 제공되는 다양한 선택형 및 참/거짓 질문에 대해 잘 보정(calibrated)되어 있음을 보여줍니다. 이를 통해 개방형 생성(open-ended sampling) 작업에서 모델이 먼저 답을 제안한 후, 해당 답이 올바를 확률 "P(True)"을 평가하도록 요청함으로써 자기 평가(self-evaluation)를 접근할 수 있습니다. 다양한 작업에서 P(True)에 대한 성능, 보정, 그리고 확장성에서 고무적인 결과를 확인했습니다. 또한, 특정 가능성의 타당성을 예측하기 전에 모델이 스스로 생성한 다수의 샘플을 고려하도록 허용했을 때, 자기 평가 성능이 더욱 향상되는 것을 발견했습니다.

다음으로, 모델이 특정 제안된 답과는 무관하게 질문에 대한 답을 "I Know"는 확률 "P(IK)"를 예측하도록 훈련될 수 있는지 조사했습니다. 모델은 P(IK) 예측에서 우수한 성능을 보이며 작업 간 부분적으로 일반화할 수 있지만, 새로운 작업에 대한 P(IK)의 보정에는 어려움을 겪습니다. P(IK) 확률은 관련된 소스 자료가 문맥에 포함되거나, 수학적 문제 풀이에 대한 힌트가 제공될 경우 적절히 증가하는 것으로 나타났습니다. 이러한 관찰이 더 정직한 모델을 훈련시키기 위한 토대를 마련하고, 모델이 인간 글쓰기 모방 외의 목표로 훈련될 경우 정직성이 어떻게 일반화되는지를 조사하는 데 기여하길 바랍니다.

모델이 답변을 잘했든 못했든, 알고있는 확률인 P(IK) ("I Know") 을 예측하도록 훈련해봤더니, 잘 작동한다더라. 일반화하기엔 쉽지 않아보이지만, 소스 자료가 문맥에 있거나, 수학적 문제풀이의 힌트가 제공되는 경우 성능이 잘 증가한다라는 것

1 Introduction

우리는 궁극적으로 정직한 AI 시스템을 훈련시키고자 하며, 이를 위해 AI 시스템이 자신의 지식과 추론에 대한 신뢰도를 정확하고 성실하게 평가하는 능력이 필요합니다. 따라서 AI 시스템은 무엇을 알고 무엇을 알지 못하는지 인식할 수 있어야 하며, 이는 필수 조건입니다. 이 연구에서는 언어 모델(Language Models, LMs)이 이러한 능력을 어느 정도 보유하고 있으며, 이를 어떻게 유도하고 가르칠 수 있는지 조사합니다.

첫 번째 단계로, 보정(calibration)을 살펴봅니다: 언어 모델의 확률적 예측이 실제 발생 빈도와 일치하는가? 언어 모델은 분포 내 데이터(on-distribution)에서 토큰 확률에 대해 잘 보정된 예측을 생성할 수 있습니다 [Guo et al., 2017]. 우리는 대규모 언어 모델이 적절히 형식화된 다양한 선택형 질문에 대해서도 잘 보정된 상태를 유지한다는 것을 보여줍니다. 특히, 모델 크기와 소수 예시 학습(few-shot prompting)이 보정을 개선하는 데 기여합니다.

좋은 보정은 모델이 자신의 출력을 평가할 수 있는 가능성을 열어줍니다(“자기 평가”). 예를 들어, 개방형 질의에 대해 모델이 답을 생성한 후, 그 답이 올바를 확률 P(True)를 모델이 평가하도록 요청할 수 있습니다. 자기 평가가 어려울 것으로 예상될 수 있지만, 이는 모델이 자신의 샘플이 올바르다고 과도하게 확신할 가능성이 있기 때문입니다. 그럼에도 불구하고, 우리의 자기 평가 절차는 올바른 샘플과 잘못된 샘플을 구별하는 데 성공하며, 이는 그림 1에 요약되어 있습니다. 

더 나아가, 모델 크기와 능력이 증가함에 따라 자기 평가 능력도 향상되며, 이는 검증(verification)이 생성(generation) 품질보다 더 빠르게 개선된다는 점을 시사합니다.

또한, 모델이 특정 샘플을 평가하기 전에 다수의 자체 샘플을 제공받는 경우, 자기 평가가 더욱 향상된다는 것을 보여줍니다. 즉, '다른 가능성들을 브레인스토밍'하는 과정이 대규모 모델이 특정 답변 옵션의 타당성을 평가하는 데 도움이 됩니다.

이러한 기술은 세상에 대한 질문에 답하며, 모델이 "더 넓은 세상의 인정된 진실(즉, 인간의 관점)에 따르면, 특정 질문에 대한 답변이 올바른가?"를 평가하도록 요청합니다. 자기 평가의 경우, 제안된 답변은 모델이 제공한 것이지만, 그 타당성은 여전히 외부적인 사실에 기반합니다.

한편, 언어 모델이 자신의 지식 상태를 직접적으로 평가하려는 시도에도 관심이 있습니다. 이를 위해, 모델이 스스로 질문에 올바르게 답할 수 있는지를 예측하도록 훈련했을 때 어떤 일이 발생하는지 조사합니다. 이는 모델 자체에 대한 질문으로, 모델이 자신이 어떤 유형의 질문에 답할 수 있는지를 학습하도록 훈련하는 과정입니다.

연구 결과, 언어 모델은 특정 분포에서 질문에 대한 답을 알 확률 P(IK)를 평가하는 데 쉽게 우수한 성능을 발휘할 수 있음을 확인했습니다(그림 3 참고). 

더욱 흥미롭게도, 트리비아에서 이야기 완성, 수학, 코드로의 작업 전반에서 일부 일반화를 관찰했습니다. 그러나 모델은 분포 밖 데이터(OOD)에서 P(IK) 보정에 어려움을 겪었습니다. 또 다른 일반화 유형도 발견했는데, P(IK)는 단순한 질문만으로 훈련되었지만, 관련 소스 자료(트리비아의 경우)가 제공되거나 수학 문제에 대한 힌트가 주어질 때 P(IK) 확률이 증가한다는 점입니다.

1.1 Contributions

Calibration: Multiple Choice, None of the Above, and True/False

  • 다양한 선택형 질문(예: BIG Bench [Srivastava et al., 2022], MMLU [Hendrycks et al., 2021], 기타 여러 평가 데이터셋)에 대해, 눈에 보이는 답변 옵션이 문자로 표시된 형식을 사용할 경우 대규모 모델이 매우 잘 보정되어 있음을 보여줍니다(Figure 4, 5, 6 참조).
  • 모델 크기가 커질수록 보정 성능이 향상되며, zero-shot에서 few-shot 평가로 전환할 때도 보정이 개선됩니다(Figure 4 참조).
  • 답변 옵션 중 하나를 "none of the above"으로 대체할 경우, 정확도와 보정 성능이 크게 감소합니다(Figure 7 참조). 그러나 참/거짓 구분 작업에서는 모델이 여전히 잘 보정되어 있으며(Figure 8 참조), 모델 성능이 높아질수록 정확도와 보정도 증가합니다.

  • RLHF 정책(Bai et al., 2022)이 초기에는 잘못 보정된 것처럼 보이지만, 간단한 온도 조정을 통해 여러 평가에서 꽤 잘 보정될 수 있음을 보여줍니다(Figure 9 참조).

Self-Evaluation of Model-Generated Samples, without Finetuning

TriviaQA [Joshi et al., 2017], Lambada [Paperno et al., 2016], GSM8k [Cobbe et al., 2021], Codex HumanEval [Chen et al., 2021], 산술 문제, GitHub에서 수집한 자연 함수 생성 문제를 대상으로 평가를 진행했습니다. 결과에 대한 간략한 개요는 Figure 1 참조.

  • 모델은 자신의 샘플이 참인지 거짓인지 자체적으로 평가할 수 있지만, 이는 더 어려운 작업으로 나타납니다(모델은 자신의 샘플을 더 그럴듯하다고 판단하는 경향이 있기 때문). Few-shot에서는 자체 평가가 잘 보정되는 반면, zero-shot에서는 그렇지 않습니다. 특히, k-shot 자체 평가에서 k 값이 커질수록 보정이 주로 개선되며, 올바른/잘못된 응답을 구분하는 AUROC 향상보다는 보정 개선 효과가 두드러집니다(Figure 10, 11 참조. 부록의 Figure 28, 29, 30 참조).
  • 모델에 T=1 샘플 여러 개와 함께 True/False로 평가할 단일 샘플을 보여줄 경우, 성능이 크게 향상될 수 있습니다(이는 self-consistency prompting [Wang et al., 2022]을 연상시킵니다).
  • 결론적으로, 언어 모델은 few-shot 설정에서 이 작업을 잘 수행할 수 있으며, 모델 크기가 커질수록 성능 지표 대부분이 개선됩니다. 이는 모델이 자신의 샘플을 평가하도록 요구받는 상황에서도 마찬가지입니다.

Finetuning to Identify the Questions Models Can Correctly Answer

모델이 단순히 질문에 대한 답변이 맞는지 평가하는 것이 아니라, 답변할 수 있는 질문과 답변할 수 없는 질문을 구분할 수 있는지 또는 이를 학습할 수 있는지에 관심을 가졌습니다. 결과에 대한 간략한 개요는 Figure 2 참조.

  • P(IK): 질문에 정확히 답변할 수 있는 확률을 예측하도록 value head를 사용해 모델을 훈련했습니다. TriviaQA로 훈련된 모델은 수학, Lambada, 코드 질문에서 자신이 답할 수 있는 질문을 상당히 잘 구별했습니다(Figure 12 참조). 그러나 P(IK)는 이러한 다른 분포에서는 보정이 잘 되지 않는 경향이 있습니다(Figure 13 참조). 일반화는 Figure 16과 17에서 가장 명확하게 드러납니다.
  • 자료와 수학적 힌트의 포함이 P(IK)에 미치는 영향을 연구했습니다(Figure 18, 19 참조). P(IK)는 자료, 올바른 힌트, 잘못된 또는 혼란스러운 힌트에 적절하게 반응하는 것으로 나타났습니다.
  • 비슷한 성능을 가진 두 모델(사전 학습 데이터가 다른)을 비교했습니다(Figure 20 참조). 두 모델 모두 **다른 모델의 P(IK)**를 예측하는 것보다 **자신의 P(IK)**를 예측하는 데 더 능숙했습니다. 두 모델의 P(IK) 훈련 데이터를 서로 교차 적용했을 때, 모델이 자신이 알고 있는 것으로 훈련될 때 더 잘 일반화된다는 작은 효과를 발견했습니다.
    결론적으로, 이 작업에서 부분적인 일반화만 확인할 수 있었습니다.

Glossary: Observables and Metrics

  • P(True): 특정 샘플이 질문에 대한 올바른 답변일 확률을 모델이 할당한 값.
  • P(IK): "I Know"는 것을 나타내는 확률. 즉, 단위 온도에서 생성된 샘플로 주어진 질문에 대해 올바르게 답변할 확률. 이 작업에서 P(IK)는 언어 모델 위에 이진 분류 head를 추가해 계산합니다.
  • Ground Truth P(IK): 단위 온도에서 생성된 질문에 대해 올바른 샘플의 비율.
  • 보정 차트: 예측 확률과 예측이 올바를 빈도를 플롯한 것. Figure 4 참조. 모든 예측값(정답 예측만 포함하지 않음)을 사용하며, 각 구간(bin)에 동일한 수의 예측값을 넣습니다(간격이 동일한 구간을 사용하지 않음).
  • 기대 보정 오차(ECE) 또는 RMS 보정 오차: 보정을 단일 숫자로 요약하기 위해, 예측 확률과 실제 빈도 간의 절대 차이의 평균을 계산합니다. ECE는 항상 10개의 구간(bin)을 사용하며, 각 구간에는 동일한 수의 예측값을 포함합니다. ECE는 "mean absolute deviation calibration error" [Lin et al., 2022]로도 알려져 있습니다. 다른 연구와 더 일치하도록, 다중 선택에서 가장 가능성이 높은 예측만 사용해 ECE를 계산합니다. RMS 보정 오차는 이론적으로 더 타당하지만, 문헌에서 덜 사용되는 경향이 있습니다.
  • AUROC: 모델이 답을 아는 질문과 모르는 질문을 구별하거나, 올바른 샘플과 잘못된 샘플을 구별하는 ROC 곡선 아래의 면적. **구별력(discrimination)**을 나타내지만 보정에는 무관심합니다(AUROC가 0.5는 우연 수준, 더 높은 점수가 더 좋음).
  • (조건부) 정확도: 모델이 자신의 샘플이 유효하다고 판단하는 P(True)를 자체 평가할 때, 모델이 'True'(올바름)로 라벨링한 샘플의 정확도와 작업의 전체 문제 분포에서의 정확도를 비교하는 데 중점을 둡니다.
  • Brier Score: 구별력(예: AUROC)과 보정 간의 트레이드오프를 관찰할 때 사용. Brier 점수는 자체 평가의 구별력과 보정을 결합한 척도입니다(이진 선택 작업에서 우연 수준의 Brier 점수는 0.25이며, 낮은 점수가 더 좋음).

6 Discussion

이 연구의 장기적 동기: AI 모델의 정직성 이해

이 연구의 장기적 동기는 AI 모델에서 정직성(honesty)의 여러 측면을 이해하기 시작하는 데 있습니다. 여기서 정직성은 여러 겹치는 아이디어를 포함하는 포괄적 용어로 사용됩니다:

  • 진실성(Truthfulness): AI가 사실적으로 정확한 정보를 제공하며, 올바르게 자료를 찾고, 사용하고, 평가하는가?
  • 보정(Calibration): AI의 확률적 예측이 실제 발생 빈도와 일치하는가?
  • 자기 인식(Self-knowledge): AI 시스템이 자신이 알고 있는 것을 알고, 자신의 행동과 추론에 대해 정확히 예측하는가?
  • 설명 가능성(Explainability): AI 시스템이 자신의 '사고 과정'을 완전하고 신뢰할 수 있게 드러내는가?
  • 비기만성(Non-deceptiveness): AI 시스템이 거짓말을 배우지 않도록(예: 인간의 선호 데이터가 체계적인 실수를 조장하거나 기분 좋은 오해에 더 많은 보상을 주는 경우) 보장할 수 있는가?

연구의 주요 초점과 핵심 발견

본 연구에서는 보정, 자기 인식, 진실성의 측면에 초점을 맞췄으며, 이 주제의 넓은 범위를 일부만 다루었습니다. 주요 발견은 다음과 같습니다:

  • 대규모 언어 모델은 다양한 선택형 질문에서 잘 보정될 수 있습니다.
  • 여러 주제에 걸쳐 **자체 평가(self-evaluation)**를 잘 수행합니다.
  • AI 모델은 자신이 알고 있는 것과 모르는 것을 예측하도록 훈련될 수 있으며, 새로운 도메인과 문맥 정보에 대해 일부 일반화를 보여줍니다.

모델 크기와 성능의 관계

  • 보정: 모델 크기/능력이 커질수록 보정 성능이 향상되며, few-shot 예제 추가 시 더 개선됩니다.
  • 자체 평가: 모델 크기가 커질수록 자체 평가 성능도 개선됩니다. 이는 non-trivial한 결과인데, 모델의 샘플 품질도 함께 개선되기 때문입니다. 이는 **생성(generation)**보다 **검증(verification)**이 더 유리하다는 점을 시사합니다.

이러한 결과는 사전 훈련된 언어 모델의 범위 내에서 고무적이며, **더 광범위한 자체 감독(self-supervision)**이나 **모델 간 상호 감독(intermodel supervision)**으로 발전시킬 수 있는 잠재력을 보여줍니다. 또한 보정 성능을 자연어 응답에 적용하는 데 활용될 수 있습니다.


자기 인식을 통한 일반화의 시험대

이 연구의 또 다른 동기는 자기 인식을 일반화의 시험대로 사용하는 것이었습니다.

  • 우리는 정직성이 쉬운 질문에서 어려운 질문으로 또는 도메인 간에 어떻게 일반화되는지, 특히 AI가 인간보다 더 많은 지식이나 통찰을 가진 상황에서 어떻게 행동할지 우려하고 있습니다.
  • 연구 결과, 언어 모델은 도메인 간에 일부 일반화를 보여줬지만, **분포 밖(out-of-distribution)**에서는 보정 성능이 저하되었습니다.
  • 모델은 독립된 질문에 대해 P(IK)를 예측하도록 훈련되었지만, 질문에 대한 답을 포함하는 자료수학 문제 풀이를 위한 힌트가 제공되면 P(IK)가 크게 증가했습니다.

이는 모델의 장기 기억(long-term memory) 저장 방식과 문맥 내 학습(in-context learning) 방식 간에 관계가 있음을 시사합니다. 즉, **학습(learning)**과 문맥 학습이 연결되어 있음을 암시합니다.

6.1 Limitations and Future Work

연구의 한계

이 연구에는 다음과 같은 여러 한계가 있습니다:

  • 사전 학습된 언어 모델에 초점:
    우리는 주로 사전 학습된 언어 모델에 집중했지만, 특정 목적에 맞게 미세 조정된 모델(예: RLHF 정책 [Bai et al., 2022])은 동일한 수준으로 보정되지 않을 수 있으며, 우리가 논의한 방법 중 일부는 그러한 모델에서 효과가 떨어질 수 있습니다.

  • 인간 모방으로서의 사전 학습:
    언어 모델 사전 학습은 일종의 인간 모방입니다. 그러나 정직성에 관한 가장 흥미로운 질문들은 고급 AI 시스템이 인간의 지식과 충돌하거나 이를 확장하는 지식을 ‘알고’ 있을 때 발생하며, 이는 사전 학습으로부터 얻어질 수 없는 경우입니다.
    우리의 분석은 "진실"과 "인간이 말하는 것"을 구분하지 않지만, 궁극적으로는 이 구분을 인식하고 적절히 일반화할 수 있는 AI 시스템을 훈련하고자 합니다.

  • 기만(deceptiveness)의 가능성:
    이 연구는 AI 시스템이 기만적으로 행동(예: 인간 선호 보상을 극대화하기 위해)하도록 학습할 가능성을 다루지 않았습니다. 의도적인 기만은 정직한 자기 평가에서 나타나는 단순한 경향성을 상쇄할 수 있습니다.

  • 정직성 일반화 연구의 한계:
    우리는 정직성의 일반화에 관심을 가졌는데, 이는 AI 시스템이 훈련된 내용에서 벗어나 새로운 상황에서 안전하고 바람직한 행동을 할지 예측하고자 했기 때문입니다. 연구 결과, 흥미롭고 고무적인 형태의 일반화를 일부 발견했습니다. 그러나 다섯 가지 샘플링 기반 데이터셋만을 대상으로 했으며, 능력 경향성과 일반화에 대한 관찰은 제한된 범위와 힘을 가졌습니다. 이를 더 철저하고 정밀하게 조사하는 것이 흥미로울 것입니다.


결론

그럼에도 불구하고, 이 연구에서 제시한 단순한 방법들이 미래에 이러한 문제들을 탐구할 기초를 마련한다고 믿습니다.

6.2 Broader Impacts

연구의 긍정적 영향에 대한 기대

우리는 이 연구가 긍정적인 광범위한 영향을 미치길 희망합니다.
사전 학습된 언어 모델과 기타 AI 시스템은 여러 방식으로 정직하지 못한 행동을 할 수 있습니다.
이번 연구가 배포된 시스템에서 발생하는 정직성 실패를 식별하고 교정하는 데 도움이 되길 바랍니다.


한계와 추가 과제

하지만 사전 학습된 언어 모델은 **다른 실패 모드(failure modes)**도 가지고 있을 수 있습니다.
또한, 우리가 이번 연구에서 다룬 개입(intervention) 방법은 언어 모델의 훈련 데이터인간 모방에 의해 지속되는 오류를 교정하지 못할 수도 있습니다.

A.6 Training for P(IK)

P(IK) 분류기 학습 방법

P(IK) 분류기를 학습하기 위해 (Q, IK / IDK 레이블) 쌍으로 이루어진 데이터셋을 생성했습니다.
주어진 질문 Q(예: TriviaQA 질문 및 몇 가지 샘플로 이루어진 프롬프트)에 대해,
T = 1에서 30개의 후보 답변 샘플을 생성했습니다.
각 작업에서 Q의 포맷팅에 대한 자세한 내용은 부록 A.7을 참조하세요.


데이터 생성 과정

  1. 후보 답변 평가
    각 후보 답변 샘플이 정답인지 오답인지 채점했습니다.

  2. 데이터 포인트 생성
    각 후보 답변에 대해 (Q, True Label) 데이터 포인트를 생성했으며,
    여기서 True Label은 해당 모델이 정답을 맞췄는지 여부를 기반으로 결정됩니다.

  3. 데이터 포인트 수집
    하나의 질문 Q에 대해 30개의 데이터 포인트 **(Q, True Label)**이 생성되었습니다.
    이는 다수의 하드 레이블을 사용하여 소프트 레이블을 근사화하는 간단한 방법입니다.


파인튜닝 과정

  • 배치 크기: 7680 (일반적인 배치 크기보다 큼).
  • 학습률: 초기 사전 학습 학습률의 1/3 사용.
  • 이유: 노이즈가 많은 소프트 학습 레이블 때문에 큰 배치 크기가 학습에 중요했습니다.

평가 데이터셋 구성

평가 데이터셋은 학습 데이터셋과 유사하게 구성되지만, 평가 중에는 다음에 초점을 맞췄습니다:

  1. Ground Truth P(IK) 계산

    • 각 질문에 대해 Ground Truth P(IK) 점수를 계산했습니다.
    • 이는 모델이 T = 1 샘플에서 정답을 맞힌 비율로 정의됩니다.
  2. 모델 예측과의 비교

    • 평가 질문에서 Ground Truth P(IK) 점수와 모델이 예측한 P(IK) 점수를 비교했습니다.
    • 이러한 비교 결과는 논문의 여러 플롯에서 확인할 수 있습니다.

Reference

댓글