For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.
변형 점프
변형 점프는 사용자가 단일 플래그 또는 실험에 대해 둘 이상의 변형을 받는 경우 발생합니다. 특정 임계값을 초과하는 변형 점프는 분석의 신뢰성에 대한 우려를 제기할 수 있습니다.
일부 유형의 변형 점프는 정상적입니다: 일반적이며 일반적으로 설명할 수 있습니다. 다른 유형은 추적하기가 더 어렵습니다.
변형 점프 디버그
변형 점프를 디버깅하는 가장 좋은 방법은 변형을 점프한 사용자를 식별하고 해당 사용자의 타임라인을 분석하는 것입니다. 원격 평가를 사용하는 경우 Assignment 이벤트를 확인하여 할당 또는 노출 불일치를 식별하십시오.
변형을 건너뛰는 사용자를 찾으려면 다음 단계를 수행하십시오.
- 실험의 진단 카드로 이동합니다.
- 변형 점프 차트를 찾은 후 차트에서 열기를 누릅니다.
- 변형을 점프한 사용자의 표시줄을 클릭하고 사용자 스트림 보기를 클릭합니다.
분석을 쉽게 하기 위해 사용자 타임라인에 할당 및 노출 이벤트만 표시합니다.
사용자 타임라인을 디버깅할 때는 다음 사항에 유의하십시오.
- 플래그 또는 실험이 활성화되어 있을 때 타겟팅 변경을 도입했습니까? 변경 시점이 이 사용자에게 할당된 변형에 영향을 미쳤을 수 있습니까? 버전 기록을 확인하려면 버전 번호를 클릭하십시오.
- 플래그 또는 실험에서 어떤 버킷 키를 사용했습니까? 이 속성의 값은 이 사용자에 대한 할당 또는 노출 대상 구간에서 변경됩니까?
- 사용자가 누락된 노출이나 할당 이벤트를 가지고 있습니까? 이 경우 누락된 이벤트가 다른 사용자에게 전송되었을 수 있습니다.
- 할당에 있어야 할 사용자 속성이 누락되어 있습니까? 이 경우 할당 이벤트의 서버 업로드 타임스탬프를 다시 확인하고 주변 활성 이벤트와 비교하십시오. 클라이언트에서 전송된 이벤트는 클라이언트 순서가 다르더라도 할당 이벤트 후에 Amplitude에 도착할 수 있습니다.
일반 변형 점프
정상적인 변형 점프는 다음과 같은 이유로 발생할 수 있습니다.
- 타겟팅 변경: 실험이 진행되는 동안 누군가가 타겟팅 규칙을 변경했습니다.
- 익명 ID 병합: Amplitude ID에 의해 버킷팅된 익명 사용자는 Amplitude가 일치하는 사용자 ID를 통해 이를 해결할 때까지 서로 다른 변형을 받을 수 있습니다.
목표 설정 변경
다음 작업을 수행하면 사용자가 변형을 건너뛰게 될 수 있습니다.
- 변형을 추가하거나 제거합니다.
- 변형 분포 가중치 변경.
- 동적 코호트를 목표로 삼습니다.
- 버킷 키 변경.
- 상호 제외를 업데이트합니다.
타겟팅을 변경하기 전에 고정 버킷팅을 활성화하여
변형 점프를 방지하십시오. 고정 버킷팅은 샘플 비율 불일치(SRM)를 유발할 수 있습니다.
익명 ID 병합
Amplitude가 익명 사용자를 처리하는 방식은 변형 점프를 유발할 수 있습니다. Amplitude는 이를 수행하기에 충분한 정보를 확보하는 즉시 익명 ID를 올바른 기존 사용자 ID(존재하는 경우)와 병합합니다. 이 병합은 사용자가 로그인하지 않고 다른 기기에서 앱을 사용하거나 로그아웃 시 기기 ID가 재생성되는 경우에 발생할 수 있습니다.
Amplitude의 사용자 식별 및 사용자 병합에 대해 자세히 알아보십시오.
이러한 유형의 변형 이동을 식별하려면 사용자가 변형 대상 구간 이동한 할당 이벤트를 찾으십시오. 그런 다음 두 이벤트의 Amplitude ID를 비교하십시오. 이벤트 대상 구간 Amplitude ID가 다른 경우, 익명 ID 병합이 원인일 가능성이 큽니다.
이러한 유형의 변형 점프를 방지하려면 사용자 ID를 가진 로그인한 사용자만 타겟팅하는 경우 사용자 ID별로 버킷팅하십시오. 또는 익명 사용자만 대상으로 삼는 경우(예: 가입 실험용) 기기 ID별로 버킷을 설정합니다.
포함 목록
포함 목록에 사용자 ID가 몇 개 있다고 가정해 보십시오. 호출을 수행하고 fetch()사용자 ID를 호출에 전달합니다. 호출은 포함 목록에 따라 제어 경험을 반환합니다. 다음fetch()에 호출할 때는 사용자 ID를 전달하지 않습니다. 사용자가 더 이상 포함 목록 기준을 충족하지 않으므로 Amplitude는 버킷 키를 해시하며, 사용자는 대신 다른 변형을 받을 수 있습니다. 장치 ID를 포함하는 경우에도 동일한 결과가 발생할 수 있습니다.
다음 예제에서 사용자는 사용자 ID를 갖습니다. 사용자는 포함 목록과 일치하며 경험을 제공받습니다signin-up-new_design.

