빌더의 일기: AWS Machine Learning을 처음부터 준비하기

발행: (2025년 12월 20일 오전 07:57 GMT+9)
16 min read
원문: Dev.to

Source: Dev.to

소개

저는 인증 준비 경험을 공유하는 것을 좋아합니다, 특히 목표가 판단력 구축이고 단순히 시험을 통과하는 것이 아닐 때요. 결국 가치는 인증 자체에 있는 것이 아니라, 과정에서 얻는 지식과 그것이 어떻게 전문성 성장으로 이어지는가에 있습니다.

현재 저는 AWS에서 Machine LearningAI Developer 인증을 취득하는 데 집중하고 있으며, 모범 사례에 따라 각 시험의 공식 가이드를 신중히 검토하고 있습니다.

이 일지에서는 제가 혼자 공부할 때 추상적으로 보이는 개념들을 구체화하기 위해 따라가는 과정을 기록합니다. 인증 시험 중에 이전에 다듬어 둔 세부 사항이 등장할 때가 여러 번 있었으며, 그때 구축하며 배우는 것이 실제로 차이를 만든다는 것을 확인합니다.

이 일련의 글을 통해 그 과정을 공유함으로써, AWS에서 Machine Learning을 시작하려는 분들이 실제 경험과 실용적인 접근법을 바탕으로 학습 여정을 진행할 수 있도록 돕고자 합니다.

데이터 형식이 중요한 이유

보통 부차적이거나 심지어 지루하게 느껴지는 주제부터 시작하고 싶습니다—하지만 이는 실험실, 모델 훈련, 그리고 물론 인증에 직접적인 영향을 미칩니다: 데이터 형식.

시험에서 알고리즘을 평가하는 것이 아니라 AWS에서 머신러닝 흐름 내에서 데이터를 어떻게 저장하고, 처리하고, 소비할지 선택하는 능력을 평가하는 질문을 흔히 볼 수 있습니다. 실제 시나리오에서는 형식 선택이 직접적으로 다음에 영향을 미칩니다:

  • 프로세스 성능
  • 관련 비용
  • 솔루션 확장성

시험 첫 번째 영역은 Data Preparation for Machine Learning와 관련이 있으며, 여기에는 데이터 수집 및 저장과 같은 활동이 포함됩니다. 이 맥락에서 검증된 데이터 형식검증되지 않은 데이터 형식이라는 개념이 공식 시험 가이드에 설명된 대로 등장합니다.

정의를 외우는 것을 넘어, 이 영역은 다음과 같은 판단력을 기르는 것을 목표로 합니다:

  • 어떤 상황에서 특정 데이터 형식을 선택해야 하는지
  • 어떤 유형의 워크로드에 가장 효과적인지
  • ML 흐름 내에서 어떤 사용 사례에 적용되는지
  • 어떤 AWS 서비스 및 도구와 호환되는지 혹은 호환되지 않는지

이 포인트들을 이해하면 시험 질문에 답하는 데 도움이 될 뿐만 아니라, 실제 AWS 머신러닝 솔루션을 구축할 때도 더 나은 결정을 내릴 수 있습니다.

핵심 개념

AWS Machine Learning 시험에 자주 등장하는 개념들을 명확히 이해하는 것이 데이터 형식과 그 강점을 깊이 파고들기 전에 중요합니다.

개념설명
검증된 형식AWS가 교육, 처리 또는 추론 과정에서 기본적으로 지원하며, 해당 서비스(예: Amazon SageMaker)에서 공식적으로 문서화된 형식입니다.
검증되지 않은 형식Amazon S3 또는 기타 AWS 서비스에 저장될 수 있지만, 추가 변환이 필요하여 머신러닝 파이프라인에서 사용할 수 있는 형식입니다.
내부 조직형식은 정보를 행 기반 (row‑based) 또는 열 기반 (column‑based) 으로 저장하는지에 따라 분류될 수 있습니다. 이 차이는 ML 작업 시 성능과 비용에 직접적인 영향을 미칩니다.

실용적인 비유: 포켓몬 카드

일상적인 예 – 제 아들은 포켓몬 카드를 수집합니다. 저는 그의 취미를 이용해 row‑basedcolumn‑based 형식의 차이를 설명합니다.

