본문으로 건너뛰기

Snowflake와 SageMaker Canvas로 노코드 사기 탐지 모델 만들기

Snowflake 데이터를 Data Wrangler로 가공해 XGBoost 사기 탐지 모델을 만드는 Canvas 워크플로입니다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

Part 1에서 구성한 Snowflake 환경을 Amazon SageMaker Canvas에 연결하면 Data Wrangler에서 데이터를 직접 불러와 노코드 방식으로 사기 탐지용 데이터셋을 만들 수 있습니다. 카드와 가맹점별 평균 및 표준편차로 이상치 임계값을 계산하고 거래 시간, 요일, 인구통계, 사기 이력 같은 파생 특성을 생성한 뒤 두 데이터 소스를 조인합니다. CC_NUM과 가맹점명 등 민감하거나 불필요한 열을 제거하고 Data Quality and Insights Report로 타깃 누수, 클래스 불균형, 특성 중요도와 Quick model 성능을 점검합니다. 준비된 데이터는 2-category 모델과 Ensemble 학습 방식의 XGBoost로 약 15–30분 동안 학습할 수 있으며, 완성된 모델은 보지 않은 CSV에 예측을 생성하고 권한과 Region을 맞춘 뒤 Amazon Quick Sight로 결과를 전송할 수 있습니다.

섹션별 상세