이 예제에서는 사용자 ID가 존재하지 않습니다. 사용자는 포함 목록과 일치하지 않으며 '기타 모든 사용자' 세그먼트에 속하고 대신 경험을 제공받습니다signin-up-original-view.

비정상적인 변형 점프
비정상적인 변형 점프의 경우는 정상적인 설명과는 일치하지 않습니다. 비정상적인 변형 점프는 추적하기가 어려울 수 있습니다. 가장 흔한 원인은 ID 불일치입니다. 할당과 노출 추적 대상 구간에서 사용자 ID가 다릅니다. ID 불일치는 거의 항상 구현 비일관성에서 비롯됩니다.
다음 예제가 모든 사례를 다루지는 않지만, Amplitude 실험에서 발생하는 일반적인 ID 문제를 설명합니다.
단일 장치에 여러 로그인 계정 사용
단일 기기에서 앱을 사용할 때 여러 사용자 계정(U1 및 U2)을 가진 사람의 경우 이 타임라인을 고려해 보십시오.
- 앱을 사용자 U1로 열고 변형을 가져옵니다. U1은
experiment-1에 대해treatment수신합니다. - U1을
experiment-1변형treatment에 노출시킵니다. - U1에서 로그아웃하고 U2에 로그인하여 로그인 시 비동기적으로 변형을 가져옵니다.
- U2에 대한 인출이 해결되기 전에 U2는
experiment-1변형에 대한 노출을treatment확인합니다. - U2에 대한 가져오기가 해결됩니다. U2는
experiment-1에 대해control제공받습니다. - U2
experiment-1를control변형에 노출시킵니다.
이 경우, 사용자 U2는 U1의 저장된 변형을 본 후 변형을 control에서 treatment (으)로 건너뛰었습니다. 이 문제를 방지하려면 사용자 환경을 렌더링하기 전에 가져오기가 해결될 때까지 기다리거나, 로그아웃 시 SDK의 clear() 메서드를 호출하여 SDK에서 저장된 모든 변형을 지웁니다. 변형을 지우면 SDK의 변형 저장소가 지워지므로 사용자가 캐시된 변형을 볼 수 없게 됩니다. 변형을 지워도 가져오기 요청이 해결되기 전에 사용자가 대체 환경을 보는 것을 방지하지 못합니다.
로그인 전반에 걸쳐 일관된 장치 ID를 유지하면 이러한 유형의 변형 점프를 확인할 수 있습니다. 동일한 장치 ID를 공유하는 다른 사용자를 검색합니다.
할당과 노출 대상 구간 일관성 없는 ID 입력
Amplitude에서 사용자 ID 및 장치 ID 속성은 사용자를 식별하고 Amplitude ID를 확인합니다. 할당을 가져오고 평가하는 데 사용되는 장치 ID 또는 사용자 ID가 노출 이벤트를 추적하는 데 사용되는 장치 ID 및 사용자 ID와 다르면 변형 점프, SRM 및 일관되지 않거나 예기치 않은 버케팅 동작을 볼 수 있습니다.
예를 들어 Amplitude로 전송하기 전에 ID를 마스킹하는 프록시나 CDP를 통해 이벤트를 전송할 수 있습니다. 이 경우 변형을 가져오는 데 사용된 ID는 노출 이벤트에 포함된 ID와 다릅니다.
또 다른 일반적인 원인은 단순한 구현 오류입니다. 예를 들어, 다음과 같은 경우에 변형 점프가 발생했습니다.
- ID에 추가된 문자입니다. 실제 ID 주변에 추가로 인용구가 붙어 있습니다.
15a4f7e9-db4e-4c57-82c7-e57a2995803a"15a4f7e9-db4e-4c57-82c7-e57a2995803a"
- 대문자 값이 일관되지 않음(특히 UUID와 관련):
15a4f7e9-db4e-4c57-82c7-e57a2995803a15A4F7E9-DB4E-4C57-82C7-E57A2995803A
실험 분석에서 변형 점프가 발생한 사용자를 제거
결과를 분석할 때 데이터를 제거하면 편향을 유발할 수 있으므로 주의해야 합니다. 변형 점프의 원인을 이해하고 전체 구현 버그를 수정하여 향후 실험에서 재발을 방지하는 것이 좋습니다. 변형 간을 이동한 사용자를 제거하는 것이 최선의 방법이라면 실험 분석 탭의 필터 카드를 사용하십시오. All exposed users세그먼트가 기본적으로 활성화되어 있는 경우 해당 세그먼트를 클릭하고 실험 세그먼트 > 변형 간을 이동한 사용자 제외를 선택합니다.
이 내용이 도움이 되었나요?