행 기반 접근 방식 (row‑based)

각 카드는 모든 속성을 함께 포함한 하나의 완전한 단위로 저장됩니다:

카드유형희귀도
A전기일반
B드래곤희귀
C사이킥특별

이상적인 경우:

  • 특정 카드를 검토하고 싶을 때.
  • 특정 카드의 모든 특성을 알아야 할 때.
  • 새로운 카드를 하나씩 추가할 때.

이 접근 방식은 개별 레코드 작업에 효율적이지만, 동시에 많은 양의 카드를 분석하기에는 최적이 아닙니다.

열 기반 접근 방식 (column‑based)

카드의 속성을 별도로 저장합니다:

이름유형희귀도레벨
전기일반
드래곤희귀
사이킥특별

이상적인 경우:

  • 특정 유형의 모든 카드를 찾고 싶을 때.
  • 컬렉션에서 희귀도 분포를 분석하고 싶을 때.
  • 대량의 카드 집합 내에서 패턴이나 추세를 찾고 싶을 때.

이는 컬렉션을 분석하기 위해 재구성하는 것과 같습니다: 카드를 하나씩 보는 대신, 속성을 그룹화하여 빠르게 비교할 수 있습니다.

AWS 데이터 형식 비교표

형식조직 방식검증 여부일반적인 사용 사례압축 여부일반적인 AWS 서비스비고
JSON행 기반이벤트 수집, 반구조화 데이터, API기본적으로 압축되지 않음 (압축 가능)S3, Kinesis, Lambda, SageMaker인간이 읽을 수 있음. 구조화 및 반구조화 데이터를 지원. 파싱 지연이 높고 크기 오버헤드가 큼.
CSV행 기반소규모 데이터셋, 프로토타입, 초기 로드기본적으로 압축되지 않음 (압축 가능)S3, SageMaker, Glue스키마나 복잡한 구조를 지원하지 않음. 생성 및 소비가 쉬우나 대규모에서는 비효율적.
RecordIO바이너리SageMaker에서 최적화된 학습SageMaker바이너리 직렬화, 효율적이며 순차적. 인간이 읽을 수 없음. 사전 처리 필요.
Parquet

참고: Parquet 행은 원본 자료에서 불완전합니다; 내용의 무결성을 유지하기 위해 그대로 유지합니다.

결론

다양한 데이터 형식을 마스터하고 언제 사용해야 하는지를 아는 것은 인증 시험을 통과하는 데뿐만 아니라 AWS에서 효율적이고 비용 효율적인 머신러닝 솔루션을 설계하는 데도 필수적입니다. 다음 기사에서는 각 형식의 장점, 제한 사항 및 AWS 생태계 내에서의 최적 사용 방법을 심도 있게 다룰 것입니다. 실용적인 학습 여정에 계속 함께해 주세요!

AWS 데이터 형식 요약

아래는 AWS에서 머신 러닝 파이프라인 및 데이터 분석에 가장 많이 사용되는 형식들을 비교한 표입니다. 원본 정보를 유지하면서 Markdown 형식으로 가독성을 높였습니다.

형식저장 유형컬럼형?일반적인 사용스트리밍 지원?일반적인 서비스비고
CSV행 기반아니오간단한 테이블, 내보내기/가져오기아니오S3, SageMaker, Athena, Glue생성이 매우 쉽고 대부분의 서비스와 호환되지만 압축이나 컬럼형이 아님.
JSON행 기반아니오반구조화 데이터, API아니오S3, SageMaker, Athena, Glue유연하지만 부분 읽기와 압축 효율이 낮음.
Parquet컬럼 기반대규모 ML 분석 및 훈련아니오S3, Glue, Athena, SageMaker컬럼 압축 → 필요한 컬럼만 읽을 수 있어 I/O와 비용을 절감.
Avro행 기반아니오스트리밍, 데이터 교환S3, Kafka (MSK), GlueKafka와 함께 파이프라인에서 많이 사용됨; SageMaker에서 직접 훈련하려면 사전 변환이 필요함.

참고: SageMaker의 모든 built‑in 알고리즘이 모든 형식을 직접 지원하는 것은 아닙니다; 예를 들어 일부는 Parquet 또는 CSV 형식의 데이터를 기대합니다.

