Adobe Advertising의 Creative Management — DCO(Dynamic Creative Optimization)는 규칙 기반 타깃팅을 기계 학습과 결합하여, 10,000개 이상의 제품 카탈로그를 25ms 이내에 개인화된 광고로 렌더링합니다. 이 2계층 아키텍처를 통해 20~40%의 성능 향상을 제공합니다.
소개
온라인 서핑 중 내가 관심 있는 제품에 대한 광고를 본다고 상상해 보십시오. 무작위가 아닌, 나를 위해 맞춤 제작된 완벽한 광고입니다. 이렇게 간단해 보이는 광고 뒤에는 규칙 기반 타깃팅을 머신 러닝과 결합하여 25밀리초 이내에 개인화된 광고를 제공하는 정교한 2계층 시스템이 자리 잡고 있습니다.
Adobe Advertising Creative 관리를 통해 광고주는 여러 채널에서 광고를 만들고, 관리하고, 최적화할 수 있습니다. 타겟팅, 순환 방법, 성능 최적화를 통한 표준 정적 크리에이티브과 동적 피드/카탈로그 광고를 지원합니다.
DCO(Dynamic Creative Optimization)는 동적 광고에 대한 실시간 개인화를 지원하는 Creative Management 내의 핵심 기능입니다. Creative Management가 크리에이티브 설정, 카탈로그 업로드 및 경험 구성 등을 담당하는 동안 광고 렌더링 단계에서 DOC는 사용자 선호도에 따라 맞춤화된 최적의 제품을 선택하는 실시간 의사 결정 엔진을 실행합니다. 결정론적 타겟팅 규칙을 머신 러닝 최적화와 결합한 이 2계층 시스템은, 광고주가 프로그래밍 방식 광고에 필요한 속도와 규모를 유지하면서 대규모 제품 카탈로그를 활용할 수 있도록 합니다. DCO는 정적 크리에이티브 템플릿을 실시한으로 변환하여, 사용자의 위치 및 선호도에 따른 개인 맞춤형 컨텍스트 광고를 제공합니다.
이것이 바로 Dynamic Creative Optimization(DCO)입니다. 프로덕션 준비가 완료된 이 아키텍처는 매일 수백만 건의 결정을 처리하는 동시에 무엇이 가장 적합한지 끊임없이 학습합니다.
그림 1: 입찰 경쟁부터 타겟팅, 제품 선택, ML 최적화 및 최종 광고 렌더링까지.
그림 2: 엔드 투 엔드 크리에이티브 최적화 워크플로
과제
규모에 맞게 개인화된 광고를 제공하려면 다음 네 가지 제약 조건을 동시에 해결해야 합니다.
-
규모: 광고주당 제품 수가 10,000개 이상인 카탈로그 처리
-
속도: 각 광고 요청에 대해 25밀리초 미만으로 결정
-
관련성: 사용자 컨텍스트(위치, 관심 분야, 디바이스)에 광고를 매칭
-
최적화: 실제 사용자 행동을 통해 끊임없이 배우고 개선
기존의 접근 방식은 이에 미치지 못합니다. 무작위 선택은 관련성이 떨어집니다. 수천 개의 제품을 순차적으로 검색하는 방식은 너무 느립니다. 정적 점수화 규칙으로는 무엇이 전환되는지 학습할 수 없습니다. 또한 비즈니스 로직이 없는 순수 머신 러닝은 관련이 없는 광고를 제공하거나 캠페인 제한을 위반할 수 있습니다.
크리에이티브 유형: 표준 및 동적
타겟팅 시스템으로 들어가기 전에, 두 가지 주요 크리에이티브 유형을 이해하는 것이 중요합니다
표준 크리에이티브
표준 크리에이티브는 사전 정의된 고정 콘텐츠를 사용하는 정적 광고입니다. 크리에이티브 에셋(이미지, 카피, 콜 투 액션)은 한 번 업로드되면 누가 광고를 보는지에 관계없이 변경되지 않습니다.
-
사용 사례: 개인화가 필요하지 않은 브랜드 인지도 및 구독 프로모션.
-
예: Adobe Creative Cloud 배너는 '단순한 내용을 탁원한 결과물로 만들기' 또는 '고객이 결과물에 원하는 더 많은 옵션'과 같은 기능을 강조합니다. 이는 미리 디자인된 광고 템플릿과 고정된 레이아웃 및 메시징을 사용하여, 모든 적격 사용자에게 동일하게 표시됩니다.
-
최적화: ML은 어떤 정적 크리에이티브가 가장 효과적인지 최적화하지만, 콘텐츠 자체는 사용자별로 변경되지 않습니다.
그림 3: 정적 크리에이티브 변형 예시
동적 크리에이티브
동적 크리에이티브 기능은 카탈로그 피드에서 실시간 제품 정보를 가져오는 템플릿 기반 광고입니다. 템플릿은 레이아웃을 정의하며, 사용자 컨텍스트를 기반으로 서비스 시간에 제품 데이터(이미지, 제목, 가격, 설명)를 삽입합니다.
-
사용 사례: 리테일, 여행, 자동차 등 대규모 제품 카탈로그를 보유하고 있으며, 각 사용자에게 관련 제품을 보여주길 원하는 모든 광고주.
-
예: 캘리포니아에서 전자 제품을 검색하는 사용자에게는 해당 지역에서 999달러에 구매 가능한 노트북이 광고로 노출되는 반면, 뉴욕의 사용자에게는 검색 이력을 기반으로 완전히 다른 제품이 노출됩니다.
-
최적화: ML은 제품×크리에이티브 템플릿 조합을 최적화하며, 해당 사용자에게 가장 적합한 제품과 최적의 시각적 처리를 동시에 선택합니다.
크리에이티브 그룹 및 AdThemes
Adobe Advertising Creative에서 캠페인은 경험으로 구성됩니다. 타깃팅된 경험은 의사 결정 트리를 사용할 수 있습니다. 각 분기는 대상 규칙(지역, 디바이스, 세그먼트 등)을 적용하며, 해당 트리의 최종 리프 노드는 이 문서에서 AdTheme(크리에이티브가 연결된 특정 대상 경로)라고 부르는 것입니다.
크리에이티브 그룹은 하나의 AdTheme와 연결된 크리에이티브(표준 또는 동적)의 컬렉션입니다. 계층 1에서 현재 요청에 대한 AdTheme를 선택하면, 시스템은 해당 크리에이티브 그룹에서 어떤 크리에이티브를 표시할지 결정해야 합니다. 이 선택은 UI에서 구성한 회전 방법에 의해 제어됩니다.
알고리즘 기반(Algo)
머신 러닝, 구체적으로는 Thompson 샘플링을 사용하여 가장 성과가 좋은 크리에이티브를 자동으로 선택합니다. 시스템은 각 크리에이티브의 성공 지표(클릭 수, 전환 수)를 추적하고 점점 더 지표가 좋은 크리에이티브를 많이 노출하는 한편 계속 대안을 탐색합니다. 캠페인 성과를 극대화하려 할 때 추천하는 방법입니다.
가중치 적용
크리에이티브 전체에 광고주가 정의한 백분율에 따라 노출 횟수를 분배합니다. 예를 들어 광고주는 노출 횟수의 70%를 크리에이티브 A(기본 메시지)로 구성하고 30%를 크리에이티브 B(테스트 베리에이션)로 구성할 수 있습니다. 제어된 A/B 테스트나 특정 트래픽 할당이 필요한 경우에 유용합니다.
순차적
정의된 순서로 크리에이티브를 돌며 크리에이티브를 하나씩 순환한 후 반복합니다. 시간에 따라 노출이 균등하게 분배되기 때문에 모든 크리에이티브에 동일한 노출이 필요한 캠페인에 유용합니다.
무작위
사용 가능한 크리에이티브 중에서 각 요청마다 동일한 확률을 적용해 무작위로 선택합니다. 간단하지만 학습이나 최적화가 이루어지지 않습니다. 기준선 테스트 또는 실제 무작위 지정이 필요한 경우에 유용합니다.계층 1: 타기팅 및 AdTheme 선택
목적: 적합한 크리에이티브 그룹(AdTheme)을 찾습니다. 이 단계는 모든 광고 유형(표준, 동적, 비디오)에 대해 실행됩니다.
계층 1: 타기팅 및 AdTheme 선택
목적: 적합한 크리에이티브 그룹(AdTheme)을 찾습니다. 이 단계는 모든 광고 유형(표준, 동적, 비디오)에 대해 실행됩니다.
두 가지 타기팅 접근 방식
1. 의사 결정 트리 타기팅
광고주는 의사 결정 트리 경험의 형태로 여러 계층의 타기팅을 설정하고 트리의 각 분기에 크리에이티브를 할당할 수 있습니다. 경험에는 광고 태그가 있어 광고주가 모든 수요측 플랫폼(DSP)에서 사용할 수 있습니다
작동 방식
여러 기준을 동시에 평가하고 교집합 확인을 수행합니다. 시스템에서 타기팅 차원별로 별도의 인덱스를 유지 관리합니다.
-
지리적: 국가, 지역/주, 도시, 우편번호, DMA
-
디바이스: 디바이스 유형, 브라우저, OS
-
데이터 패스: 사용자 정의 매개 변수(t1~t5)
-
프로필: 사용자 속성(ut1~ut5)
-
세그먼트: 행동 타기팅
-
광고 예약: 날짜/시간 범위
2. 태그 기반 타기팅
사용자는 의사 결정 트리가 아니고 광고 크기의 다양한 태그 설정으로 작동하는 경험을 설정할 수 있습니다.
요청에 tag='4'가 포함되어 있으면 시스템이 태그 4와 연결된 AdTheme를 직접 검색합니다. 의사 결정 트리에 비해 속도는 빠르지만 유연성은 낮습니다.
채점: 가산형 모델
교집합이 일치하는 AdTheme를 식별한 후 채점에서는 가산형 모델을 사용합니다.
예:
그림 4: 계층 1 타기팅 흐름 — 의사 결정 트리 또는 태그 기반 타기팅 데이터를 가산형 채점으로 보내 요청에 대해 가장 점수가 높은 AdTheme 선택
동적 광고의 경우: 제품 선택 레이어
중요: 제품 선택은 동적 광고에만 적용됩니다. 표준 광고는 이 레이어를 건너뜁니다.
그림 5: DCO의 네 가지 핵심 요소로서 실시간으로 함께 작동하는 타기팅, 채점, 제품 선택, 머신 러닝 최적화
제품 카탈로그 파일(MUP 파일)
광고주가 제품 피드(UTF-8, 탭으로 구분)를 업로드합니다. 제품을 나타내는 각 행에는 제품 ID, 제목, 설명, 가격, 이미지 URL, 카테고리, 브랜드, 공급자, 구매 가능 지역, 사용자 정의 타기팅 필드가 포함됩니다.
피드에서 인덱스로: 오프라인 파이프라인
-
피드 구문 분석: 행을 구문 분석해 용량이 작은 제품 핸들로 변환합니다(처음 점수 = 1.0).
-
인덱스 구성: 인덱스가 되는 열은 구성(속성 파일)에 따라 정해집니다.
-
반전된 인덱스 만들기: 구성된 각 열에 대해 반전된 인덱스를 작성하며, 압축된 비트맵을 사용하는 경우가 많습니다.
-
직렬화 및 핫로딩: 이진 인덱스를 직렬화하고 원자적 업데이트를 통해 서비스 파드(pod)로 핫스왑합니다.
제품 선택 프로세스
1단계 — 인덱스 기반 필터링: 기준별로 제품 세트(국가, 범주, 세그먼트)를 가져옵니다.
2단계 — 승법적 채점(계층 1과 다름):
예시 테이블:
그림 6: 베리에이션 1 — 인덱스 기반 필터링 및 승법식 채점 후 순위가 가장 높은 제품입니다. 이 제품이 선택됩니다.
그림 7: 베리에이션 2 - 타기팅은 통과하지만 최종 점수는 낮은 적격 동적 광고 제품
그림 8: 베리에이션 3 — 비교를 위해 유지되지만 선택되지 않은 다른 적격 제품
누적 참고: 이(그림 6~8) 그림은 제품 피드의 다른 행에서 파생된 동일한 동적 광고의 세 가지 베리에이션을 나타냅니다. 모든 베리에이션은 타기팅 및 채점 제한을 만족하지만 점수가 가장 높은 베리에이션만 선택되고 크리에이티브 템플릿에 매핑됩니다.
3단계 — 상위 N개 선택: 상위 N개 제품(예: 상위 200개)을 반환합니다. 공정을 기하기 위해 컷오프 시 동점 항목을 포함합니다.
4단계 — 최종 제품 크리에이티브 최적화 알고리즘 이후 최종 제품이 반환되어 템플릿에 매핑됩니다.
성능 엔지니어링: 25밀리초 미만 달성
몇 가지 엔지니어링 실천을 통해 25ms 미만이라는 목표를 달성할 수 있습니다.
1. 데이터 위치
-
시작 시 파드 메모리에 인덱스 미리 로드
-
자주 액세스하는 품목에 대한 제품 상세 정보 캐시
-
가동 중지 시간 없이 업데이트하기 위한 핫로딩
2. 컴팩트한 데이터 구조
-
핸들 집합을 위해 압축된 비트맵 사용
-
문자열 중복을 방지하기 위해 사전 간접 참조
-
효율적인 집합 연산
3. 결과 캐싱
-
반복된 패턴에 대한 결과 저장
-
피드 변경 무효화
-
TTL 기반 만료
4. 제한된 후보 집합
-
상위 N개 제한으로 빠른 ML 유지(크리에이티브당 10~50개 제품)
-
적격 하위 집합에 만 ML 실행
-
통계 조회 및 제품 상세 정보 가져오기 병렬 처리
5. 원자 인덱스 스왑
-
다운타임 없이 작은 단위의 업데이트 지원
-
대용량 배치에 최적화, 롤백 기능
그림 9: 메모리 내 인덱스, 컴팩트한 데이터 구조, 25ms 미만의 의사 결정 지연을 가능하게 하는 캐싱 전략
계층 2: ML 최적화
목적: 상위 후보 중에서 지능적으로 선택합니다. ML은 모든 광고 유형에 대해 실행되지만, 다른 '암'에서 작동합니다.
-
표준 광고: 암 = 정적 크리에이티브
-
동적 광고: 암 = 제품 × 크리에이티브 쌍
-
비디오 광고: 암=비디오 크리에이티브
ML은 언제 실행됩니까?
ML은 여러 경쟁 옵션이 있거나 탐색이 필요할 때 작동됩니다.
시나리오 A — 확실한 우승자(ML 불필요):
시나리오 B — 동점/경쟁 옵션(ML 결정):
Thompson 샘플링: ML 엔진
-
각 변형에 대한 기록 성공/실패 횟수를 가져오기
-
Beta 배포에서 샘플링(각 변형별로)
-
샘플링된 확률이 가장 높은 변형을 선택합니다
Thompson 샘플링을 사용하는 이유?일일 배치 업데이트를 사용하여 작동하며, 탐색과 개발의 균형을 자연스럽게 유지합니다. 또한 빠르게 실행되며 단순한 선택과 비교하여 20~40%의 개선을 보여줍니다.
그림 10: DCO의 Thompson 샘플링 — 적격 암 및 암별 성능 통계가 밴딧 엔진으로 전달되면, 현재 요청에 가장 적합한 크리에이티브 또는 제품×크리에이티브 조합을 선택합니다
멀티암드 밴딧에서의 '암(arm)' 이해하기
'암'이라는 용어는 슬롯 머신(원 암드 밴딧)에서 유래되었습니다. DCO에서:
-
표준 광고 — 암=정적 크리에이티브(예: 크리에이티브 5개=암 5개)
-
동적 광고 — 암=제품×크리에이티브 쌍(예: 크리에이티브 3개×제품 10개=암 30개)
상황별 암이 중요한 이유: 암 세트는 요청 컨텍스트(위치, 가용성)에 따라 변경될 수 있습니다. ML은 현재 적격 암에서만 샘플링을 수행하며, 모든 조합을 미리 계산하지 않고도 동적 적응이 가능합니다.
전체 흐름: 요청부터 응답까지
표준 광고의 경우, 흐름은 직접적입니다. 계층 1은 타깃팅 규칙을 기반으로 AdTheme를 선택한 다음 계층 2 ML은 Thompson 샘플링을 사용하여 해당 그룹에서 최고의 크리에이티브를 선택합니다. 동적 광고의 경우, ML에서 최종 제품×광고 조합을 결정하기 전에 추가 레이어가 제품을 필터링하고 점수를 매깁니다. 두 경우 모두, 전체 결정 파이프라인이 25밀리초 이내에 완료됩니다
그림 11: 표준 광고 요청 흐름 — 타깃팅 및 ML가 최고의 정적 크리에이티브 선택
그림 12: 동적 광고 요청 흐름 — ML 최적화 및 렌더링 전에 제품 선택을 포함합니다.
광고 기능 이상: 범용 응용
광고를 넘어선 2계층 패턴(타깃팅+ML)의 적용:
-
콘텐츠 추천 — 평점/가용성별로 필터링하고, ML로 참여를 최적화합니다.
-
e커머스 검색 등급 — 재고/가격별로 필터링하고, ML로 전환을 최적화합니다.
-
이메일 캠페인 최적화 — 환경 설정 적용, ML로 제목/시간을 선택합니다.
-
임상 시험 매칭 — 필수 자격 적용, ML을 통한 등록 성공을 최적화합니다.
패턴: 타겟팅→ 평가 → 최적화.
이 아키텍처가 효과적인 이유
타겟팅 + 규칙만 사용: 빠르고 결정적이지만, 여러 옵션이 동일하게 유효한 경우 무작위로 처리될 수 있습니다.
ML만 사용: 학습은 가능하지만 비즈니스 로직을 위반할 수 있으며, 가지치기(옵션 제외) 없이는 수렴 속도가 느릴 수 있습니다.
타겟팅 + 규칙 + ML: 양쪽 장점을 모두 활용합니다. 비즈니스 로직을 적용하고, 관련성 점수를 매기고, ML을 통해 지속적으로 개선합니다. 일반적인 개선 사항: 지연 시간 25ms 미만을 달성하고 아무 조치도 적용하지 않은 기준선 대비 성능이 20~40% 개선됩니다.
핵심 사항
-
2계층 시스템: 먼저 타기팅/채점(빠르고 결정론적)을 수행한 다음 ML 최적화(적응형 학습)를 수행합니다.
-
다른 채점 방법 적용: AdTheme 선택에는 가산형, 제품 선택에는 승법형 채점을 적용합니다.
-
동적 = 추가 레이어: 동적 광고는 AdTheme 선택과 ML 사이에 제품 선택을 추가합니다.
-
모든 유형에 ML 적용: Thompson 샘플링은 표준, 동적, 비디오 모두에 적용되며, 암만 다릅니다.
-
실시간 확장: 요청당 25ms 미만이 걸리는 속도로 매일 수백만 개의 결정을 내립니다.
결론
Dynamic Creative Optimization은 다음을 조합한 강력한 아키텍처 패턴입니다.
-
계층 1: 규칙 기반 타기팅 및 채점(결정론적, 빠름)
-
제품 선택: 인덱스 기반 필터링 및 승법식 채점(동적 광고)
-
계층 2: Thompson 샘플링을 사용한 ML 최적화(모든 광고 유형)
핵심 인사이트: 규칙 또는 머신 러닝을 선택하는 것이 아니라 순서에 따라 둘 다 적용합니다. 타기팅은 관련성을 보장하고, 채점은 차별화를 보장하며, ML은 지속적인 최적화를 보장합니다.
DCO로 광고 성과를 향상시키는 방법에 대해 더 자세히 알아보고 싶으신가요? Adobe Advertising Creative를 탐색하는 것으로 시작해 보세요.