01
이 워크플로는 Part 1에서 구성한 Snowflake 환경을 Amazon SageMaker Canvas와 연결해 사기 거래 예측 모델을 만드는 전체 과정을 이어갑니다. 사용자는 Canvas의 시각적 화면에서 Snowflake 데이터를 불러오고, Data Wrangler로 변환한 뒤, 준비된 데이터셋을 모델 학습으로 넘깁니다. 프로그래밍 전문 지식 없이 데이터 준비부터 예측 생성까지 진행하는 구조라서 비즈니스 분석가와 도메인 전문가가 직접 ML 작업을 수행할 수 있습니다.
Amazon SageMaker Canvas의 시작 화면으로, Amazon Q를 이용한 ML 구축과 모델 생성, Generative AI 탐색, 사전 구축 모델 탐색 메뉴가 표시됩니다.
ScreenshotCanvas가 데이터 준비와 모델 구축을 위한 통합 작업 공간으로 열리는 모습을 보여줍니다. 글에서 이어지는 Data Wrangler와 모델 생성 절차의 출발점에 해당하며, 별도 코드 없이 ML 기능에 접근하는 화면 구성을 확인할 수 있습니다.
02
먼저 Amazon SageMaker 도메인과 사용자 프로필을 만든 뒤 Canvas를 열고 Data Wrangler에서 Tabular 데이터 가져오기를 선택합니다. Snowflake 연결에는 연결 이름, 조직 값과 계정 ID를 조합한 Account ID, 사용자 이름, 비밀번호가 필요하며 연결이 완료되면 Canvas 안에서 데이터 웨어하우스에 직접 접근합니다. 데이터를 별도 파일로 내보내지 않고 Snowflake의 최신 데이터를 조회하는 방식이므로 수동 추출 과정과 데이터 이동을 줄이는 흐름입니다.
Amazon SageMaker Data Wrangler의 Import and prepare 화면에서 구조화된 Tabular 데이터 유형을 선택하는 장면입니다.
Screenshot데이터 준비 흐름이 Tabular 선택에서 시작된다는 점을 시각적으로 확인할 수 있습니다. 화면 하단에는 모델 생성과 Generative AI 학습을 위한 Canvas 기능도 함께 배치되어 있습니다.
Data Wrangler의 데이터 소스 선택 창에서 Snowflake를 고르고 Add Connection을 선택하는 화면입니다.
ScreenshotCanvas와 Snowflake 사이의 연결을 생성하는 실제 UI 단계를 보여줍니다. 연결을 저장하면 Snowflake 데이터 웨어하우스에서 데이터를 직접 선택하고 가져오는 후속 작업으로 이어집니다.
Snowflake 연결 생성 창에서 연결 이름, 인증 방식, Account ID, Username, Password와 선택적 저장소 통합 및 Role을 입력하는 화면입니다.
ScreenshotSnowflake 연결에 필요한 인증 정보와 계정 식별 정보를 구체적으로 보여줍니다. 글의 연결 설정 절차에서 요구하는 계정 ID와 사용자 자격 증명이 Canvas의 입력 필드로 대응됩니다.
03
초기 데이터셋에는 카드 번호와 거래 범주별 평균 및 표준편차를 이용해 계산한 이상치 임계값과 사기 이력 변수가 포함됩니다. 카드별 임계값은 평균 거래 금액에 표준편차의 3배를 더해 만들고, 거래 금액이 이를 넘으면 CC_FLAG를 1로 설정하는 방식으로 파생 특성을 생성합니다. 이후 가맹점별 임계값과 MERCHANT_AMT_FLAG도 같은 방식으로 계산해 고객과 가맹점의 평소 거래 패턴에서 벗어난 금액을 모델 입력으로 바꿉니다.
Snowflake SQL 편집기에서 거래 금액 이상치와 사기 이력 열을 계산하고 Import preview로 결과를 확인하는 화면입니다.
ScreenshotSQL 단계에서 CC_NUM, CATEGORY, AMT_OUTLIER, FRAUD_HISTORY 같은 모델용 열을 계산하는 과정을 보여줍니다. 미리보기 표에는 계산된 이상치 금액과 사기 이력 값이 표시되어 후속 특성 공학의 입력을 확인할 수 있습니다.
04
두 번째 Snowflake 데이터 소스에서는 거래 시간, 요일, 주, 주, 성별, 주, 가맹점 관련 속성과 같은 추가 정보를 SQL로 계산해 기존 데이터에 결합합니다. Data Wrangler의 Combine data 메뉴에서 Join을 선택하고 두 흐름의 키를 지정하면 왼쪽 외부 조인 결과를 미리 확인할 수 있습니다. 글의 예시는 CC_NUM과 CATEGORY를 조인 키로 사용하며, 결합 결과에는 거래 범주와 이상치 금액, 사기 이력 같은 열이 함께 나타납니다.
Data flow 화면에서 Add data 메뉴를 열고 두 번째 Tabular 데이터 소스를 추가하는 장면입니다.
Screenshot첫 번째 데이터 흐름에 추가 데이터셋을 연결하는 작업 위치를 보여줍니다. 두 데이터 소스를 결합해 모델 입력을 보강하는 글의 다중 데이터 준비 절차와 직접 연결됩니다.
두 번째 데이터 소스를 추가하는 메뉴에서 기존 Snowflake 연결을 선택하는 화면입니다.
Screenshot새 연결을 다시 만들지 않고 저장된 Snowflake 연결을 재사용하는 흐름을 보여줍니다. 같은 데이터 웨어하우스 안의 다른 데이터셋을 Canvas Data flow에 추가하는 방식이 드러납니다.
Snowflake SQL 결과 미리보기에 MERCHANT, CC_NUM, TRANS_HOUR, TRANS_DOW, STATE, GENDER 등 거래·시간·인구통계 특성이 표시됩니다.
Screenshot두 번째 쿼리에서 거래 시간과 요일, 주, 성별, 가맹점 같은 파생 특성을 구성한 결과를 보여줍니다. 이러한 열은 기존 이상치 데이터와 결합되어 사기 분류 모델의 입력 정보를 확장합니다.
두 개의 Snowflake 데이터 흐름 사이에서 Combine data 메뉴를 열고 Join 또는 Concatenate를 선택하는 화면입니다.
ScreenshotData Wrangler가 여러 데이터셋을 결합하는 변환 선택지를 제공하는 모습을 보여줍니다. 글에서는 두 흐름의 공통 키를 이용한 Join을 선택해 거래 특성과 사기 관련 특성을 하나의 데이터셋으로 합칩니다.
Join 설정 패널에서 Left outer join을 선택하고 양쪽 데이터의 CC_NUM과 CATEGORY를 조인 키로 지정하는 화면입니다.
Screenshot왼쪽 데이터의 행을 유지하면서 오른쪽 데이터의 일치 열을 붙이는 조인 구성을 보여줍니다. CC_NUM과 CATEGORY를 양쪽에서 대응시키는 방식이 화면의 Join keys에 직접 나타납니다.
Join 변환의 입력 데이터 두 개와 CC_NUM, CATEGORY, AMT_OUTLIER, FRAUD_HISTORY가 포함된 출력 미리보기를 보여주는 화면입니다.
Screenshot조인 전 양쪽 입력과 조인 후 출력 열을 한 화면에서 비교할 수 있습니다. 미리보기에는 결합된 거래 범주와 이상치 금액, 사기 이력 값이 나타나 데이터 결합 결과를 검증할 수 있습니다.
05
모델 입력에 민감한 정보가 남지 않도록 CC_NUM, AMT_OUTLIER, MERCHANT, MERCHANT_AMT_OUTLIER 열을 Manage Columns의 Drop column 변환으로 제거합니다. 이후 Data Quality and Insights Report에서 IS_FRAUD를 타깃 열로 지정하고 Classification과 Sampled Dataset을 선택해 데이터 품질을 점검합니다. 보고서에는 데이터 요약, 특성 중요도, 중복 행, 이상 샘플, Quick model의 학습 및 검증 정확도와 혼동 행렬이 포함되어 특성 제거가 모델 품질에 미치는 영향을 확인할 수 있습니다.
Join 노드 오른쪽의 플러스 메뉴에서 Add transform을 선택해 후속 데이터 변환을 추가하는 화면입니다.
Screenshot결합된 데이터 흐름에 추가 변환을 연속적으로 연결하는 구조를 보여줍니다. 글에서 이어지는 민감 열 제거, 데이터 품질 점검, 모델 생성은 이러한 최종 변환 노드 이후에 진행됩니다.
06
준비한 데이터는 최종 변환 노드 옆의 Create model을 통해 Canvas 모델 생성 화면으로 내보냅니다. IS_FRAUD를 Target Column으로 지정하고 2-category 모델을 선택한 뒤 Ensemble 학습 방식과 XGBoost 알고리즘을 설정하며, FRAUD_HISTORY와 MERCHANT_FRAUD_HISTORY는 학습 특성에서 제외합니다. Standard build는 약 15–30분이 걸리며 완료 후 Analyze 탭에서 특성 영향, 산점도, 사기 분류 차트와 Advanced Metrics를 확인할 수 있습니다.
07
학습 모델은 Predict 탭에서 보지 않은 CSV 데이터셋을 수동으로 등록한 뒤 Generate Predictions를 실행해 새로운 거래의 예측값을 생성합니다. 예측 작업이 Ready 상태가 되면 Amazon Quick Sight로 보내 대시보드에 공유할 수 있지만, 이를 위해 Canvas 도메인과 Quick Sight의 AWS Region을 맞추고 실행 역할에 필요한 권한을 추가해야 합니다. 또한 Canvas가 예측 파일을 저장하는 sagemaker-{region}-{account_id} S3 버킷에 Quick Sight 접근 권한을 부여하고 대시보드 이용자를 Author 또는 Admin 역할로 등록해야 합니다.

