반응형
데이터 엔지니어
- 엔지니어는 데이터를 수집하고 저장하는 역할 수행
- 추가적으로 시각화를 통해 더 나은 데이터 결과를 제공하는 역할 수행
- 즉, 데이터 생성 → 수집 → ETL → 시각화 의 과정을 엔지니어가 수행
- 초기 스타트업은 데이터 수집, 분석에 Google Analytics를 많이 사용
- 이는 프론트엔드에서 데이터 수집 코드 작성 시 데이터 저장과 시각화까지 전부 손쉽게 가능하기 때문
- 하지만 기업 입장의 커스터마이징이 힘들기 때문에 결국 엔지니어가 직접 데이터 환경을 구축하게 됨
데이터 파이프라인
- 데이터 파이프라인: 데이터의 생성 이후 여러 서버를 거쳐 최종 DB에 저장되는 전반적인 과정
- 따라서 데이터 엔지니어의 업무 ≈ 데이터 파이프라인 구축 이라 할 수 있음
- 데이터 파이프라인 구축은 데이터와 관련된 서버를 만들고 연결 시키는 업무 총체를 의미
- 현재 일반적으로 클라우드 환경에서 가동
- 파이프라인 구축 시 유의 사항
- 실시간으로 수많은 유저 데이터가 처리되어야 하므로 정확하고 세밀한 데이터 유형 분류와 저장이 필수이며 이에 따라 넉넉한 저장 공간 확보가 중요
- 순간적인 사용량 증대로 데이터 처리 부하를 서버가 못견디고 터지는 경우가 발생할 수 있기 때문에 예방책 및 대비책을 준비하고 유연하게 대처해야 함
- 모든 데이터를 중간에 새지 않고 잘 저장되게 해야하며, 이를 위해 꼼꼼히 데이터의 흐름을 잘 추적 해야 함
데이터 사이언티스트
- 데이터는 결국 분석해야 가치가 생김
- IT 회사에서는 쌓여있는 데이터를 바탕으로 분석을 해서 유의미한 인사이트를 얻어야 함
- 데이터 사이언티스트는 데이터를 다루는 모델(프로그램)을 만들고 데이터를 분석함
- 이 역할을 수행하기 위해선 프로그래밍, 통계학 이론, 머신러닝 지식 등의 다양한 분야를 섭렵하고 있어야 함
모델 생성 및 개선
- 데이터 사이언티스트는 모델을 만들고 해당 모델의 정확도를 개선하는 것이 주 업무
- 모델: 데이터를 넣었을 때 결과를 만들어주는 하나의 프로그램
- 보통 모델을 만들 때 Python 언어가 많이 사용됨
- 통계나 머신러닝을 지원하는 라이브러리는 Python으로 만들어진 게 많음
- 모델의 내부는 통계학과 ML이론을 바탕으로 프로그래밍되며, 데이터 입력 시 내부 로직을 거쳐 결과가 도출 됨
- '유저가 본 상품들 데이터를 바탕으로 유저의 취향을 파악하는' 모델을 만들어야 한다고 가정
- 유저의 취향을 유형별로 분리 후 1 ~ 10으로 라벨링, 데이터 입력 시 1 ~ 10 사이의 값이 나오도록 모델을 만듦
- 일반적으로 모델에 데이터를 넣기 전 모델이 데이터를 목적에 맞게 처리할 수 있도록 전처리 과정이 필요
- 이미지 같은 경우 모델에서 계산이 될 수 있도록 데이터를 정규화 (Normalization)하는 처리를 진행
- 많은 경우 초기 모델은 제대로된 결과를 예측하지 못하므로 데이터를 계속 넣고 결과를 정답과 비교하면서 모델의 정확도를 높이는 업무를 진행해야 함
- 다른 통계 이론의 적용, ML의 Hyperparameter 조절 등
Example
- 영화 추천 서비스 왓챠는 사용자에게 맞춤형 콘텐츠를 제공
- 일반적으로 추천 서비스 제공을 위해서 해당 서비스를 이용한 유저 로그나 시청 정보 등이 필요
- 분석 프로세스 예시
- 사용자의 시청 콘텐츠와 시청 시간 등 여러 관점의 데이터 수집
- 데이터 파이프라인을 거쳐 저장된 데이터를 전처리
- 입력 데이터에 대해 모델은 짜여진 로직을 바탕으로 유저가 어떤 유형인지 예측
- 해당 결과를 바탕으로 콘텐츠 추천
데이터 분석하기
- 데이터를 분석할 때 SQL과 R을 많이 사용.
- SQL : DB의 데이터를 여러가지 조건을 이용해 추출
- R : 일반적인 통계 분석 & 모델링
- 사용자들이 결제한 데이터들은 회사의 핵심 데이터베이스에 저장되어 있고, 이 결제 데이터들을 바탕으로 "한달 단위로 총 결제 건수 얻기", "가장 결제가 많이 일어난 상품 찾기" 등의 작업을 할 수 있음
- 결제, 상품 관련 데이터들을 잘 가공하면 더 나은 비즈니스적 결정을 할 수 있기 때문에 실제로 회사의 마케터, PO 등 다양한 직군들이 데이터 분석 결과를 요청함
- 데이터 사이언티스트의 역할은 포괄적임
- 보통 데이터 사이언티스트는 모델을 만들고 개선하는 일을 중심으로 함
- 데이터 분석은 데이터 분석가와 역할이 겹침
Reference
https://www.inflearn.com/course/it-%EA%B0%9C%EB%B0%9C%EC%A7%80%EC%8B%9D#
https://www.grabbing.me/IT-A-to-Z-By-1e1fbc981b7c4c03ac44943085ac8304
반응형
'비개발자의 개발 지식 스터디 > 데이터' 카테고리의 다른 글
AI (0) | 2023.07.26 |
---|---|
그로스 해킹 (0) | 2023.07.26 |
데이터의 전체 프로세스 (0) | 2023.07.26 |