유사 잠재 고객을 모델링해요

유사 잠재 고객을 모델링해요


기능 — 일반 제공

현재 these regions에서 사용할 수 있어요.

정부 및 VPS 배포에서는 사용할 수 없어요.


출처: 문서

본문


이 예제 정보

lookalike audience 모델링 예제를 사용하면 가장 수익성이 높은 기존 고객과 유사한 새롭고 가치 높은 고객을 발견하고 타겟팅할 수 있어요. Snowflake Collaboration Data Clean Room 안에서 맞춤형 XGBoost 머신러닝 모델을 학습시키면, 당사자 간에 원시 데이터를 노출하거나 공유하지 않고도 마케팅 효과를 크게 높일 수 있어요.

광고주의 시드 오디언스와 퍼블리셔의 사용자 피처를 결합해 분류기를 학습시키고, 그다음 전체 퍼블리셔 모집단을 점수화한 뒤 결과를 다시 활성화해요. 이 모든 과정에서 어느 쪽도 원시 데이터나 모델 코드를 상대방에게 노출하지 않아요.

이 페이지에서는 동일한 사용 사례의 두 가지 구현 방법을 다뤄요:

  • 옵션 1: Python UDFs — 학습과 점수화를 웨어하우스 기반 Python UDF로 실행해요. Anaconda 번들의 패키지를 사용하는 중간 규모 워크로드에 적합해요.

  • 옵션 2: ML Jobs — 학습과 점수화를 전용 컴퓨트 풀에서 컨테이너화된 작업으로 실행해요. 대규모 워크로드, GPU 가속, Anaconda 번들 외 패키지에 적합해요.

참고

두 옵션은 서로 다른 협업 소유자를 사용해요. 옵션 1에서는 퍼블리셔가, 옵션 2에서는 광고주가 소유하죠. 이는 의도적인 설계예요. Collaboration API는 어떤 역할 할당이든 지원하거든요. 어느 쪽이든 협업을 소유하거나, 데이터를 제공하거나, 분석을 실행할 수 있어요. 두 예제를 함께 보면 이러한 유연성을 확인할 수 있어요.

파이프라인 (두 옵션 모두):

  1. 학습: 시드 오디언스와 퍼블리셔 사용자 피처를 결합해 XGBoost 모델을 만들어요.

  2. 점수화: 학습된 모델을 사용해 전체 퍼블리셔 모집단을 점수화해요.

  3. 활성화: 점수화된 lookalike audience를 퍼블리셔 계정으로 보내요.

주요 사용 사례:

  • 고객 확보: 공유 피처를 기반으로 예측 모델을 만들어 가장 가치 있는 기존 고객과 유사한 새 고객을 찾아요.

  • ROI 증대: 통계적으로 전환할 가능성이 높은 사용자를 타겟팅하여 마케팅 캠페인의 투자 수익률을 개선해요.

  • 시장 도달 범위 확장: 시드 오디언스의 피처 패턴을 기반으로 새로운 시장 세그먼트를 발견해요.

  • 개인화된 광고: 광범위한 인구통계 대신 데이터 기반 lookalike audience를 타겟팅하여 더 관련성 높은 광고 경험을 제공해요.


사전 준비 사항

Data Clean Rooms 환경이 설치된 두 개의 계정이 필요해요. 크로스 리전 배포의 경우 Cross-Cloud Auto-Fulfillment를 활성화해요.

샘플 데이터 생성기 노트북을 실행하여 두 계정 모두에 샘플 데이터를 생성해요:

샘플 데이터 생성기 노트북

노트북을 Snowsight에 업로드하고(Notebooks » Import .ipynb file), 첫 번째 코드 셀에서 DATABASE_NAME 및 SCHEMA_NAME 변수를 업데이트한 다음 모든 셀을 실행해요. 이 노트북은 두 계정 모두에 LAL_PUBLISHER_FEATURES 및 LAL_ADVERTISER_SEED_AUDIENCE를 생성해요.


옵션 1: Python UDFs

학습과 점수화가 웨어하우스에서 Python UDF로 실행돼요. 이 예제에서는 퍼블리셔가 협업을 소유해요.

퍼블리셔는 데이터 오퍼링(사용자 피처), 두 개의 Python UDF(학습용 하나, 점수화용 하나)를 포함하는 code spec, 그리고 세 개의 템플릿(train, score, activate)을 제공해요. 광고주는 협업에 참여하고, 자신의 시드 오디언스 데이터를 연결한 다음 세 개의 템플릿을 순서대로 실행해요.

