Day_13 [마스터클래스] 최성철 교수님
작성일
[마스터클래스] 최성철 교수님
Data centric AI
ML 엔지니어는 수학을 어느 정도 알아야 할까요?
코딩을 못하면 ML/DL 어렵나요?
- 예
- 끝
- 코딩을 잘해야 한다!
- 컴퓨터를 잘 다루는 능력
- 스크립트, 네트워크 등 전반적인 엔지니어링 관련 능력이 있어야 할거다
ML/DL 세계의 변화
-
Pretrained-Learning
-
기본적인 알고리즘을 알아야 함
성능을 올리기 위한 모델 싸움은 정리중
- 모델의 크기를 좀 줄인다거나
- deploy 를 잘한다거나
이제는 데이터다!!
사실 ML code는 매우 작은 부분
- ML 코드를 잘 짠다는 하나만으로는 경쟁력을 가지긴 어려운 세상이 와버림
Data
- 실제 ML 프로젝트에서는 양질의 데이터 확보가 관건
- Production time 데이터와 Experiment 데이터가 다른 문제도 발생
-
끊임없이 데이터를 관리하고 확보하는 노력이 필요
- User generated data
- inputs, clicks for recommendation
- System generated data
- logs, metadata, prediction
- Data Flywheel (데이터 선순환)
- 사용자들의 참여로 데이터를 개선
- 구글포토 -> 가족이 커가는 사진을 보고 같은 사람인지 직접 태깅
- 사용자들의 참여로 데이터를 개선
- Data augmentation
- 데이터를 임의로 추가 확보
Data drift
-
시간이 지나면서 데이터는 계속 바뀐다!
- dynamic hyperparameter tuning 해야 하고
- 자동화 시스템이 필요
- 단순히 ML 코드만 잘 이해해서 할 수가 없음
Data Feedback Loop
- 사용자로부터 오는 데이터를 자동화하여 모델에 피딩 해주는 체계가 필요
- 단순히 ML/DL 코드로만 이루어지는게 아님
- 네트워크 하드웨어 부터 데이터 플랫폼까지의 이해
- 앞으로의 많은 ML/DL 엔지니어가 가져야할 역량중 하나
- 특시 대용량 데이터를 다뤄본 경험이 중요할 것
앞으로 알아야 할 것 들
- MLOPs 도구들
- 당연히 데이터베이스
- Cloud - AWS, GCP, Azure
- Spark (+ Hadoop)
- Linux + Docker + 쿠버네티스
- 스케줄링 도구들 (쿠브플로우, MLFlow, AirFlow)
하나의 시스템으로서 ML/DL 개발
- jupyter notebook 은 실험하는 역할일 뿐!
하나의 시스템으로서 ML/DL 기획
- 전통 제조업에 가보면 데이터는…
- 전기, 화학, 기계(전화기)
-
모든 분야에 SW 전공자가 필요
- 앞으로 ML/DL 시스템은 다양한 영역에서 확장
- 데이터의 체계적 수립 (Feedback loop 체계 수립)
- 디지털화 but 데이터화 되어 있지 않은 데이터 변환
- MLOPs 엔지니어와 함께 AI 기반 시스템 설계 인력의 필요성이 증대
- 모델은 AutoML을 써도 되지만 기획은 인간의 영역
- 프로세스, 데이터, 유저의 사용 방식에 대한 이해
정리
- 앞으로는 알고리즘 연구자 보다 ML/DL 엔지니어의 필요성이 더 증대
- 단순히 ML/DL 코드 작성을 넘어서야 함
- 자동화하고, 데이터와 연계, 실험 결과를 기반으로 설득, 시스템화
- 좋은 엔지니어이자 좋은 기획자적인 요소들이 필요
- 아직 AI화 되지 않는 영역의 AI화 (데이터를 어떻게 먹일 것인가!)
- Shell script, 네트워크, 클라우드 등 기본적으로 알아야 할 것들이 많음
Q&A
클론 코딩으로 많이 배우고 있습니다. 혹시 클론 코딩 하면 좋을 유용할 자료를 알고 계실까요?
- huggingface 코드를 많이 봄
- PyTorch 나 Google에서 만든 코드를 보는걸 권장
- 너무 오래된거 말고 tensorflow2.0 코드나 pytorch에서 pretrain 하는 코드
- project template 코드
- linux & database를 모르면 협업을 하기 힘들거다!
- shell script
- 그 다음은 cloud
- docker
- 대용량 데이터를 다루는 회사일수록 multi-node process를 해야함
- spark 코드 정도는 읽고 이해할 수 있는 능력
대학원을 꼭 가야하나요?
- 가면 좋다
- 2년 정도의 시간을 벌 수 있다.
- 가려면 좋은 대학원을 가라 (AI대학원이 설립된 곳)
- 네트워크를 가질 수 있다는 측면에서도 좋음
- ML/DL 엔지니어
- 창업하겠다고 하면 좋아하는 회사도 있음
- 알고리즘 쪽이 관심이 많은데 엔지니어링 쪽으로 AI시스템을 기획부터 개발까지 하는 리더가 되고싶다.
- 대기업일수록 연구 역량을 요구하는 것 같다.
- 캐글에서 결과를 내고 정리해서 github에 공유하고 하는 것
- 흔히 생각하는 좋은 회사에 가면 논문을 내고 하는게 당연하다고 생각하는 경향이 있음
- 문서를 정리하고 글을 써보는 훈련이 필요할 듯
- 영어로 공유하는 역량을 가지는 것이 필요할 것 같다.
- 취준을 위해 1년을 보낼거면 AI 대학원을 가는게 나쁘지 않은 선택인 것 같다.
댓글남기기