용어 해설

Data Wrangler
Amazon SageMaker Canvas 안에서 데이터를 직접 연결하고 변환하는 시각적 데이터 준비 기능입니다. 사용자는 SQL 또는 내장 변환을 이용해 결측값 처리, 파생 변수 생성, 데이터 결합과 열 삭제를 수행할 수 있습니다. 모델 학습 전에 데이터 품질을 점검하고 준비된 데이터를 모델 생성 단계로 넘기는 역할을 합니다.
이상치 임계값(Outlier Threshold)
평균과 표준편차를 이용해 일반적인 거래 금액의 상한선을 계산하는 기준입니다. 글에서는 카드와 거래 범주별 평균 금액에 표준편차의 3배를 더해 임계값을 만들고, 이를 초과한 거래를 이상 거래 후보로 표시합니다. 카드 소유자나 가맹점의 평소 패턴에서 크게 벗어난 금액을 모델 입력 변수로 바꾸는 데 쓰입니다.
특성 공학(Feature Engineering)
원시 데이터에서 모델 예측에 사용할 새로운 변수를 계산하고 조합하는 과정입니다. 이 워크플로에서는 거래 시간, 요일, 고객 속성, 가맹점 정보, 카드와 가맹점별 이상치 여부를 파생 변수로 생성합니다. 이렇게 가공한 특성은 사기 거래와 정상 거래를 구분하는 입력으로 활용됩니다.
타깃 누수(Target Leakage)
예측 시점에 알 수 없어야 하는 정보가 학습 데이터의 입력 특성에 섞이는 문제입니다. Data Quality and Insights Report는 데이터 준비 과정에서 이러한 문제와 클래스 불균형 같은 품질 이슈를 점검하는 데 사용됩니다. 누수가 남으면 검증 성능이 실제 운영 환경보다 과도하게 높아질 수 있으므로 모델 생성 전에 확인해야 합니다.
왼쪽 외부 조인(Left Outer Join)
왼쪽 데이터의 모든 행을 유지하면서 오른쪽 데이터에서 일치하는 열을 결합하는 SQL 조인 방식입니다. Canvas의 Join 변환에서는 두 데이터 흐름을 연결하고 CC_NUM과 CATEGORY 같은 키를 지정해 보강 정보를 붙입니다. 일치하는 오른쪽 행이 없는 경우에도 왼쪽 거래 기록을 보존할 수 있습니다.

기술

  • Amazon SageMaker Canvas
  • Amazon SageMaker Data Wrangler
  • Snowflake
  • XGBoost
  • Amazon Quick Sight
  • AWS IAM
  • Amazon S3

활용 사례

  • 신용카드 거래 사기 탐지
  • Snowflake 기반 거래 데이터 준비
  • 노코드 분류 모델 구축
  • Amazon Quick Sight를 이용한 예측 결과 시각화
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 21.수집 2026. 08. 21.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.