이 옵션은 내부 테이블을 사용해 구축된 3단계 워크플로를 사용해요. 각 단계는 결과를 클린룸의 내부 테이블에 저장하고, 다음 단계는 그 테이블을 읽어요. 이를 통해 광고주는 각 단계 후에 결정을 내릴 수 있어요.

  1. 학습: 시드 오디언스로 XGBoost 모델을 만들어요. 진행하기 전에 모델 품질(AUC, 오류율)을 검토해요.

  2. 점수화: 학습된 모델을 사용해 전체 퍼블리셔 모집단을 점수화해요. 활성화하기 전에 오디언스 규모를 검토해요.

  3. 활성화: 점수화된 lookalike audience를 퍼블리셔 계정으로 보내요.

협업 역할

협업자 역할 작업
퍼블리셔 소유자, 데이터 제공자 데이터 오퍼링(멤버십 상태, 연령대, 지역, 활동 수준을 포함한 사용자 피처), 모델 학습 및 점수화를 위한 Python UDF가 포함된 code spec, 세 개의 템플릿(train, score, activate)을 등록하고 협업을 생성해요. 광고주가 결과를 활성화한 후, 퍼블리셔는 lookalike audience 데이터를 확인하고 처리해요.
광고주 분석 실행자, 데이터 제공자(자기 자신에게) 데이터 오퍼링(구매 금액과 세그먼트가 포함된 시드 오디언스)을 등록해요. 협업에 참여하고, 자신의 데이터를 연결한 다음 3단계 파이프라인을 실행해요. 즉, 모델을 학습시키고, 모집단을 점수화하고, 점수화된 오디언스를 퍼블리셔에게 활성화해요.

1단계: 퍼블리셔 및 광고주 워크시트 실행

샘플 데이터를 생성한 후, 퍼블리셔 및 광고주 워크시트를 다운로드하고 실행해요. 샘플 데이터를 생성할 때 사용한 것과 동일한 역할로 이 워크시트들을 실행해요. SQL 워크시트를 Snowflake 계정에 업로드하는 방법 알아보기.




옵션 2: ML Jobs

학습과 스코어링은 전용 compute pool에서 컨테이너화된 작업으로 실행됩니다. 이 예시에서는 광고주가 협업을 소유합니다.

이 옵션은 옵션 1과 동일한 파이프라인을 실행하지만, 프로덕션 규모(협업 파티 간 수억 개의 레코드)에서는 warehouse 기반 UDF가 메모리 및 동시성 제한에 도달할 수 있습니다. ML Jobs는 여러 노드가 있는 전용 compute pool에서 학습과 스코어링을 실행하며, 시간별, 일별, 주별 등 어떤 주기로든 모델을 새로고침하도록 예약할 수 있습니다.

참고

분석 실행자의 계정에는 compute pool FOR APPLICATION을 생성하고 설치된 clean room 애플리케이션에 사용 권한을 부여하기 위한 CREATE COMPUTE POOL 권한이 필요합니다.

협업 역할

협업자 역할 작업
광고주 소유자, 분석 실행자 독점 ML 학습 및 스코어링 코드를 스테이징하고, 코드 사양, 템플릿, 시드 오디언스 데이터 오퍼링을 등록하며, 협업을 생성하고, compute pool을 설정하고, 3단계 파이프라인(학습, 스코어링, 활성화)을 실행합니다.
퍼블리셔 데이터 제공자 사용자 피처 데이터 오퍼링을 등록하고, 협업을 검토하고 참여하며, 활성화 결과를 처리합니다.

1단계: 광고주 계정에 ML 스크립트 업로드

ML 학습 및 스코어링 스크립트를 광고주 계정의 스테이지에 업로드하세요:

다음 방법 중 하나를 사용하여 업로드하세요:

  • SnowSQL 또는 Snowflake CLI:
PUT file://lal_train.py @<ml_code_db>.PUBLIC.ML_LAL_STAGE/lal_project/ AUTO_COMPRESS=FALSE OVERWRITE=TRUE;
PUT file://lal_score.py @<ml_code_db>.PUBLIC.ML_LAL_STAGE/lal_project/ AUTO_COMPRESS=FALSE OVERWRITE=TRUE;
  • Snowsight UI: Catalog » Explorer로 이동하여 스테이지를 찾고 파일을 스테이지 디렉터리로 끌어다 놓으세요.

업로드한 후 스테이지 디렉터리를 새로고침하세요:

ALTER STAGE <ml_code_db>.PUBLIC.ML_LAL_STAGE REFRESH;

2단계: 예제 실행

광고주 및 퍼블리셔 계정에서 다음 SQL 워크시트를 다운로드하여 실행하세요:

  • 광고주 워크시트: ML 코드를 스테이징하고, ML Jobs 코드 사양, 템플릿, 데이터 오퍼링을 등록하며, 협업을 생성하고, compute pool을 설정하고, ML Jobs 파이프라인을 실행하고, 결과를 활성화합니다.

  • 퍼블리셔 워크시트: 피처 데이터 오퍼링을 등록하고, 협업을 검토하고 참여하며, 활성화 결과를 처리합니다.


더 알아보기 (Learn more)