[1일차]데이터 팀의 역할 소개

김준석·2023년 12월 26일
0

데이터 팀의 역할 소개

조직에 따라 한 사람이 몇 개의 역할을 동시 수행하는 것이 일반적


종류

  • 데이터 엔지니어
  • 데이터 분석가
  • 데이터 과학자
  • ML 엔지니어
    • 머신러닝 모델을 만듦
  • MLOps 엔지니어
  • 프라이버시 엔지니어
    • 구글이 처음 만듦

데이터 문해력(스킬)

문제와 데이터를 연결해서 가치 있는 결론을 내는 사고방식

일반적으로 프로그래밍 언어를 통해 업무를 진행함 (파이썬, SQL)


1. 데이터 분석가의 필요 스킬

  • KPI/지표
  • 통계 지식
  • A/B 테스트 분석
  • 데이터 모델링/데이터 분석
  • 비지니스 도메인에 대한 지식
    • 내가 직접 일하는 곳의 도메인에 대해 잘 알아야 됨.
  • BI 툴
    • 로커, 태블로
  • ELT
    • dbt

2. 데이터 엔지니어 필요 스킬

  • ETL 구현 (Airflow)
  • 클라우드 (AWS, GCP, Azure)
  • 빅데이터 분산처리 기술 이해
    • 처리하는 데이터 크기가 커지면 필요
      • Spark/Hadoop
    • 컨테이너 관련 기술(Docker, K8S)
    • NoSQL(카산드라, 몽고DB)

3. 데이터 과학자 필요 스킬

  • 가설 기반 접근법
  • 머신러닝 기술 (딥러닝, NLP)
  • 데이터 청소, EDA, Feature 엔지니어링
  • A/B 테스트 디자인
  • 트레이닝셋, 모델 관리 (알고리즘, 하이퍼 파라미터)
  • ML 개발 프레임웍 (SageMaker, MLflow, Kubeflow)

4. MLOps 엔지니어(데이터 엔지니어+데이터 과학자)

  • 모델 배포, 모델 모니터링,
  • CT (Continuous Training)
  • CI (Continuous Intergration)
  • CD (Continuous Delivery)

데이터 엔지니어

  • 기본적으로 소프트웨어 개발자 (Python, SQL, Airflow, Spark)
  • 데이터 인프라(데이터 웨어하우스/ 레이크/ ETL) 구축
    • 클라우드를 많이 사용
  • 내부/외부 데이터를 데이터 인프라로 가져오는 역할 수행
  • 보통 외부 요청에 의해 새로운 데이터를 구현
    • 비지니스 오너를 정하는 것이 중요 → 품질 관리 및 이슈 발생시 노티
      • 누가 왜 요청한지 파악
  • PII(개인정보) 등의 데이터 분류가 중요 (태그 등 사용)
    • PII : Personal Identifiable Information
    • 개인정보 유출시 많은 피해를 초래

데이터 분석가

  • 데이터 웨어하우스의 데이터를 기반으로 지표를 만들고 시각화 (대시보드)
    • ELT(ETL에서 뽑아낸 새로운 데이터)를 수행해서 새로운 데이터 생성(비지니스 오너 지정이 중요)
    • DBT와 같은 툴을 사용하는 것이 추세
  • ETL vs ELT
    • ETL : 데이터 시스템 밖에 있는 데이터를 안으로 가져오는 것
    • ELT : 데이터 시스템 안에 있는 데이터를 조합하여 사용하기 쉬운 새로운 데이터를 만드는 것
    • 이때 가장 많이 사용되는 툴이 DBT임
    • 데이터 리니지가 중요해짐.
    • 중요 테이블/테스트/임시 테이블 구분이 중요
      • 테이블 관리의 중요도 선정

데이터 과학자

  • 과거 데이터를 기반으로 미래를 예측하는 머신러닝 모델 생성
    • 고객들의 제품/ 서비스 사용 경험 개선
  • 모델을 만들때 사용되는 데이터를 반드시 체크해야 됨.
    • 데이터 수집에 있어 왜곡이 있는지, 혹시 개인 정보를 사용하고 있는지?
  • 모델의 동작에 대해 설명할 수 있어야 됨.
    • 머신러닝은 보통 블랙박스의 형태로 이루어짐. 어떠한 이유로 발생되는 데이터인지 설명을 해줘야 됨.
  • 모델 개발 뿐만 아니라 배포 과정이 자동화되어야 함
    • 직군 명: MLOps

+머신러닝 모델링 사이클

데이터 과학자의 역할

가설 : 문제정의 → 훈련용 데이터 수집 → 모델 빌딩 및 테스트 → 모델 배포 → 모델 A/B 테스트 → A/B 테스트 결과 분석 후 괜찮다면 배포! 아니라면 다시 문제정의!


A/B 테스트란?

새로운 기능을 만들었을때에 사용자 50%에게는 기존 기능을 50%에게는 새로운 기능을 접목시켜 반응을 보는 테스트

  • 가설이 필요함.
    • 예) 체크박스가 빨간색이라면 사용자들이 더 많이 누를것이다!
  • 실제 사용자를 대상으로 진행
  • 다수의 Variant로 구성됨
    • 하나의 컨트롤 (기존 버전)과 하나 이상의 테스트

0개의 댓글