평가 기준표 (시험)

이 표는 시험에서 평가하는 가장 중요한 기준 중 하나를 요약합니다: 모든 형식이 모든 용도에 맞는 것은 아닙니다. 올바르게 선택하려면 데이터 양, 처리 유형 및 관련 AWS 서비스를 이해해야 합니다.

기준왜 중요한가
데이터 양컬럼 기반 형식(Parquet)은 일부 열만 사용할 때 I/O를 줄입니다.
처리 유형행 기반(CSV/JSON)은 인제스트 및 가벼운 변환에 더 간단합니다; 컬럼 기반은 분석 쿼리와 모델 학습에 더 적합합니다.
AWS 서비스Athena와 Glue는 Parquet을 네이티브로 읽습니다; SageMaker는 CSV, JSON 및 Parquet을 사용할 수 있지만 효율성은 다릅니다.
스트리밍 vs 배치Avro는 스트리밍(Kafka)에 최적화되어 있으며, Parquet은 배치를 위해 설계되었습니다.

실무 사례: ML 훈련을 위한 포맷 선택

문제
한 기업이 AWS에서 머신러닝 파이프라인을 구축하여 Amazon S3에 저장된 수 테라바이트 규모의 데이터셋을 사용해 분류 모델을 훈련하고 있습니다. 팀은 훈련 시간을 단축하고 I/O 비용을 최소화해야 합니다. 모델은 데이터셋에 있는 컬럼 중 일부만 사용하기 때문입니다.

옵션설명
A. CSV생산이 쉽고 대부분의 AWS 서비스와 호환됩니다.
B. JSON반구조화 데이터를 유연하게 처리할 수 있습니다.
C. Parquet컬럼형으로 데이터를 저장하고 필요한 컬럼만 읽을 수 있습니다.
D. Avro분산 시스템 간 데이터 교환에 효율적입니다.

정답

C. Parquet

근거
Parquet은 컬럼 기반이며 압축된 포맷으로, 훈련 및 분석 프로세스가 모델에 필요한 컬럼만 읽을 수 있게 합니다. 이는 I/O를 크게 줄이고 성능을 향상시키며 비용을 감소시킵니다. 특히 Amazon S3에 대용량 데이터를 저장하고 Amazon SageMaker, Athena, AWS Glue와 같은 서비스를 사용할 때 효과적입니다.

가능한 다른 시나리오

  • 실시간 이벤트 / 인제스트 → 이 경우, 스트리밍을 지원하는 row‑based 형식(예: Avro)이 Parquet보다 더 적합합니다.
  • 학습 전 가벼운 변환 → 변환이 최소이고 호환성이 우선인 경우 CSV 또는 JSON이 유용할 수 있습니다.
[포맷] → [방향] → [주요 사용] → [지원 서비스]
CSV      → Row‑based   → 단순 테이블          → S3, SageMaker, Athena, Glue
JSON     → Row‑based   → 반구조화            → S3, SageMaker, Athena, Glue
Parquet  → Column‑based→ 대규모 분석/ML      → S3, Glue, Athena, SageMaker
Avro     → Row‑based   → 스트리밍 / 교환      → S3, Kafka (MSK), Glue

결론

행 기반 형식열 기반 형식을 언제 사용할지 이해하고, 검증된 형식과 검증되지 않은 형식을 구분하며, 파이프라인 내에서 각각의 목적을 인식하는 것은 시험이 평가하려는 기준을 개발하는 데 도움이 된다. 동일한 기준은 생산 환경에서 머신러닝 솔루션을 설계할 때 보다 정확한 기술적 결정을 내리는 것으로 이어진다.

이것은 일기의 첫 번째 단계일 뿐이다. 여기부터는 데이터를 어떻게 변환하고, 준비하고, 활용할지에 초점을 맞출 것이다.

Back to Blog

관련 글

더 보기 »

창고 활용에 대한 종합 가이드

소개 창고는 근본적으로 3‑D 박스일 뿐입니다. Utilisation은 실제로 그 박스를 얼마나 사용하고 있는지를 측정하는 지표입니다. While logistics c...